[574483] Regenerate editprs
diff --git a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/AbstractBaseProposalProvider.java b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/AbstractBaseProposalProvider.java
index 8dc5fd5..b2c58fc 100644
--- a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/AbstractBaseProposalProvider.java
+++ b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/AbstractBaseProposalProvider.java
@@ -40,6 +40,9 @@
 	public void completePathNameCS_OwnedPathElements(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
+	public void completeUnreservedPathNameCS_OwnedPathElements(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+	}
 	public void completeFirstPathElementCS_ReferredElement(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
 	}
@@ -86,6 +89,9 @@
 	public void complete_PathNameCS(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
 	}
+	public void complete_UnreservedPathNameCS(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+		// subclasses may override
+	}
 	public void complete_FirstPathElementCS(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
 	}
diff --git a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/BaseParser.java b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/BaseParser.java
index 14e7a35..c77bca0 100644
--- a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/BaseParser.java
+++ b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/BaseParser.java
@@ -55,6 +55,8 @@
 					put(grammarAccess.getMultiplicityCSAccess().getGroup(), "rule__MultiplicityCS__Group__0");
 					put(grammarAccess.getPathNameCSAccess().getGroup(), "rule__PathNameCS__Group__0");
 					put(grammarAccess.getPathNameCSAccess().getGroup_1(), "rule__PathNameCS__Group_1__0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getGroup(), "rule__UnreservedPathNameCS__Group__0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getGroup_1(), "rule__UnreservedPathNameCS__Group_1__0");
 					put(grammarAccess.getTemplateBindingCSAccess().getGroup(), "rule__TemplateBindingCS__Group__0");
 					put(grammarAccess.getTemplateBindingCSAccess().getGroup_1(), "rule__TemplateBindingCS__Group_1__0");
 					put(grammarAccess.getTemplateSignatureCSAccess().getGroup(), "rule__TemplateSignatureCS__Group__0");
@@ -72,6 +74,8 @@
 					put(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment(), "rule__MultiplicityStringCS__StringBoundsAssignment");
 					put(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0(), "rule__PathNameCS__OwnedPathElementsAssignment_0");
 					put(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1(), "rule__PathNameCS__OwnedPathElementsAssignment_1_1");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_0(), "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_1_1(), "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1");
 					put(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment(), "rule__FirstPathElementCS__ReferredElementAssignment");
 					put(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment(), "rule__NextPathElementCS__ReferredElementAssignment");
 					put(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0(), "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0");
diff --git a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/internal/InternalBase.g b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/internal/InternalBase.g
index 922741f..bb92364 100644
--- a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/internal/InternalBase.g
+++ b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/internal/InternalBase.g
@@ -176,6 +176,8 @@
 
 
 
+
+
 // Entry rule entryRuleFirstPathElementCS
 entryRuleFirstPathElementCS
 :
@@ -1130,6 +1132,8 @@
 
 
 
+
+
 rule__TemplateBindingCS__Group__0
     @init {
 		int stackSize = keepStackSize();
@@ -1921,6 +1925,8 @@
 	restoreStackSize(stackSize);
 }
 
+
+
 rule__FirstPathElementCS__ReferredElementAssignment
     @init {
 		int stackSize = keepStackSize();
diff --git a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/internal/InternalBaseLexer.java b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/internal/InternalBaseLexer.java
index 43f9b82..be97028 100644
--- a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/internal/InternalBaseLexer.java
+++ b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/internal/InternalBaseLexer.java
@@ -352,8 +352,8 @@
     // $ANTLR start "RULE_ESCAPED_CHARACTER"
     public final void mRULE_ESCAPED_CHARACTER() throws RecognitionException {
         try {
-            // InternalBase.g:2115:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
-            // InternalBase.g:2115:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+            // InternalBase.g:2121:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
+            // InternalBase.g:2121:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
             match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -377,8 +377,8 @@
     // $ANTLR start "RULE_LETTER_CHARACTER"
     public final void mRULE_LETTER_CHARACTER() throws RecognitionException {
         try {
-            // InternalBase.g:2117:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
-            // InternalBase.g:2117:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
+            // InternalBase.g:2123:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
+            // InternalBase.g:2123:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
             {
             if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
                 input.consume();
@@ -403,11 +403,11 @@
         try {
             int _type = RULE_DOUBLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:2119:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
-            // InternalBase.g:2119:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+            // InternalBase.g:2125:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
+            // InternalBase.g:2125:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
             match('\"');
-            // InternalBase.g:2119:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
+            // InternalBase.g:2125:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
                 int alt1=3;
@@ -423,14 +423,14 @@
 
                 switch (alt1) {
             	case 1 :
-            	    // InternalBase.g:2119:34: RULE_ESCAPED_CHARACTER
+            	    // InternalBase.g:2125:34: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalBase.g:2119:57: ~ ( ( '\\\\' | '\"' ) )
+            	    // InternalBase.g:2125:57: ~ ( ( '\\\\' | '\"' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -467,11 +467,11 @@
         try {
             int _type = RULE_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:2121:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            // InternalBase.g:2121:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+            // InternalBase.g:2127:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // InternalBase.g:2127:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
             match('\'');
-            // InternalBase.g:2121:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
+            // InternalBase.g:2127:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
                 int alt2=3;
@@ -487,14 +487,14 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // InternalBase.g:2121:35: RULE_ESCAPED_CHARACTER
+            	    // InternalBase.g:2127:35: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalBase.g:2121:58: ~ ( ( '\\\\' | '\\'' ) )
+            	    // InternalBase.g:2127:58: ~ ( ( '\\\\' | '\\'' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -531,12 +531,12 @@
         try {
             int _type = RULE_ML_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:2123:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
-            // InternalBase.g:2123:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
+            // InternalBase.g:2129:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
+            // InternalBase.g:2129:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
             match("/'");
 
-            // InternalBase.g:2123:38: ( options {greedy=false; } : . )*
+            // InternalBase.g:2129:38: ( options {greedy=false; } : . )*
             loop3:
             do {
                 int alt3=2;
@@ -561,7 +561,7 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // InternalBase.g:2123:66: .
+            	    // InternalBase.g:2129:66: .
             	    {
             	    matchAny();
 
@@ -591,11 +591,11 @@
         try {
             int _type = RULE_SIMPLE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:2125:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
-            // InternalBase.g:2125:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalBase.g:2131:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
+            // InternalBase.g:2131:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
             mRULE_LETTER_CHARACTER();
-            // InternalBase.g:2125:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalBase.g:2131:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
                 int alt4=2;
@@ -644,8 +644,8 @@
         try {
             int _type = RULE_ESCAPED_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:2127:17: ( '_' RULE_SINGLE_QUOTED_STRING )
-            // InternalBase.g:2127:19: '_' RULE_SINGLE_QUOTED_STRING
+            // InternalBase.g:2133:17: ( '_' RULE_SINGLE_QUOTED_STRING )
+            // InternalBase.g:2133:19: '_' RULE_SINGLE_QUOTED_STRING
             {
             match('_');
             mRULE_SINGLE_QUOTED_STRING();
@@ -665,10 +665,10 @@
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:2129:10: ( ( '0' .. '9' )+ )
-            // InternalBase.g:2129:12: ( '0' .. '9' )+
+            // InternalBase.g:2135:10: ( ( '0' .. '9' )+ )
+            // InternalBase.g:2135:12: ( '0' .. '9' )+
             {
-            // InternalBase.g:2129:12: ( '0' .. '9' )+
+            // InternalBase.g:2135:12: ( '0' .. '9' )+
             int cnt5=0;
             loop5:
             do {
@@ -682,7 +682,7 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // InternalBase.g:2129:13: '0' .. '9'
+            	    // InternalBase.g:2135:13: '0' .. '9'
             	    {
             	    matchRange('0','9');
 
@@ -714,12 +714,12 @@
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:2131:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // InternalBase.g:2131:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // InternalBase.g:2137:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // InternalBase.g:2137:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*");
 
-            // InternalBase.g:2131:24: ( options {greedy=false; } : . )*
+            // InternalBase.g:2137:24: ( options {greedy=false; } : . )*
             loop6:
             do {
                 int alt6=2;
@@ -744,7 +744,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // InternalBase.g:2131:52: .
+            	    // InternalBase.g:2137:52: .
             	    {
             	    matchAny();
 
@@ -774,12 +774,12 @@
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:2133:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // InternalBase.g:2133:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // InternalBase.g:2139:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // InternalBase.g:2139:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("--");
 
-            // InternalBase.g:2133:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // InternalBase.g:2139:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
             do {
                 int alt7=2;
@@ -792,7 +792,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // InternalBase.g:2133:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // InternalBase.g:2139:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -812,7 +812,7 @@
                 }
             } while (true);
 
-            // InternalBase.g:2133:40: ( ( '\\r' )? '\\n' )?
+            // InternalBase.g:2139:40: ( ( '\\r' )? '\\n' )?
             int alt9=2;
             int LA9_0 = input.LA(1);
 
@@ -821,9 +821,9 @@
             }
             switch (alt9) {
                 case 1 :
-                    // InternalBase.g:2133:41: ( '\\r' )? '\\n'
+                    // InternalBase.g:2139:41: ( '\\r' )? '\\n'
                     {
-                    // InternalBase.g:2133:41: ( '\\r' )?
+                    // InternalBase.g:2139:41: ( '\\r' )?
                     int alt8=2;
                     int LA8_0 = input.LA(1);
 
@@ -832,7 +832,7 @@
                     }
                     switch (alt8) {
                         case 1 :
-                            // InternalBase.g:2133:41: '\\r'
+                            // InternalBase.g:2139:41: '\\r'
                             {
                             match('\r');
 
@@ -864,10 +864,10 @@
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:2135:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // InternalBase.g:2135:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalBase.g:2141:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // InternalBase.g:2141:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // InternalBase.g:2135:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalBase.g:2141:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt10=0;
             loop10:
             do {
@@ -921,8 +921,8 @@
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:2137:16: ( . )
-            // InternalBase.g:2137:18: .
+            // InternalBase.g:2143:16: ( . )
+            // InternalBase.g:2143:18: .
             {
             matchAny();
 
diff --git a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/internal/InternalBaseParser.java b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/internal/InternalBaseParser.java
index 1ba6691..fea2239 100644
--- a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/internal/InternalBaseParser.java
+++ b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/contentassist/antlr/internal/InternalBaseParser.java
@@ -441,11 +441,11 @@
 
 
     // $ANTLR start "entryRuleFirstPathElementCS"
-    // InternalBase.g:180:1: entryRuleFirstPathElementCS : ruleFirstPathElementCS EOF ;
+    // InternalBase.g:182:1: entryRuleFirstPathElementCS : ruleFirstPathElementCS EOF ;
     public final void entryRuleFirstPathElementCS() throws RecognitionException {
         try {
-            // InternalBase.g:181:1: ( ruleFirstPathElementCS EOF )
-            // InternalBase.g:182:1: ruleFirstPathElementCS EOF
+            // InternalBase.g:183:1: ( ruleFirstPathElementCS EOF )
+            // InternalBase.g:184:1: ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSRule());
@@ -475,23 +475,23 @@
 
 
     // $ANTLR start "ruleFirstPathElementCS"
-    // InternalBase.g:189:1: ruleFirstPathElementCS : ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) ;
+    // InternalBase.g:191:1: ruleFirstPathElementCS : ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) ;
     public final void ruleFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:193:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
-            // InternalBase.g:194:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
+            // InternalBase.g:195:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
+            // InternalBase.g:196:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
             {
-            // InternalBase.g:194:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
-            // InternalBase.g:195:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
+            // InternalBase.g:196:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
+            // InternalBase.g:197:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
-            // InternalBase.g:196:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
-            // InternalBase.g:196:2: rule__FirstPathElementCS__ReferredElementAssignment
+            // InternalBase.g:198:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
+            // InternalBase.g:198:2: rule__FirstPathElementCS__ReferredElementAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__FirstPathElementCS__ReferredElementAssignment();
@@ -526,11 +526,11 @@
 
 
     // $ANTLR start "entryRuleNextPathElementCS"
-    // InternalBase.g:208:1: entryRuleNextPathElementCS : ruleNextPathElementCS EOF ;
+    // InternalBase.g:210:1: entryRuleNextPathElementCS : ruleNextPathElementCS EOF ;
     public final void entryRuleNextPathElementCS() throws RecognitionException {
         try {
-            // InternalBase.g:209:1: ( ruleNextPathElementCS EOF )
-            // InternalBase.g:210:1: ruleNextPathElementCS EOF
+            // InternalBase.g:211:1: ( ruleNextPathElementCS EOF )
+            // InternalBase.g:212:1: ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSRule());
@@ -560,23 +560,23 @@
 
 
     // $ANTLR start "ruleNextPathElementCS"
-    // InternalBase.g:217:1: ruleNextPathElementCS : ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) ;
+    // InternalBase.g:219:1: ruleNextPathElementCS : ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) ;
     public final void ruleNextPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:221:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
-            // InternalBase.g:222:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
+            // InternalBase.g:223:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
+            // InternalBase.g:224:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
             {
-            // InternalBase.g:222:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
-            // InternalBase.g:223:1: ( rule__NextPathElementCS__ReferredElementAssignment )
+            // InternalBase.g:224:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
+            // InternalBase.g:225:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
-            // InternalBase.g:224:1: ( rule__NextPathElementCS__ReferredElementAssignment )
-            // InternalBase.g:224:2: rule__NextPathElementCS__ReferredElementAssignment
+            // InternalBase.g:226:1: ( rule__NextPathElementCS__ReferredElementAssignment )
+            // InternalBase.g:226:2: rule__NextPathElementCS__ReferredElementAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NextPathElementCS__ReferredElementAssignment();
@@ -611,11 +611,11 @@
 
 
     // $ANTLR start "entryRuleTemplateBindingCS"
-    // InternalBase.g:236:1: entryRuleTemplateBindingCS : ruleTemplateBindingCS EOF ;
+    // InternalBase.g:238:1: entryRuleTemplateBindingCS : ruleTemplateBindingCS EOF ;
     public final void entryRuleTemplateBindingCS() throws RecognitionException {
         try {
-            // InternalBase.g:237:1: ( ruleTemplateBindingCS EOF )
-            // InternalBase.g:238:1: ruleTemplateBindingCS EOF
+            // InternalBase.g:239:1: ( ruleTemplateBindingCS EOF )
+            // InternalBase.g:240:1: ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSRule());
@@ -645,23 +645,23 @@
 
 
     // $ANTLR start "ruleTemplateBindingCS"
-    // InternalBase.g:245:1: ruleTemplateBindingCS : ( ( rule__TemplateBindingCS__Group__0 ) ) ;
+    // InternalBase.g:247:1: ruleTemplateBindingCS : ( ( rule__TemplateBindingCS__Group__0 ) ) ;
     public final void ruleTemplateBindingCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:249:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
-            // InternalBase.g:250:1: ( ( rule__TemplateBindingCS__Group__0 ) )
+            // InternalBase.g:251:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
+            // InternalBase.g:252:1: ( ( rule__TemplateBindingCS__Group__0 ) )
             {
-            // InternalBase.g:250:1: ( ( rule__TemplateBindingCS__Group__0 ) )
-            // InternalBase.g:251:1: ( rule__TemplateBindingCS__Group__0 )
+            // InternalBase.g:252:1: ( ( rule__TemplateBindingCS__Group__0 ) )
+            // InternalBase.g:253:1: ( rule__TemplateBindingCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
-            // InternalBase.g:252:1: ( rule__TemplateBindingCS__Group__0 )
-            // InternalBase.g:252:2: rule__TemplateBindingCS__Group__0
+            // InternalBase.g:254:1: ( rule__TemplateBindingCS__Group__0 )
+            // InternalBase.g:254:2: rule__TemplateBindingCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group__0();
@@ -696,11 +696,11 @@
 
 
     // $ANTLR start "entryRuleTemplateParameterSubstitutionCS"
-    // InternalBase.g:264:1: entryRuleTemplateParameterSubstitutionCS : ruleTemplateParameterSubstitutionCS EOF ;
+    // InternalBase.g:266:1: entryRuleTemplateParameterSubstitutionCS : ruleTemplateParameterSubstitutionCS EOF ;
     public final void entryRuleTemplateParameterSubstitutionCS() throws RecognitionException {
         try {
-            // InternalBase.g:265:1: ( ruleTemplateParameterSubstitutionCS EOF )
-            // InternalBase.g:266:1: ruleTemplateParameterSubstitutionCS EOF
+            // InternalBase.g:267:1: ( ruleTemplateParameterSubstitutionCS EOF )
+            // InternalBase.g:268:1: ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSRule());
@@ -730,23 +730,23 @@
 
 
     // $ANTLR start "ruleTemplateParameterSubstitutionCS"
-    // InternalBase.g:273:1: ruleTemplateParameterSubstitutionCS : ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) ;
+    // InternalBase.g:275:1: ruleTemplateParameterSubstitutionCS : ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) ;
     public final void ruleTemplateParameterSubstitutionCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:277:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
-            // InternalBase.g:278:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
+            // InternalBase.g:279:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
+            // InternalBase.g:280:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
             {
-            // InternalBase.g:278:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
-            // InternalBase.g:279:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
+            // InternalBase.g:280:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
+            // InternalBase.g:281:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
-            // InternalBase.g:280:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
-            // InternalBase.g:280:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
+            // InternalBase.g:282:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
+            // InternalBase.g:282:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment();
@@ -781,11 +781,11 @@
 
 
     // $ANTLR start "entryRuleTypeParameterCS"
-    // InternalBase.g:294:1: entryRuleTypeParameterCS : ruleTypeParameterCS EOF ;
+    // InternalBase.g:296:1: entryRuleTypeParameterCS : ruleTypeParameterCS EOF ;
     public final void entryRuleTypeParameterCS() throws RecognitionException {
         try {
-            // InternalBase.g:295:1: ( ruleTypeParameterCS EOF )
-            // InternalBase.g:296:1: ruleTypeParameterCS EOF
+            // InternalBase.g:297:1: ( ruleTypeParameterCS EOF )
+            // InternalBase.g:298:1: ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSRule());
@@ -815,23 +815,23 @@
 
 
     // $ANTLR start "ruleTypeParameterCS"
-    // InternalBase.g:303:1: ruleTypeParameterCS : ( ( rule__TypeParameterCS__Group__0 ) ) ;
+    // InternalBase.g:305:1: ruleTypeParameterCS : ( ( rule__TypeParameterCS__Group__0 ) ) ;
     public final void ruleTypeParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:307:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
-            // InternalBase.g:308:1: ( ( rule__TypeParameterCS__Group__0 ) )
+            // InternalBase.g:309:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
+            // InternalBase.g:310:1: ( ( rule__TypeParameterCS__Group__0 ) )
             {
-            // InternalBase.g:308:1: ( ( rule__TypeParameterCS__Group__0 ) )
-            // InternalBase.g:309:1: ( rule__TypeParameterCS__Group__0 )
+            // InternalBase.g:310:1: ( ( rule__TypeParameterCS__Group__0 ) )
+            // InternalBase.g:311:1: ( rule__TypeParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
-            // InternalBase.g:310:1: ( rule__TypeParameterCS__Group__0 )
-            // InternalBase.g:310:2: rule__TypeParameterCS__Group__0
+            // InternalBase.g:312:1: ( rule__TypeParameterCS__Group__0 )
+            // InternalBase.g:312:2: rule__TypeParameterCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group__0();
@@ -866,11 +866,11 @@
 
 
     // $ANTLR start "entryRuleTypeRefCS"
-    // InternalBase.g:322:1: entryRuleTypeRefCS : ruleTypeRefCS EOF ;
+    // InternalBase.g:324:1: entryRuleTypeRefCS : ruleTypeRefCS EOF ;
     public final void entryRuleTypeRefCS() throws RecognitionException {
         try {
-            // InternalBase.g:323:1: ( ruleTypeRefCS EOF )
-            // InternalBase.g:324:1: ruleTypeRefCS EOF
+            // InternalBase.g:325:1: ( ruleTypeRefCS EOF )
+            // InternalBase.g:326:1: ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeRefCSRule());
@@ -900,23 +900,23 @@
 
 
     // $ANTLR start "ruleTypeRefCS"
-    // InternalBase.g:331:1: ruleTypeRefCS : ( ( rule__TypeRefCS__Alternatives ) ) ;
+    // InternalBase.g:333:1: ruleTypeRefCS : ( ( rule__TypeRefCS__Alternatives ) ) ;
     public final void ruleTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:335:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
-            // InternalBase.g:336:1: ( ( rule__TypeRefCS__Alternatives ) )
+            // InternalBase.g:337:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
+            // InternalBase.g:338:1: ( ( rule__TypeRefCS__Alternatives ) )
             {
-            // InternalBase.g:336:1: ( ( rule__TypeRefCS__Alternatives ) )
-            // InternalBase.g:337:1: ( rule__TypeRefCS__Alternatives )
+            // InternalBase.g:338:1: ( ( rule__TypeRefCS__Alternatives ) )
+            // InternalBase.g:339:1: ( rule__TypeRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
-            // InternalBase.g:338:1: ( rule__TypeRefCS__Alternatives )
-            // InternalBase.g:338:2: rule__TypeRefCS__Alternatives
+            // InternalBase.g:340:1: ( rule__TypeRefCS__Alternatives )
+            // InternalBase.g:340:2: rule__TypeRefCS__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeRefCS__Alternatives();
@@ -951,11 +951,11 @@
 
 
     // $ANTLR start "entryRuleTypedRefCS"
-    // InternalBase.g:350:1: entryRuleTypedRefCS : ruleTypedRefCS EOF ;
+    // InternalBase.g:352:1: entryRuleTypedRefCS : ruleTypedRefCS EOF ;
     public final void entryRuleTypedRefCS() throws RecognitionException {
         try {
-            // InternalBase.g:351:1: ( ruleTypedRefCS EOF )
-            // InternalBase.g:352:1: ruleTypedRefCS EOF
+            // InternalBase.g:353:1: ( ruleTypedRefCS EOF )
+            // InternalBase.g:354:1: ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedRefCSRule());
@@ -985,17 +985,17 @@
 
 
     // $ANTLR start "ruleTypedRefCS"
-    // InternalBase.g:359:1: ruleTypedRefCS : ( ruleTypedTypeRefCS ) ;
+    // InternalBase.g:361:1: ruleTypedRefCS : ( ruleTypedTypeRefCS ) ;
     public final void ruleTypedRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:363:2: ( ( ruleTypedTypeRefCS ) )
-            // InternalBase.g:364:1: ( ruleTypedTypeRefCS )
+            // InternalBase.g:365:2: ( ( ruleTypedTypeRefCS ) )
+            // InternalBase.g:366:1: ( ruleTypedTypeRefCS )
             {
-            // InternalBase.g:364:1: ( ruleTypedTypeRefCS )
-            // InternalBase.g:365:1: ruleTypedTypeRefCS
+            // InternalBase.g:366:1: ( ruleTypedTypeRefCS )
+            // InternalBase.g:367:1: ruleTypedTypeRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall());
@@ -1030,11 +1030,11 @@
 
 
     // $ANTLR start "entryRuleTypedTypeRefCS"
-    // InternalBase.g:378:1: entryRuleTypedTypeRefCS : ruleTypedTypeRefCS EOF ;
+    // InternalBase.g:380:1: entryRuleTypedTypeRefCS : ruleTypedTypeRefCS EOF ;
     public final void entryRuleTypedTypeRefCS() throws RecognitionException {
         try {
-            // InternalBase.g:379:1: ( ruleTypedTypeRefCS EOF )
-            // InternalBase.g:380:1: ruleTypedTypeRefCS EOF
+            // InternalBase.g:381:1: ( ruleTypedTypeRefCS EOF )
+            // InternalBase.g:382:1: ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSRule());
@@ -1064,23 +1064,23 @@
 
 
     // $ANTLR start "ruleTypedTypeRefCS"
-    // InternalBase.g:387:1: ruleTypedTypeRefCS : ( ( rule__TypedTypeRefCS__Group__0 ) ) ;
+    // InternalBase.g:389:1: ruleTypedTypeRefCS : ( ( rule__TypedTypeRefCS__Group__0 ) ) ;
     public final void ruleTypedTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:391:2: ( ( ( rule__TypedTypeRefCS__Group__0 ) ) )
-            // InternalBase.g:392:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
+            // InternalBase.g:393:2: ( ( ( rule__TypedTypeRefCS__Group__0 ) ) )
+            // InternalBase.g:394:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
             {
-            // InternalBase.g:392:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
-            // InternalBase.g:393:1: ( rule__TypedTypeRefCS__Group__0 )
+            // InternalBase.g:394:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
+            // InternalBase.g:395:1: ( rule__TypedTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getGroup());
             }
-            // InternalBase.g:394:1: ( rule__TypedTypeRefCS__Group__0 )
-            // InternalBase.g:394:2: rule__TypedTypeRefCS__Group__0
+            // InternalBase.g:396:1: ( rule__TypedTypeRefCS__Group__0 )
+            // InternalBase.g:396:2: rule__TypedTypeRefCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group__0();
@@ -1115,11 +1115,11 @@
 
 
     // $ANTLR start "entryRuleUnreservedName"
-    // InternalBase.g:406:1: entryRuleUnreservedName : ruleUnreservedName EOF ;
+    // InternalBase.g:408:1: entryRuleUnreservedName : ruleUnreservedName EOF ;
     public final void entryRuleUnreservedName() throws RecognitionException {
         try {
-            // InternalBase.g:407:1: ( ruleUnreservedName EOF )
-            // InternalBase.g:408:1: ruleUnreservedName EOF
+            // InternalBase.g:409:1: ( ruleUnreservedName EOF )
+            // InternalBase.g:410:1: ruleUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUnreservedNameRule());
@@ -1149,17 +1149,17 @@
 
 
     // $ANTLR start "ruleUnreservedName"
-    // InternalBase.g:415:1: ruleUnreservedName : ( ruleUnrestrictedName ) ;
+    // InternalBase.g:417:1: ruleUnreservedName : ( ruleUnrestrictedName ) ;
     public final void ruleUnreservedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:419:2: ( ( ruleUnrestrictedName ) )
-            // InternalBase.g:420:1: ( ruleUnrestrictedName )
+            // InternalBase.g:421:2: ( ( ruleUnrestrictedName ) )
+            // InternalBase.g:422:1: ( ruleUnrestrictedName )
             {
-            // InternalBase.g:420:1: ( ruleUnrestrictedName )
-            // InternalBase.g:421:1: ruleUnrestrictedName
+            // InternalBase.g:422:1: ( ruleUnrestrictedName )
+            // InternalBase.g:423:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUnreservedNameAccess().getUnrestrictedNameParserRuleCall());
@@ -1194,11 +1194,11 @@
 
 
     // $ANTLR start "entryRuleUnrestrictedName"
-    // InternalBase.g:434:1: entryRuleUnrestrictedName : ruleUnrestrictedName EOF ;
+    // InternalBase.g:436:1: entryRuleUnrestrictedName : ruleUnrestrictedName EOF ;
     public final void entryRuleUnrestrictedName() throws RecognitionException {
         try {
-            // InternalBase.g:435:1: ( ruleUnrestrictedName EOF )
-            // InternalBase.g:436:1: ruleUnrestrictedName EOF
+            // InternalBase.g:437:1: ( ruleUnrestrictedName EOF )
+            // InternalBase.g:438:1: ruleUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUnrestrictedNameRule());
@@ -1228,17 +1228,17 @@
 
 
     // $ANTLR start "ruleUnrestrictedName"
-    // InternalBase.g:443:1: ruleUnrestrictedName : ( ruleIdentifier ) ;
+    // InternalBase.g:445:1: ruleUnrestrictedName : ( ruleIdentifier ) ;
     public final void ruleUnrestrictedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:447:2: ( ( ruleIdentifier ) )
-            // InternalBase.g:448:1: ( ruleIdentifier )
+            // InternalBase.g:449:2: ( ( ruleIdentifier ) )
+            // InternalBase.g:450:1: ( ruleIdentifier )
             {
-            // InternalBase.g:448:1: ( ruleIdentifier )
-            // InternalBase.g:449:1: ruleIdentifier
+            // InternalBase.g:450:1: ( ruleIdentifier )
+            // InternalBase.g:451:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUnrestrictedNameAccess().getIdentifierParserRuleCall());
@@ -1273,11 +1273,11 @@
 
 
     // $ANTLR start "entryRuleWildcardTypeRefCS"
-    // InternalBase.g:462:1: entryRuleWildcardTypeRefCS : ruleWildcardTypeRefCS EOF ;
+    // InternalBase.g:464:1: entryRuleWildcardTypeRefCS : ruleWildcardTypeRefCS EOF ;
     public final void entryRuleWildcardTypeRefCS() throws RecognitionException {
         try {
-            // InternalBase.g:463:1: ( ruleWildcardTypeRefCS EOF )
-            // InternalBase.g:464:1: ruleWildcardTypeRefCS EOF
+            // InternalBase.g:465:1: ( ruleWildcardTypeRefCS EOF )
+            // InternalBase.g:466:1: ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSRule());
@@ -1307,23 +1307,23 @@
 
 
     // $ANTLR start "ruleWildcardTypeRefCS"
-    // InternalBase.g:471:1: ruleWildcardTypeRefCS : ( ( rule__WildcardTypeRefCS__Group__0 ) ) ;
+    // InternalBase.g:473:1: ruleWildcardTypeRefCS : ( ( rule__WildcardTypeRefCS__Group__0 ) ) ;
     public final void ruleWildcardTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:475:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
-            // InternalBase.g:476:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
+            // InternalBase.g:477:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
+            // InternalBase.g:478:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
             {
-            // InternalBase.g:476:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
-            // InternalBase.g:477:1: ( rule__WildcardTypeRefCS__Group__0 )
+            // InternalBase.g:478:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
+            // InternalBase.g:479:1: ( rule__WildcardTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
-            // InternalBase.g:478:1: ( rule__WildcardTypeRefCS__Group__0 )
-            // InternalBase.g:478:2: rule__WildcardTypeRefCS__Group__0
+            // InternalBase.g:480:1: ( rule__WildcardTypeRefCS__Group__0 )
+            // InternalBase.g:480:2: rule__WildcardTypeRefCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group__0();
@@ -1358,11 +1358,11 @@
 
 
     // $ANTLR start "entryRuleID"
-    // InternalBase.g:490:1: entryRuleID : ruleID EOF ;
+    // InternalBase.g:492:1: entryRuleID : ruleID EOF ;
     public final void entryRuleID() throws RecognitionException {
         try {
-            // InternalBase.g:491:1: ( ruleID EOF )
-            // InternalBase.g:492:1: ruleID EOF
+            // InternalBase.g:493:1: ( ruleID EOF )
+            // InternalBase.g:494:1: ruleID EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIDRule());
@@ -1392,23 +1392,23 @@
 
 
     // $ANTLR start "ruleID"
-    // InternalBase.g:499:1: ruleID : ( ( rule__ID__Alternatives ) ) ;
+    // InternalBase.g:501:1: ruleID : ( ( rule__ID__Alternatives ) ) ;
     public final void ruleID() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:503:2: ( ( ( rule__ID__Alternatives ) ) )
-            // InternalBase.g:504:1: ( ( rule__ID__Alternatives ) )
+            // InternalBase.g:505:2: ( ( ( rule__ID__Alternatives ) ) )
+            // InternalBase.g:506:1: ( ( rule__ID__Alternatives ) )
             {
-            // InternalBase.g:504:1: ( ( rule__ID__Alternatives ) )
-            // InternalBase.g:505:1: ( rule__ID__Alternatives )
+            // InternalBase.g:506:1: ( ( rule__ID__Alternatives ) )
+            // InternalBase.g:507:1: ( rule__ID__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIDAccess().getAlternatives());
             }
-            // InternalBase.g:506:1: ( rule__ID__Alternatives )
-            // InternalBase.g:506:2: rule__ID__Alternatives
+            // InternalBase.g:508:1: ( rule__ID__Alternatives )
+            // InternalBase.g:508:2: rule__ID__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ID__Alternatives();
@@ -1443,11 +1443,11 @@
 
 
     // $ANTLR start "entryRuleIdentifier"
-    // InternalBase.g:518:1: entryRuleIdentifier : ruleIdentifier EOF ;
+    // InternalBase.g:520:1: entryRuleIdentifier : ruleIdentifier EOF ;
     public final void entryRuleIdentifier() throws RecognitionException {
         try {
-            // InternalBase.g:519:1: ( ruleIdentifier EOF )
-            // InternalBase.g:520:1: ruleIdentifier EOF
+            // InternalBase.g:521:1: ( ruleIdentifier EOF )
+            // InternalBase.g:522:1: ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIdentifierRule());
@@ -1477,17 +1477,17 @@
 
 
     // $ANTLR start "ruleIdentifier"
-    // InternalBase.g:527:1: ruleIdentifier : ( ruleID ) ;
+    // InternalBase.g:529:1: ruleIdentifier : ( ruleID ) ;
     public final void ruleIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:531:2: ( ( ruleID ) )
-            // InternalBase.g:532:1: ( ruleID )
+            // InternalBase.g:533:2: ( ( ruleID ) )
+            // InternalBase.g:534:1: ( ruleID )
             {
-            // InternalBase.g:532:1: ( ruleID )
-            // InternalBase.g:533:1: ruleID
+            // InternalBase.g:534:1: ( ruleID )
+            // InternalBase.g:535:1: ruleID
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
@@ -1522,11 +1522,11 @@
 
 
     // $ANTLR start "entryRuleLOWER"
-    // InternalBase.g:546:1: entryRuleLOWER : ruleLOWER EOF ;
+    // InternalBase.g:548:1: entryRuleLOWER : ruleLOWER EOF ;
     public final void entryRuleLOWER() throws RecognitionException {
         try {
-            // InternalBase.g:547:1: ( ruleLOWER EOF )
-            // InternalBase.g:548:1: ruleLOWER EOF
+            // InternalBase.g:549:1: ( ruleLOWER EOF )
+            // InternalBase.g:550:1: ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLOWERRule());
@@ -1556,17 +1556,17 @@
 
 
     // $ANTLR start "ruleLOWER"
-    // InternalBase.g:555:1: ruleLOWER : ( RULE_INT ) ;
+    // InternalBase.g:557:1: ruleLOWER : ( RULE_INT ) ;
     public final void ruleLOWER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:559:2: ( ( RULE_INT ) )
-            // InternalBase.g:560:1: ( RULE_INT )
+            // InternalBase.g:561:2: ( ( RULE_INT ) )
+            // InternalBase.g:562:1: ( RULE_INT )
             {
-            // InternalBase.g:560:1: ( RULE_INT )
-            // InternalBase.g:561:1: RULE_INT
+            // InternalBase.g:562:1: ( RULE_INT )
+            // InternalBase.g:563:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
@@ -1597,11 +1597,11 @@
 
 
     // $ANTLR start "entryRuleUPPER"
-    // InternalBase.g:578:1: entryRuleUPPER : ruleUPPER EOF ;
+    // InternalBase.g:580:1: entryRuleUPPER : ruleUPPER EOF ;
     public final void entryRuleUPPER() throws RecognitionException {
         try {
-            // InternalBase.g:579:1: ( ruleUPPER EOF )
-            // InternalBase.g:580:1: ruleUPPER EOF
+            // InternalBase.g:581:1: ( ruleUPPER EOF )
+            // InternalBase.g:582:1: ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUPPERRule());
@@ -1631,23 +1631,23 @@
 
 
     // $ANTLR start "ruleUPPER"
-    // InternalBase.g:587:1: ruleUPPER : ( ( rule__UPPER__Alternatives ) ) ;
+    // InternalBase.g:589:1: ruleUPPER : ( ( rule__UPPER__Alternatives ) ) ;
     public final void ruleUPPER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:591:2: ( ( ( rule__UPPER__Alternatives ) ) )
-            // InternalBase.g:592:1: ( ( rule__UPPER__Alternatives ) )
+            // InternalBase.g:593:2: ( ( ( rule__UPPER__Alternatives ) ) )
+            // InternalBase.g:594:1: ( ( rule__UPPER__Alternatives ) )
             {
-            // InternalBase.g:592:1: ( ( rule__UPPER__Alternatives ) )
-            // InternalBase.g:593:1: ( rule__UPPER__Alternatives )
+            // InternalBase.g:594:1: ( ( rule__UPPER__Alternatives ) )
+            // InternalBase.g:595:1: ( rule__UPPER__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUPPERAccess().getAlternatives());
             }
-            // InternalBase.g:594:1: ( rule__UPPER__Alternatives )
-            // InternalBase.g:594:2: rule__UPPER__Alternatives
+            // InternalBase.g:596:1: ( rule__UPPER__Alternatives )
+            // InternalBase.g:596:2: rule__UPPER__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__UPPER__Alternatives();
@@ -1682,13 +1682,13 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Alternatives_1"
-    // InternalBase.g:608:1: rule__MultiplicityCS__Alternatives_1 : ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) );
+    // InternalBase.g:610:1: rule__MultiplicityCS__Alternatives_1 : ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) );
     public final void rule__MultiplicityCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:612:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
+            // InternalBase.g:614:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
             int alt1=2;
             int LA1_0 = input.LA(1);
 
@@ -1707,10 +1707,10 @@
             }
             switch (alt1) {
                 case 1 :
-                    // InternalBase.g:613:1: ( ruleMultiplicityBoundsCS )
+                    // InternalBase.g:615:1: ( ruleMultiplicityBoundsCS )
                     {
-                    // InternalBase.g:613:1: ( ruleMultiplicityBoundsCS )
-                    // InternalBase.g:614:1: ruleMultiplicityBoundsCS
+                    // InternalBase.g:615:1: ( ruleMultiplicityBoundsCS )
+                    // InternalBase.g:616:1: ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
@@ -1730,10 +1730,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalBase.g:619:6: ( ruleMultiplicityStringCS )
+                    // InternalBase.g:621:6: ( ruleMultiplicityStringCS )
                     {
-                    // InternalBase.g:619:6: ( ruleMultiplicityStringCS )
-                    // InternalBase.g:620:1: ruleMultiplicityStringCS
+                    // InternalBase.g:621:6: ( ruleMultiplicityStringCS )
+                    // InternalBase.g:622:1: ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
@@ -1770,13 +1770,13 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Alternatives_2"
-    // InternalBase.g:630:1: rule__MultiplicityCS__Alternatives_2 : ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) );
+    // InternalBase.g:632:1: rule__MultiplicityCS__Alternatives_2 : ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) );
     public final void rule__MultiplicityCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:634:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
+            // InternalBase.g:636:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
             int alt2=2;
             int LA2_0 = input.LA(1);
 
@@ -1795,10 +1795,10 @@
             }
             switch (alt2) {
                 case 1 :
-                    // InternalBase.g:635:1: ( '|?' )
+                    // InternalBase.g:637:1: ( '|?' )
                     {
-                    // InternalBase.g:635:1: ( '|?' )
-                    // InternalBase.g:636:1: '|?'
+                    // InternalBase.g:637:1: ( '|?' )
+                    // InternalBase.g:638:1: '|?'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
@@ -1814,16 +1814,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalBase.g:643:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
+                    // InternalBase.g:645:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
                     {
-                    // InternalBase.g:643:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
-                    // InternalBase.g:644:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
+                    // InternalBase.g:645:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
+                    // InternalBase.g:646:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
-                    // InternalBase.g:645:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
-                    // InternalBase.g:645:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
+                    // InternalBase.g:647:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
+                    // InternalBase.g:647:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityCS__IsNullFreeAssignment_2_1();
@@ -1860,13 +1860,13 @@
 
 
     // $ANTLR start "rule__MultiplicityStringCS__StringBoundsAlternatives_0"
-    // InternalBase.g:654:1: rule__MultiplicityStringCS__StringBoundsAlternatives_0 : ( ( '*' ) | ( '+' ) | ( '?' ) );
+    // InternalBase.g:656:1: rule__MultiplicityStringCS__StringBoundsAlternatives_0 : ( ( '*' ) | ( '+' ) | ( '?' ) );
     public final void rule__MultiplicityStringCS__StringBoundsAlternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:658:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
+            // InternalBase.g:660:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
             int alt3=3;
             switch ( input.LA(1) ) {
             case 17:
@@ -1894,10 +1894,10 @@
 
             switch (alt3) {
                 case 1 :
-                    // InternalBase.g:659:1: ( '*' )
+                    // InternalBase.g:661:1: ( '*' )
                     {
-                    // InternalBase.g:659:1: ( '*' )
-                    // InternalBase.g:660:1: '*'
+                    // InternalBase.g:661:1: ( '*' )
+                    // InternalBase.g:662:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
@@ -1913,10 +1913,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalBase.g:667:6: ( '+' )
+                    // InternalBase.g:669:6: ( '+' )
                     {
-                    // InternalBase.g:667:6: ( '+' )
-                    // InternalBase.g:668:1: '+'
+                    // InternalBase.g:669:6: ( '+' )
+                    // InternalBase.g:670:1: '+'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
@@ -1932,10 +1932,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalBase.g:675:6: ( '?' )
+                    // InternalBase.g:677:6: ( '?' )
                     {
-                    // InternalBase.g:675:6: ( '?' )
-                    // InternalBase.g:676:1: '?'
+                    // InternalBase.g:677:6: ( '?' )
+                    // InternalBase.g:678:1: '?'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
@@ -1968,13 +1968,13 @@
 
 
     // $ANTLR start "rule__TypeRefCS__Alternatives"
-    // InternalBase.g:688:1: rule__TypeRefCS__Alternatives : ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) );
+    // InternalBase.g:690:1: rule__TypeRefCS__Alternatives : ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) );
     public final void rule__TypeRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:692:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
+            // InternalBase.g:694:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
             int alt4=2;
             int LA4_0 = input.LA(1);
 
@@ -1993,10 +1993,10 @@
             }
             switch (alt4) {
                 case 1 :
-                    // InternalBase.g:693:1: ( ruleTypedRefCS )
+                    // InternalBase.g:695:1: ( ruleTypedRefCS )
                     {
-                    // InternalBase.g:693:1: ( ruleTypedRefCS )
-                    // InternalBase.g:694:1: ruleTypedRefCS
+                    // InternalBase.g:695:1: ( ruleTypedRefCS )
+                    // InternalBase.g:696:1: ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
@@ -2016,10 +2016,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalBase.g:699:6: ( ruleWildcardTypeRefCS )
+                    // InternalBase.g:701:6: ( ruleWildcardTypeRefCS )
                     {
-                    // InternalBase.g:699:6: ( ruleWildcardTypeRefCS )
-                    // InternalBase.g:700:1: ruleWildcardTypeRefCS
+                    // InternalBase.g:701:6: ( ruleWildcardTypeRefCS )
+                    // InternalBase.g:702:1: ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
@@ -2056,13 +2056,13 @@
 
 
     // $ANTLR start "rule__ID__Alternatives"
-    // InternalBase.g:710:1: rule__ID__Alternatives : ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) );
+    // InternalBase.g:712:1: rule__ID__Alternatives : ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) );
     public final void rule__ID__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:714:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
+            // InternalBase.g:716:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
             int alt5=2;
             int LA5_0 = input.LA(1);
 
@@ -2081,10 +2081,10 @@
             }
             switch (alt5) {
                 case 1 :
-                    // InternalBase.g:715:1: ( RULE_SIMPLE_ID )
+                    // InternalBase.g:717:1: ( RULE_SIMPLE_ID )
                     {
-                    // InternalBase.g:715:1: ( RULE_SIMPLE_ID )
-                    // InternalBase.g:716:1: RULE_SIMPLE_ID
+                    // InternalBase.g:717:1: ( RULE_SIMPLE_ID )
+                    // InternalBase.g:718:1: RULE_SIMPLE_ID
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
@@ -2100,10 +2100,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalBase.g:721:6: ( RULE_ESCAPED_ID )
+                    // InternalBase.g:723:6: ( RULE_ESCAPED_ID )
                     {
-                    // InternalBase.g:721:6: ( RULE_ESCAPED_ID )
-                    // InternalBase.g:722:1: RULE_ESCAPED_ID
+                    // InternalBase.g:723:6: ( RULE_ESCAPED_ID )
+                    // InternalBase.g:724:1: RULE_ESCAPED_ID
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
@@ -2136,13 +2136,13 @@
 
 
     // $ANTLR start "rule__UPPER__Alternatives"
-    // InternalBase.g:732:1: rule__UPPER__Alternatives : ( ( RULE_INT ) | ( '*' ) );
+    // InternalBase.g:734:1: rule__UPPER__Alternatives : ( ( RULE_INT ) | ( '*' ) );
     public final void rule__UPPER__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:736:1: ( ( RULE_INT ) | ( '*' ) )
+            // InternalBase.g:738:1: ( ( RULE_INT ) | ( '*' ) )
             int alt6=2;
             int LA6_0 = input.LA(1);
 
@@ -2161,10 +2161,10 @@
             }
             switch (alt6) {
                 case 1 :
-                    // InternalBase.g:737:1: ( RULE_INT )
+                    // InternalBase.g:739:1: ( RULE_INT )
                     {
-                    // InternalBase.g:737:1: ( RULE_INT )
-                    // InternalBase.g:738:1: RULE_INT
+                    // InternalBase.g:739:1: ( RULE_INT )
+                    // InternalBase.g:740:1: RULE_INT
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
@@ -2180,10 +2180,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalBase.g:743:6: ( '*' )
+                    // InternalBase.g:745:6: ( '*' )
                     {
-                    // InternalBase.g:743:6: ( '*' )
-                    // InternalBase.g:744:1: '*'
+                    // InternalBase.g:745:6: ( '*' )
+                    // InternalBase.g:746:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
@@ -2216,14 +2216,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__0"
-    // InternalBase.g:758:1: rule__MultiplicityBoundsCS__Group__0 : rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 ;
+    // InternalBase.g:760:1: rule__MultiplicityBoundsCS__Group__0 : rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 ;
     public final void rule__MultiplicityBoundsCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:762:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
-            // InternalBase.g:763:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
+            // InternalBase.g:764:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
+            // InternalBase.g:765:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_3);
             rule__MultiplicityBoundsCS__Group__0__Impl();
@@ -2254,23 +2254,23 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__0__Impl"
-    // InternalBase.g:770:1: rule__MultiplicityBoundsCS__Group__0__Impl : ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) ;
+    // InternalBase.g:772:1: rule__MultiplicityBoundsCS__Group__0__Impl : ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) ;
     public final void rule__MultiplicityBoundsCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:774:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
-            // InternalBase.g:775:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
+            // InternalBase.g:776:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
+            // InternalBase.g:777:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
             {
-            // InternalBase.g:775:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
-            // InternalBase.g:776:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
+            // InternalBase.g:777:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
+            // InternalBase.g:778:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
-            // InternalBase.g:777:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
-            // InternalBase.g:777:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
+            // InternalBase.g:779:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
+            // InternalBase.g:779:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__LowerBoundAssignment_0();
@@ -2305,14 +2305,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__1"
-    // InternalBase.g:787:1: rule__MultiplicityBoundsCS__Group__1 : rule__MultiplicityBoundsCS__Group__1__Impl ;
+    // InternalBase.g:789:1: rule__MultiplicityBoundsCS__Group__1 : rule__MultiplicityBoundsCS__Group__1__Impl ;
     public final void rule__MultiplicityBoundsCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:791:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
-            // InternalBase.g:792:2: rule__MultiplicityBoundsCS__Group__1__Impl
+            // InternalBase.g:793:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
+            // InternalBase.g:794:2: rule__MultiplicityBoundsCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__Group__1__Impl();
@@ -2338,22 +2338,22 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__1__Impl"
-    // InternalBase.g:798:1: rule__MultiplicityBoundsCS__Group__1__Impl : ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) ;
+    // InternalBase.g:800:1: rule__MultiplicityBoundsCS__Group__1__Impl : ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) ;
     public final void rule__MultiplicityBoundsCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:802:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
-            // InternalBase.g:803:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
+            // InternalBase.g:804:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
+            // InternalBase.g:805:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
             {
-            // InternalBase.g:803:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
-            // InternalBase.g:804:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
+            // InternalBase.g:805:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
+            // InternalBase.g:806:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
-            // InternalBase.g:805:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
+            // InternalBase.g:807:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             int alt7=2;
             int LA7_0 = input.LA(1);
 
@@ -2362,7 +2362,7 @@
             }
             switch (alt7) {
                 case 1 :
-                    // InternalBase.g:805:2: rule__MultiplicityBoundsCS__Group_1__0
+                    // InternalBase.g:807:2: rule__MultiplicityBoundsCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityBoundsCS__Group_1__0();
@@ -2400,14 +2400,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__0"
-    // InternalBase.g:819:1: rule__MultiplicityBoundsCS__Group_1__0 : rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 ;
+    // InternalBase.g:821:1: rule__MultiplicityBoundsCS__Group_1__0 : rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 ;
     public final void rule__MultiplicityBoundsCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:823:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
-            // InternalBase.g:824:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
+            // InternalBase.g:825:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
+            // InternalBase.g:826:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_4);
             rule__MultiplicityBoundsCS__Group_1__0__Impl();
@@ -2438,17 +2438,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__0__Impl"
-    // InternalBase.g:831:1: rule__MultiplicityBoundsCS__Group_1__0__Impl : ( '..' ) ;
+    // InternalBase.g:833:1: rule__MultiplicityBoundsCS__Group_1__0__Impl : ( '..' ) ;
     public final void rule__MultiplicityBoundsCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:835:1: ( ( '..' ) )
-            // InternalBase.g:836:1: ( '..' )
+            // InternalBase.g:837:1: ( ( '..' ) )
+            // InternalBase.g:838:1: ( '..' )
             {
-            // InternalBase.g:836:1: ( '..' )
-            // InternalBase.g:837:1: '..'
+            // InternalBase.g:838:1: ( '..' )
+            // InternalBase.g:839:1: '..'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
@@ -2479,14 +2479,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__1"
-    // InternalBase.g:850:1: rule__MultiplicityBoundsCS__Group_1__1 : rule__MultiplicityBoundsCS__Group_1__1__Impl ;
+    // InternalBase.g:852:1: rule__MultiplicityBoundsCS__Group_1__1 : rule__MultiplicityBoundsCS__Group_1__1__Impl ;
     public final void rule__MultiplicityBoundsCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:854:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
-            // InternalBase.g:855:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
+            // InternalBase.g:856:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
+            // InternalBase.g:857:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__Group_1__1__Impl();
@@ -2512,23 +2512,23 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__1__Impl"
-    // InternalBase.g:861:1: rule__MultiplicityBoundsCS__Group_1__1__Impl : ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) ;
+    // InternalBase.g:863:1: rule__MultiplicityBoundsCS__Group_1__1__Impl : ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) ;
     public final void rule__MultiplicityBoundsCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:865:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
-            // InternalBase.g:866:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
+            // InternalBase.g:867:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
+            // InternalBase.g:868:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
             {
-            // InternalBase.g:866:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
-            // InternalBase.g:867:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
+            // InternalBase.g:868:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
+            // InternalBase.g:869:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
-            // InternalBase.g:868:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
-            // InternalBase.g:868:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
+            // InternalBase.g:870:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
+            // InternalBase.g:870:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1();
@@ -2563,14 +2563,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__0"
-    // InternalBase.g:882:1: rule__MultiplicityCS__Group__0 : rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 ;
+    // InternalBase.g:884:1: rule__MultiplicityCS__Group__0 : rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 ;
     public final void rule__MultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:886:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
-            // InternalBase.g:887:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
+            // InternalBase.g:888:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
+            // InternalBase.g:889:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_5);
             rule__MultiplicityCS__Group__0__Impl();
@@ -2601,17 +2601,17 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__0__Impl"
-    // InternalBase.g:894:1: rule__MultiplicityCS__Group__0__Impl : ( '[' ) ;
+    // InternalBase.g:896:1: rule__MultiplicityCS__Group__0__Impl : ( '[' ) ;
     public final void rule__MultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:898:1: ( ( '[' ) )
-            // InternalBase.g:899:1: ( '[' )
+            // InternalBase.g:900:1: ( ( '[' ) )
+            // InternalBase.g:901:1: ( '[' )
             {
-            // InternalBase.g:899:1: ( '[' )
-            // InternalBase.g:900:1: '['
+            // InternalBase.g:901:1: ( '[' )
+            // InternalBase.g:902:1: '['
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
@@ -2642,14 +2642,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__1"
-    // InternalBase.g:913:1: rule__MultiplicityCS__Group__1 : rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 ;
+    // InternalBase.g:915:1: rule__MultiplicityCS__Group__1 : rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 ;
     public final void rule__MultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:917:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
-            // InternalBase.g:918:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
+            // InternalBase.g:919:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
+            // InternalBase.g:920:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__MultiplicityCS__Group__1__Impl();
@@ -2680,23 +2680,23 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__1__Impl"
-    // InternalBase.g:925:1: rule__MultiplicityCS__Group__1__Impl : ( ( rule__MultiplicityCS__Alternatives_1 ) ) ;
+    // InternalBase.g:927:1: rule__MultiplicityCS__Group__1__Impl : ( ( rule__MultiplicityCS__Alternatives_1 ) ) ;
     public final void rule__MultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:929:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
-            // InternalBase.g:930:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
+            // InternalBase.g:931:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
+            // InternalBase.g:932:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
             {
-            // InternalBase.g:930:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
-            // InternalBase.g:931:1: ( rule__MultiplicityCS__Alternatives_1 )
+            // InternalBase.g:932:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
+            // InternalBase.g:933:1: ( rule__MultiplicityCS__Alternatives_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
-            // InternalBase.g:932:1: ( rule__MultiplicityCS__Alternatives_1 )
-            // InternalBase.g:932:2: rule__MultiplicityCS__Alternatives_1
+            // InternalBase.g:934:1: ( rule__MultiplicityCS__Alternatives_1 )
+            // InternalBase.g:934:2: rule__MultiplicityCS__Alternatives_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityCS__Alternatives_1();
@@ -2731,14 +2731,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__2"
-    // InternalBase.g:942:1: rule__MultiplicityCS__Group__2 : rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 ;
+    // InternalBase.g:944:1: rule__MultiplicityCS__Group__2 : rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 ;
     public final void rule__MultiplicityCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:946:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
-            // InternalBase.g:947:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
+            // InternalBase.g:948:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
+            // InternalBase.g:949:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__MultiplicityCS__Group__2__Impl();
@@ -2769,22 +2769,22 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__2__Impl"
-    // InternalBase.g:954:1: rule__MultiplicityCS__Group__2__Impl : ( ( rule__MultiplicityCS__Alternatives_2 )? ) ;
+    // InternalBase.g:956:1: rule__MultiplicityCS__Group__2__Impl : ( ( rule__MultiplicityCS__Alternatives_2 )? ) ;
     public final void rule__MultiplicityCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:958:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
-            // InternalBase.g:959:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
+            // InternalBase.g:960:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
+            // InternalBase.g:961:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
             {
-            // InternalBase.g:959:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
-            // InternalBase.g:960:1: ( rule__MultiplicityCS__Alternatives_2 )?
+            // InternalBase.g:961:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
+            // InternalBase.g:962:1: ( rule__MultiplicityCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
-            // InternalBase.g:961:1: ( rule__MultiplicityCS__Alternatives_2 )?
+            // InternalBase.g:963:1: ( rule__MultiplicityCS__Alternatives_2 )?
             int alt8=2;
             int LA8_0 = input.LA(1);
 
@@ -2793,7 +2793,7 @@
             }
             switch (alt8) {
                 case 1 :
-                    // InternalBase.g:961:2: rule__MultiplicityCS__Alternatives_2
+                    // InternalBase.g:963:2: rule__MultiplicityCS__Alternatives_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityCS__Alternatives_2();
@@ -2831,14 +2831,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__3"
-    // InternalBase.g:971:1: rule__MultiplicityCS__Group__3 : rule__MultiplicityCS__Group__3__Impl ;
+    // InternalBase.g:973:1: rule__MultiplicityCS__Group__3 : rule__MultiplicityCS__Group__3__Impl ;
     public final void rule__MultiplicityCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:975:1: ( rule__MultiplicityCS__Group__3__Impl )
-            // InternalBase.g:976:2: rule__MultiplicityCS__Group__3__Impl
+            // InternalBase.g:977:1: ( rule__MultiplicityCS__Group__3__Impl )
+            // InternalBase.g:978:2: rule__MultiplicityCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityCS__Group__3__Impl();
@@ -2864,17 +2864,17 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__3__Impl"
-    // InternalBase.g:982:1: rule__MultiplicityCS__Group__3__Impl : ( ']' ) ;
+    // InternalBase.g:984:1: rule__MultiplicityCS__Group__3__Impl : ( ']' ) ;
     public final void rule__MultiplicityCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:986:1: ( ( ']' ) )
-            // InternalBase.g:987:1: ( ']' )
+            // InternalBase.g:988:1: ( ( ']' ) )
+            // InternalBase.g:989:1: ( ']' )
             {
-            // InternalBase.g:987:1: ( ']' )
-            // InternalBase.g:988:1: ']'
+            // InternalBase.g:989:1: ( ']' )
+            // InternalBase.g:990:1: ']'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
@@ -2905,14 +2905,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__0"
-    // InternalBase.g:1009:1: rule__PathNameCS__Group__0 : rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 ;
+    // InternalBase.g:1011:1: rule__PathNameCS__Group__0 : rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 ;
     public final void rule__PathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1013:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
-            // InternalBase.g:1014:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
+            // InternalBase.g:1015:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
+            // InternalBase.g:1016:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__PathNameCS__Group__0__Impl();
@@ -2943,23 +2943,23 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__0__Impl"
-    // InternalBase.g:1021:1: rule__PathNameCS__Group__0__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) ;
+    // InternalBase.g:1023:1: rule__PathNameCS__Group__0__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) ;
     public final void rule__PathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1025:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
-            // InternalBase.g:1026:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalBase.g:1027:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
+            // InternalBase.g:1028:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
             {
-            // InternalBase.g:1026:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
-            // InternalBase.g:1027:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalBase.g:1028:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalBase.g:1029:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
-            // InternalBase.g:1028:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
-            // InternalBase.g:1028:2: rule__PathNameCS__OwnedPathElementsAssignment_0
+            // InternalBase.g:1030:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalBase.g:1030:2: rule__PathNameCS__OwnedPathElementsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__OwnedPathElementsAssignment_0();
@@ -2994,14 +2994,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__1"
-    // InternalBase.g:1038:1: rule__PathNameCS__Group__1 : rule__PathNameCS__Group__1__Impl ;
+    // InternalBase.g:1040:1: rule__PathNameCS__Group__1 : rule__PathNameCS__Group__1__Impl ;
     public final void rule__PathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1042:1: ( rule__PathNameCS__Group__1__Impl )
-            // InternalBase.g:1043:2: rule__PathNameCS__Group__1__Impl
+            // InternalBase.g:1044:1: ( rule__PathNameCS__Group__1__Impl )
+            // InternalBase.g:1045:2: rule__PathNameCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__Group__1__Impl();
@@ -3027,22 +3027,22 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__1__Impl"
-    // InternalBase.g:1049:1: rule__PathNameCS__Group__1__Impl : ( ( rule__PathNameCS__Group_1__0 )* ) ;
+    // InternalBase.g:1051:1: rule__PathNameCS__Group__1__Impl : ( ( rule__PathNameCS__Group_1__0 )* ) ;
     public final void rule__PathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1053:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
-            // InternalBase.g:1054:1: ( ( rule__PathNameCS__Group_1__0 )* )
+            // InternalBase.g:1055:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
+            // InternalBase.g:1056:1: ( ( rule__PathNameCS__Group_1__0 )* )
             {
-            // InternalBase.g:1054:1: ( ( rule__PathNameCS__Group_1__0 )* )
-            // InternalBase.g:1055:1: ( rule__PathNameCS__Group_1__0 )*
+            // InternalBase.g:1056:1: ( ( rule__PathNameCS__Group_1__0 )* )
+            // InternalBase.g:1057:1: ( rule__PathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
-            // InternalBase.g:1056:1: ( rule__PathNameCS__Group_1__0 )*
+            // InternalBase.g:1058:1: ( rule__PathNameCS__Group_1__0 )*
             loop9:
             do {
                 int alt9=2;
@@ -3055,7 +3055,7 @@
 
                 switch (alt9) {
             	case 1 :
-            	    // InternalBase.g:1056:2: rule__PathNameCS__Group_1__0
+            	    // InternalBase.g:1058:2: rule__PathNameCS__Group_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_8);
             	    rule__PathNameCS__Group_1__0();
@@ -3096,14 +3096,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__0"
-    // InternalBase.g:1070:1: rule__PathNameCS__Group_1__0 : rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 ;
+    // InternalBase.g:1072:1: rule__PathNameCS__Group_1__0 : rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 ;
     public final void rule__PathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1074:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
-            // InternalBase.g:1075:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
+            // InternalBase.g:1076:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
+            // InternalBase.g:1077:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_9);
             rule__PathNameCS__Group_1__0__Impl();
@@ -3134,17 +3134,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__0__Impl"
-    // InternalBase.g:1082:1: rule__PathNameCS__Group_1__0__Impl : ( '::' ) ;
+    // InternalBase.g:1084:1: rule__PathNameCS__Group_1__0__Impl : ( '::' ) ;
     public final void rule__PathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1086:1: ( ( '::' ) )
-            // InternalBase.g:1087:1: ( '::' )
+            // InternalBase.g:1088:1: ( ( '::' ) )
+            // InternalBase.g:1089:1: ( '::' )
             {
-            // InternalBase.g:1087:1: ( '::' )
-            // InternalBase.g:1088:1: '::'
+            // InternalBase.g:1089:1: ( '::' )
+            // InternalBase.g:1090:1: '::'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
@@ -3175,14 +3175,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__1"
-    // InternalBase.g:1101:1: rule__PathNameCS__Group_1__1 : rule__PathNameCS__Group_1__1__Impl ;
+    // InternalBase.g:1103:1: rule__PathNameCS__Group_1__1 : rule__PathNameCS__Group_1__1__Impl ;
     public final void rule__PathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1105:1: ( rule__PathNameCS__Group_1__1__Impl )
-            // InternalBase.g:1106:2: rule__PathNameCS__Group_1__1__Impl
+            // InternalBase.g:1107:1: ( rule__PathNameCS__Group_1__1__Impl )
+            // InternalBase.g:1108:2: rule__PathNameCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__Group_1__1__Impl();
@@ -3208,23 +3208,23 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__1__Impl"
-    // InternalBase.g:1112:1: rule__PathNameCS__Group_1__1__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
+    // InternalBase.g:1114:1: rule__PathNameCS__Group_1__1__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
     public final void rule__PathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1116:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
-            // InternalBase.g:1117:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalBase.g:1118:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
+            // InternalBase.g:1119:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
             {
-            // InternalBase.g:1117:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
-            // InternalBase.g:1118:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalBase.g:1119:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalBase.g:1120:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
-            // InternalBase.g:1119:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
-            // InternalBase.g:1119:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
+            // InternalBase.g:1121:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalBase.g:1121:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__OwnedPathElementsAssignment_1_1();
@@ -3259,14 +3259,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__0"
-    // InternalBase.g:1133:1: rule__TemplateBindingCS__Group__0 : rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 ;
+    // InternalBase.g:1137:1: rule__TemplateBindingCS__Group__0 : rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 ;
     public final void rule__TemplateBindingCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1137:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
-            // InternalBase.g:1138:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
+            // InternalBase.g:1141:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
+            // InternalBase.g:1142:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__TemplateBindingCS__Group__0__Impl();
@@ -3297,23 +3297,23 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__0__Impl"
-    // InternalBase.g:1145:1: rule__TemplateBindingCS__Group__0__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) ;
+    // InternalBase.g:1149:1: rule__TemplateBindingCS__Group__0__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) ;
     public final void rule__TemplateBindingCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1149:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
-            // InternalBase.g:1150:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
+            // InternalBase.g:1153:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
+            // InternalBase.g:1154:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
             {
-            // InternalBase.g:1150:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
-            // InternalBase.g:1151:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
+            // InternalBase.g:1154:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
+            // InternalBase.g:1155:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
-            // InternalBase.g:1152:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
-            // InternalBase.g:1152:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
+            // InternalBase.g:1156:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
+            // InternalBase.g:1156:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0();
@@ -3348,14 +3348,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__1"
-    // InternalBase.g:1162:1: rule__TemplateBindingCS__Group__1 : rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 ;
+    // InternalBase.g:1166:1: rule__TemplateBindingCS__Group__1 : rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 ;
     public final void rule__TemplateBindingCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1166:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
-            // InternalBase.g:1167:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
+            // InternalBase.g:1170:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
+            // InternalBase.g:1171:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__TemplateBindingCS__Group__1__Impl();
@@ -3386,22 +3386,22 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__1__Impl"
-    // InternalBase.g:1174:1: rule__TemplateBindingCS__Group__1__Impl : ( ( rule__TemplateBindingCS__Group_1__0 )* ) ;
+    // InternalBase.g:1178:1: rule__TemplateBindingCS__Group__1__Impl : ( ( rule__TemplateBindingCS__Group_1__0 )* ) ;
     public final void rule__TemplateBindingCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1178:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
-            // InternalBase.g:1179:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
+            // InternalBase.g:1182:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
+            // InternalBase.g:1183:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
             {
-            // InternalBase.g:1179:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
-            // InternalBase.g:1180:1: ( rule__TemplateBindingCS__Group_1__0 )*
+            // InternalBase.g:1183:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
+            // InternalBase.g:1184:1: ( rule__TemplateBindingCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
-            // InternalBase.g:1181:1: ( rule__TemplateBindingCS__Group_1__0 )*
+            // InternalBase.g:1185:1: ( rule__TemplateBindingCS__Group_1__0 )*
             loop10:
             do {
                 int alt10=2;
@@ -3414,7 +3414,7 @@
 
                 switch (alt10) {
             	case 1 :
-            	    // InternalBase.g:1181:2: rule__TemplateBindingCS__Group_1__0
+            	    // InternalBase.g:1185:2: rule__TemplateBindingCS__Group_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_11);
             	    rule__TemplateBindingCS__Group_1__0();
@@ -3455,14 +3455,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__2"
-    // InternalBase.g:1191:1: rule__TemplateBindingCS__Group__2 : rule__TemplateBindingCS__Group__2__Impl ;
+    // InternalBase.g:1195:1: rule__TemplateBindingCS__Group__2 : rule__TemplateBindingCS__Group__2__Impl ;
     public final void rule__TemplateBindingCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1195:1: ( rule__TemplateBindingCS__Group__2__Impl )
-            // InternalBase.g:1196:2: rule__TemplateBindingCS__Group__2__Impl
+            // InternalBase.g:1199:1: ( rule__TemplateBindingCS__Group__2__Impl )
+            // InternalBase.g:1200:2: rule__TemplateBindingCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group__2__Impl();
@@ -3488,22 +3488,22 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__2__Impl"
-    // InternalBase.g:1202:1: rule__TemplateBindingCS__Group__2__Impl : ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) ;
+    // InternalBase.g:1206:1: rule__TemplateBindingCS__Group__2__Impl : ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) ;
     public final void rule__TemplateBindingCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1206:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
-            // InternalBase.g:1207:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
+            // InternalBase.g:1210:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
+            // InternalBase.g:1211:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
             {
-            // InternalBase.g:1207:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
-            // InternalBase.g:1208:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
+            // InternalBase.g:1211:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
+            // InternalBase.g:1212:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
-            // InternalBase.g:1209:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
+            // InternalBase.g:1213:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             int alt11=2;
             int LA11_0 = input.LA(1);
 
@@ -3512,7 +3512,7 @@
             }
             switch (alt11) {
                 case 1 :
-                    // InternalBase.g:1209:2: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2
+                    // InternalBase.g:1213:2: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TemplateBindingCS__OwnedMultiplicityAssignment_2();
@@ -3550,14 +3550,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__0"
-    // InternalBase.g:1225:1: rule__TemplateBindingCS__Group_1__0 : rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 ;
+    // InternalBase.g:1229:1: rule__TemplateBindingCS__Group_1__0 : rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 ;
     public final void rule__TemplateBindingCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1229:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
-            // InternalBase.g:1230:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
+            // InternalBase.g:1233:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
+            // InternalBase.g:1234:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__TemplateBindingCS__Group_1__0__Impl();
@@ -3588,17 +3588,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__0__Impl"
-    // InternalBase.g:1237:1: rule__TemplateBindingCS__Group_1__0__Impl : ( ',' ) ;
+    // InternalBase.g:1241:1: rule__TemplateBindingCS__Group_1__0__Impl : ( ',' ) ;
     public final void rule__TemplateBindingCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1241:1: ( ( ',' ) )
-            // InternalBase.g:1242:1: ( ',' )
+            // InternalBase.g:1245:1: ( ( ',' ) )
+            // InternalBase.g:1246:1: ( ',' )
             {
-            // InternalBase.g:1242:1: ( ',' )
-            // InternalBase.g:1243:1: ','
+            // InternalBase.g:1246:1: ( ',' )
+            // InternalBase.g:1247:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
@@ -3629,14 +3629,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__1"
-    // InternalBase.g:1256:1: rule__TemplateBindingCS__Group_1__1 : rule__TemplateBindingCS__Group_1__1__Impl ;
+    // InternalBase.g:1260:1: rule__TemplateBindingCS__Group_1__1 : rule__TemplateBindingCS__Group_1__1__Impl ;
     public final void rule__TemplateBindingCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1260:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
-            // InternalBase.g:1261:2: rule__TemplateBindingCS__Group_1__1__Impl
+            // InternalBase.g:1264:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
+            // InternalBase.g:1265:2: rule__TemplateBindingCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group_1__1__Impl();
@@ -3662,23 +3662,23 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__1__Impl"
-    // InternalBase.g:1267:1: rule__TemplateBindingCS__Group_1__1__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) ;
+    // InternalBase.g:1271:1: rule__TemplateBindingCS__Group_1__1__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) ;
     public final void rule__TemplateBindingCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1271:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
-            // InternalBase.g:1272:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
+            // InternalBase.g:1275:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
+            // InternalBase.g:1276:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
             {
-            // InternalBase.g:1272:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
-            // InternalBase.g:1273:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
+            // InternalBase.g:1276:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
+            // InternalBase.g:1277:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
-            // InternalBase.g:1274:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
-            // InternalBase.g:1274:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
+            // InternalBase.g:1278:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
+            // InternalBase.g:1278:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1();
@@ -3713,14 +3713,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__0"
-    // InternalBase.g:1290:1: rule__TypeParameterCS__Group__0 : rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 ;
+    // InternalBase.g:1294:1: rule__TypeParameterCS__Group__0 : rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 ;
     public final void rule__TypeParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1294:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
-            // InternalBase.g:1295:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
+            // InternalBase.g:1298:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
+            // InternalBase.g:1299:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__TypeParameterCS__Group__0__Impl();
@@ -3751,23 +3751,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__0__Impl"
-    // InternalBase.g:1302:1: rule__TypeParameterCS__Group__0__Impl : ( ( rule__TypeParameterCS__NameAssignment_0 ) ) ;
+    // InternalBase.g:1306:1: rule__TypeParameterCS__Group__0__Impl : ( ( rule__TypeParameterCS__NameAssignment_0 ) ) ;
     public final void rule__TypeParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1306:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
-            // InternalBase.g:1307:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
+            // InternalBase.g:1310:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
+            // InternalBase.g:1311:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
             {
-            // InternalBase.g:1307:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
-            // InternalBase.g:1308:1: ( rule__TypeParameterCS__NameAssignment_0 )
+            // InternalBase.g:1311:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
+            // InternalBase.g:1312:1: ( rule__TypeParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
-            // InternalBase.g:1309:1: ( rule__TypeParameterCS__NameAssignment_0 )
-            // InternalBase.g:1309:2: rule__TypeParameterCS__NameAssignment_0
+            // InternalBase.g:1313:1: ( rule__TypeParameterCS__NameAssignment_0 )
+            // InternalBase.g:1313:2: rule__TypeParameterCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__NameAssignment_0();
@@ -3802,14 +3802,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__1"
-    // InternalBase.g:1319:1: rule__TypeParameterCS__Group__1 : rule__TypeParameterCS__Group__1__Impl ;
+    // InternalBase.g:1323:1: rule__TypeParameterCS__Group__1 : rule__TypeParameterCS__Group__1__Impl ;
     public final void rule__TypeParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1323:1: ( rule__TypeParameterCS__Group__1__Impl )
-            // InternalBase.g:1324:2: rule__TypeParameterCS__Group__1__Impl
+            // InternalBase.g:1327:1: ( rule__TypeParameterCS__Group__1__Impl )
+            // InternalBase.g:1328:2: rule__TypeParameterCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group__1__Impl();
@@ -3835,22 +3835,22 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__1__Impl"
-    // InternalBase.g:1330:1: rule__TypeParameterCS__Group__1__Impl : ( ( rule__TypeParameterCS__Group_1__0 )? ) ;
+    // InternalBase.g:1334:1: rule__TypeParameterCS__Group__1__Impl : ( ( rule__TypeParameterCS__Group_1__0 )? ) ;
     public final void rule__TypeParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1334:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
-            // InternalBase.g:1335:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
+            // InternalBase.g:1338:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
+            // InternalBase.g:1339:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
             {
-            // InternalBase.g:1335:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
-            // InternalBase.g:1336:1: ( rule__TypeParameterCS__Group_1__0 )?
+            // InternalBase.g:1339:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
+            // InternalBase.g:1340:1: ( rule__TypeParameterCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
-            // InternalBase.g:1337:1: ( rule__TypeParameterCS__Group_1__0 )?
+            // InternalBase.g:1341:1: ( rule__TypeParameterCS__Group_1__0 )?
             int alt12=2;
             int LA12_0 = input.LA(1);
 
@@ -3859,7 +3859,7 @@
             }
             switch (alt12) {
                 case 1 :
-                    // InternalBase.g:1337:2: rule__TypeParameterCS__Group_1__0
+                    // InternalBase.g:1341:2: rule__TypeParameterCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeParameterCS__Group_1__0();
@@ -3897,14 +3897,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__0"
-    // InternalBase.g:1351:1: rule__TypeParameterCS__Group_1__0 : rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 ;
+    // InternalBase.g:1355:1: rule__TypeParameterCS__Group_1__0 : rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 ;
     public final void rule__TypeParameterCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1355:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
-            // InternalBase.g:1356:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
+            // InternalBase.g:1359:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
+            // InternalBase.g:1360:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_9);
             rule__TypeParameterCS__Group_1__0__Impl();
@@ -3935,17 +3935,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__0__Impl"
-    // InternalBase.g:1363:1: rule__TypeParameterCS__Group_1__0__Impl : ( 'extends' ) ;
+    // InternalBase.g:1367:1: rule__TypeParameterCS__Group_1__0__Impl : ( 'extends' ) ;
     public final void rule__TypeParameterCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1367:1: ( ( 'extends' ) )
-            // InternalBase.g:1368:1: ( 'extends' )
+            // InternalBase.g:1371:1: ( ( 'extends' ) )
+            // InternalBase.g:1372:1: ( 'extends' )
             {
-            // InternalBase.g:1368:1: ( 'extends' )
-            // InternalBase.g:1369:1: 'extends'
+            // InternalBase.g:1372:1: ( 'extends' )
+            // InternalBase.g:1373:1: 'extends'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
@@ -3976,14 +3976,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__1"
-    // InternalBase.g:1382:1: rule__TypeParameterCS__Group_1__1 : rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 ;
+    // InternalBase.g:1386:1: rule__TypeParameterCS__Group_1__1 : rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 ;
     public final void rule__TypeParameterCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1386:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
-            // InternalBase.g:1387:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
+            // InternalBase.g:1390:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
+            // InternalBase.g:1391:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__TypeParameterCS__Group_1__1__Impl();
@@ -4014,23 +4014,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__1__Impl"
-    // InternalBase.g:1394:1: rule__TypeParameterCS__Group_1__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) ;
+    // InternalBase.g:1398:1: rule__TypeParameterCS__Group_1__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) ;
     public final void rule__TypeParameterCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1398:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
-            // InternalBase.g:1399:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
+            // InternalBase.g:1402:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
+            // InternalBase.g:1403:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
             {
-            // InternalBase.g:1399:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
-            // InternalBase.g:1400:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
+            // InternalBase.g:1403:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
+            // InternalBase.g:1404:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
-            // InternalBase.g:1401:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
-            // InternalBase.g:1401:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
+            // InternalBase.g:1405:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
+            // InternalBase.g:1405:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__OwnedExtendsAssignment_1_1();
@@ -4065,14 +4065,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__2"
-    // InternalBase.g:1411:1: rule__TypeParameterCS__Group_1__2 : rule__TypeParameterCS__Group_1__2__Impl ;
+    // InternalBase.g:1415:1: rule__TypeParameterCS__Group_1__2 : rule__TypeParameterCS__Group_1__2__Impl ;
     public final void rule__TypeParameterCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1415:1: ( rule__TypeParameterCS__Group_1__2__Impl )
-            // InternalBase.g:1416:2: rule__TypeParameterCS__Group_1__2__Impl
+            // InternalBase.g:1419:1: ( rule__TypeParameterCS__Group_1__2__Impl )
+            // InternalBase.g:1420:2: rule__TypeParameterCS__Group_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group_1__2__Impl();
@@ -4098,22 +4098,22 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__2__Impl"
-    // InternalBase.g:1422:1: rule__TypeParameterCS__Group_1__2__Impl : ( ( rule__TypeParameterCS__Group_1_2__0 )* ) ;
+    // InternalBase.g:1426:1: rule__TypeParameterCS__Group_1__2__Impl : ( ( rule__TypeParameterCS__Group_1_2__0 )* ) ;
     public final void rule__TypeParameterCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1426:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
-            // InternalBase.g:1427:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
+            // InternalBase.g:1430:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
+            // InternalBase.g:1431:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
             {
-            // InternalBase.g:1427:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
-            // InternalBase.g:1428:1: ( rule__TypeParameterCS__Group_1_2__0 )*
+            // InternalBase.g:1431:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
+            // InternalBase.g:1432:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
-            // InternalBase.g:1429:1: ( rule__TypeParameterCS__Group_1_2__0 )*
+            // InternalBase.g:1433:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             loop13:
             do {
                 int alt13=2;
@@ -4126,7 +4126,7 @@
 
                 switch (alt13) {
             	case 1 :
-            	    // InternalBase.g:1429:2: rule__TypeParameterCS__Group_1_2__0
+            	    // InternalBase.g:1433:2: rule__TypeParameterCS__Group_1_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_15);
             	    rule__TypeParameterCS__Group_1_2__0();
@@ -4167,14 +4167,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__0"
-    // InternalBase.g:1445:1: rule__TypeParameterCS__Group_1_2__0 : rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 ;
+    // InternalBase.g:1449:1: rule__TypeParameterCS__Group_1_2__0 : rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 ;
     public final void rule__TypeParameterCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1449:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
-            // InternalBase.g:1450:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
+            // InternalBase.g:1453:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
+            // InternalBase.g:1454:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_9);
             rule__TypeParameterCS__Group_1_2__0__Impl();
@@ -4205,17 +4205,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__0__Impl"
-    // InternalBase.g:1457:1: rule__TypeParameterCS__Group_1_2__0__Impl : ( '&&' ) ;
+    // InternalBase.g:1461:1: rule__TypeParameterCS__Group_1_2__0__Impl : ( '&&' ) ;
     public final void rule__TypeParameterCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1461:1: ( ( '&&' ) )
-            // InternalBase.g:1462:1: ( '&&' )
+            // InternalBase.g:1465:1: ( ( '&&' ) )
+            // InternalBase.g:1466:1: ( '&&' )
             {
-            // InternalBase.g:1462:1: ( '&&' )
-            // InternalBase.g:1463:1: '&&'
+            // InternalBase.g:1466:1: ( '&&' )
+            // InternalBase.g:1467:1: '&&'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
@@ -4246,14 +4246,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__1"
-    // InternalBase.g:1476:1: rule__TypeParameterCS__Group_1_2__1 : rule__TypeParameterCS__Group_1_2__1__Impl ;
+    // InternalBase.g:1480:1: rule__TypeParameterCS__Group_1_2__1 : rule__TypeParameterCS__Group_1_2__1__Impl ;
     public final void rule__TypeParameterCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1480:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
-            // InternalBase.g:1481:2: rule__TypeParameterCS__Group_1_2__1__Impl
+            // InternalBase.g:1484:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
+            // InternalBase.g:1485:2: rule__TypeParameterCS__Group_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group_1_2__1__Impl();
@@ -4279,23 +4279,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__1__Impl"
-    // InternalBase.g:1487:1: rule__TypeParameterCS__Group_1_2__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) ;
+    // InternalBase.g:1491:1: rule__TypeParameterCS__Group_1_2__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) ;
     public final void rule__TypeParameterCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1491:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
-            // InternalBase.g:1492:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
+            // InternalBase.g:1495:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
+            // InternalBase.g:1496:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
             {
-            // InternalBase.g:1492:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
-            // InternalBase.g:1493:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
+            // InternalBase.g:1496:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
+            // InternalBase.g:1497:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
-            // InternalBase.g:1494:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
-            // InternalBase.g:1494:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
+            // InternalBase.g:1498:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
+            // InternalBase.g:1498:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1();
@@ -4330,14 +4330,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__0"
-    // InternalBase.g:1508:1: rule__TypedTypeRefCS__Group__0 : rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 ;
+    // InternalBase.g:1512:1: rule__TypedTypeRefCS__Group__0 : rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 ;
     public final void rule__TypedTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1512:1: ( rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 )
-            // InternalBase.g:1513:2: rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1
+            // InternalBase.g:1516:1: ( rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 )
+            // InternalBase.g:1517:2: rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__TypedTypeRefCS__Group__0__Impl();
@@ -4368,23 +4368,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__0__Impl"
-    // InternalBase.g:1520:1: rule__TypedTypeRefCS__Group__0__Impl : ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) ;
+    // InternalBase.g:1524:1: rule__TypedTypeRefCS__Group__0__Impl : ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) ;
     public final void rule__TypedTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1524:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) )
-            // InternalBase.g:1525:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
+            // InternalBase.g:1528:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) )
+            // InternalBase.g:1529:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
             {
-            // InternalBase.g:1525:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
-            // InternalBase.g:1526:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
+            // InternalBase.g:1529:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
+            // InternalBase.g:1530:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0());
             }
-            // InternalBase.g:1527:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
-            // InternalBase.g:1527:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0
+            // InternalBase.g:1531:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
+            // InternalBase.g:1531:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__OwnedPathNameAssignment_0();
@@ -4419,14 +4419,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__1"
-    // InternalBase.g:1537:1: rule__TypedTypeRefCS__Group__1 : rule__TypedTypeRefCS__Group__1__Impl ;
+    // InternalBase.g:1541:1: rule__TypedTypeRefCS__Group__1 : rule__TypedTypeRefCS__Group__1__Impl ;
     public final void rule__TypedTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1541:1: ( rule__TypedTypeRefCS__Group__1__Impl )
-            // InternalBase.g:1542:2: rule__TypedTypeRefCS__Group__1__Impl
+            // InternalBase.g:1545:1: ( rule__TypedTypeRefCS__Group__1__Impl )
+            // InternalBase.g:1546:2: rule__TypedTypeRefCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group__1__Impl();
@@ -4452,22 +4452,22 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__1__Impl"
-    // InternalBase.g:1548:1: rule__TypedTypeRefCS__Group__1__Impl : ( ( rule__TypedTypeRefCS__Group_1__0 )? ) ;
+    // InternalBase.g:1552:1: rule__TypedTypeRefCS__Group__1__Impl : ( ( rule__TypedTypeRefCS__Group_1__0 )? ) ;
     public final void rule__TypedTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1552:1: ( ( ( rule__TypedTypeRefCS__Group_1__0 )? ) )
-            // InternalBase.g:1553:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
+            // InternalBase.g:1556:1: ( ( ( rule__TypedTypeRefCS__Group_1__0 )? ) )
+            // InternalBase.g:1557:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
             {
-            // InternalBase.g:1553:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
-            // InternalBase.g:1554:1: ( rule__TypedTypeRefCS__Group_1__0 )?
+            // InternalBase.g:1557:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
+            // InternalBase.g:1558:1: ( rule__TypedTypeRefCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1());
             }
-            // InternalBase.g:1555:1: ( rule__TypedTypeRefCS__Group_1__0 )?
+            // InternalBase.g:1559:1: ( rule__TypedTypeRefCS__Group_1__0 )?
             int alt14=2;
             int LA14_0 = input.LA(1);
 
@@ -4476,7 +4476,7 @@
             }
             switch (alt14) {
                 case 1 :
-                    // InternalBase.g:1555:2: rule__TypedTypeRefCS__Group_1__0
+                    // InternalBase.g:1559:2: rule__TypedTypeRefCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypedTypeRefCS__Group_1__0();
@@ -4514,14 +4514,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__0"
-    // InternalBase.g:1569:1: rule__TypedTypeRefCS__Group_1__0 : rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 ;
+    // InternalBase.g:1573:1: rule__TypedTypeRefCS__Group_1__0 : rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 ;
     public final void rule__TypedTypeRefCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1573:1: ( rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 )
-            // InternalBase.g:1574:2: rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1
+            // InternalBase.g:1577:1: ( rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 )
+            // InternalBase.g:1578:2: rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__TypedTypeRefCS__Group_1__0__Impl();
@@ -4552,17 +4552,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__0__Impl"
-    // InternalBase.g:1581:1: rule__TypedTypeRefCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalBase.g:1585:1: rule__TypedTypeRefCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__TypedTypeRefCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1585:1: ( ( '(' ) )
-            // InternalBase.g:1586:1: ( '(' )
+            // InternalBase.g:1589:1: ( ( '(' ) )
+            // InternalBase.g:1590:1: ( '(' )
             {
-            // InternalBase.g:1586:1: ( '(' )
-            // InternalBase.g:1587:1: '('
+            // InternalBase.g:1590:1: ( '(' )
+            // InternalBase.g:1591:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
@@ -4593,14 +4593,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__1"
-    // InternalBase.g:1600:1: rule__TypedTypeRefCS__Group_1__1 : rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 ;
+    // InternalBase.g:1604:1: rule__TypedTypeRefCS__Group_1__1 : rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 ;
     public final void rule__TypedTypeRefCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1604:1: ( rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 )
-            // InternalBase.g:1605:2: rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2
+            // InternalBase.g:1608:1: ( rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 )
+            // InternalBase.g:1609:2: rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_17);
             rule__TypedTypeRefCS__Group_1__1__Impl();
@@ -4631,23 +4631,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__1__Impl"
-    // InternalBase.g:1612:1: rule__TypedTypeRefCS__Group_1__1__Impl : ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) ;
+    // InternalBase.g:1616:1: rule__TypedTypeRefCS__Group_1__1__Impl : ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) ;
     public final void rule__TypedTypeRefCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1616:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) )
-            // InternalBase.g:1617:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
+            // InternalBase.g:1620:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) )
+            // InternalBase.g:1621:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
             {
-            // InternalBase.g:1617:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
-            // InternalBase.g:1618:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
+            // InternalBase.g:1621:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
+            // InternalBase.g:1622:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1());
             }
-            // InternalBase.g:1619:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
-            // InternalBase.g:1619:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1
+            // InternalBase.g:1623:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
+            // InternalBase.g:1623:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__OwnedBindingAssignment_1_1();
@@ -4682,14 +4682,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__2"
-    // InternalBase.g:1629:1: rule__TypedTypeRefCS__Group_1__2 : rule__TypedTypeRefCS__Group_1__2__Impl ;
+    // InternalBase.g:1633:1: rule__TypedTypeRefCS__Group_1__2 : rule__TypedTypeRefCS__Group_1__2__Impl ;
     public final void rule__TypedTypeRefCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1633:1: ( rule__TypedTypeRefCS__Group_1__2__Impl )
-            // InternalBase.g:1634:2: rule__TypedTypeRefCS__Group_1__2__Impl
+            // InternalBase.g:1637:1: ( rule__TypedTypeRefCS__Group_1__2__Impl )
+            // InternalBase.g:1638:2: rule__TypedTypeRefCS__Group_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group_1__2__Impl();
@@ -4715,17 +4715,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__2__Impl"
-    // InternalBase.g:1640:1: rule__TypedTypeRefCS__Group_1__2__Impl : ( ')' ) ;
+    // InternalBase.g:1644:1: rule__TypedTypeRefCS__Group_1__2__Impl : ( ')' ) ;
     public final void rule__TypedTypeRefCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1644:1: ( ( ')' ) )
-            // InternalBase.g:1645:1: ( ')' )
+            // InternalBase.g:1648:1: ( ( ')' ) )
+            // InternalBase.g:1649:1: ( ')' )
             {
-            // InternalBase.g:1645:1: ( ')' )
-            // InternalBase.g:1646:1: ')'
+            // InternalBase.g:1649:1: ( ')' )
+            // InternalBase.g:1650:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
@@ -4756,14 +4756,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__0"
-    // InternalBase.g:1665:1: rule__WildcardTypeRefCS__Group__0 : rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 ;
+    // InternalBase.g:1669:1: rule__WildcardTypeRefCS__Group__0 : rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 ;
     public final void rule__WildcardTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1669:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
-            // InternalBase.g:1670:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
+            // InternalBase.g:1673:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
+            // InternalBase.g:1674:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__WildcardTypeRefCS__Group__0__Impl();
@@ -4794,23 +4794,23 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__0__Impl"
-    // InternalBase.g:1677:1: rule__WildcardTypeRefCS__Group__0__Impl : ( () ) ;
+    // InternalBase.g:1681:1: rule__WildcardTypeRefCS__Group__0__Impl : ( () ) ;
     public final void rule__WildcardTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1681:1: ( ( () ) )
-            // InternalBase.g:1682:1: ( () )
+            // InternalBase.g:1685:1: ( ( () ) )
+            // InternalBase.g:1686:1: ( () )
             {
-            // InternalBase.g:1682:1: ( () )
-            // InternalBase.g:1683:1: ()
+            // InternalBase.g:1686:1: ( () )
+            // InternalBase.g:1687:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
-            // InternalBase.g:1684:1: ()
-            // InternalBase.g:1686:1:
+            // InternalBase.g:1688:1: ()
+            // InternalBase.g:1690:1:
             {
             }
 
@@ -4835,14 +4835,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__1"
-    // InternalBase.g:1696:1: rule__WildcardTypeRefCS__Group__1 : rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 ;
+    // InternalBase.g:1700:1: rule__WildcardTypeRefCS__Group__1 : rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 ;
     public final void rule__WildcardTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1700:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
-            // InternalBase.g:1701:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
+            // InternalBase.g:1704:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
+            // InternalBase.g:1705:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__WildcardTypeRefCS__Group__1__Impl();
@@ -4873,17 +4873,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__1__Impl"
-    // InternalBase.g:1708:1: rule__WildcardTypeRefCS__Group__1__Impl : ( '?' ) ;
+    // InternalBase.g:1712:1: rule__WildcardTypeRefCS__Group__1__Impl : ( '?' ) ;
     public final void rule__WildcardTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1712:1: ( ( '?' ) )
-            // InternalBase.g:1713:1: ( '?' )
+            // InternalBase.g:1716:1: ( ( '?' ) )
+            // InternalBase.g:1717:1: ( '?' )
             {
-            // InternalBase.g:1713:1: ( '?' )
-            // InternalBase.g:1714:1: '?'
+            // InternalBase.g:1717:1: ( '?' )
+            // InternalBase.g:1718:1: '?'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
@@ -4914,14 +4914,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__2"
-    // InternalBase.g:1727:1: rule__WildcardTypeRefCS__Group__2 : rule__WildcardTypeRefCS__Group__2__Impl ;
+    // InternalBase.g:1731:1: rule__WildcardTypeRefCS__Group__2 : rule__WildcardTypeRefCS__Group__2__Impl ;
     public final void rule__WildcardTypeRefCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1731:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
-            // InternalBase.g:1732:2: rule__WildcardTypeRefCS__Group__2__Impl
+            // InternalBase.g:1735:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
+            // InternalBase.g:1736:2: rule__WildcardTypeRefCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group__2__Impl();
@@ -4947,22 +4947,22 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__2__Impl"
-    // InternalBase.g:1738:1: rule__WildcardTypeRefCS__Group__2__Impl : ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) ;
+    // InternalBase.g:1742:1: rule__WildcardTypeRefCS__Group__2__Impl : ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) ;
     public final void rule__WildcardTypeRefCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1742:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
-            // InternalBase.g:1743:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
+            // InternalBase.g:1746:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
+            // InternalBase.g:1747:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
             {
-            // InternalBase.g:1743:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
-            // InternalBase.g:1744:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
+            // InternalBase.g:1747:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
+            // InternalBase.g:1748:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
-            // InternalBase.g:1745:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
+            // InternalBase.g:1749:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             int alt15=2;
             int LA15_0 = input.LA(1);
 
@@ -4971,7 +4971,7 @@
             }
             switch (alt15) {
                 case 1 :
-                    // InternalBase.g:1745:2: rule__WildcardTypeRefCS__Group_2__0
+                    // InternalBase.g:1749:2: rule__WildcardTypeRefCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__WildcardTypeRefCS__Group_2__0();
@@ -5009,14 +5009,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__0"
-    // InternalBase.g:1761:1: rule__WildcardTypeRefCS__Group_2__0 : rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 ;
+    // InternalBase.g:1765:1: rule__WildcardTypeRefCS__Group_2__0 : rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 ;
     public final void rule__WildcardTypeRefCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1765:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
-            // InternalBase.g:1766:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
+            // InternalBase.g:1769:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
+            // InternalBase.g:1770:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_9);
             rule__WildcardTypeRefCS__Group_2__0__Impl();
@@ -5047,17 +5047,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__0__Impl"
-    // InternalBase.g:1773:1: rule__WildcardTypeRefCS__Group_2__0__Impl : ( 'extends' ) ;
+    // InternalBase.g:1777:1: rule__WildcardTypeRefCS__Group_2__0__Impl : ( 'extends' ) ;
     public final void rule__WildcardTypeRefCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1777:1: ( ( 'extends' ) )
-            // InternalBase.g:1778:1: ( 'extends' )
+            // InternalBase.g:1781:1: ( ( 'extends' ) )
+            // InternalBase.g:1782:1: ( 'extends' )
             {
-            // InternalBase.g:1778:1: ( 'extends' )
-            // InternalBase.g:1779:1: 'extends'
+            // InternalBase.g:1782:1: ( 'extends' )
+            // InternalBase.g:1783:1: 'extends'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
@@ -5088,14 +5088,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__1"
-    // InternalBase.g:1792:1: rule__WildcardTypeRefCS__Group_2__1 : rule__WildcardTypeRefCS__Group_2__1__Impl ;
+    // InternalBase.g:1796:1: rule__WildcardTypeRefCS__Group_2__1 : rule__WildcardTypeRefCS__Group_2__1__Impl ;
     public final void rule__WildcardTypeRefCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1796:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
-            // InternalBase.g:1797:2: rule__WildcardTypeRefCS__Group_2__1__Impl
+            // InternalBase.g:1800:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
+            // InternalBase.g:1801:2: rule__WildcardTypeRefCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group_2__1__Impl();
@@ -5121,23 +5121,23 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__1__Impl"
-    // InternalBase.g:1803:1: rule__WildcardTypeRefCS__Group_2__1__Impl : ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) ;
+    // InternalBase.g:1807:1: rule__WildcardTypeRefCS__Group_2__1__Impl : ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) ;
     public final void rule__WildcardTypeRefCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1807:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
-            // InternalBase.g:1808:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
+            // InternalBase.g:1811:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
+            // InternalBase.g:1812:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
             {
-            // InternalBase.g:1808:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
-            // InternalBase.g:1809:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
+            // InternalBase.g:1812:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
+            // InternalBase.g:1813:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
-            // InternalBase.g:1810:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
-            // InternalBase.g:1810:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
+            // InternalBase.g:1814:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
+            // InternalBase.g:1814:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1();
@@ -5172,17 +5172,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__LowerBoundAssignment_0"
-    // InternalBase.g:1825:1: rule__MultiplicityBoundsCS__LowerBoundAssignment_0 : ( ruleLOWER ) ;
+    // InternalBase.g:1829:1: rule__MultiplicityBoundsCS__LowerBoundAssignment_0 : ( ruleLOWER ) ;
     public final void rule__MultiplicityBoundsCS__LowerBoundAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1829:1: ( ( ruleLOWER ) )
-            // InternalBase.g:1830:1: ( ruleLOWER )
+            // InternalBase.g:1833:1: ( ( ruleLOWER ) )
+            // InternalBase.g:1834:1: ( ruleLOWER )
             {
-            // InternalBase.g:1830:1: ( ruleLOWER )
-            // InternalBase.g:1831:1: ruleLOWER
+            // InternalBase.g:1834:1: ( ruleLOWER )
+            // InternalBase.g:1835:1: ruleLOWER
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
@@ -5217,17 +5217,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1"
-    // InternalBase.g:1840:1: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 : ( ruleUPPER ) ;
+    // InternalBase.g:1844:1: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 : ( ruleUPPER ) ;
     public final void rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1844:1: ( ( ruleUPPER ) )
-            // InternalBase.g:1845:1: ( ruleUPPER )
+            // InternalBase.g:1848:1: ( ( ruleUPPER ) )
+            // InternalBase.g:1849:1: ( ruleUPPER )
             {
-            // InternalBase.g:1845:1: ( ruleUPPER )
-            // InternalBase.g:1846:1: ruleUPPER
+            // InternalBase.g:1849:1: ( ruleUPPER )
+            // InternalBase.g:1850:1: ruleUPPER
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
@@ -5262,23 +5262,23 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__IsNullFreeAssignment_2_1"
-    // InternalBase.g:1855:1: rule__MultiplicityCS__IsNullFreeAssignment_2_1 : ( ( '|1' ) ) ;
+    // InternalBase.g:1859:1: rule__MultiplicityCS__IsNullFreeAssignment_2_1 : ( ( '|1' ) ) ;
     public final void rule__MultiplicityCS__IsNullFreeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1859:1: ( ( ( '|1' ) ) )
-            // InternalBase.g:1860:1: ( ( '|1' ) )
+            // InternalBase.g:1863:1: ( ( ( '|1' ) ) )
+            // InternalBase.g:1864:1: ( ( '|1' ) )
             {
-            // InternalBase.g:1860:1: ( ( '|1' ) )
-            // InternalBase.g:1861:1: ( '|1' )
+            // InternalBase.g:1864:1: ( ( '|1' ) )
+            // InternalBase.g:1865:1: ( '|1' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
-            // InternalBase.g:1862:1: ( '|1' )
-            // InternalBase.g:1863:1: '|1'
+            // InternalBase.g:1866:1: ( '|1' )
+            // InternalBase.g:1867:1: '|1'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
@@ -5315,23 +5315,23 @@
 
 
     // $ANTLR start "rule__MultiplicityStringCS__StringBoundsAssignment"
-    // InternalBase.g:1878:1: rule__MultiplicityStringCS__StringBoundsAssignment : ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) ;
+    // InternalBase.g:1882:1: rule__MultiplicityStringCS__StringBoundsAssignment : ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) ;
     public final void rule__MultiplicityStringCS__StringBoundsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1882:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
-            // InternalBase.g:1883:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
+            // InternalBase.g:1886:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
+            // InternalBase.g:1887:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
             {
-            // InternalBase.g:1883:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
-            // InternalBase.g:1884:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
+            // InternalBase.g:1887:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
+            // InternalBase.g:1888:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
-            // InternalBase.g:1885:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
-            // InternalBase.g:1885:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
+            // InternalBase.g:1889:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
+            // InternalBase.g:1889:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityStringCS__StringBoundsAlternatives_0();
@@ -5366,17 +5366,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__OwnedPathElementsAssignment_0"
-    // InternalBase.g:1894:1: rule__PathNameCS__OwnedPathElementsAssignment_0 : ( ruleFirstPathElementCS ) ;
+    // InternalBase.g:1898:1: rule__PathNameCS__OwnedPathElementsAssignment_0 : ( ruleFirstPathElementCS ) ;
     public final void rule__PathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1898:1: ( ( ruleFirstPathElementCS ) )
-            // InternalBase.g:1899:1: ( ruleFirstPathElementCS )
+            // InternalBase.g:1902:1: ( ( ruleFirstPathElementCS ) )
+            // InternalBase.g:1903:1: ( ruleFirstPathElementCS )
             {
-            // InternalBase.g:1899:1: ( ruleFirstPathElementCS )
-            // InternalBase.g:1900:1: ruleFirstPathElementCS
+            // InternalBase.g:1903:1: ( ruleFirstPathElementCS )
+            // InternalBase.g:1904:1: ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
@@ -5411,17 +5411,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__OwnedPathElementsAssignment_1_1"
-    // InternalBase.g:1909:1: rule__PathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
+    // InternalBase.g:1913:1: rule__PathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
     public final void rule__PathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1913:1: ( ( ruleNextPathElementCS ) )
-            // InternalBase.g:1914:1: ( ruleNextPathElementCS )
+            // InternalBase.g:1917:1: ( ( ruleNextPathElementCS ) )
+            // InternalBase.g:1918:1: ( ruleNextPathElementCS )
             {
-            // InternalBase.g:1914:1: ( ruleNextPathElementCS )
-            // InternalBase.g:1915:1: ruleNextPathElementCS
+            // InternalBase.g:1918:1: ( ruleNextPathElementCS )
+            // InternalBase.g:1919:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
@@ -5456,23 +5456,23 @@
 
 
     // $ANTLR start "rule__FirstPathElementCS__ReferredElementAssignment"
-    // InternalBase.g:1924:1: rule__FirstPathElementCS__ReferredElementAssignment : ( ( ruleUnrestrictedName ) ) ;
+    // InternalBase.g:1930:1: rule__FirstPathElementCS__ReferredElementAssignment : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__FirstPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1928:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalBase.g:1929:1: ( ( ruleUnrestrictedName ) )
+            // InternalBase.g:1934:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalBase.g:1935:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalBase.g:1929:1: ( ( ruleUnrestrictedName ) )
-            // InternalBase.g:1930:1: ( ruleUnrestrictedName )
+            // InternalBase.g:1935:1: ( ( ruleUnrestrictedName ) )
+            // InternalBase.g:1936:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
-            // InternalBase.g:1931:1: ( ruleUnrestrictedName )
-            // InternalBase.g:1932:1: ruleUnrestrictedName
+            // InternalBase.g:1937:1: ( ruleUnrestrictedName )
+            // InternalBase.g:1938:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
@@ -5513,23 +5513,23 @@
 
 
     // $ANTLR start "rule__NextPathElementCS__ReferredElementAssignment"
-    // InternalBase.g:1943:1: rule__NextPathElementCS__ReferredElementAssignment : ( ( ruleUnreservedName ) ) ;
+    // InternalBase.g:1949:1: rule__NextPathElementCS__ReferredElementAssignment : ( ( ruleUnreservedName ) ) ;
     public final void rule__NextPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1947:1: ( ( ( ruleUnreservedName ) ) )
-            // InternalBase.g:1948:1: ( ( ruleUnreservedName ) )
+            // InternalBase.g:1953:1: ( ( ( ruleUnreservedName ) ) )
+            // InternalBase.g:1954:1: ( ( ruleUnreservedName ) )
             {
-            // InternalBase.g:1948:1: ( ( ruleUnreservedName ) )
-            // InternalBase.g:1949:1: ( ruleUnreservedName )
+            // InternalBase.g:1954:1: ( ( ruleUnreservedName ) )
+            // InternalBase.g:1955:1: ( ruleUnreservedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
-            // InternalBase.g:1950:1: ( ruleUnreservedName )
-            // InternalBase.g:1951:1: ruleUnreservedName
+            // InternalBase.g:1956:1: ( ruleUnreservedName )
+            // InternalBase.g:1957:1: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
@@ -5570,17 +5570,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0"
-    // InternalBase.g:1962:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 : ( ruleTemplateParameterSubstitutionCS ) ;
+    // InternalBase.g:1968:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 : ( ruleTemplateParameterSubstitutionCS ) ;
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1966:1: ( ( ruleTemplateParameterSubstitutionCS ) )
-            // InternalBase.g:1967:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalBase.g:1972:1: ( ( ruleTemplateParameterSubstitutionCS ) )
+            // InternalBase.g:1973:1: ( ruleTemplateParameterSubstitutionCS )
             {
-            // InternalBase.g:1967:1: ( ruleTemplateParameterSubstitutionCS )
-            // InternalBase.g:1968:1: ruleTemplateParameterSubstitutionCS
+            // InternalBase.g:1973:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalBase.g:1974:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
@@ -5615,17 +5615,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1"
-    // InternalBase.g:1977:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 : ( ruleTemplateParameterSubstitutionCS ) ;
+    // InternalBase.g:1983:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 : ( ruleTemplateParameterSubstitutionCS ) ;
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1981:1: ( ( ruleTemplateParameterSubstitutionCS ) )
-            // InternalBase.g:1982:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalBase.g:1987:1: ( ( ruleTemplateParameterSubstitutionCS ) )
+            // InternalBase.g:1988:1: ( ruleTemplateParameterSubstitutionCS )
             {
-            // InternalBase.g:1982:1: ( ruleTemplateParameterSubstitutionCS )
-            // InternalBase.g:1983:1: ruleTemplateParameterSubstitutionCS
+            // InternalBase.g:1988:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalBase.g:1989:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
@@ -5660,17 +5660,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedMultiplicityAssignment_2"
-    // InternalBase.g:1992:1: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 : ( ruleMultiplicityCS ) ;
+    // InternalBase.g:1998:1: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 : ( ruleMultiplicityCS ) ;
     public final void rule__TemplateBindingCS__OwnedMultiplicityAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:1996:1: ( ( ruleMultiplicityCS ) )
-            // InternalBase.g:1997:1: ( ruleMultiplicityCS )
+            // InternalBase.g:2002:1: ( ( ruleMultiplicityCS ) )
+            // InternalBase.g:2003:1: ( ruleMultiplicityCS )
             {
-            // InternalBase.g:1997:1: ( ruleMultiplicityCS )
-            // InternalBase.g:1998:1: ruleMultiplicityCS
+            // InternalBase.g:2003:1: ( ruleMultiplicityCS )
+            // InternalBase.g:2004:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
@@ -5705,17 +5705,17 @@
 
 
     // $ANTLR start "rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment"
-    // InternalBase.g:2007:1: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment : ( ruleTypeRefCS ) ;
+    // InternalBase.g:2013:1: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment : ( ruleTypeRefCS ) ;
     public final void rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:2011:1: ( ( ruleTypeRefCS ) )
-            // InternalBase.g:2012:1: ( ruleTypeRefCS )
+            // InternalBase.g:2017:1: ( ( ruleTypeRefCS ) )
+            // InternalBase.g:2018:1: ( ruleTypeRefCS )
             {
-            // InternalBase.g:2012:1: ( ruleTypeRefCS )
-            // InternalBase.g:2013:1: ruleTypeRefCS
+            // InternalBase.g:2018:1: ( ruleTypeRefCS )
+            // InternalBase.g:2019:1: ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
@@ -5750,17 +5750,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__NameAssignment_0"
-    // InternalBase.g:2024:1: rule__TypeParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalBase.g:2030:1: rule__TypeParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__TypeParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:2028:1: ( ( ruleUnrestrictedName ) )
-            // InternalBase.g:2029:1: ( ruleUnrestrictedName )
+            // InternalBase.g:2034:1: ( ( ruleUnrestrictedName ) )
+            // InternalBase.g:2035:1: ( ruleUnrestrictedName )
             {
-            // InternalBase.g:2029:1: ( ruleUnrestrictedName )
-            // InternalBase.g:2030:1: ruleUnrestrictedName
+            // InternalBase.g:2035:1: ( ruleUnrestrictedName )
+            // InternalBase.g:2036:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -5795,17 +5795,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__OwnedExtendsAssignment_1_1"
-    // InternalBase.g:2039:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_1 : ( ruleTypedRefCS ) ;
+    // InternalBase.g:2045:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_1 : ( ruleTypedRefCS ) ;
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:2043:1: ( ( ruleTypedRefCS ) )
-            // InternalBase.g:2044:1: ( ruleTypedRefCS )
+            // InternalBase.g:2049:1: ( ( ruleTypedRefCS ) )
+            // InternalBase.g:2050:1: ( ruleTypedRefCS )
             {
-            // InternalBase.g:2044:1: ( ruleTypedRefCS )
-            // InternalBase.g:2045:1: ruleTypedRefCS
+            // InternalBase.g:2050:1: ( ruleTypedRefCS )
+            // InternalBase.g:2051:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
@@ -5840,17 +5840,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1"
-    // InternalBase.g:2054:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 : ( ruleTypedRefCS ) ;
+    // InternalBase.g:2060:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:2058:1: ( ( ruleTypedRefCS ) )
-            // InternalBase.g:2059:1: ( ruleTypedRefCS )
+            // InternalBase.g:2064:1: ( ( ruleTypedRefCS ) )
+            // InternalBase.g:2065:1: ( ruleTypedRefCS )
             {
-            // InternalBase.g:2059:1: ( ruleTypedRefCS )
-            // InternalBase.g:2060:1: ruleTypedRefCS
+            // InternalBase.g:2065:1: ( ruleTypedRefCS )
+            // InternalBase.g:2066:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
@@ -5885,17 +5885,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__OwnedPathNameAssignment_0"
-    // InternalBase.g:2069:1: rule__TypedTypeRefCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
+    // InternalBase.g:2075:1: rule__TypedTypeRefCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
     public final void rule__TypedTypeRefCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:2073:1: ( ( rulePathNameCS ) )
-            // InternalBase.g:2074:1: ( rulePathNameCS )
+            // InternalBase.g:2079:1: ( ( rulePathNameCS ) )
+            // InternalBase.g:2080:1: ( rulePathNameCS )
             {
-            // InternalBase.g:2074:1: ( rulePathNameCS )
-            // InternalBase.g:2075:1: rulePathNameCS
+            // InternalBase.g:2080:1: ( rulePathNameCS )
+            // InternalBase.g:2081:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
@@ -5930,17 +5930,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__OwnedBindingAssignment_1_1"
-    // InternalBase.g:2084:1: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 : ( ruleTemplateBindingCS ) ;
+    // InternalBase.g:2090:1: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 : ( ruleTemplateBindingCS ) ;
     public final void rule__TypedTypeRefCS__OwnedBindingAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:2088:1: ( ( ruleTemplateBindingCS ) )
-            // InternalBase.g:2089:1: ( ruleTemplateBindingCS )
+            // InternalBase.g:2094:1: ( ( ruleTemplateBindingCS ) )
+            // InternalBase.g:2095:1: ( ruleTemplateBindingCS )
             {
-            // InternalBase.g:2089:1: ( ruleTemplateBindingCS )
-            // InternalBase.g:2090:1: ruleTemplateBindingCS
+            // InternalBase.g:2095:1: ( ruleTemplateBindingCS )
+            // InternalBase.g:2096:1: ruleTemplateBindingCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
@@ -5975,17 +5975,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1"
-    // InternalBase.g:2099:1: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 : ( ruleTypedRefCS ) ;
+    // InternalBase.g:2105:1: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalBase.g:2103:1: ( ( ruleTypedRefCS ) )
-            // InternalBase.g:2104:1: ( ruleTypedRefCS )
+            // InternalBase.g:2109:1: ( ( ruleTypedRefCS ) )
+            // InternalBase.g:2110:1: ( ruleTypedRefCS )
             {
-            // InternalBase.g:2104:1: ( ruleTypedRefCS )
-            // InternalBase.g:2105:1: ruleTypedRefCS
+            // InternalBase.g:2110:1: ( ruleTypedRefCS )
+            // InternalBase.g:2111:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/Base.xtextbin b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/Base.xtextbin
index fccaa1d..fc0cb43 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/Base.xtextbin
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/Base.xtextbin
Binary files differ
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/BaseGrammarResource.java b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/BaseGrammarResource.java
index 61b92be..2743723 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/BaseGrammarResource.java
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/BaseGrammarResource.java
@@ -200,6 +200,7 @@
 		private static final @NonNull ParserRule PR_UPPER = createParserRule("UPPER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.EINT));
 		private static final @NonNull ParserRule PR_URI = createParserRule("URI", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_UnreservedName = createParserRule("UnreservedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
+		private static final @NonNull ParserRule PR_UnreservedPathNameCS = createParserRule("UnreservedPathNameCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.PATH_NAME_CS));
 		private static final @NonNull ParserRule PR_UnrestrictedName = createParserRule("UnrestrictedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_WildcardTypeRefCS = createParserRule("WildcardTypeRefCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.WILDCARD_TYPE_REF_CS));
 
@@ -296,6 +297,12 @@
 				createRuleCall(TR_SINGLE_QUOTED_STRING));
 			PR_UnreservedName.setAlternatives(
 				createRuleCall(PR_UnrestrictedName));
+			PR_UnreservedPathNameCS.setAlternatives(
+				createGroup(
+					createAssignment("ownedPathElements", "+=", createRuleCall(PR_NextPathElementCS)),
+					setCardinality("*", createGroup(
+						createKeyword("::"),
+						createAssignment("ownedPathElements", "+=", createRuleCall(PR_NextPathElementCS))))));
 			PR_UnrestrictedName.setAlternatives(
 				createRuleCall(PR_Identifier));
 			PR_WildcardTypeRefCS.setAlternatives(
@@ -324,6 +331,7 @@
 				rules.add(PR_MultiplicityCS);
 				rules.add(PR_MultiplicityStringCS);
 				rules.add(PR_PathNameCS);
+				rules.add(PR_UnreservedPathNameCS);
 				rules.add(PR_FirstPathElementCS);
 				rules.add(PR_NextPathElementCS);
 				rules.add(PR_TemplateBindingCS);
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/internal/InternalBase.g b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/internal/InternalBase.g
index c4301ee..39d71d8 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/internal/InternalBase.g
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/internal/InternalBase.g
@@ -335,6 +335,8 @@
 
 
 
+
+
 // Entry rule entryRuleFirstPathElementCS
 entryRuleFirstPathElementCS returns [EObject current=null]
 	:
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/internal/InternalBaseLexer.java b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/internal/InternalBaseLexer.java
index b0ccf63..c67576d 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/internal/InternalBaseLexer.java
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/internal/InternalBaseLexer.java
@@ -352,8 +352,8 @@
     // $ANTLR start "RULE_ESCAPED_CHARACTER"
     public final void mRULE_ESCAPED_CHARACTER() throws RecognitionException {
         try {
-            // InternalBase.g:1020:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
-            // InternalBase.g:1020:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+            // InternalBase.g:1022:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
+            // InternalBase.g:1022:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
             match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -377,8 +377,8 @@
     // $ANTLR start "RULE_LETTER_CHARACTER"
     public final void mRULE_LETTER_CHARACTER() throws RecognitionException {
         try {
-            // InternalBase.g:1022:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
-            // InternalBase.g:1022:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
+            // InternalBase.g:1024:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
+            // InternalBase.g:1024:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
             {
             if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
                 input.consume();
@@ -403,11 +403,11 @@
         try {
             int _type = RULE_DOUBLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:1024:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
-            // InternalBase.g:1024:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+            // InternalBase.g:1026:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
+            // InternalBase.g:1026:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
             match('\"');
-            // InternalBase.g:1024:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
+            // InternalBase.g:1026:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
                 int alt1=3;
@@ -423,14 +423,14 @@
 
                 switch (alt1) {
             	case 1 :
-            	    // InternalBase.g:1024:34: RULE_ESCAPED_CHARACTER
+            	    // InternalBase.g:1026:34: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalBase.g:1024:57: ~ ( ( '\\\\' | '\"' ) )
+            	    // InternalBase.g:1026:57: ~ ( ( '\\\\' | '\"' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -467,11 +467,11 @@
         try {
             int _type = RULE_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:1026:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            // InternalBase.g:1026:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+            // InternalBase.g:1028:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // InternalBase.g:1028:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
             match('\'');
-            // InternalBase.g:1026:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
+            // InternalBase.g:1028:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
                 int alt2=3;
@@ -487,14 +487,14 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // InternalBase.g:1026:35: RULE_ESCAPED_CHARACTER
+            	    // InternalBase.g:1028:35: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalBase.g:1026:58: ~ ( ( '\\\\' | '\\'' ) )
+            	    // InternalBase.g:1028:58: ~ ( ( '\\\\' | '\\'' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -531,12 +531,12 @@
         try {
             int _type = RULE_ML_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:1028:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
-            // InternalBase.g:1028:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
+            // InternalBase.g:1030:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
+            // InternalBase.g:1030:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
             match("/'");
 
-            // InternalBase.g:1028:38: ( options {greedy=false; } : . )*
+            // InternalBase.g:1030:38: ( options {greedy=false; } : . )*
             loop3:
             do {
                 int alt3=2;
@@ -561,7 +561,7 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // InternalBase.g:1028:66: .
+            	    // InternalBase.g:1030:66: .
             	    {
             	    matchAny();
 
@@ -591,11 +591,11 @@
         try {
             int _type = RULE_SIMPLE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:1030:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
-            // InternalBase.g:1030:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalBase.g:1032:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
+            // InternalBase.g:1032:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
             mRULE_LETTER_CHARACTER();
-            // InternalBase.g:1030:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalBase.g:1032:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
                 int alt4=2;
@@ -644,8 +644,8 @@
         try {
             int _type = RULE_ESCAPED_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:1032:17: ( '_' RULE_SINGLE_QUOTED_STRING )
-            // InternalBase.g:1032:19: '_' RULE_SINGLE_QUOTED_STRING
+            // InternalBase.g:1034:17: ( '_' RULE_SINGLE_QUOTED_STRING )
+            // InternalBase.g:1034:19: '_' RULE_SINGLE_QUOTED_STRING
             {
             match('_');
             mRULE_SINGLE_QUOTED_STRING();
@@ -665,10 +665,10 @@
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:1034:10: ( ( '0' .. '9' )+ )
-            // InternalBase.g:1034:12: ( '0' .. '9' )+
+            // InternalBase.g:1036:10: ( ( '0' .. '9' )+ )
+            // InternalBase.g:1036:12: ( '0' .. '9' )+
             {
-            // InternalBase.g:1034:12: ( '0' .. '9' )+
+            // InternalBase.g:1036:12: ( '0' .. '9' )+
             int cnt5=0;
             loop5:
             do {
@@ -682,7 +682,7 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // InternalBase.g:1034:13: '0' .. '9'
+            	    // InternalBase.g:1036:13: '0' .. '9'
             	    {
             	    matchRange('0','9');
 
@@ -714,12 +714,12 @@
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:1036:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // InternalBase.g:1036:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // InternalBase.g:1038:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // InternalBase.g:1038:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*");
 
-            // InternalBase.g:1036:24: ( options {greedy=false; } : . )*
+            // InternalBase.g:1038:24: ( options {greedy=false; } : . )*
             loop6:
             do {
                 int alt6=2;
@@ -744,7 +744,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // InternalBase.g:1036:52: .
+            	    // InternalBase.g:1038:52: .
             	    {
             	    matchAny();
 
@@ -774,12 +774,12 @@
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:1038:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // InternalBase.g:1038:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // InternalBase.g:1040:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // InternalBase.g:1040:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("--");
 
-            // InternalBase.g:1038:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // InternalBase.g:1040:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
             do {
                 int alt7=2;
@@ -792,7 +792,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // InternalBase.g:1038:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // InternalBase.g:1040:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -812,7 +812,7 @@
                 }
             } while (true);
 
-            // InternalBase.g:1038:40: ( ( '\\r' )? '\\n' )?
+            // InternalBase.g:1040:40: ( ( '\\r' )? '\\n' )?
             int alt9=2;
             int LA9_0 = input.LA(1);
 
@@ -821,9 +821,9 @@
             }
             switch (alt9) {
                 case 1 :
-                    // InternalBase.g:1038:41: ( '\\r' )? '\\n'
+                    // InternalBase.g:1040:41: ( '\\r' )? '\\n'
                     {
-                    // InternalBase.g:1038:41: ( '\\r' )?
+                    // InternalBase.g:1040:41: ( '\\r' )?
                     int alt8=2;
                     int LA8_0 = input.LA(1);
 
@@ -832,7 +832,7 @@
                     }
                     switch (alt8) {
                         case 1 :
-                            // InternalBase.g:1038:41: '\\r'
+                            // InternalBase.g:1040:41: '\\r'
                             {
                             match('\r');
 
@@ -864,10 +864,10 @@
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:1040:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // InternalBase.g:1040:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalBase.g:1042:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // InternalBase.g:1042:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // InternalBase.g:1040:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalBase.g:1042:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt10=0;
             loop10:
             do {
@@ -921,8 +921,8 @@
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalBase.g:1042:16: ( . )
-            // InternalBase.g:1042:18: .
+            // InternalBase.g:1044:16: ( . )
+            // InternalBase.g:1044:18: .
             {
             matchAny();
 
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/internal/InternalBaseParser.java b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/internal/InternalBaseParser.java
index 66f9f8f..587a34f 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/internal/InternalBaseParser.java
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/internal/InternalBaseParser.java
@@ -869,7 +869,7 @@
 
 
     // $ANTLR start "entryRuleFirstPathElementCS"
-    // InternalBase.g:339:1: entryRuleFirstPathElementCS returns [EObject current=null] : iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ;
+    // InternalBase.g:341:1: entryRuleFirstPathElementCS returns [EObject current=null] : iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ;
     public final EObject entryRuleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
@@ -877,8 +877,8 @@
 
 
         try {
-            // InternalBase.g:340:2: (iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF )
-            // InternalBase.g:341:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
+            // InternalBase.g:342:2: (iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF )
+            // InternalBase.g:343:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getFirstPathElementCSRule());
@@ -909,21 +909,21 @@
 
 
     // $ANTLR start "ruleFirstPathElementCS"
-    // InternalBase.g:348:1: ruleFirstPathElementCS returns [EObject current=null] : ( ( ruleUnrestrictedName ) ) ;
+    // InternalBase.g:350:1: ruleFirstPathElementCS returns [EObject current=null] : ( ( ruleUnrestrictedName ) ) ;
     public final EObject ruleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
          enterRule();
 
         try {
-            // InternalBase.g:351:28: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalBase.g:352:1: ( ( ruleUnrestrictedName ) )
+            // InternalBase.g:353:28: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalBase.g:354:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalBase.g:352:1: ( ( ruleUnrestrictedName ) )
-            // InternalBase.g:353:1: ( ruleUnrestrictedName )
+            // InternalBase.g:354:1: ( ( ruleUnrestrictedName ) )
+            // InternalBase.g:355:1: ( ruleUnrestrictedName )
             {
-            // InternalBase.g:353:1: ( ruleUnrestrictedName )
-            // InternalBase.g:354:3: ruleUnrestrictedName
+            // InternalBase.g:355:1: ( ruleUnrestrictedName )
+            // InternalBase.g:356:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
 
@@ -978,7 +978,7 @@
 
 
     // $ANTLR start "entryRuleNextPathElementCS"
-    // InternalBase.g:378:1: entryRuleNextPathElementCS returns [EObject current=null] : iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ;
+    // InternalBase.g:380:1: entryRuleNextPathElementCS returns [EObject current=null] : iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ;
     public final EObject entryRuleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
@@ -986,8 +986,8 @@
 
 
         try {
-            // InternalBase.g:379:2: (iv_ruleNextPathElementCS= ruleNextPathElementCS EOF )
-            // InternalBase.g:380:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
+            // InternalBase.g:381:2: (iv_ruleNextPathElementCS= ruleNextPathElementCS EOF )
+            // InternalBase.g:382:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getNextPathElementCSRule());
@@ -1018,21 +1018,21 @@
 
 
     // $ANTLR start "ruleNextPathElementCS"
-    // InternalBase.g:387:1: ruleNextPathElementCS returns [EObject current=null] : ( ( ruleUnreservedName ) ) ;
+    // InternalBase.g:389:1: ruleNextPathElementCS returns [EObject current=null] : ( ( ruleUnreservedName ) ) ;
     public final EObject ruleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
          enterRule();
 
         try {
-            // InternalBase.g:390:28: ( ( ( ruleUnreservedName ) ) )
-            // InternalBase.g:391:1: ( ( ruleUnreservedName ) )
+            // InternalBase.g:392:28: ( ( ( ruleUnreservedName ) ) )
+            // InternalBase.g:393:1: ( ( ruleUnreservedName ) )
             {
-            // InternalBase.g:391:1: ( ( ruleUnreservedName ) )
-            // InternalBase.g:392:1: ( ruleUnreservedName )
+            // InternalBase.g:393:1: ( ( ruleUnreservedName ) )
+            // InternalBase.g:394:1: ( ruleUnreservedName )
             {
-            // InternalBase.g:392:1: ( ruleUnreservedName )
-            // InternalBase.g:393:3: ruleUnreservedName
+            // InternalBase.g:394:1: ( ruleUnreservedName )
+            // InternalBase.g:395:3: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
 
@@ -1087,7 +1087,7 @@
 
 
     // $ANTLR start "entryRuleTemplateBindingCS"
-    // InternalBase.g:417:1: entryRuleTemplateBindingCS returns [EObject current=null] : iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ;
+    // InternalBase.g:419:1: entryRuleTemplateBindingCS returns [EObject current=null] : iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ;
     public final EObject entryRuleTemplateBindingCS() throws RecognitionException {
         EObject current = null;
 
@@ -1095,8 +1095,8 @@
 
 
         try {
-            // InternalBase.g:418:2: (iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF )
-            // InternalBase.g:419:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
+            // InternalBase.g:420:2: (iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF )
+            // InternalBase.g:421:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTemplateBindingCSRule());
@@ -1127,7 +1127,7 @@
 
 
     // $ANTLR start "ruleTemplateBindingCS"
-    // InternalBase.g:426:1: ruleTemplateBindingCS returns [EObject current=null] : ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) ;
+    // InternalBase.g:428:1: ruleTemplateBindingCS returns [EObject current=null] : ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) ;
     public final EObject ruleTemplateBindingCS() throws RecognitionException {
         EObject current = null;
 
@@ -1142,17 +1142,17 @@
          enterRule();
 
         try {
-            // InternalBase.g:429:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
-            // InternalBase.g:430:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
+            // InternalBase.g:431:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
+            // InternalBase.g:432:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
             {
-            // InternalBase.g:430:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
-            // InternalBase.g:430:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
+            // InternalBase.g:432:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
+            // InternalBase.g:432:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
             {
-            // InternalBase.g:430:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) )
-            // InternalBase.g:431:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
+            // InternalBase.g:432:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) )
+            // InternalBase.g:433:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
             {
-            // InternalBase.g:431:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
-            // InternalBase.g:432:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
+            // InternalBase.g:433:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
+            // InternalBase.g:434:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
 
@@ -1183,7 +1183,7 @@
 
             }
 
-            // InternalBase.g:448:2: (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )*
+            // InternalBase.g:450:2: (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )*
             loop6:
             do {
                 int alt6=2;
@@ -1196,7 +1196,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // InternalBase.g:448:4: otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
+            	    // InternalBase.g:450:4: otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
             	    {
             	    otherlv_1=(Token)match(input,25,FollowSets000.FOLLOW_11); if (state.failed) return current;
             	    if ( state.backtracking==0 ) {
@@ -1204,11 +1204,11 @@
             	          	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
 
             	    }
-            	    // InternalBase.g:452:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
-            	    // InternalBase.g:453:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
+            	    // InternalBase.g:454:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
+            	    // InternalBase.g:455:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
             	    {
-            	    // InternalBase.g:453:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
-            	    // InternalBase.g:454:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
+            	    // InternalBase.g:455:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
+            	    // InternalBase.g:456:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
             	    {
             	    if ( state.backtracking==0 ) {
 
@@ -1248,7 +1248,7 @@
                 }
             } while (true);
 
-            // InternalBase.g:470:4: ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
+            // InternalBase.g:472:4: ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
             int alt7=2;
             int LA7_0 = input.LA(1);
 
@@ -1257,10 +1257,10 @@
             }
             switch (alt7) {
                 case 1 :
-                    // InternalBase.g:471:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
+                    // InternalBase.g:473:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
                     {
-                    // InternalBase.g:471:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
-                    // InternalBase.g:472:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
+                    // InternalBase.g:473:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
+                    // InternalBase.g:474:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -1317,7 +1317,7 @@
 
 
     // $ANTLR start "entryRuleTemplateParameterSubstitutionCS"
-    // InternalBase.g:496:1: entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] : iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ;
+    // InternalBase.g:498:1: entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] : iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ;
     public final EObject entryRuleTemplateParameterSubstitutionCS() throws RecognitionException {
         EObject current = null;
 
@@ -1325,8 +1325,8 @@
 
 
         try {
-            // InternalBase.g:497:2: (iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF )
-            // InternalBase.g:498:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
+            // InternalBase.g:499:2: (iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF )
+            // InternalBase.g:500:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule());
@@ -1357,7 +1357,7 @@
 
 
     // $ANTLR start "ruleTemplateParameterSubstitutionCS"
-    // InternalBase.g:505:1: ruleTemplateParameterSubstitutionCS returns [EObject current=null] : ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) ;
+    // InternalBase.g:507:1: ruleTemplateParameterSubstitutionCS returns [EObject current=null] : ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) ;
     public final EObject ruleTemplateParameterSubstitutionCS() throws RecognitionException {
         EObject current = null;
 
@@ -1367,14 +1367,14 @@
          enterRule();
 
         try {
-            // InternalBase.g:508:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
-            // InternalBase.g:509:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
+            // InternalBase.g:510:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
+            // InternalBase.g:511:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
             {
-            // InternalBase.g:509:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
-            // InternalBase.g:510:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
+            // InternalBase.g:511:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
+            // InternalBase.g:512:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
             {
-            // InternalBase.g:510:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
-            // InternalBase.g:511:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
+            // InternalBase.g:512:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
+            // InternalBase.g:513:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
 
@@ -1425,7 +1425,7 @@
 
 
     // $ANTLR start "entryRuleTypeParameterCS"
-    // InternalBase.g:537:1: entryRuleTypeParameterCS returns [EObject current=null] : iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ;
+    // InternalBase.g:539:1: entryRuleTypeParameterCS returns [EObject current=null] : iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ;
     public final EObject entryRuleTypeParameterCS() throws RecognitionException {
         EObject current = null;
 
@@ -1433,8 +1433,8 @@
 
 
         try {
-            // InternalBase.g:538:2: (iv_ruleTypeParameterCS= ruleTypeParameterCS EOF )
-            // InternalBase.g:539:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
+            // InternalBase.g:540:2: (iv_ruleTypeParameterCS= ruleTypeParameterCS EOF )
+            // InternalBase.g:541:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypeParameterCSRule());
@@ -1465,7 +1465,7 @@
 
 
     // $ANTLR start "ruleTypeParameterCS"
-    // InternalBase.g:546:1: ruleTypeParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) ;
+    // InternalBase.g:548:1: ruleTypeParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) ;
     public final EObject ruleTypeParameterCS() throws RecognitionException {
         EObject current = null;
 
@@ -1481,17 +1481,17 @@
          enterRule();
 
         try {
-            // InternalBase.g:549:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
-            // InternalBase.g:550:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
+            // InternalBase.g:551:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
+            // InternalBase.g:552:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
             {
-            // InternalBase.g:550:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
-            // InternalBase.g:550:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
+            // InternalBase.g:552:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
+            // InternalBase.g:552:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
             {
-            // InternalBase.g:550:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
-            // InternalBase.g:551:1: (lv_name_0_0= ruleUnrestrictedName )
+            // InternalBase.g:552:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
+            // InternalBase.g:553:1: (lv_name_0_0= ruleUnrestrictedName )
             {
-            // InternalBase.g:551:1: (lv_name_0_0= ruleUnrestrictedName )
-            // InternalBase.g:552:3: lv_name_0_0= ruleUnrestrictedName
+            // InternalBase.g:553:1: (lv_name_0_0= ruleUnrestrictedName )
+            // InternalBase.g:554:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
 
@@ -1522,7 +1522,7 @@
 
             }
 
-            // InternalBase.g:568:2: (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
+            // InternalBase.g:570:2: (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
             int alt9=2;
             int LA9_0 = input.LA(1);
 
@@ -1531,7 +1531,7 @@
             }
             switch (alt9) {
                 case 1 :
-                    // InternalBase.g:568:4: otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
+                    // InternalBase.g:570:4: otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
                     {
                     otherlv_1=(Token)match(input,26,FollowSets000.FOLLOW_9); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -1539,11 +1539,11 @@
                           	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
 
                     }
-                    // InternalBase.g:572:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
-                    // InternalBase.g:573:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
+                    // InternalBase.g:574:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
+                    // InternalBase.g:575:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
                     {
-                    // InternalBase.g:573:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
-                    // InternalBase.g:574:3: lv_ownedExtends_2_0= ruleTypedRefCS
+                    // InternalBase.g:575:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
+                    // InternalBase.g:576:3: lv_ownedExtends_2_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -1574,7 +1574,7 @@
 
                     }
 
-                    // InternalBase.g:590:2: (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
+                    // InternalBase.g:592:2: (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
                     loop8:
                     do {
                         int alt8=2;
@@ -1587,7 +1587,7 @@
 
                         switch (alt8) {
                     	case 1 :
-                    	    // InternalBase.g:590:4: otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
+                    	    // InternalBase.g:592:4: otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
                     	    {
                     	    otherlv_3=(Token)match(input,27,FollowSets000.FOLLOW_9); if (state.failed) return current;
                     	    if ( state.backtracking==0 ) {
@@ -1595,11 +1595,11 @@
                     	          	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
 
                     	    }
-                    	    // InternalBase.g:594:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
-                    	    // InternalBase.g:595:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
+                    	    // InternalBase.g:596:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
+                    	    // InternalBase.g:597:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
                     	    {
-                    	    // InternalBase.g:595:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
-                    	    // InternalBase.g:596:3: lv_ownedExtends_4_0= ruleTypedRefCS
+                    	    // InternalBase.g:597:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
+                    	    // InternalBase.g:598:3: lv_ownedExtends_4_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
 
@@ -1668,7 +1668,7 @@
 
 
     // $ANTLR start "entryRuleTypeRefCS"
-    // InternalBase.g:620:1: entryRuleTypeRefCS returns [EObject current=null] : iv_ruleTypeRefCS= ruleTypeRefCS EOF ;
+    // InternalBase.g:622:1: entryRuleTypeRefCS returns [EObject current=null] : iv_ruleTypeRefCS= ruleTypeRefCS EOF ;
     public final EObject entryRuleTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -1676,8 +1676,8 @@
 
 
         try {
-            // InternalBase.g:621:2: (iv_ruleTypeRefCS= ruleTypeRefCS EOF )
-            // InternalBase.g:622:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
+            // InternalBase.g:623:2: (iv_ruleTypeRefCS= ruleTypeRefCS EOF )
+            // InternalBase.g:624:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypeRefCSRule());
@@ -1708,7 +1708,7 @@
 
 
     // $ANTLR start "ruleTypeRefCS"
-    // InternalBase.g:629:1: ruleTypeRefCS returns [EObject current=null] : (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) ;
+    // InternalBase.g:631:1: ruleTypeRefCS returns [EObject current=null] : (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) ;
     public final EObject ruleTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -1720,10 +1720,10 @@
          enterRule();
 
         try {
-            // InternalBase.g:632:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
-            // InternalBase.g:633:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
+            // InternalBase.g:634:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
+            // InternalBase.g:635:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
             {
-            // InternalBase.g:633:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
+            // InternalBase.g:635:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
             int alt10=2;
             int LA10_0 = input.LA(1);
 
@@ -1742,7 +1742,7 @@
             }
             switch (alt10) {
                 case 1 :
-                    // InternalBase.g:634:2: this_TypedRefCS_0= ruleTypedRefCS
+                    // InternalBase.g:636:2: this_TypedRefCS_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -1769,7 +1769,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalBase.g:647:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
+                    // InternalBase.g:649:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -1818,7 +1818,7 @@
 
 
     // $ANTLR start "entryRuleTypedRefCS"
-    // InternalBase.g:666:1: entryRuleTypedRefCS returns [EObject current=null] : iv_ruleTypedRefCS= ruleTypedRefCS EOF ;
+    // InternalBase.g:668:1: entryRuleTypedRefCS returns [EObject current=null] : iv_ruleTypedRefCS= ruleTypedRefCS EOF ;
     public final EObject entryRuleTypedRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -1826,8 +1826,8 @@
 
 
         try {
-            // InternalBase.g:667:2: (iv_ruleTypedRefCS= ruleTypedRefCS EOF )
-            // InternalBase.g:668:2: iv_ruleTypedRefCS= ruleTypedRefCS EOF
+            // InternalBase.g:669:2: (iv_ruleTypedRefCS= ruleTypedRefCS EOF )
+            // InternalBase.g:670:2: iv_ruleTypedRefCS= ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypedRefCSRule());
@@ -1858,7 +1858,7 @@
 
 
     // $ANTLR start "ruleTypedRefCS"
-    // InternalBase.g:675:1: ruleTypedRefCS returns [EObject current=null] : this_TypedTypeRefCS_0= ruleTypedTypeRefCS ;
+    // InternalBase.g:677:1: ruleTypedRefCS returns [EObject current=null] : this_TypedTypeRefCS_0= ruleTypedTypeRefCS ;
     public final EObject ruleTypedRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -1868,8 +1868,8 @@
          enterRule();
 
         try {
-            // InternalBase.g:678:28: (this_TypedTypeRefCS_0= ruleTypedTypeRefCS )
-            // InternalBase.g:680:2: this_TypedTypeRefCS_0= ruleTypedTypeRefCS
+            // InternalBase.g:680:28: (this_TypedTypeRefCS_0= ruleTypedTypeRefCS )
+            // InternalBase.g:682:2: this_TypedTypeRefCS_0= ruleTypedTypeRefCS
             {
             if ( state.backtracking==0 ) {
 
@@ -1912,7 +1912,7 @@
 
 
     // $ANTLR start "entryRuleTypedTypeRefCS"
-    // InternalBase.g:699:1: entryRuleTypedTypeRefCS returns [EObject current=null] : iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF ;
+    // InternalBase.g:701:1: entryRuleTypedTypeRefCS returns [EObject current=null] : iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF ;
     public final EObject entryRuleTypedTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -1920,8 +1920,8 @@
 
 
         try {
-            // InternalBase.g:700:2: (iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF )
-            // InternalBase.g:701:2: iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF
+            // InternalBase.g:702:2: (iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF )
+            // InternalBase.g:703:2: iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypedTypeRefCSRule());
@@ -1952,7 +1952,7 @@
 
 
     // $ANTLR start "ruleTypedTypeRefCS"
-    // InternalBase.g:708:1: ruleTypedTypeRefCS returns [EObject current=null] : ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) ;
+    // InternalBase.g:710:1: ruleTypedTypeRefCS returns [EObject current=null] : ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) ;
     public final EObject ruleTypedTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -1966,17 +1966,17 @@
          enterRule();
 
         try {
-            // InternalBase.g:711:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) )
-            // InternalBase.g:712:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
+            // InternalBase.g:713:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) )
+            // InternalBase.g:714:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
             {
-            // InternalBase.g:712:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
-            // InternalBase.g:712:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
+            // InternalBase.g:714:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
+            // InternalBase.g:714:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
             {
-            // InternalBase.g:712:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) )
-            // InternalBase.g:713:1: (lv_ownedPathName_0_0= rulePathNameCS )
+            // InternalBase.g:714:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) )
+            // InternalBase.g:715:1: (lv_ownedPathName_0_0= rulePathNameCS )
             {
-            // InternalBase.g:713:1: (lv_ownedPathName_0_0= rulePathNameCS )
-            // InternalBase.g:714:3: lv_ownedPathName_0_0= rulePathNameCS
+            // InternalBase.g:715:1: (lv_ownedPathName_0_0= rulePathNameCS )
+            // InternalBase.g:716:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
 
@@ -2007,7 +2007,7 @@
 
             }
 
-            // InternalBase.g:730:2: (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
+            // InternalBase.g:732:2: (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
             int alt11=2;
             int LA11_0 = input.LA(1);
 
@@ -2016,7 +2016,7 @@
             }
             switch (alt11) {
                 case 1 :
-                    // InternalBase.g:730:4: otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')'
+                    // InternalBase.g:732:4: otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')'
                     {
                     otherlv_1=(Token)match(input,28,FollowSets000.FOLLOW_11); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -2024,11 +2024,11 @@
                           	newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
 
                     }
-                    // InternalBase.g:734:1: ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) )
-                    // InternalBase.g:735:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
+                    // InternalBase.g:736:1: ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) )
+                    // InternalBase.g:737:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
                     {
-                    // InternalBase.g:735:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
-                    // InternalBase.g:736:3: lv_ownedBinding_2_0= ruleTemplateBindingCS
+                    // InternalBase.g:737:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
+                    // InternalBase.g:738:3: lv_ownedBinding_2_0= ruleTemplateBindingCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -2094,7 +2094,7 @@
 
 
     // $ANTLR start "entryRuleUnreservedName"
-    // InternalBase.g:764:1: entryRuleUnreservedName returns [String current=null] : iv_ruleUnreservedName= ruleUnreservedName EOF ;
+    // InternalBase.g:766:1: entryRuleUnreservedName returns [String current=null] : iv_ruleUnreservedName= ruleUnreservedName EOF ;
     public final String entryRuleUnreservedName() throws RecognitionException {
         String current = null;
 
@@ -2102,8 +2102,8 @@
 
 
         try {
-            // InternalBase.g:765:2: (iv_ruleUnreservedName= ruleUnreservedName EOF )
-            // InternalBase.g:766:2: iv_ruleUnreservedName= ruleUnreservedName EOF
+            // InternalBase.g:767:2: (iv_ruleUnreservedName= ruleUnreservedName EOF )
+            // InternalBase.g:768:2: iv_ruleUnreservedName= ruleUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getUnreservedNameRule());
@@ -2134,7 +2134,7 @@
 
 
     // $ANTLR start "ruleUnreservedName"
-    // InternalBase.g:773:1: ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_UnrestrictedName_0= ruleUnrestrictedName ;
+    // InternalBase.g:775:1: ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_UnrestrictedName_0= ruleUnrestrictedName ;
     public final AntlrDatatypeRuleToken ruleUnreservedName() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -2144,8 +2144,8 @@
          enterRule();
 
         try {
-            // InternalBase.g:776:28: (this_UnrestrictedName_0= ruleUnrestrictedName )
-            // InternalBase.g:778:5: this_UnrestrictedName_0= ruleUnrestrictedName
+            // InternalBase.g:778:28: (this_UnrestrictedName_0= ruleUnrestrictedName )
+            // InternalBase.g:780:5: this_UnrestrictedName_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
 
@@ -2187,7 +2187,7 @@
 
 
     // $ANTLR start "entryRuleUnrestrictedName"
-    // InternalBase.g:796:1: entryRuleUnrestrictedName returns [String current=null] : iv_ruleUnrestrictedName= ruleUnrestrictedName EOF ;
+    // InternalBase.g:798:1: entryRuleUnrestrictedName returns [String current=null] : iv_ruleUnrestrictedName= ruleUnrestrictedName EOF ;
     public final String entryRuleUnrestrictedName() throws RecognitionException {
         String current = null;
 
@@ -2195,8 +2195,8 @@
 
 
         try {
-            // InternalBase.g:797:2: (iv_ruleUnrestrictedName= ruleUnrestrictedName EOF )
-            // InternalBase.g:798:2: iv_ruleUnrestrictedName= ruleUnrestrictedName EOF
+            // InternalBase.g:799:2: (iv_ruleUnrestrictedName= ruleUnrestrictedName EOF )
+            // InternalBase.g:800:2: iv_ruleUnrestrictedName= ruleUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getUnrestrictedNameRule());
@@ -2227,7 +2227,7 @@
 
 
     // $ANTLR start "ruleUnrestrictedName"
-    // InternalBase.g:805:1: ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_Identifier_0= ruleIdentifier ;
+    // InternalBase.g:807:1: ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_Identifier_0= ruleIdentifier ;
     public final AntlrDatatypeRuleToken ruleUnrestrictedName() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -2237,8 +2237,8 @@
          enterRule();
 
         try {
-            // InternalBase.g:808:28: (this_Identifier_0= ruleIdentifier )
-            // InternalBase.g:810:5: this_Identifier_0= ruleIdentifier
+            // InternalBase.g:810:28: (this_Identifier_0= ruleIdentifier )
+            // InternalBase.g:812:5: this_Identifier_0= ruleIdentifier
             {
             if ( state.backtracking==0 ) {
 
@@ -2280,7 +2280,7 @@
 
 
     // $ANTLR start "entryRuleWildcardTypeRefCS"
-    // InternalBase.g:828:1: entryRuleWildcardTypeRefCS returns [EObject current=null] : iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ;
+    // InternalBase.g:830:1: entryRuleWildcardTypeRefCS returns [EObject current=null] : iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ;
     public final EObject entryRuleWildcardTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -2288,8 +2288,8 @@
 
 
         try {
-            // InternalBase.g:829:2: (iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF )
-            // InternalBase.g:830:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
+            // InternalBase.g:831:2: (iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF )
+            // InternalBase.g:832:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getWildcardTypeRefCSRule());
@@ -2320,7 +2320,7 @@
 
 
     // $ANTLR start "ruleWildcardTypeRefCS"
-    // InternalBase.g:837:1: ruleWildcardTypeRefCS returns [EObject current=null] : ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) ;
+    // InternalBase.g:839:1: ruleWildcardTypeRefCS returns [EObject current=null] : ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) ;
     public final EObject ruleWildcardTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -2332,14 +2332,14 @@
          enterRule();
 
         try {
-            // InternalBase.g:840:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
-            // InternalBase.g:841:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
+            // InternalBase.g:842:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
+            // InternalBase.g:843:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
             {
-            // InternalBase.g:841:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
-            // InternalBase.g:841:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
+            // InternalBase.g:843:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
+            // InternalBase.g:843:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             {
-            // InternalBase.g:841:2: ()
-            // InternalBase.g:842:2:
+            // InternalBase.g:843:2: ()
+            // InternalBase.g:844:2:
             {
             if ( state.backtracking==0 ) {
 
@@ -2362,7 +2362,7 @@
                   	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
 
             }
-            // InternalBase.g:854:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
+            // InternalBase.g:856:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             int alt12=2;
             int LA12_0 = input.LA(1);
 
@@ -2371,7 +2371,7 @@
             }
             switch (alt12) {
                 case 1 :
-                    // InternalBase.g:854:3: otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
+                    // InternalBase.g:856:3: otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
                     {
                     otherlv_2=(Token)match(input,26,FollowSets000.FOLLOW_9); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -2379,11 +2379,11 @@
                           	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
 
                     }
-                    // InternalBase.g:858:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
-                    // InternalBase.g:859:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
+                    // InternalBase.g:860:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
+                    // InternalBase.g:861:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
                     {
-                    // InternalBase.g:859:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
-                    // InternalBase.g:860:3: lv_ownedExtends_3_0= ruleTypedRefCS
+                    // InternalBase.g:861:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
+                    // InternalBase.g:862:3: lv_ownedExtends_3_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -2443,7 +2443,7 @@
 
 
     // $ANTLR start "entryRuleID"
-    // InternalBase.g:884:1: entryRuleID returns [String current=null] : iv_ruleID= ruleID EOF ;
+    // InternalBase.g:886:1: entryRuleID returns [String current=null] : iv_ruleID= ruleID EOF ;
     public final String entryRuleID() throws RecognitionException {
         String current = null;
 
@@ -2451,8 +2451,8 @@
 
 
         try {
-            // InternalBase.g:885:2: (iv_ruleID= ruleID EOF )
-            // InternalBase.g:886:2: iv_ruleID= ruleID EOF
+            // InternalBase.g:887:2: (iv_ruleID= ruleID EOF )
+            // InternalBase.g:888:2: iv_ruleID= ruleID EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getIDRule());
@@ -2483,7 +2483,7 @@
 
 
     // $ANTLR start "ruleID"
-    // InternalBase.g:893:1: ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) ;
+    // InternalBase.g:895:1: ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) ;
     public final AntlrDatatypeRuleToken ruleID() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -2493,10 +2493,10 @@
          enterRule();
 
         try {
-            // InternalBase.g:896:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
-            // InternalBase.g:897:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
+            // InternalBase.g:898:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
+            // InternalBase.g:899:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
             {
-            // InternalBase.g:897:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
+            // InternalBase.g:899:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
             int alt13=2;
             int LA13_0 = input.LA(1);
 
@@ -2515,7 +2515,7 @@
             }
             switch (alt13) {
                 case 1 :
-                    // InternalBase.g:897:6: this_SIMPLE_ID_0= RULE_SIMPLE_ID
+                    // InternalBase.g:899:6: this_SIMPLE_ID_0= RULE_SIMPLE_ID
                     {
                     this_SIMPLE_ID_0=(Token)match(input,RULE_SIMPLE_ID,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -2532,7 +2532,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalBase.g:905:10: this_ESCAPED_ID_1= RULE_ESCAPED_ID
+                    // InternalBase.g:907:10: this_ESCAPED_ID_1= RULE_ESCAPED_ID
                     {
                     this_ESCAPED_ID_1=(Token)match(input,RULE_ESCAPED_ID,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -2571,7 +2571,7 @@
 
 
     // $ANTLR start "entryRuleIdentifier"
-    // InternalBase.g:920:1: entryRuleIdentifier returns [String current=null] : iv_ruleIdentifier= ruleIdentifier EOF ;
+    // InternalBase.g:922:1: entryRuleIdentifier returns [String current=null] : iv_ruleIdentifier= ruleIdentifier EOF ;
     public final String entryRuleIdentifier() throws RecognitionException {
         String current = null;
 
@@ -2579,8 +2579,8 @@
 
 
         try {
-            // InternalBase.g:921:2: (iv_ruleIdentifier= ruleIdentifier EOF )
-            // InternalBase.g:922:2: iv_ruleIdentifier= ruleIdentifier EOF
+            // InternalBase.g:923:2: (iv_ruleIdentifier= ruleIdentifier EOF )
+            // InternalBase.g:924:2: iv_ruleIdentifier= ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getIdentifierRule());
@@ -2611,7 +2611,7 @@
 
 
     // $ANTLR start "ruleIdentifier"
-    // InternalBase.g:929:1: ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_ID_0= ruleID ;
+    // InternalBase.g:931:1: ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_ID_0= ruleID ;
     public final AntlrDatatypeRuleToken ruleIdentifier() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -2621,8 +2621,8 @@
          enterRule();
 
         try {
-            // InternalBase.g:932:28: (this_ID_0= ruleID )
-            // InternalBase.g:934:5: this_ID_0= ruleID
+            // InternalBase.g:934:28: (this_ID_0= ruleID )
+            // InternalBase.g:936:5: this_ID_0= ruleID
             {
             if ( state.backtracking==0 ) {
 
@@ -2664,7 +2664,7 @@
 
 
     // $ANTLR start "entryRuleLOWER"
-    // InternalBase.g:952:1: entryRuleLOWER returns [String current=null] : iv_ruleLOWER= ruleLOWER EOF ;
+    // InternalBase.g:954:1: entryRuleLOWER returns [String current=null] : iv_ruleLOWER= ruleLOWER EOF ;
     public final String entryRuleLOWER() throws RecognitionException {
         String current = null;
 
@@ -2672,8 +2672,8 @@
 
 
         try {
-            // InternalBase.g:953:2: (iv_ruleLOWER= ruleLOWER EOF )
-            // InternalBase.g:954:2: iv_ruleLOWER= ruleLOWER EOF
+            // InternalBase.g:955:2: (iv_ruleLOWER= ruleLOWER EOF )
+            // InternalBase.g:956:2: iv_ruleLOWER= ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getLOWERRule());
@@ -2704,7 +2704,7 @@
 
 
     // $ANTLR start "ruleLOWER"
-    // InternalBase.g:961:1: ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
+    // InternalBase.g:963:1: ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
     public final AntlrDatatypeRuleToken ruleLOWER() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -2713,8 +2713,8 @@
          enterRule();
 
         try {
-            // InternalBase.g:964:28: (this_INT_0= RULE_INT )
-            // InternalBase.g:965:5: this_INT_0= RULE_INT
+            // InternalBase.g:966:28: (this_INT_0= RULE_INT )
+            // InternalBase.g:967:5: this_INT_0= RULE_INT
             {
             this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -2747,7 +2747,7 @@
 
 
     // $ANTLR start "entryRuleUPPER"
-    // InternalBase.g:984:1: entryRuleUPPER returns [String current=null] : iv_ruleUPPER= ruleUPPER EOF ;
+    // InternalBase.g:986:1: entryRuleUPPER returns [String current=null] : iv_ruleUPPER= ruleUPPER EOF ;
     public final String entryRuleUPPER() throws RecognitionException {
         String current = null;
 
@@ -2755,8 +2755,8 @@
 
 
         try {
-            // InternalBase.g:985:2: (iv_ruleUPPER= ruleUPPER EOF )
-            // InternalBase.g:986:2: iv_ruleUPPER= ruleUPPER EOF
+            // InternalBase.g:987:2: (iv_ruleUPPER= ruleUPPER EOF )
+            // InternalBase.g:988:2: iv_ruleUPPER= ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getUPPERRule());
@@ -2787,7 +2787,7 @@
 
 
     // $ANTLR start "ruleUPPER"
-    // InternalBase.g:993:1: ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= '*' ) ;
+    // InternalBase.g:995:1: ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= '*' ) ;
     public final AntlrDatatypeRuleToken ruleUPPER() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -2797,10 +2797,10 @@
          enterRule();
 
         try {
-            // InternalBase.g:996:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
-            // InternalBase.g:997:1: (this_INT_0= RULE_INT | kw= '*' )
+            // InternalBase.g:998:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
+            // InternalBase.g:999:1: (this_INT_0= RULE_INT | kw= '*' )
             {
-            // InternalBase.g:997:1: (this_INT_0= RULE_INT | kw= '*' )
+            // InternalBase.g:999:1: (this_INT_0= RULE_INT | kw= '*' )
             int alt14=2;
             int LA14_0 = input.LA(1);
 
@@ -2819,7 +2819,7 @@
             }
             switch (alt14) {
                 case 1 :
-                    // InternalBase.g:997:6: this_INT_0= RULE_INT
+                    // InternalBase.g:999:6: this_INT_0= RULE_INT
                     {
                     this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -2836,7 +2836,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalBase.g:1006:2: kw= '*'
+                    // InternalBase.g:1008:2: kw= '*'
                     {
                     kw=(Token)match(input,21,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/serializer/AbstractBaseSemanticSequencer.java b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/serializer/AbstractBaseSemanticSequencer.java
index 364c6f5..fc5f20e 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/serializer/AbstractBaseSemanticSequencer.java
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/serializer/AbstractBaseSemanticSequencer.java
@@ -79,8 +79,15 @@
 				}
 				else break;
 			case BaseCSPackage.PATH_NAME_CS:
-				sequence_PathNameCS(context, (PathNameCS) semanticObject);
-				return;
+				if (rule == grammarAccess.getPathNameCSRule()) {
+					sequence_PathNameCS(context, (PathNameCS) semanticObject);
+					return;
+				}
+				else if (rule == grammarAccess.getUnreservedPathNameCSRule()) {
+					sequence_UnreservedPathNameCS(context, (PathNameCS) semanticObject);
+					return;
+				}
+				else break;
 			case BaseCSPackage.TEMPLATE_BINDING_CS:
 				sequence_TemplateBindingCS(context, (TemplateBindingCS) semanticObject);
 				return;
@@ -270,6 +277,18 @@
 
 	/**
 	 * Contexts:
+	 *     UnreservedPathNameCS returns PathNameCS
+	 *
+	 * Constraint:
+	 *     (ownedPathElements+=NextPathElementCS ownedPathElements+=NextPathElementCS*)
+	 */
+	protected void sequence_UnreservedPathNameCS(ISerializationContext context, PathNameCS semanticObject) {
+		genericSequencer.createSequence(context, semanticObject);
+	}
+
+
+	/**
+	 * Contexts:
 	 *     TypeRefCS returns WildcardTypeRefCS
 	 *     WildcardTypeRefCS returns WildcardTypeRefCS
 	 *
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/services/BaseGrammarAccess.java b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/services/BaseGrammarAccess.java
index 0be8cfd..cd45277 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/services/BaseGrammarAccess.java
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/services/BaseGrammarAccess.java
@@ -172,6 +172,42 @@
 		public RuleCall getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0() { return cOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0; }
 	}
 
+	public class UnreservedPathNameCSElements extends AbstractParserRuleElementFinder {
+		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
+		private final Group cGroup = (Group)rule.eContents().get(1);
+		private final Assignment cOwnedPathElementsAssignment_0 = (Assignment)cGroup.eContents().get(0);
+		private final RuleCall cOwnedPathElementsNextPathElementCSParserRuleCall_0_0 = (RuleCall)cOwnedPathElementsAssignment_0.eContents().get(0);
+		private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
+		private final Keyword cColonColonKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
+		private final Assignment cOwnedPathElementsAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
+		private final RuleCall cOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0 = (RuleCall)cOwnedPathElementsAssignment_1_1.eContents().get(0);
+
+		//UnreservedPathNameCS PathNameCS:
+		//	ownedPathElements+=NextPathElementCS ('::' ownedPathElements+=NextPathElementCS)*;
+		@Override public ParserRule getRule() { return rule; }
+
+		//ownedPathElements+=NextPathElementCS ('::' ownedPathElements+=NextPathElementCS)*
+		public Group getGroup() { return cGroup; }
+
+		//ownedPathElements+=NextPathElementCS
+		public Assignment getOwnedPathElementsAssignment_0() { return cOwnedPathElementsAssignment_0; }
+
+		//NextPathElementCS
+		public RuleCall getOwnedPathElementsNextPathElementCSParserRuleCall_0_0() { return cOwnedPathElementsNextPathElementCSParserRuleCall_0_0; }
+
+		//('::' ownedPathElements+=NextPathElementCS)*
+		public Group getGroup_1() { return cGroup_1; }
+
+		//'::'
+		public Keyword getColonColonKeyword_1_0() { return cColonColonKeyword_1_0; }
+
+		//ownedPathElements+=NextPathElementCS
+		public Assignment getOwnedPathElementsAssignment_1_1() { return cOwnedPathElementsAssignment_1_1; }
+
+		//NextPathElementCS
+		public RuleCall getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0() { return cOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0; }
+	}
+
 	public class FirstPathElementCSElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.FirstPathElementCS");
 		private final Assignment cReferredElementAssignment = (Assignment)rule.eContents().get(1);
@@ -619,6 +655,7 @@
 	private final MultiplicityCSElements pMultiplicityCS;
 	private final MultiplicityStringCSElements pMultiplicityStringCS;
 	private final PathNameCSElements pPathNameCS;
+	private final UnreservedPathNameCSElements pUnreservedPathNameCS;
 	private final FirstPathElementCSElements pFirstPathElementCS;
 	private final NextPathElementCSElements pNextPathElementCS;
 	private final TemplateBindingCSElements pTemplateBindingCS;
@@ -660,6 +697,7 @@
 		this.pMultiplicityCS = new MultiplicityCSElements();
 		this.pMultiplicityStringCS = new MultiplicityStringCSElements();
 		this.pPathNameCS = new PathNameCSElements();
+		this.pUnreservedPathNameCS = new UnreservedPathNameCSElements();
 		this.pFirstPathElementCS = new FirstPathElementCSElements();
 		this.pNextPathElementCS = new NextPathElementCSElements();
 		this.pTemplateBindingCS = new TemplateBindingCSElements();
@@ -756,6 +794,16 @@
 		return getPathNameCSAccess().getRule();
 	}
 
+	//UnreservedPathNameCS PathNameCS:
+	//	ownedPathElements+=NextPathElementCS ('::' ownedPathElements+=NextPathElementCS)*;
+	public UnreservedPathNameCSElements getUnreservedPathNameCSAccess() {
+		return pUnreservedPathNameCS;
+	}
+
+	public ParserRule getUnreservedPathNameCSRule() {
+		return getUnreservedPathNameCSAccess().getRule();
+	}
+
 	//FirstPathElementCS PathElementCS:
 	//	referredElement=[pivot::NamedElement|UnrestrictedName];
 	public FirstPathElementCSElements getFirstPathElementCSAccess() {
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/CompleteOCLParser.java b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/CompleteOCLParser.java
index 937af98..c96f11a 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/CompleteOCLParser.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/CompleteOCLParser.java
@@ -213,6 +213,8 @@
 					put(grammarAccess.getMultiplicityCSAccess().getGroup(), "rule__MultiplicityCS__Group__0");
 					put(grammarAccess.getPathNameCSAccess().getGroup(), "rule__PathNameCS__Group__0");
 					put(grammarAccess.getPathNameCSAccess().getGroup_1(), "rule__PathNameCS__Group_1__0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getGroup(), "rule__UnreservedPathNameCS__Group__0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getGroup_1(), "rule__UnreservedPathNameCS__Group_1__0");
 					put(grammarAccess.getTemplateBindingCSAccess().getGroup(), "rule__TemplateBindingCS__Group__0");
 					put(grammarAccess.getTemplateBindingCSAccess().getGroup_1(), "rule__TemplateBindingCS__Group_1__0");
 					put(grammarAccess.getTypeParameterCSAccess().getGroup(), "rule__TypeParameterCS__Group__0");
@@ -393,6 +395,8 @@
 					put(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment(), "rule__MultiplicityStringCS__StringBoundsAssignment");
 					put(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0(), "rule__PathNameCS__OwnedPathElementsAssignment_0");
 					put(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1(), "rule__PathNameCS__OwnedPathElementsAssignment_1_1");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_0(), "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_1_1(), "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1");
 					put(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment(), "rule__FirstPathElementCS__ReferredElementAssignment");
 					put(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment(), "rule__NextPathElementCS__ReferredElementAssignment");
 					put(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0(), "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0");
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/internal/InternalCompleteOCL.g b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/internal/InternalCompleteOCL.g
index 4cd7ceb..b1584d7 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/internal/InternalCompleteOCL.g
+++ b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/internal/InternalCompleteOCL.g
@@ -2429,6 +2429,34 @@
 
 
 
+// Entry rule entryRuleUnreservedPathNameCS
+entryRuleUnreservedPathNameCS
+:
+{ before(grammarAccess.getUnreservedPathNameCSRule()); }
+	 ruleUnreservedPathNameCS
+{ after(grammarAccess.getUnreservedPathNameCSRule()); }
+	 EOF
+;
+
+// Rule UnreservedPathNameCS
+ruleUnreservedPathNameCS
+    @init {
+		int stackSize = keepStackSize();
+    }
+	:
+(
+{ before(grammarAccess.getUnreservedPathNameCSAccess().getGroup()); }
+(rule__UnreservedPathNameCS__Group__0)
+{ after(grammarAccess.getUnreservedPathNameCSAccess().getGroup()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+
 // Entry rule entryRuleFirstPathElementCS
 entryRuleFirstPathElementCS
 :
@@ -15786,6 +15814,130 @@
 
 
 
+rule__UnreservedPathNameCS__Group__0
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__UnreservedPathNameCS__Group__0__Impl
+	rule__UnreservedPathNameCS__Group__1
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__UnreservedPathNameCS__Group__0__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_0()); }
+(rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0)
+{ after(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__UnreservedPathNameCS__Group__1
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__UnreservedPathNameCS__Group__1__Impl
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__UnreservedPathNameCS__Group__1__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getUnreservedPathNameCSAccess().getGroup_1()); }
+(rule__UnreservedPathNameCS__Group_1__0)*
+{ after(grammarAccess.getUnreservedPathNameCSAccess().getGroup_1()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+rule__UnreservedPathNameCS__Group_1__0
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__UnreservedPathNameCS__Group_1__0__Impl
+	rule__UnreservedPathNameCS__Group_1__1
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__UnreservedPathNameCS__Group_1__0__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getUnreservedPathNameCSAccess().getColonColonKeyword_1_0()); }
+
+	'::'
+
+{ after(grammarAccess.getUnreservedPathNameCSAccess().getColonColonKeyword_1_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__UnreservedPathNameCS__Group_1__1
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__UnreservedPathNameCS__Group_1__1__Impl
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__UnreservedPathNameCS__Group_1__1__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); }
+(rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1)
+{ after(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+
+
+
+
 rule__TemplateBindingCS__Group__0
     @init {
 		int stackSize = keepStackSize();
@@ -16557,8 +16709,8 @@
     }
 :
 (
-{ before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0()); }
-	rulePathNameCS{ after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0()); }
+{ before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_3_0()); }
+	ruleUnreservedPathNameCS{ after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_3_0()); }
 )
 
 ;
@@ -16926,8 +17078,8 @@
     }
 :
 (
-{ before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0()); }
-	rulePathNameCS{ after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0()); }
+{ before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_2_0()); }
+	ruleUnreservedPathNameCS{ after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_2_0()); }
 )
 
 ;
@@ -17031,8 +17183,8 @@
     }
 :
 (
-{ before(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); }
-	rulePathNameCS{ after(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); }
+{ before(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0()); }
+	ruleUnreservedPathNameCS{ after(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0()); }
 )
 
 ;
@@ -17106,8 +17258,8 @@
     }
 :
 (
-{ before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); }
-	rulePathNameCS{ after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); }
+{ before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0()); }
+	ruleUnreservedPathNameCS{ after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0()); }
 )
 
 ;
@@ -19125,6 +19277,36 @@
 	restoreStackSize(stackSize);
 }
 
+rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_0_0()); }
+	ruleNextPathElementCS{ after(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_0_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); }
+	ruleNextPathElementCS{ after(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
 rule__FirstPathElementCS__ReferredElementAssignment
     @init {
 		int stackSize = keepStackSize();
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/internal/InternalCompleteOCLLexer.java b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/internal/InternalCompleteOCLLexer.java
index bbf2cdc..32ac486 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/internal/InternalCompleteOCLLexer.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/internal/InternalCompleteOCLLexer.java
@@ -2036,8 +2036,8 @@
         try {
             int _type = RULE_UNQUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:19317:22: ( '\\u00A3$%^\\u00A3$%^' )
-            // InternalCompleteOCL.g:19317:24: '\\u00A3$%^\\u00A3$%^'
+            // InternalCompleteOCL.g:19499:22: ( '\\u00A3$%^\\u00A3$%^' )
+            // InternalCompleteOCL.g:19499:24: '\\u00A3$%^\\u00A3$%^'
             {
             match("\u00A3$%^\u00A3$%^");
 
@@ -2055,8 +2055,8 @@
     // $ANTLR start "RULE_ESCAPED_CHARACTER"
     public final void mRULE_ESCAPED_CHARACTER() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:19319:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
-            // InternalCompleteOCL.g:19319:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+            // InternalCompleteOCL.g:19501:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
+            // InternalCompleteOCL.g:19501:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
             match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -2080,8 +2080,8 @@
     // $ANTLR start "RULE_LETTER_CHARACTER"
     public final void mRULE_LETTER_CHARACTER() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:19321:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
-            // InternalCompleteOCL.g:19321:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
+            // InternalCompleteOCL.g:19503:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
+            // InternalCompleteOCL.g:19503:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
             {
             if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
                 input.consume();
@@ -2106,11 +2106,11 @@
         try {
             int _type = RULE_DOUBLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:19323:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
-            // InternalCompleteOCL.g:19323:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+            // InternalCompleteOCL.g:19505:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
+            // InternalCompleteOCL.g:19505:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
             match('\"');
-            // InternalCompleteOCL.g:19323:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
+            // InternalCompleteOCL.g:19505:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
                 int alt1=3;
@@ -2126,14 +2126,14 @@
 
                 switch (alt1) {
             	case 1 :
-            	    // InternalCompleteOCL.g:19323:34: RULE_ESCAPED_CHARACTER
+            	    // InternalCompleteOCL.g:19505:34: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalCompleteOCL.g:19323:57: ~ ( ( '\\\\' | '\"' ) )
+            	    // InternalCompleteOCL.g:19505:57: ~ ( ( '\\\\' | '\"' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2170,11 +2170,11 @@
         try {
             int _type = RULE_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:19325:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            // InternalCompleteOCL.g:19325:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+            // InternalCompleteOCL.g:19507:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // InternalCompleteOCL.g:19507:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
             match('\'');
-            // InternalCompleteOCL.g:19325:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
+            // InternalCompleteOCL.g:19507:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
                 int alt2=3;
@@ -2190,14 +2190,14 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // InternalCompleteOCL.g:19325:35: RULE_ESCAPED_CHARACTER
+            	    // InternalCompleteOCL.g:19507:35: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalCompleteOCL.g:19325:58: ~ ( ( '\\\\' | '\\'' ) )
+            	    // InternalCompleteOCL.g:19507:58: ~ ( ( '\\\\' | '\\'' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2234,12 +2234,12 @@
         try {
             int _type = RULE_ML_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:19327:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
-            // InternalCompleteOCL.g:19327:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
+            // InternalCompleteOCL.g:19509:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
+            // InternalCompleteOCL.g:19509:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
             match("/'");
 
-            // InternalCompleteOCL.g:19327:38: ( options {greedy=false; } : . )*
+            // InternalCompleteOCL.g:19509:38: ( options {greedy=false; } : . )*
             loop3:
             do {
                 int alt3=2;
@@ -2264,7 +2264,7 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // InternalCompleteOCL.g:19327:66: .
+            	    // InternalCompleteOCL.g:19509:66: .
             	    {
             	    matchAny();
 
@@ -2294,11 +2294,11 @@
         try {
             int _type = RULE_SIMPLE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:19329:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
-            // InternalCompleteOCL.g:19329:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalCompleteOCL.g:19511:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
+            // InternalCompleteOCL.g:19511:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
             mRULE_LETTER_CHARACTER();
-            // InternalCompleteOCL.g:19329:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalCompleteOCL.g:19511:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
                 int alt4=2;
@@ -2347,8 +2347,8 @@
         try {
             int _type = RULE_ESCAPED_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:19331:17: ( '_' RULE_SINGLE_QUOTED_STRING )
-            // InternalCompleteOCL.g:19331:19: '_' RULE_SINGLE_QUOTED_STRING
+            // InternalCompleteOCL.g:19513:17: ( '_' RULE_SINGLE_QUOTED_STRING )
+            // InternalCompleteOCL.g:19513:19: '_' RULE_SINGLE_QUOTED_STRING
             {
             match('_');
             mRULE_SINGLE_QUOTED_STRING();
@@ -2368,10 +2368,10 @@
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:19333:10: ( ( '0' .. '9' )+ )
-            // InternalCompleteOCL.g:19333:12: ( '0' .. '9' )+
+            // InternalCompleteOCL.g:19515:10: ( ( '0' .. '9' )+ )
+            // InternalCompleteOCL.g:19515:12: ( '0' .. '9' )+
             {
-            // InternalCompleteOCL.g:19333:12: ( '0' .. '9' )+
+            // InternalCompleteOCL.g:19515:12: ( '0' .. '9' )+
             int cnt5=0;
             loop5:
             do {
@@ -2385,7 +2385,7 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // InternalCompleteOCL.g:19333:13: '0' .. '9'
+            	    // InternalCompleteOCL.g:19515:13: '0' .. '9'
             	    {
             	    matchRange('0','9');
 
@@ -2417,12 +2417,12 @@
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:19335:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // InternalCompleteOCL.g:19335:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // InternalCompleteOCL.g:19517:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // InternalCompleteOCL.g:19517:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*");
 
-            // InternalCompleteOCL.g:19335:24: ( options {greedy=false; } : . )*
+            // InternalCompleteOCL.g:19517:24: ( options {greedy=false; } : . )*
             loop6:
             do {
                 int alt6=2;
@@ -2447,7 +2447,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // InternalCompleteOCL.g:19335:52: .
+            	    // InternalCompleteOCL.g:19517:52: .
             	    {
             	    matchAny();
 
@@ -2477,12 +2477,12 @@
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:19337:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // InternalCompleteOCL.g:19337:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // InternalCompleteOCL.g:19519:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // InternalCompleteOCL.g:19519:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("--");
 
-            // InternalCompleteOCL.g:19337:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // InternalCompleteOCL.g:19519:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
             do {
                 int alt7=2;
@@ -2495,7 +2495,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // InternalCompleteOCL.g:19337:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // InternalCompleteOCL.g:19519:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2515,7 +2515,7 @@
                 }
             } while (true);
 
-            // InternalCompleteOCL.g:19337:40: ( ( '\\r' )? '\\n' )?
+            // InternalCompleteOCL.g:19519:40: ( ( '\\r' )? '\\n' )?
             int alt9=2;
             int LA9_0 = input.LA(1);
 
@@ -2524,9 +2524,9 @@
             }
             switch (alt9) {
                 case 1 :
-                    // InternalCompleteOCL.g:19337:41: ( '\\r' )? '\\n'
+                    // InternalCompleteOCL.g:19519:41: ( '\\r' )? '\\n'
                     {
-                    // InternalCompleteOCL.g:19337:41: ( '\\r' )?
+                    // InternalCompleteOCL.g:19519:41: ( '\\r' )?
                     int alt8=2;
                     int LA8_0 = input.LA(1);
 
@@ -2535,7 +2535,7 @@
                     }
                     switch (alt8) {
                         case 1 :
-                            // InternalCompleteOCL.g:19337:41: '\\r'
+                            // InternalCompleteOCL.g:19519:41: '\\r'
                             {
                             match('\r');
 
@@ -2567,10 +2567,10 @@
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:19339:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // InternalCompleteOCL.g:19339:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalCompleteOCL.g:19521:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // InternalCompleteOCL.g:19521:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // InternalCompleteOCL.g:19339:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalCompleteOCL.g:19521:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt10=0;
             loop10:
             do {
@@ -2624,8 +2624,8 @@
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:19341:16: ( . )
-            // InternalCompleteOCL.g:19341:18: .
+            // InternalCompleteOCL.g:19523:16: ( . )
+            // InternalCompleteOCL.g:19523:18: .
             {
             matchAny();
 
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/internal/InternalCompleteOCLParser.java b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/internal/InternalCompleteOCLParser.java
index 39f9bd5..24f3284 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/internal/InternalCompleteOCLParser.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/antlr/internal/InternalCompleteOCLParser.java
@@ -7341,12 +7341,97 @@
     // $ANTLR end "rulePathNameCS"
 
 
+    // $ANTLR start "entryRuleUnreservedPathNameCS"
+    // InternalCompleteOCL.g:2433:1: entryRuleUnreservedPathNameCS : ruleUnreservedPathNameCS EOF ;
+    public final void entryRuleUnreservedPathNameCS() throws RecognitionException {
+        try {
+            // InternalCompleteOCL.g:2434:1: ( ruleUnreservedPathNameCS EOF )
+            // InternalCompleteOCL.g:2435:1: ruleUnreservedPathNameCS EOF
+            {
+            if ( state.backtracking==0 ) {
+               before(grammarAccess.getUnreservedPathNameCSRule());
+            }
+            pushFollow(FollowSets000.FOLLOW_1);
+            ruleUnreservedPathNameCS();
+
+            state._fsp--;
+            if (state.failed) return ;
+            if ( state.backtracking==0 ) {
+               after(grammarAccess.getUnreservedPathNameCSRule());
+            }
+            match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+        }
+        return ;
+    }
+    // $ANTLR end "entryRuleUnreservedPathNameCS"
+
+
+    // $ANTLR start "ruleUnreservedPathNameCS"
+    // InternalCompleteOCL.g:2442:1: ruleUnreservedPathNameCS : ( ( rule__UnreservedPathNameCS__Group__0 ) ) ;
+    public final void ruleUnreservedPathNameCS() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+
+        try {
+            // InternalCompleteOCL.g:2446:2: ( ( ( rule__UnreservedPathNameCS__Group__0 ) ) )
+            // InternalCompleteOCL.g:2447:1: ( ( rule__UnreservedPathNameCS__Group__0 ) )
+            {
+            // InternalCompleteOCL.g:2447:1: ( ( rule__UnreservedPathNameCS__Group__0 ) )
+            // InternalCompleteOCL.g:2448:1: ( rule__UnreservedPathNameCS__Group__0 )
+            {
+            if ( state.backtracking==0 ) {
+               before(grammarAccess.getUnreservedPathNameCSAccess().getGroup());
+            }
+            // InternalCompleteOCL.g:2449:1: ( rule__UnreservedPathNameCS__Group__0 )
+            // InternalCompleteOCL.g:2449:2: rule__UnreservedPathNameCS__Group__0
+            {
+            pushFollow(FollowSets000.FOLLOW_2);
+            rule__UnreservedPathNameCS__Group__0();
+
+            state._fsp--;
+            if (state.failed) return ;
+
+            }
+
+            if ( state.backtracking==0 ) {
+               after(grammarAccess.getUnreservedPathNameCSAccess().getGroup());
+            }
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end "ruleUnreservedPathNameCS"
+
+
     // $ANTLR start "entryRuleFirstPathElementCS"
-    // InternalCompleteOCL.g:2433:1: entryRuleFirstPathElementCS : ruleFirstPathElementCS EOF ;
+    // InternalCompleteOCL.g:2461:1: entryRuleFirstPathElementCS : ruleFirstPathElementCS EOF ;
     public final void entryRuleFirstPathElementCS() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2434:1: ( ruleFirstPathElementCS EOF )
-            // InternalCompleteOCL.g:2435:1: ruleFirstPathElementCS EOF
+            // InternalCompleteOCL.g:2462:1: ( ruleFirstPathElementCS EOF )
+            // InternalCompleteOCL.g:2463:1: ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSRule());
@@ -7376,23 +7461,23 @@
 
 
     // $ANTLR start "ruleFirstPathElementCS"
-    // InternalCompleteOCL.g:2442:1: ruleFirstPathElementCS : ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) ;
+    // InternalCompleteOCL.g:2470:1: ruleFirstPathElementCS : ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) ;
     public final void ruleFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2446:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
-            // InternalCompleteOCL.g:2447:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
+            // InternalCompleteOCL.g:2474:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
+            // InternalCompleteOCL.g:2475:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
             {
-            // InternalCompleteOCL.g:2447:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
-            // InternalCompleteOCL.g:2448:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
+            // InternalCompleteOCL.g:2475:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
+            // InternalCompleteOCL.g:2476:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
-            // InternalCompleteOCL.g:2449:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
-            // InternalCompleteOCL.g:2449:2: rule__FirstPathElementCS__ReferredElementAssignment
+            // InternalCompleteOCL.g:2477:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
+            // InternalCompleteOCL.g:2477:2: rule__FirstPathElementCS__ReferredElementAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__FirstPathElementCS__ReferredElementAssignment();
@@ -7427,11 +7512,11 @@
 
 
     // $ANTLR start "entryRuleNextPathElementCS"
-    // InternalCompleteOCL.g:2461:1: entryRuleNextPathElementCS : ruleNextPathElementCS EOF ;
+    // InternalCompleteOCL.g:2489:1: entryRuleNextPathElementCS : ruleNextPathElementCS EOF ;
     public final void entryRuleNextPathElementCS() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2462:1: ( ruleNextPathElementCS EOF )
-            // InternalCompleteOCL.g:2463:1: ruleNextPathElementCS EOF
+            // InternalCompleteOCL.g:2490:1: ( ruleNextPathElementCS EOF )
+            // InternalCompleteOCL.g:2491:1: ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSRule());
@@ -7461,23 +7546,23 @@
 
 
     // $ANTLR start "ruleNextPathElementCS"
-    // InternalCompleteOCL.g:2470:1: ruleNextPathElementCS : ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) ;
+    // InternalCompleteOCL.g:2498:1: ruleNextPathElementCS : ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) ;
     public final void ruleNextPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2474:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
-            // InternalCompleteOCL.g:2475:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
+            // InternalCompleteOCL.g:2502:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
+            // InternalCompleteOCL.g:2503:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
             {
-            // InternalCompleteOCL.g:2475:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
-            // InternalCompleteOCL.g:2476:1: ( rule__NextPathElementCS__ReferredElementAssignment )
+            // InternalCompleteOCL.g:2503:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
+            // InternalCompleteOCL.g:2504:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
-            // InternalCompleteOCL.g:2477:1: ( rule__NextPathElementCS__ReferredElementAssignment )
-            // InternalCompleteOCL.g:2477:2: rule__NextPathElementCS__ReferredElementAssignment
+            // InternalCompleteOCL.g:2505:1: ( rule__NextPathElementCS__ReferredElementAssignment )
+            // InternalCompleteOCL.g:2505:2: rule__NextPathElementCS__ReferredElementAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NextPathElementCS__ReferredElementAssignment();
@@ -7512,11 +7597,11 @@
 
 
     // $ANTLR start "entryRuleTemplateBindingCS"
-    // InternalCompleteOCL.g:2489:1: entryRuleTemplateBindingCS : ruleTemplateBindingCS EOF ;
+    // InternalCompleteOCL.g:2517:1: entryRuleTemplateBindingCS : ruleTemplateBindingCS EOF ;
     public final void entryRuleTemplateBindingCS() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2490:1: ( ruleTemplateBindingCS EOF )
-            // InternalCompleteOCL.g:2491:1: ruleTemplateBindingCS EOF
+            // InternalCompleteOCL.g:2518:1: ( ruleTemplateBindingCS EOF )
+            // InternalCompleteOCL.g:2519:1: ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSRule());
@@ -7546,23 +7631,23 @@
 
 
     // $ANTLR start "ruleTemplateBindingCS"
-    // InternalCompleteOCL.g:2498:1: ruleTemplateBindingCS : ( ( rule__TemplateBindingCS__Group__0 ) ) ;
+    // InternalCompleteOCL.g:2526:1: ruleTemplateBindingCS : ( ( rule__TemplateBindingCS__Group__0 ) ) ;
     public final void ruleTemplateBindingCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2502:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
-            // InternalCompleteOCL.g:2503:1: ( ( rule__TemplateBindingCS__Group__0 ) )
+            // InternalCompleteOCL.g:2530:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
+            // InternalCompleteOCL.g:2531:1: ( ( rule__TemplateBindingCS__Group__0 ) )
             {
-            // InternalCompleteOCL.g:2503:1: ( ( rule__TemplateBindingCS__Group__0 ) )
-            // InternalCompleteOCL.g:2504:1: ( rule__TemplateBindingCS__Group__0 )
+            // InternalCompleteOCL.g:2531:1: ( ( rule__TemplateBindingCS__Group__0 ) )
+            // InternalCompleteOCL.g:2532:1: ( rule__TemplateBindingCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
-            // InternalCompleteOCL.g:2505:1: ( rule__TemplateBindingCS__Group__0 )
-            // InternalCompleteOCL.g:2505:2: rule__TemplateBindingCS__Group__0
+            // InternalCompleteOCL.g:2533:1: ( rule__TemplateBindingCS__Group__0 )
+            // InternalCompleteOCL.g:2533:2: rule__TemplateBindingCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group__0();
@@ -7597,11 +7682,11 @@
 
 
     // $ANTLR start "entryRuleTemplateParameterSubstitutionCS"
-    // InternalCompleteOCL.g:2517:1: entryRuleTemplateParameterSubstitutionCS : ruleTemplateParameterSubstitutionCS EOF ;
+    // InternalCompleteOCL.g:2545:1: entryRuleTemplateParameterSubstitutionCS : ruleTemplateParameterSubstitutionCS EOF ;
     public final void entryRuleTemplateParameterSubstitutionCS() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2518:1: ( ruleTemplateParameterSubstitutionCS EOF )
-            // InternalCompleteOCL.g:2519:1: ruleTemplateParameterSubstitutionCS EOF
+            // InternalCompleteOCL.g:2546:1: ( ruleTemplateParameterSubstitutionCS EOF )
+            // InternalCompleteOCL.g:2547:1: ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSRule());
@@ -7631,23 +7716,23 @@
 
 
     // $ANTLR start "ruleTemplateParameterSubstitutionCS"
-    // InternalCompleteOCL.g:2526:1: ruleTemplateParameterSubstitutionCS : ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) ;
+    // InternalCompleteOCL.g:2554:1: ruleTemplateParameterSubstitutionCS : ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) ;
     public final void ruleTemplateParameterSubstitutionCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2530:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
-            // InternalCompleteOCL.g:2531:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
+            // InternalCompleteOCL.g:2558:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
+            // InternalCompleteOCL.g:2559:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
             {
-            // InternalCompleteOCL.g:2531:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
-            // InternalCompleteOCL.g:2532:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
+            // InternalCompleteOCL.g:2559:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
+            // InternalCompleteOCL.g:2560:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
-            // InternalCompleteOCL.g:2533:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
-            // InternalCompleteOCL.g:2533:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
+            // InternalCompleteOCL.g:2561:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
+            // InternalCompleteOCL.g:2561:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment();
@@ -7682,11 +7767,11 @@
 
 
     // $ANTLR start "entryRuleTypeParameterCS"
-    // InternalCompleteOCL.g:2545:1: entryRuleTypeParameterCS : ruleTypeParameterCS EOF ;
+    // InternalCompleteOCL.g:2573:1: entryRuleTypeParameterCS : ruleTypeParameterCS EOF ;
     public final void entryRuleTypeParameterCS() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2546:1: ( ruleTypeParameterCS EOF )
-            // InternalCompleteOCL.g:2547:1: ruleTypeParameterCS EOF
+            // InternalCompleteOCL.g:2574:1: ( ruleTypeParameterCS EOF )
+            // InternalCompleteOCL.g:2575:1: ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSRule());
@@ -7716,23 +7801,23 @@
 
 
     // $ANTLR start "ruleTypeParameterCS"
-    // InternalCompleteOCL.g:2554:1: ruleTypeParameterCS : ( ( rule__TypeParameterCS__Group__0 ) ) ;
+    // InternalCompleteOCL.g:2582:1: ruleTypeParameterCS : ( ( rule__TypeParameterCS__Group__0 ) ) ;
     public final void ruleTypeParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2558:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
-            // InternalCompleteOCL.g:2559:1: ( ( rule__TypeParameterCS__Group__0 ) )
+            // InternalCompleteOCL.g:2586:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
+            // InternalCompleteOCL.g:2587:1: ( ( rule__TypeParameterCS__Group__0 ) )
             {
-            // InternalCompleteOCL.g:2559:1: ( ( rule__TypeParameterCS__Group__0 ) )
-            // InternalCompleteOCL.g:2560:1: ( rule__TypeParameterCS__Group__0 )
+            // InternalCompleteOCL.g:2587:1: ( ( rule__TypeParameterCS__Group__0 ) )
+            // InternalCompleteOCL.g:2588:1: ( rule__TypeParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
-            // InternalCompleteOCL.g:2561:1: ( rule__TypeParameterCS__Group__0 )
-            // InternalCompleteOCL.g:2561:2: rule__TypeParameterCS__Group__0
+            // InternalCompleteOCL.g:2589:1: ( rule__TypeParameterCS__Group__0 )
+            // InternalCompleteOCL.g:2589:2: rule__TypeParameterCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group__0();
@@ -7767,11 +7852,11 @@
 
 
     // $ANTLR start "entryRuleTypeRefCS"
-    // InternalCompleteOCL.g:2573:1: entryRuleTypeRefCS : ruleTypeRefCS EOF ;
+    // InternalCompleteOCL.g:2601:1: entryRuleTypeRefCS : ruleTypeRefCS EOF ;
     public final void entryRuleTypeRefCS() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2574:1: ( ruleTypeRefCS EOF )
-            // InternalCompleteOCL.g:2575:1: ruleTypeRefCS EOF
+            // InternalCompleteOCL.g:2602:1: ( ruleTypeRefCS EOF )
+            // InternalCompleteOCL.g:2603:1: ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeRefCSRule());
@@ -7801,23 +7886,23 @@
 
 
     // $ANTLR start "ruleTypeRefCS"
-    // InternalCompleteOCL.g:2582:1: ruleTypeRefCS : ( ( rule__TypeRefCS__Alternatives ) ) ;
+    // InternalCompleteOCL.g:2610:1: ruleTypeRefCS : ( ( rule__TypeRefCS__Alternatives ) ) ;
     public final void ruleTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2586:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
-            // InternalCompleteOCL.g:2587:1: ( ( rule__TypeRefCS__Alternatives ) )
+            // InternalCompleteOCL.g:2614:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
+            // InternalCompleteOCL.g:2615:1: ( ( rule__TypeRefCS__Alternatives ) )
             {
-            // InternalCompleteOCL.g:2587:1: ( ( rule__TypeRefCS__Alternatives ) )
-            // InternalCompleteOCL.g:2588:1: ( rule__TypeRefCS__Alternatives )
+            // InternalCompleteOCL.g:2615:1: ( ( rule__TypeRefCS__Alternatives ) )
+            // InternalCompleteOCL.g:2616:1: ( rule__TypeRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
-            // InternalCompleteOCL.g:2589:1: ( rule__TypeRefCS__Alternatives )
-            // InternalCompleteOCL.g:2589:2: rule__TypeRefCS__Alternatives
+            // InternalCompleteOCL.g:2617:1: ( rule__TypeRefCS__Alternatives )
+            // InternalCompleteOCL.g:2617:2: rule__TypeRefCS__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeRefCS__Alternatives();
@@ -7852,11 +7937,11 @@
 
 
     // $ANTLR start "entryRuleTypedTypeRefCS"
-    // InternalCompleteOCL.g:2601:1: entryRuleTypedTypeRefCS : ruleTypedTypeRefCS EOF ;
+    // InternalCompleteOCL.g:2629:1: entryRuleTypedTypeRefCS : ruleTypedTypeRefCS EOF ;
     public final void entryRuleTypedTypeRefCS() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2602:1: ( ruleTypedTypeRefCS EOF )
-            // InternalCompleteOCL.g:2603:1: ruleTypedTypeRefCS EOF
+            // InternalCompleteOCL.g:2630:1: ( ruleTypedTypeRefCS EOF )
+            // InternalCompleteOCL.g:2631:1: ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSRule());
@@ -7886,23 +7971,23 @@
 
 
     // $ANTLR start "ruleTypedTypeRefCS"
-    // InternalCompleteOCL.g:2610:1: ruleTypedTypeRefCS : ( ( rule__TypedTypeRefCS__Group__0 ) ) ;
+    // InternalCompleteOCL.g:2638:1: ruleTypedTypeRefCS : ( ( rule__TypedTypeRefCS__Group__0 ) ) ;
     public final void ruleTypedTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2614:2: ( ( ( rule__TypedTypeRefCS__Group__0 ) ) )
-            // InternalCompleteOCL.g:2615:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
+            // InternalCompleteOCL.g:2642:2: ( ( ( rule__TypedTypeRefCS__Group__0 ) ) )
+            // InternalCompleteOCL.g:2643:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
             {
-            // InternalCompleteOCL.g:2615:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
-            // InternalCompleteOCL.g:2616:1: ( rule__TypedTypeRefCS__Group__0 )
+            // InternalCompleteOCL.g:2643:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
+            // InternalCompleteOCL.g:2644:1: ( rule__TypedTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getGroup());
             }
-            // InternalCompleteOCL.g:2617:1: ( rule__TypedTypeRefCS__Group__0 )
-            // InternalCompleteOCL.g:2617:2: rule__TypedTypeRefCS__Group__0
+            // InternalCompleteOCL.g:2645:1: ( rule__TypedTypeRefCS__Group__0 )
+            // InternalCompleteOCL.g:2645:2: rule__TypedTypeRefCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group__0();
@@ -7937,11 +8022,11 @@
 
 
     // $ANTLR start "entryRuleWildcardTypeRefCS"
-    // InternalCompleteOCL.g:2629:1: entryRuleWildcardTypeRefCS : ruleWildcardTypeRefCS EOF ;
+    // InternalCompleteOCL.g:2657:1: entryRuleWildcardTypeRefCS : ruleWildcardTypeRefCS EOF ;
     public final void entryRuleWildcardTypeRefCS() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2630:1: ( ruleWildcardTypeRefCS EOF )
-            // InternalCompleteOCL.g:2631:1: ruleWildcardTypeRefCS EOF
+            // InternalCompleteOCL.g:2658:1: ( ruleWildcardTypeRefCS EOF )
+            // InternalCompleteOCL.g:2659:1: ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSRule());
@@ -7971,23 +8056,23 @@
 
 
     // $ANTLR start "ruleWildcardTypeRefCS"
-    // InternalCompleteOCL.g:2638:1: ruleWildcardTypeRefCS : ( ( rule__WildcardTypeRefCS__Group__0 ) ) ;
+    // InternalCompleteOCL.g:2666:1: ruleWildcardTypeRefCS : ( ( rule__WildcardTypeRefCS__Group__0 ) ) ;
     public final void ruleWildcardTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2642:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
-            // InternalCompleteOCL.g:2643:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
+            // InternalCompleteOCL.g:2670:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
+            // InternalCompleteOCL.g:2671:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
             {
-            // InternalCompleteOCL.g:2643:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
-            // InternalCompleteOCL.g:2644:1: ( rule__WildcardTypeRefCS__Group__0 )
+            // InternalCompleteOCL.g:2671:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
+            // InternalCompleteOCL.g:2672:1: ( rule__WildcardTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
-            // InternalCompleteOCL.g:2645:1: ( rule__WildcardTypeRefCS__Group__0 )
-            // InternalCompleteOCL.g:2645:2: rule__WildcardTypeRefCS__Group__0
+            // InternalCompleteOCL.g:2673:1: ( rule__WildcardTypeRefCS__Group__0 )
+            // InternalCompleteOCL.g:2673:2: rule__WildcardTypeRefCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group__0();
@@ -8022,11 +8107,11 @@
 
 
     // $ANTLR start "entryRuleID"
-    // InternalCompleteOCL.g:2657:1: entryRuleID : ruleID EOF ;
+    // InternalCompleteOCL.g:2685:1: entryRuleID : ruleID EOF ;
     public final void entryRuleID() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2658:1: ( ruleID EOF )
-            // InternalCompleteOCL.g:2659:1: ruleID EOF
+            // InternalCompleteOCL.g:2686:1: ( ruleID EOF )
+            // InternalCompleteOCL.g:2687:1: ruleID EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIDRule());
@@ -8056,23 +8141,23 @@
 
 
     // $ANTLR start "ruleID"
-    // InternalCompleteOCL.g:2666:1: ruleID : ( ( rule__ID__Alternatives ) ) ;
+    // InternalCompleteOCL.g:2694:1: ruleID : ( ( rule__ID__Alternatives ) ) ;
     public final void ruleID() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2670:2: ( ( ( rule__ID__Alternatives ) ) )
-            // InternalCompleteOCL.g:2671:1: ( ( rule__ID__Alternatives ) )
+            // InternalCompleteOCL.g:2698:2: ( ( ( rule__ID__Alternatives ) ) )
+            // InternalCompleteOCL.g:2699:1: ( ( rule__ID__Alternatives ) )
             {
-            // InternalCompleteOCL.g:2671:1: ( ( rule__ID__Alternatives ) )
-            // InternalCompleteOCL.g:2672:1: ( rule__ID__Alternatives )
+            // InternalCompleteOCL.g:2699:1: ( ( rule__ID__Alternatives ) )
+            // InternalCompleteOCL.g:2700:1: ( rule__ID__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIDAccess().getAlternatives());
             }
-            // InternalCompleteOCL.g:2673:1: ( rule__ID__Alternatives )
-            // InternalCompleteOCL.g:2673:2: rule__ID__Alternatives
+            // InternalCompleteOCL.g:2701:1: ( rule__ID__Alternatives )
+            // InternalCompleteOCL.g:2701:2: rule__ID__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ID__Alternatives();
@@ -8107,11 +8192,11 @@
 
 
     // $ANTLR start "entryRuleIdentifier"
-    // InternalCompleteOCL.g:2685:1: entryRuleIdentifier : ruleIdentifier EOF ;
+    // InternalCompleteOCL.g:2713:1: entryRuleIdentifier : ruleIdentifier EOF ;
     public final void entryRuleIdentifier() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2686:1: ( ruleIdentifier EOF )
-            // InternalCompleteOCL.g:2687:1: ruleIdentifier EOF
+            // InternalCompleteOCL.g:2714:1: ( ruleIdentifier EOF )
+            // InternalCompleteOCL.g:2715:1: ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIdentifierRule());
@@ -8141,17 +8226,17 @@
 
 
     // $ANTLR start "ruleIdentifier"
-    // InternalCompleteOCL.g:2694:1: ruleIdentifier : ( ruleID ) ;
+    // InternalCompleteOCL.g:2722:1: ruleIdentifier : ( ruleID ) ;
     public final void ruleIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2698:2: ( ( ruleID ) )
-            // InternalCompleteOCL.g:2699:1: ( ruleID )
+            // InternalCompleteOCL.g:2726:2: ( ( ruleID ) )
+            // InternalCompleteOCL.g:2727:1: ( ruleID )
             {
-            // InternalCompleteOCL.g:2699:1: ( ruleID )
-            // InternalCompleteOCL.g:2700:1: ruleID
+            // InternalCompleteOCL.g:2727:1: ( ruleID )
+            // InternalCompleteOCL.g:2728:1: ruleID
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
@@ -8186,11 +8271,11 @@
 
 
     // $ANTLR start "entryRuleLOWER"
-    // InternalCompleteOCL.g:2713:1: entryRuleLOWER : ruleLOWER EOF ;
+    // InternalCompleteOCL.g:2741:1: entryRuleLOWER : ruleLOWER EOF ;
     public final void entryRuleLOWER() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2714:1: ( ruleLOWER EOF )
-            // InternalCompleteOCL.g:2715:1: ruleLOWER EOF
+            // InternalCompleteOCL.g:2742:1: ( ruleLOWER EOF )
+            // InternalCompleteOCL.g:2743:1: ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLOWERRule());
@@ -8220,17 +8305,17 @@
 
 
     // $ANTLR start "ruleLOWER"
-    // InternalCompleteOCL.g:2722:1: ruleLOWER : ( RULE_INT ) ;
+    // InternalCompleteOCL.g:2750:1: ruleLOWER : ( RULE_INT ) ;
     public final void ruleLOWER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2726:2: ( ( RULE_INT ) )
-            // InternalCompleteOCL.g:2727:1: ( RULE_INT )
+            // InternalCompleteOCL.g:2754:2: ( ( RULE_INT ) )
+            // InternalCompleteOCL.g:2755:1: ( RULE_INT )
             {
-            // InternalCompleteOCL.g:2727:1: ( RULE_INT )
-            // InternalCompleteOCL.g:2728:1: RULE_INT
+            // InternalCompleteOCL.g:2755:1: ( RULE_INT )
+            // InternalCompleteOCL.g:2756:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
@@ -8261,11 +8346,11 @@
 
 
     // $ANTLR start "entryRuleNUMBER_LITERAL"
-    // InternalCompleteOCL.g:2741:1: entryRuleNUMBER_LITERAL : ruleNUMBER_LITERAL EOF ;
+    // InternalCompleteOCL.g:2769:1: entryRuleNUMBER_LITERAL : ruleNUMBER_LITERAL EOF ;
     public final void entryRuleNUMBER_LITERAL() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2742:1: ( ruleNUMBER_LITERAL EOF )
-            // InternalCompleteOCL.g:2743:1: ruleNUMBER_LITERAL EOF
+            // InternalCompleteOCL.g:2770:1: ( ruleNUMBER_LITERAL EOF )
+            // InternalCompleteOCL.g:2771:1: ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNUMBER_LITERALRule());
@@ -8295,17 +8380,17 @@
 
 
     // $ANTLR start "ruleNUMBER_LITERAL"
-    // InternalCompleteOCL.g:2750:1: ruleNUMBER_LITERAL : ( RULE_INT ) ;
+    // InternalCompleteOCL.g:2778:1: ruleNUMBER_LITERAL : ( RULE_INT ) ;
     public final void ruleNUMBER_LITERAL() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2754:2: ( ( RULE_INT ) )
-            // InternalCompleteOCL.g:2755:1: ( RULE_INT )
+            // InternalCompleteOCL.g:2782:2: ( ( RULE_INT ) )
+            // InternalCompleteOCL.g:2783:1: ( RULE_INT )
             {
-            // InternalCompleteOCL.g:2755:1: ( RULE_INT )
-            // InternalCompleteOCL.g:2756:1: RULE_INT
+            // InternalCompleteOCL.g:2783:1: ( RULE_INT )
+            // InternalCompleteOCL.g:2784:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
@@ -8336,11 +8421,11 @@
 
 
     // $ANTLR start "entryRuleStringLiteral"
-    // InternalCompleteOCL.g:2769:1: entryRuleStringLiteral : ruleStringLiteral EOF ;
+    // InternalCompleteOCL.g:2797:1: entryRuleStringLiteral : ruleStringLiteral EOF ;
     public final void entryRuleStringLiteral() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2770:1: ( ruleStringLiteral EOF )
-            // InternalCompleteOCL.g:2771:1: ruleStringLiteral EOF
+            // InternalCompleteOCL.g:2798:1: ( ruleStringLiteral EOF )
+            // InternalCompleteOCL.g:2799:1: ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStringLiteralRule());
@@ -8370,17 +8455,17 @@
 
 
     // $ANTLR start "ruleStringLiteral"
-    // InternalCompleteOCL.g:2778:1: ruleStringLiteral : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalCompleteOCL.g:2806:1: ruleStringLiteral : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void ruleStringLiteral() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2782:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalCompleteOCL.g:2783:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalCompleteOCL.g:2810:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalCompleteOCL.g:2811:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalCompleteOCL.g:2783:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalCompleteOCL.g:2784:1: RULE_SINGLE_QUOTED_STRING
+            // InternalCompleteOCL.g:2811:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalCompleteOCL.g:2812:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
@@ -8411,11 +8496,11 @@
 
 
     // $ANTLR start "entryRuleUPPER"
-    // InternalCompleteOCL.g:2797:1: entryRuleUPPER : ruleUPPER EOF ;
+    // InternalCompleteOCL.g:2825:1: entryRuleUPPER : ruleUPPER EOF ;
     public final void entryRuleUPPER() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2798:1: ( ruleUPPER EOF )
-            // InternalCompleteOCL.g:2799:1: ruleUPPER EOF
+            // InternalCompleteOCL.g:2826:1: ( ruleUPPER EOF )
+            // InternalCompleteOCL.g:2827:1: ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUPPERRule());
@@ -8445,23 +8530,23 @@
 
 
     // $ANTLR start "ruleUPPER"
-    // InternalCompleteOCL.g:2806:1: ruleUPPER : ( ( rule__UPPER__Alternatives ) ) ;
+    // InternalCompleteOCL.g:2834:1: ruleUPPER : ( ( rule__UPPER__Alternatives ) ) ;
     public final void ruleUPPER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2810:2: ( ( ( rule__UPPER__Alternatives ) ) )
-            // InternalCompleteOCL.g:2811:1: ( ( rule__UPPER__Alternatives ) )
+            // InternalCompleteOCL.g:2838:2: ( ( ( rule__UPPER__Alternatives ) ) )
+            // InternalCompleteOCL.g:2839:1: ( ( rule__UPPER__Alternatives ) )
             {
-            // InternalCompleteOCL.g:2811:1: ( ( rule__UPPER__Alternatives ) )
-            // InternalCompleteOCL.g:2812:1: ( rule__UPPER__Alternatives )
+            // InternalCompleteOCL.g:2839:1: ( ( rule__UPPER__Alternatives ) )
+            // InternalCompleteOCL.g:2840:1: ( rule__UPPER__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUPPERAccess().getAlternatives());
             }
-            // InternalCompleteOCL.g:2813:1: ( rule__UPPER__Alternatives )
-            // InternalCompleteOCL.g:2813:2: rule__UPPER__Alternatives
+            // InternalCompleteOCL.g:2841:1: ( rule__UPPER__Alternatives )
+            // InternalCompleteOCL.g:2841:2: rule__UPPER__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__UPPER__Alternatives();
@@ -8496,11 +8581,11 @@
 
 
     // $ANTLR start "entryRuleURI"
-    // InternalCompleteOCL.g:2825:1: entryRuleURI : ruleURI EOF ;
+    // InternalCompleteOCL.g:2853:1: entryRuleURI : ruleURI EOF ;
     public final void entryRuleURI() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:2826:1: ( ruleURI EOF )
-            // InternalCompleteOCL.g:2827:1: ruleURI EOF
+            // InternalCompleteOCL.g:2854:1: ( ruleURI EOF )
+            // InternalCompleteOCL.g:2855:1: ruleURI EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIRule());
@@ -8530,17 +8615,17 @@
 
 
     // $ANTLR start "ruleURI"
-    // InternalCompleteOCL.g:2834:1: ruleURI : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalCompleteOCL.g:2862:1: ruleURI : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void ruleURI() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2838:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalCompleteOCL.g:2839:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalCompleteOCL.g:2866:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalCompleteOCL.g:2867:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalCompleteOCL.g:2839:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalCompleteOCL.g:2840:1: RULE_SINGLE_QUOTED_STRING
+            // InternalCompleteOCL.g:2867:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalCompleteOCL.g:2868:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
@@ -8571,13 +8656,13 @@
 
 
     // $ANTLR start "rule__CompleteOCLDocumentCS__Alternatives_1"
-    // InternalCompleteOCL.g:2853:1: rule__CompleteOCLDocumentCS__Alternatives_1 : ( ( ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 ) ) | ( ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 ) ) );
+    // InternalCompleteOCL.g:2881:1: rule__CompleteOCLDocumentCS__Alternatives_1 : ( ( ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 ) ) | ( ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 ) ) );
     public final void rule__CompleteOCLDocumentCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2857:1: ( ( ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 ) ) | ( ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:2885:1: ( ( ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 ) ) | ( ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 ) ) )
             int alt2=2;
             int LA2_0 = input.LA(1);
 
@@ -8596,16 +8681,16 @@
             }
             switch (alt2) {
                 case 1 :
-                    // InternalCompleteOCL.g:2858:1: ( ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 ) )
+                    // InternalCompleteOCL.g:2886:1: ( ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 ) )
                     {
-                    // InternalCompleteOCL.g:2858:1: ( ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 ) )
-                    // InternalCompleteOCL.g:2859:1: ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 )
+                    // InternalCompleteOCL.g:2886:1: ( ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 ) )
+                    // InternalCompleteOCL.g:2887:1: ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesAssignment_1_0());
                     }
-                    // InternalCompleteOCL.g:2860:1: ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 )
-                    // InternalCompleteOCL.g:2860:2: rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0
+                    // InternalCompleteOCL.g:2888:1: ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 )
+                    // InternalCompleteOCL.g:2888:2: rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0();
@@ -8625,16 +8710,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:2864:6: ( ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 ) )
+                    // InternalCompleteOCL.g:2892:6: ( ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 ) )
                     {
-                    // InternalCompleteOCL.g:2864:6: ( ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 ) )
-                    // InternalCompleteOCL.g:2865:1: ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 )
+                    // InternalCompleteOCL.g:2892:6: ( ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 ) )
+                    // InternalCompleteOCL.g:2893:1: ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsAssignment_1_1());
                     }
-                    // InternalCompleteOCL.g:2866:1: ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 )
-                    // InternalCompleteOCL.g:2866:2: rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1
+                    // InternalCompleteOCL.g:2894:1: ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 )
+                    // InternalCompleteOCL.g:2894:2: rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1();
@@ -8671,13 +8756,13 @@
 
 
     // $ANTLR start "rule__CompleteOCLNavigationOperatorName__Alternatives"
-    // InternalCompleteOCL.g:2875:1: rule__CompleteOCLNavigationOperatorName__Alternatives : ( ( '^' ) | ( '^^' ) );
+    // InternalCompleteOCL.g:2903:1: rule__CompleteOCLNavigationOperatorName__Alternatives : ( ( '^' ) | ( '^^' ) );
     public final void rule__CompleteOCLNavigationOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2879:1: ( ( '^' ) | ( '^^' ) )
+            // InternalCompleteOCL.g:2907:1: ( ( '^' ) | ( '^^' ) )
             int alt3=2;
             int LA3_0 = input.LA(1);
 
@@ -8696,10 +8781,10 @@
             }
             switch (alt3) {
                 case 1 :
-                    // InternalCompleteOCL.g:2880:1: ( '^' )
+                    // InternalCompleteOCL.g:2908:1: ( '^' )
                     {
-                    // InternalCompleteOCL.g:2880:1: ( '^' )
-                    // InternalCompleteOCL.g:2881:1: '^'
+                    // InternalCompleteOCL.g:2908:1: ( '^' )
+                    // InternalCompleteOCL.g:2909:1: '^'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentKeyword_0());
@@ -8715,10 +8800,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:2888:6: ( '^^' )
+                    // InternalCompleteOCL.g:2916:6: ( '^^' )
                     {
-                    // InternalCompleteOCL.g:2888:6: ( '^^' )
-                    // InternalCompleteOCL.g:2889:1: '^^'
+                    // InternalCompleteOCL.g:2916:6: ( '^^' )
+                    // InternalCompleteOCL.g:2917:1: '^^'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentCircumflexAccentKeyword_1());
@@ -8751,13 +8836,13 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Alternatives_4"
-    // InternalCompleteOCL.g:2901:1: rule__ClassifierContextDeclCS__Alternatives_4 : ( ( ( rule__ClassifierContextDeclCS__Group_4_0__0 ) ) | ( ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 ) ) );
+    // InternalCompleteOCL.g:2929:1: rule__ClassifierContextDeclCS__Alternatives_4 : ( ( ( rule__ClassifierContextDeclCS__Group_4_0__0 ) ) | ( ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 ) ) );
     public final void rule__ClassifierContextDeclCS__Alternatives_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2905:1: ( ( ( rule__ClassifierContextDeclCS__Group_4_0__0 ) ) | ( ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 ) ) )
+            // InternalCompleteOCL.g:2933:1: ( ( ( rule__ClassifierContextDeclCS__Group_4_0__0 ) ) | ( ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 ) ) )
             int alt4=2;
             int LA4_0 = input.LA(1);
 
@@ -8776,16 +8861,16 @@
             }
             switch (alt4) {
                 case 1 :
-                    // InternalCompleteOCL.g:2906:1: ( ( rule__ClassifierContextDeclCS__Group_4_0__0 ) )
+                    // InternalCompleteOCL.g:2934:1: ( ( rule__ClassifierContextDeclCS__Group_4_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:2906:1: ( ( rule__ClassifierContextDeclCS__Group_4_0__0 ) )
-                    // InternalCompleteOCL.g:2907:1: ( rule__ClassifierContextDeclCS__Group_4_0__0 )
+                    // InternalCompleteOCL.g:2934:1: ( ( rule__ClassifierContextDeclCS__Group_4_0__0 ) )
+                    // InternalCompleteOCL.g:2935:1: ( rule__ClassifierContextDeclCS__Group_4_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getClassifierContextDeclCSAccess().getGroup_4_0());
                     }
-                    // InternalCompleteOCL.g:2908:1: ( rule__ClassifierContextDeclCS__Group_4_0__0 )
-                    // InternalCompleteOCL.g:2908:2: rule__ClassifierContextDeclCS__Group_4_0__0
+                    // InternalCompleteOCL.g:2936:1: ( rule__ClassifierContextDeclCS__Group_4_0__0 )
+                    // InternalCompleteOCL.g:2936:2: rule__ClassifierContextDeclCS__Group_4_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ClassifierContextDeclCS__Group_4_0__0();
@@ -8805,16 +8890,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:2912:6: ( ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 ) )
+                    // InternalCompleteOCL.g:2940:6: ( ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 ) )
                     {
-                    // InternalCompleteOCL.g:2912:6: ( ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 ) )
-                    // InternalCompleteOCL.g:2913:1: ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 )
+                    // InternalCompleteOCL.g:2940:6: ( ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 ) )
+                    // InternalCompleteOCL.g:2941:1: ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsAssignment_4_1());
                     }
-                    // InternalCompleteOCL.g:2914:1: ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 )
-                    // InternalCompleteOCL.g:2914:2: rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1
+                    // InternalCompleteOCL.g:2942:1: ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 )
+                    // InternalCompleteOCL.g:2942:2: rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1();
@@ -8851,13 +8936,13 @@
 
 
     // $ANTLR start "rule__ContextDeclCS__Alternatives"
-    // InternalCompleteOCL.g:2923:1: rule__ContextDeclCS__Alternatives : ( ( rulePropertyContextDeclCS ) | ( ruleClassifierContextDeclCS ) | ( ruleOperationContextDeclCS ) );
+    // InternalCompleteOCL.g:2951:1: rule__ContextDeclCS__Alternatives : ( ( rulePropertyContextDeclCS ) | ( ruleClassifierContextDeclCS ) | ( ruleOperationContextDeclCS ) );
     public final void rule__ContextDeclCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2927:1: ( ( rulePropertyContextDeclCS ) | ( ruleClassifierContextDeclCS ) | ( ruleOperationContextDeclCS ) )
+            // InternalCompleteOCL.g:2955:1: ( ( rulePropertyContextDeclCS ) | ( ruleClassifierContextDeclCS ) | ( ruleOperationContextDeclCS ) )
             int alt5=3;
             int LA5_0 = input.LA(1);
 
@@ -8890,10 +8975,10 @@
             }
             switch (alt5) {
                 case 1 :
-                    // InternalCompleteOCL.g:2928:1: ( rulePropertyContextDeclCS )
+                    // InternalCompleteOCL.g:2956:1: ( rulePropertyContextDeclCS )
                     {
-                    // InternalCompleteOCL.g:2928:1: ( rulePropertyContextDeclCS )
-                    // InternalCompleteOCL.g:2929:1: rulePropertyContextDeclCS
+                    // InternalCompleteOCL.g:2956:1: ( rulePropertyContextDeclCS )
+                    // InternalCompleteOCL.g:2957:1: rulePropertyContextDeclCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0());
@@ -8913,10 +8998,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:2934:6: ( ruleClassifierContextDeclCS )
+                    // InternalCompleteOCL.g:2962:6: ( ruleClassifierContextDeclCS )
                     {
-                    // InternalCompleteOCL.g:2934:6: ( ruleClassifierContextDeclCS )
-                    // InternalCompleteOCL.g:2935:1: ruleClassifierContextDeclCS
+                    // InternalCompleteOCL.g:2962:6: ( ruleClassifierContextDeclCS )
+                    // InternalCompleteOCL.g:2963:1: ruleClassifierContextDeclCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1());
@@ -8936,10 +9021,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:2940:6: ( ruleOperationContextDeclCS )
+                    // InternalCompleteOCL.g:2968:6: ( ruleOperationContextDeclCS )
                     {
-                    // InternalCompleteOCL.g:2940:6: ( ruleOperationContextDeclCS )
-                    // InternalCompleteOCL.g:2941:1: ruleOperationContextDeclCS
+                    // InternalCompleteOCL.g:2968:6: ( ruleOperationContextDeclCS )
+                    // InternalCompleteOCL.g:2969:1: ruleOperationContextDeclCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getContextDeclCSAccess().getOperationContextDeclCSParserRuleCall_2());
@@ -8976,21 +9061,21 @@
 
 
     // $ANTLR start "rule__DefCS__Alternatives"
-    // InternalCompleteOCL.g:2951:1: rule__DefCS__Alternatives : ( ( ruleDefOperationCS ) | ( ruleDefPropertyCS ) );
+    // InternalCompleteOCL.g:2979:1: rule__DefCS__Alternatives : ( ( ruleDefOperationCS ) | ( ruleDefPropertyCS ) );
     public final void rule__DefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2955:1: ( ( ruleDefOperationCS ) | ( ruleDefPropertyCS ) )
+            // InternalCompleteOCL.g:2983:1: ( ( ruleDefOperationCS ) | ( ruleDefPropertyCS ) )
             int alt6=2;
             alt6 = dfa6.predict(input);
             switch (alt6) {
                 case 1 :
-                    // InternalCompleteOCL.g:2956:1: ( ruleDefOperationCS )
+                    // InternalCompleteOCL.g:2984:1: ( ruleDefOperationCS )
                     {
-                    // InternalCompleteOCL.g:2956:1: ( ruleDefOperationCS )
-                    // InternalCompleteOCL.g:2957:1: ruleDefOperationCS
+                    // InternalCompleteOCL.g:2984:1: ( ruleDefOperationCS )
+                    // InternalCompleteOCL.g:2985:1: ruleDefOperationCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDefCSAccess().getDefOperationCSParserRuleCall_0());
@@ -9010,10 +9095,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:2962:6: ( ruleDefPropertyCS )
+                    // InternalCompleteOCL.g:2990:6: ( ruleDefPropertyCS )
                     {
-                    // InternalCompleteOCL.g:2962:6: ( ruleDefPropertyCS )
-                    // InternalCompleteOCL.g:2963:1: ruleDefPropertyCS
+                    // InternalCompleteOCL.g:2990:6: ( ruleDefPropertyCS )
+                    // InternalCompleteOCL.g:2991:1: ruleDefPropertyCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDefCSAccess().getDefPropertyCSParserRuleCall_1());
@@ -9050,13 +9135,13 @@
 
 
     // $ANTLR start "rule__ImportCS__Alternatives_0"
-    // InternalCompleteOCL.g:2973:1: rule__ImportCS__Alternatives_0 : ( ( 'import' ) | ( 'include' ) | ( 'library' ) );
+    // InternalCompleteOCL.g:3001:1: rule__ImportCS__Alternatives_0 : ( ( 'import' ) | ( 'include' ) | ( 'library' ) );
     public final void rule__ImportCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:2977:1: ( ( 'import' ) | ( 'include' ) | ( 'library' ) )
+            // InternalCompleteOCL.g:3005:1: ( ( 'import' ) | ( 'include' ) | ( 'library' ) )
             int alt7=3;
             switch ( input.LA(1) ) {
             case 19:
@@ -9084,10 +9169,10 @@
 
             switch (alt7) {
                 case 1 :
-                    // InternalCompleteOCL.g:2978:1: ( 'import' )
+                    // InternalCompleteOCL.g:3006:1: ( 'import' )
                     {
-                    // InternalCompleteOCL.g:2978:1: ( 'import' )
-                    // InternalCompleteOCL.g:2979:1: 'import'
+                    // InternalCompleteOCL.g:3006:1: ( 'import' )
+                    // InternalCompleteOCL.g:3007:1: 'import'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getImportCSAccess().getImportKeyword_0_0());
@@ -9103,10 +9188,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:2986:6: ( 'include' )
+                    // InternalCompleteOCL.g:3014:6: ( 'include' )
                     {
-                    // InternalCompleteOCL.g:2986:6: ( 'include' )
-                    // InternalCompleteOCL.g:2987:1: 'include'
+                    // InternalCompleteOCL.g:3014:6: ( 'include' )
+                    // InternalCompleteOCL.g:3015:1: 'include'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getImportCSAccess().getIncludeKeyword_0_1());
@@ -9122,10 +9207,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:2994:6: ( 'library' )
+                    // InternalCompleteOCL.g:3022:6: ( 'library' )
                     {
-                    // InternalCompleteOCL.g:2994:6: ( 'library' )
-                    // InternalCompleteOCL.g:2995:1: 'library'
+                    // InternalCompleteOCL.g:3022:6: ( 'library' )
+                    // InternalCompleteOCL.g:3023:1: 'library'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getImportCSAccess().getLibraryKeyword_0_2());
@@ -9158,13 +9243,13 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Alternatives_8"
-    // InternalCompleteOCL.g:3007:1: rule__OperationContextDeclCS__Alternatives_8 : ( ( ( rule__OperationContextDeclCS__Group_8_0__0 ) ) | ( ( rule__OperationContextDeclCS__Group_8_1__0 ) ) | ( ( rule__OperationContextDeclCS__Group_8_2__0 ) ) );
+    // InternalCompleteOCL.g:3035:1: rule__OperationContextDeclCS__Alternatives_8 : ( ( ( rule__OperationContextDeclCS__Group_8_0__0 ) ) | ( ( rule__OperationContextDeclCS__Group_8_1__0 ) ) | ( ( rule__OperationContextDeclCS__Group_8_2__0 ) ) );
     public final void rule__OperationContextDeclCS__Alternatives_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3011:1: ( ( ( rule__OperationContextDeclCS__Group_8_0__0 ) ) | ( ( rule__OperationContextDeclCS__Group_8_1__0 ) ) | ( ( rule__OperationContextDeclCS__Group_8_2__0 ) ) )
+            // InternalCompleteOCL.g:3039:1: ( ( ( rule__OperationContextDeclCS__Group_8_0__0 ) ) | ( ( rule__OperationContextDeclCS__Group_8_1__0 ) ) | ( ( rule__OperationContextDeclCS__Group_8_2__0 ) ) )
             int alt8=3;
             switch ( input.LA(1) ) {
             case 72:
@@ -9192,16 +9277,16 @@
 
             switch (alt8) {
                 case 1 :
-                    // InternalCompleteOCL.g:3012:1: ( ( rule__OperationContextDeclCS__Group_8_0__0 ) )
+                    // InternalCompleteOCL.g:3040:1: ( ( rule__OperationContextDeclCS__Group_8_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:3012:1: ( ( rule__OperationContextDeclCS__Group_8_0__0 ) )
-                    // InternalCompleteOCL.g:3013:1: ( rule__OperationContextDeclCS__Group_8_0__0 )
+                    // InternalCompleteOCL.g:3040:1: ( ( rule__OperationContextDeclCS__Group_8_0__0 ) )
+                    // InternalCompleteOCL.g:3041:1: ( rule__OperationContextDeclCS__Group_8_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_0());
                     }
-                    // InternalCompleteOCL.g:3014:1: ( rule__OperationContextDeclCS__Group_8_0__0 )
-                    // InternalCompleteOCL.g:3014:2: rule__OperationContextDeclCS__Group_8_0__0
+                    // InternalCompleteOCL.g:3042:1: ( rule__OperationContextDeclCS__Group_8_0__0 )
+                    // InternalCompleteOCL.g:3042:2: rule__OperationContextDeclCS__Group_8_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationContextDeclCS__Group_8_0__0();
@@ -9221,16 +9306,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3018:6: ( ( rule__OperationContextDeclCS__Group_8_1__0 ) )
+                    // InternalCompleteOCL.g:3046:6: ( ( rule__OperationContextDeclCS__Group_8_1__0 ) )
                     {
-                    // InternalCompleteOCL.g:3018:6: ( ( rule__OperationContextDeclCS__Group_8_1__0 ) )
-                    // InternalCompleteOCL.g:3019:1: ( rule__OperationContextDeclCS__Group_8_1__0 )
+                    // InternalCompleteOCL.g:3046:6: ( ( rule__OperationContextDeclCS__Group_8_1__0 ) )
+                    // InternalCompleteOCL.g:3047:1: ( rule__OperationContextDeclCS__Group_8_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_1());
                     }
-                    // InternalCompleteOCL.g:3020:1: ( rule__OperationContextDeclCS__Group_8_1__0 )
-                    // InternalCompleteOCL.g:3020:2: rule__OperationContextDeclCS__Group_8_1__0
+                    // InternalCompleteOCL.g:3048:1: ( rule__OperationContextDeclCS__Group_8_1__0 )
+                    // InternalCompleteOCL.g:3048:2: rule__OperationContextDeclCS__Group_8_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationContextDeclCS__Group_8_1__0();
@@ -9250,16 +9335,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:3024:6: ( ( rule__OperationContextDeclCS__Group_8_2__0 ) )
+                    // InternalCompleteOCL.g:3052:6: ( ( rule__OperationContextDeclCS__Group_8_2__0 ) )
                     {
-                    // InternalCompleteOCL.g:3024:6: ( ( rule__OperationContextDeclCS__Group_8_2__0 ) )
-                    // InternalCompleteOCL.g:3025:1: ( rule__OperationContextDeclCS__Group_8_2__0 )
+                    // InternalCompleteOCL.g:3052:6: ( ( rule__OperationContextDeclCS__Group_8_2__0 ) )
+                    // InternalCompleteOCL.g:3053:1: ( rule__OperationContextDeclCS__Group_8_2__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_2());
                     }
-                    // InternalCompleteOCL.g:3026:1: ( rule__OperationContextDeclCS__Group_8_2__0 )
-                    // InternalCompleteOCL.g:3026:2: rule__OperationContextDeclCS__Group_8_2__0
+                    // InternalCompleteOCL.g:3054:1: ( rule__OperationContextDeclCS__Group_8_2__0 )
+                    // InternalCompleteOCL.g:3054:2: rule__OperationContextDeclCS__Group_8_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationContextDeclCS__Group_8_2__0();
@@ -9296,13 +9381,13 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Alternatives_4"
-    // InternalCompleteOCL.g:3035:1: rule__PropertyContextDeclCS__Alternatives_4 : ( ( ( rule__PropertyContextDeclCS__Group_4_0__0 ) ) | ( ( rule__PropertyContextDeclCS__Group_4_1__0 ) ) );
+    // InternalCompleteOCL.g:3063:1: rule__PropertyContextDeclCS__Alternatives_4 : ( ( ( rule__PropertyContextDeclCS__Group_4_0__0 ) ) | ( ( rule__PropertyContextDeclCS__Group_4_1__0 ) ) );
     public final void rule__PropertyContextDeclCS__Alternatives_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3039:1: ( ( ( rule__PropertyContextDeclCS__Group_4_0__0 ) ) | ( ( rule__PropertyContextDeclCS__Group_4_1__0 ) ) )
+            // InternalCompleteOCL.g:3067:1: ( ( ( rule__PropertyContextDeclCS__Group_4_0__0 ) ) | ( ( rule__PropertyContextDeclCS__Group_4_1__0 ) ) )
             int alt9=2;
             int LA9_0 = input.LA(1);
 
@@ -9321,16 +9406,16 @@
             }
             switch (alt9) {
                 case 1 :
-                    // InternalCompleteOCL.g:3040:1: ( ( rule__PropertyContextDeclCS__Group_4_0__0 ) )
+                    // InternalCompleteOCL.g:3068:1: ( ( rule__PropertyContextDeclCS__Group_4_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:3040:1: ( ( rule__PropertyContextDeclCS__Group_4_0__0 ) )
-                    // InternalCompleteOCL.g:3041:1: ( rule__PropertyContextDeclCS__Group_4_0__0 )
+                    // InternalCompleteOCL.g:3068:1: ( ( rule__PropertyContextDeclCS__Group_4_0__0 ) )
+                    // InternalCompleteOCL.g:3069:1: ( rule__PropertyContextDeclCS__Group_4_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPropertyContextDeclCSAccess().getGroup_4_0());
                     }
-                    // InternalCompleteOCL.g:3042:1: ( rule__PropertyContextDeclCS__Group_4_0__0 )
-                    // InternalCompleteOCL.g:3042:2: rule__PropertyContextDeclCS__Group_4_0__0
+                    // InternalCompleteOCL.g:3070:1: ( rule__PropertyContextDeclCS__Group_4_0__0 )
+                    // InternalCompleteOCL.g:3070:2: rule__PropertyContextDeclCS__Group_4_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PropertyContextDeclCS__Group_4_0__0();
@@ -9350,16 +9435,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3046:6: ( ( rule__PropertyContextDeclCS__Group_4_1__0 ) )
+                    // InternalCompleteOCL.g:3074:6: ( ( rule__PropertyContextDeclCS__Group_4_1__0 ) )
                     {
-                    // InternalCompleteOCL.g:3046:6: ( ( rule__PropertyContextDeclCS__Group_4_1__0 ) )
-                    // InternalCompleteOCL.g:3047:1: ( rule__PropertyContextDeclCS__Group_4_1__0 )
+                    // InternalCompleteOCL.g:3074:6: ( ( rule__PropertyContextDeclCS__Group_4_1__0 ) )
+                    // InternalCompleteOCL.g:3075:1: ( rule__PropertyContextDeclCS__Group_4_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPropertyContextDeclCSAccess().getGroup_4_1());
                     }
-                    // InternalCompleteOCL.g:3048:1: ( rule__PropertyContextDeclCS__Group_4_1__0 )
-                    // InternalCompleteOCL.g:3048:2: rule__PropertyContextDeclCS__Group_4_1__0
+                    // InternalCompleteOCL.g:3076:1: ( rule__PropertyContextDeclCS__Group_4_1__0 )
+                    // InternalCompleteOCL.g:3076:2: rule__PropertyContextDeclCS__Group_4_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PropertyContextDeclCS__Group_4_1__0();
@@ -9396,13 +9481,13 @@
 
 
     // $ANTLR start "rule__SpecificationCS__Alternatives"
-    // InternalCompleteOCL.g:3057:1: rule__SpecificationCS__Alternatives : ( ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) ) | ( ( rule__SpecificationCS__ExprStringAssignment_1 ) ) );
+    // InternalCompleteOCL.g:3085:1: rule__SpecificationCS__Alternatives : ( ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) ) | ( ( rule__SpecificationCS__ExprStringAssignment_1 ) ) );
     public final void rule__SpecificationCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3061:1: ( ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) ) | ( ( rule__SpecificationCS__ExprStringAssignment_1 ) ) )
+            // InternalCompleteOCL.g:3089:1: ( ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) ) | ( ( rule__SpecificationCS__ExprStringAssignment_1 ) ) )
             int alt10=2;
             int LA10_0 = input.LA(1);
 
@@ -9421,16 +9506,16 @@
             }
             switch (alt10) {
                 case 1 :
-                    // InternalCompleteOCL.g:3062:1: ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) )
+                    // InternalCompleteOCL.g:3090:1: ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) )
                     {
-                    // InternalCompleteOCL.g:3062:1: ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) )
-                    // InternalCompleteOCL.g:3063:1: ( rule__SpecificationCS__OwnedExpressionAssignment_0 )
+                    // InternalCompleteOCL.g:3090:1: ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) )
+                    // InternalCompleteOCL.g:3091:1: ( rule__SpecificationCS__OwnedExpressionAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment_0());
                     }
-                    // InternalCompleteOCL.g:3064:1: ( rule__SpecificationCS__OwnedExpressionAssignment_0 )
-                    // InternalCompleteOCL.g:3064:2: rule__SpecificationCS__OwnedExpressionAssignment_0
+                    // InternalCompleteOCL.g:3092:1: ( rule__SpecificationCS__OwnedExpressionAssignment_0 )
+                    // InternalCompleteOCL.g:3092:2: rule__SpecificationCS__OwnedExpressionAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__SpecificationCS__OwnedExpressionAssignment_0();
@@ -9450,16 +9535,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3068:6: ( ( rule__SpecificationCS__ExprStringAssignment_1 ) )
+                    // InternalCompleteOCL.g:3096:6: ( ( rule__SpecificationCS__ExprStringAssignment_1 ) )
                     {
-                    // InternalCompleteOCL.g:3068:6: ( ( rule__SpecificationCS__ExprStringAssignment_1 ) )
-                    // InternalCompleteOCL.g:3069:1: ( rule__SpecificationCS__ExprStringAssignment_1 )
+                    // InternalCompleteOCL.g:3096:6: ( ( rule__SpecificationCS__ExprStringAssignment_1 ) )
+                    // InternalCompleteOCL.g:3097:1: ( rule__SpecificationCS__ExprStringAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getSpecificationCSAccess().getExprStringAssignment_1());
                     }
-                    // InternalCompleteOCL.g:3070:1: ( rule__SpecificationCS__ExprStringAssignment_1 )
-                    // InternalCompleteOCL.g:3070:2: rule__SpecificationCS__ExprStringAssignment_1
+                    // InternalCompleteOCL.g:3098:1: ( rule__SpecificationCS__ExprStringAssignment_1 )
+                    // InternalCompleteOCL.g:3098:2: rule__SpecificationCS__ExprStringAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__SpecificationCS__ExprStringAssignment_1();
@@ -9496,13 +9581,13 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Alternatives"
-    // InternalCompleteOCL.g:3079:1: rule__TemplateSignatureCS__Alternatives : ( ( ( rule__TemplateSignatureCS__Group_0__0 ) ) | ( ( rule__TemplateSignatureCS__Group_1__0 ) ) );
+    // InternalCompleteOCL.g:3107:1: rule__TemplateSignatureCS__Alternatives : ( ( ( rule__TemplateSignatureCS__Group_0__0 ) ) | ( ( rule__TemplateSignatureCS__Group_1__0 ) ) );
     public final void rule__TemplateSignatureCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3083:1: ( ( ( rule__TemplateSignatureCS__Group_0__0 ) ) | ( ( rule__TemplateSignatureCS__Group_1__0 ) ) )
+            // InternalCompleteOCL.g:3111:1: ( ( ( rule__TemplateSignatureCS__Group_0__0 ) ) | ( ( rule__TemplateSignatureCS__Group_1__0 ) ) )
             int alt11=2;
             int LA11_0 = input.LA(1);
 
@@ -9521,16 +9606,16 @@
             }
             switch (alt11) {
                 case 1 :
-                    // InternalCompleteOCL.g:3084:1: ( ( rule__TemplateSignatureCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3112:1: ( ( rule__TemplateSignatureCS__Group_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:3084:1: ( ( rule__TemplateSignatureCS__Group_0__0 ) )
-                    // InternalCompleteOCL.g:3085:1: ( rule__TemplateSignatureCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3112:1: ( ( rule__TemplateSignatureCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3113:1: ( rule__TemplateSignatureCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTemplateSignatureCSAccess().getGroup_0());
                     }
-                    // InternalCompleteOCL.g:3086:1: ( rule__TemplateSignatureCS__Group_0__0 )
-                    // InternalCompleteOCL.g:3086:2: rule__TemplateSignatureCS__Group_0__0
+                    // InternalCompleteOCL.g:3114:1: ( rule__TemplateSignatureCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3114:2: rule__TemplateSignatureCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TemplateSignatureCS__Group_0__0();
@@ -9550,16 +9635,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3090:6: ( ( rule__TemplateSignatureCS__Group_1__0 ) )
+                    // InternalCompleteOCL.g:3118:6: ( ( rule__TemplateSignatureCS__Group_1__0 ) )
                     {
-                    // InternalCompleteOCL.g:3090:6: ( ( rule__TemplateSignatureCS__Group_1__0 ) )
-                    // InternalCompleteOCL.g:3091:1: ( rule__TemplateSignatureCS__Group_1__0 )
+                    // InternalCompleteOCL.g:3118:6: ( ( rule__TemplateSignatureCS__Group_1__0 ) )
+                    // InternalCompleteOCL.g:3119:1: ( rule__TemplateSignatureCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTemplateSignatureCSAccess().getGroup_1());
                     }
-                    // InternalCompleteOCL.g:3092:1: ( rule__TemplateSignatureCS__Group_1__0 )
-                    // InternalCompleteOCL.g:3092:2: rule__TemplateSignatureCS__Group_1__0
+                    // InternalCompleteOCL.g:3120:1: ( rule__TemplateSignatureCS__Group_1__0 )
+                    // InternalCompleteOCL.g:3120:2: rule__TemplateSignatureCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TemplateSignatureCS__Group_1__0();
@@ -9596,13 +9681,13 @@
 
 
     // $ANTLR start "rule__TypedRefCS__Alternatives"
-    // InternalCompleteOCL.g:3101:1: rule__TypedRefCS__Alternatives : ( ( ruleTypeLiteralCS ) | ( ruleTypedTypeRefCS ) );
+    // InternalCompleteOCL.g:3129:1: rule__TypedRefCS__Alternatives : ( ( ruleTypeLiteralCS ) | ( ruleTypedTypeRefCS ) );
     public final void rule__TypedRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3105:1: ( ( ruleTypeLiteralCS ) | ( ruleTypedTypeRefCS ) )
+            // InternalCompleteOCL.g:3133:1: ( ( ruleTypeLiteralCS ) | ( ruleTypedTypeRefCS ) )
             int alt12=2;
             int LA12_0 = input.LA(1);
 
@@ -9621,10 +9706,10 @@
             }
             switch (alt12) {
                 case 1 :
-                    // InternalCompleteOCL.g:3106:1: ( ruleTypeLiteralCS )
+                    // InternalCompleteOCL.g:3134:1: ( ruleTypeLiteralCS )
                     {
-                    // InternalCompleteOCL.g:3106:1: ( ruleTypeLiteralCS )
-                    // InternalCompleteOCL.g:3107:1: ruleTypeLiteralCS
+                    // InternalCompleteOCL.g:3134:1: ( ruleTypeLiteralCS )
+                    // InternalCompleteOCL.g:3135:1: ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0());
@@ -9644,10 +9729,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3112:6: ( ruleTypedTypeRefCS )
+                    // InternalCompleteOCL.g:3140:6: ( ruleTypedTypeRefCS )
                     {
-                    // InternalCompleteOCL.g:3112:6: ( ruleTypedTypeRefCS )
-                    // InternalCompleteOCL.g:3113:1: ruleTypedTypeRefCS
+                    // InternalCompleteOCL.g:3140:6: ( ruleTypedTypeRefCS )
+                    // InternalCompleteOCL.g:3141:1: ruleTypedTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1());
@@ -9684,13 +9769,13 @@
 
 
     // $ANTLR start "rule__UnrestrictedName__Alternatives"
-    // InternalCompleteOCL.g:3123:1: rule__UnrestrictedName__Alternatives : ( ( ruleEssentialOCLUnrestrictedName ) | ( 'import' ) | ( 'include' ) | ( 'library' ) );
+    // InternalCompleteOCL.g:3151:1: rule__UnrestrictedName__Alternatives : ( ( ruleEssentialOCLUnrestrictedName ) | ( 'import' ) | ( 'include' ) | ( 'library' ) );
     public final void rule__UnrestrictedName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3127:1: ( ( ruleEssentialOCLUnrestrictedName ) | ( 'import' ) | ( 'include' ) | ( 'library' ) )
+            // InternalCompleteOCL.g:3155:1: ( ( ruleEssentialOCLUnrestrictedName ) | ( 'import' ) | ( 'include' ) | ( 'library' ) )
             int alt13=4;
             switch ( input.LA(1) ) {
             case RULE_SIMPLE_ID:
@@ -9724,10 +9809,10 @@
 
             switch (alt13) {
                 case 1 :
-                    // InternalCompleteOCL.g:3128:1: ( ruleEssentialOCLUnrestrictedName )
+                    // InternalCompleteOCL.g:3156:1: ( ruleEssentialOCLUnrestrictedName )
                     {
-                    // InternalCompleteOCL.g:3128:1: ( ruleEssentialOCLUnrestrictedName )
-                    // InternalCompleteOCL.g:3129:1: ruleEssentialOCLUnrestrictedName
+                    // InternalCompleteOCL.g:3156:1: ( ruleEssentialOCLUnrestrictedName )
+                    // InternalCompleteOCL.g:3157:1: ruleEssentialOCLUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0());
@@ -9747,10 +9832,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3134:6: ( 'import' )
+                    // InternalCompleteOCL.g:3162:6: ( 'import' )
                     {
-                    // InternalCompleteOCL.g:3134:6: ( 'import' )
-                    // InternalCompleteOCL.g:3135:1: 'import'
+                    // InternalCompleteOCL.g:3162:6: ( 'import' )
+                    // InternalCompleteOCL.g:3163:1: 'import'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUnrestrictedNameAccess().getImportKeyword_1());
@@ -9766,10 +9851,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:3142:6: ( 'include' )
+                    // InternalCompleteOCL.g:3170:6: ( 'include' )
                     {
-                    // InternalCompleteOCL.g:3142:6: ( 'include' )
-                    // InternalCompleteOCL.g:3143:1: 'include'
+                    // InternalCompleteOCL.g:3170:6: ( 'include' )
+                    // InternalCompleteOCL.g:3171:1: 'include'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUnrestrictedNameAccess().getIncludeKeyword_2());
@@ -9785,10 +9870,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalCompleteOCL.g:3150:6: ( 'library' )
+                    // InternalCompleteOCL.g:3178:6: ( 'library' )
                     {
-                    // InternalCompleteOCL.g:3150:6: ( 'library' )
-                    // InternalCompleteOCL.g:3151:1: 'library'
+                    // InternalCompleteOCL.g:3178:6: ( 'library' )
+                    // InternalCompleteOCL.g:3179:1: 'library'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUnrestrictedNameAccess().getLibraryKeyword_3());
@@ -9821,13 +9906,13 @@
 
 
     // $ANTLR start "rule__NavigatingArgExpCS__Alternatives"
-    // InternalCompleteOCL.g:3163:1: rule__NavigatingArgExpCS__Alternatives : ( ( ( rule__NavigatingArgExpCS__Group_0__0 ) ) | ( ruleExpCS ) );
+    // InternalCompleteOCL.g:3191:1: rule__NavigatingArgExpCS__Alternatives : ( ( ( rule__NavigatingArgExpCS__Group_0__0 ) ) | ( ruleExpCS ) );
     public final void rule__NavigatingArgExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3167:1: ( ( ( rule__NavigatingArgExpCS__Group_0__0 ) ) | ( ruleExpCS ) )
+            // InternalCompleteOCL.g:3195:1: ( ( ( rule__NavigatingArgExpCS__Group_0__0 ) ) | ( ruleExpCS ) )
             int alt14=2;
             int LA14_0 = input.LA(1);
 
@@ -9846,16 +9931,16 @@
             }
             switch (alt14) {
                 case 1 :
-                    // InternalCompleteOCL.g:3168:1: ( ( rule__NavigatingArgExpCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3196:1: ( ( rule__NavigatingArgExpCS__Group_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:3168:1: ( ( rule__NavigatingArgExpCS__Group_0__0 ) )
-                    // InternalCompleteOCL.g:3169:1: ( rule__NavigatingArgExpCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3196:1: ( ( rule__NavigatingArgExpCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3197:1: ( rule__NavigatingArgExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgExpCSAccess().getGroup_0());
                     }
-                    // InternalCompleteOCL.g:3170:1: ( rule__NavigatingArgExpCS__Group_0__0 )
-                    // InternalCompleteOCL.g:3170:2: rule__NavigatingArgExpCS__Group_0__0
+                    // InternalCompleteOCL.g:3198:1: ( rule__NavigatingArgExpCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3198:2: rule__NavigatingArgExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgExpCS__Group_0__0();
@@ -9875,10 +9960,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3174:6: ( ruleExpCS )
+                    // InternalCompleteOCL.g:3202:6: ( ruleExpCS )
                     {
-                    // InternalCompleteOCL.g:3174:6: ( ruleExpCS )
-                    // InternalCompleteOCL.g:3175:1: ruleExpCS
+                    // InternalCompleteOCL.g:3202:6: ( ruleExpCS )
+                    // InternalCompleteOCL.g:3203:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall_1());
@@ -9915,13 +10000,13 @@
 
 
     // $ANTLR start "rule__NavigationOperatorName__Alternatives"
-    // InternalCompleteOCL.g:3185:1: rule__NavigationOperatorName__Alternatives : ( ( ruleEssentialOCLNavigationOperatorName ) | ( ruleCompleteOCLNavigationOperatorName ) );
+    // InternalCompleteOCL.g:3213:1: rule__NavigationOperatorName__Alternatives : ( ( ruleEssentialOCLNavigationOperatorName ) | ( ruleCompleteOCLNavigationOperatorName ) );
     public final void rule__NavigationOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3189:1: ( ( ruleEssentialOCLNavigationOperatorName ) | ( ruleCompleteOCLNavigationOperatorName ) )
+            // InternalCompleteOCL.g:3217:1: ( ( ruleEssentialOCLNavigationOperatorName ) | ( ruleCompleteOCLNavigationOperatorName ) )
             int alt15=2;
             int LA15_0 = input.LA(1);
 
@@ -9940,10 +10025,10 @@
             }
             switch (alt15) {
                 case 1 :
-                    // InternalCompleteOCL.g:3190:1: ( ruleEssentialOCLNavigationOperatorName )
+                    // InternalCompleteOCL.g:3218:1: ( ruleEssentialOCLNavigationOperatorName )
                     {
-                    // InternalCompleteOCL.g:3190:1: ( ruleEssentialOCLNavigationOperatorName )
-                    // InternalCompleteOCL.g:3191:1: ruleEssentialOCLNavigationOperatorName
+                    // InternalCompleteOCL.g:3218:1: ( ruleEssentialOCLNavigationOperatorName )
+                    // InternalCompleteOCL.g:3219:1: ruleEssentialOCLNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall_0());
@@ -9963,10 +10048,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3196:6: ( ruleCompleteOCLNavigationOperatorName )
+                    // InternalCompleteOCL.g:3224:6: ( ruleCompleteOCLNavigationOperatorName )
                     {
-                    // InternalCompleteOCL.g:3196:6: ( ruleCompleteOCLNavigationOperatorName )
-                    // InternalCompleteOCL.g:3197:1: ruleCompleteOCLNavigationOperatorName
+                    // InternalCompleteOCL.g:3224:6: ( ruleCompleteOCLNavigationOperatorName )
+                    // InternalCompleteOCL.g:3225:1: ruleCompleteOCLNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigationOperatorNameAccess().getCompleteOCLNavigationOperatorNameParserRuleCall_1());
@@ -10003,13 +10088,13 @@
 
 
     // $ANTLR start "rule__PrimitiveTypeIdentifier__Alternatives"
-    // InternalCompleteOCL.g:3207:1: rule__PrimitiveTypeIdentifier__Alternatives : ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclMessage' ) | ( 'OclState' ) | ( 'OclVoid' ) );
+    // InternalCompleteOCL.g:3235:1: rule__PrimitiveTypeIdentifier__Alternatives : ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclMessage' ) | ( 'OclState' ) | ( 'OclVoid' ) );
     public final void rule__PrimitiveTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3211:1: ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclMessage' ) | ( 'OclState' ) | ( 'OclVoid' ) )
+            // InternalCompleteOCL.g:3239:1: ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclMessage' ) | ( 'OclState' ) | ( 'OclVoid' ) )
             int alt16=10;
             switch ( input.LA(1) ) {
             case 22:
@@ -10072,10 +10157,10 @@
 
             switch (alt16) {
                 case 1 :
-                    // InternalCompleteOCL.g:3212:1: ( 'Boolean' )
+                    // InternalCompleteOCL.g:3240:1: ( 'Boolean' )
                     {
-                    // InternalCompleteOCL.g:3212:1: ( 'Boolean' )
-                    // InternalCompleteOCL.g:3213:1: 'Boolean'
+                    // InternalCompleteOCL.g:3240:1: ( 'Boolean' )
+                    // InternalCompleteOCL.g:3241:1: 'Boolean'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
@@ -10091,10 +10176,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3220:6: ( 'Integer' )
+                    // InternalCompleteOCL.g:3248:6: ( 'Integer' )
                     {
-                    // InternalCompleteOCL.g:3220:6: ( 'Integer' )
-                    // InternalCompleteOCL.g:3221:1: 'Integer'
+                    // InternalCompleteOCL.g:3248:6: ( 'Integer' )
+                    // InternalCompleteOCL.g:3249:1: 'Integer'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
@@ -10110,10 +10195,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:3228:6: ( 'Real' )
+                    // InternalCompleteOCL.g:3256:6: ( 'Real' )
                     {
-                    // InternalCompleteOCL.g:3228:6: ( 'Real' )
-                    // InternalCompleteOCL.g:3229:1: 'Real'
+                    // InternalCompleteOCL.g:3256:6: ( 'Real' )
+                    // InternalCompleteOCL.g:3257:1: 'Real'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
@@ -10129,10 +10214,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalCompleteOCL.g:3236:6: ( 'String' )
+                    // InternalCompleteOCL.g:3264:6: ( 'String' )
                     {
-                    // InternalCompleteOCL.g:3236:6: ( 'String' )
-                    // InternalCompleteOCL.g:3237:1: 'String'
+                    // InternalCompleteOCL.g:3264:6: ( 'String' )
+                    // InternalCompleteOCL.g:3265:1: 'String'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
@@ -10148,10 +10233,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalCompleteOCL.g:3244:6: ( 'UnlimitedNatural' )
+                    // InternalCompleteOCL.g:3272:6: ( 'UnlimitedNatural' )
                     {
-                    // InternalCompleteOCL.g:3244:6: ( 'UnlimitedNatural' )
-                    // InternalCompleteOCL.g:3245:1: 'UnlimitedNatural'
+                    // InternalCompleteOCL.g:3272:6: ( 'UnlimitedNatural' )
+                    // InternalCompleteOCL.g:3273:1: 'UnlimitedNatural'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
@@ -10167,10 +10252,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalCompleteOCL.g:3252:6: ( 'OclAny' )
+                    // InternalCompleteOCL.g:3280:6: ( 'OclAny' )
                     {
-                    // InternalCompleteOCL.g:3252:6: ( 'OclAny' )
-                    // InternalCompleteOCL.g:3253:1: 'OclAny'
+                    // InternalCompleteOCL.g:3280:6: ( 'OclAny' )
+                    // InternalCompleteOCL.g:3281:1: 'OclAny'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
@@ -10186,10 +10271,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalCompleteOCL.g:3260:6: ( 'OclInvalid' )
+                    // InternalCompleteOCL.g:3288:6: ( 'OclInvalid' )
                     {
-                    // InternalCompleteOCL.g:3260:6: ( 'OclInvalid' )
-                    // InternalCompleteOCL.g:3261:1: 'OclInvalid'
+                    // InternalCompleteOCL.g:3288:6: ( 'OclInvalid' )
+                    // InternalCompleteOCL.g:3289:1: 'OclInvalid'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
@@ -10205,10 +10290,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalCompleteOCL.g:3268:6: ( 'OclMessage' )
+                    // InternalCompleteOCL.g:3296:6: ( 'OclMessage' )
                     {
-                    // InternalCompleteOCL.g:3268:6: ( 'OclMessage' )
-                    // InternalCompleteOCL.g:3269:1: 'OclMessage'
+                    // InternalCompleteOCL.g:3296:6: ( 'OclMessage' )
+                    // InternalCompleteOCL.g:3297:1: 'OclMessage'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclMessageKeyword_7());
@@ -10224,10 +10309,10 @@
                     }
                     break;
                 case 9 :
-                    // InternalCompleteOCL.g:3276:6: ( 'OclState' )
+                    // InternalCompleteOCL.g:3304:6: ( 'OclState' )
                     {
-                    // InternalCompleteOCL.g:3276:6: ( 'OclState' )
-                    // InternalCompleteOCL.g:3277:1: 'OclState'
+                    // InternalCompleteOCL.g:3304:6: ( 'OclState' )
+                    // InternalCompleteOCL.g:3305:1: 'OclState'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclStateKeyword_8());
@@ -10243,10 +10328,10 @@
                     }
                     break;
                 case 10 :
-                    // InternalCompleteOCL.g:3284:6: ( 'OclVoid' )
+                    // InternalCompleteOCL.g:3312:6: ( 'OclVoid' )
                     {
-                    // InternalCompleteOCL.g:3284:6: ( 'OclVoid' )
-                    // InternalCompleteOCL.g:3285:1: 'OclVoid'
+                    // InternalCompleteOCL.g:3312:6: ( 'OclVoid' )
+                    // InternalCompleteOCL.g:3313:1: 'OclVoid'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_9());
@@ -10279,13 +10364,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLUnaryOperatorName__Alternatives"
-    // InternalCompleteOCL.g:3298:1: rule__EssentialOCLUnaryOperatorName__Alternatives : ( ( '-' ) | ( 'not' ) | ( 'not2' ) );
+    // InternalCompleteOCL.g:3326:1: rule__EssentialOCLUnaryOperatorName__Alternatives : ( ( '-' ) | ( 'not' ) | ( 'not2' ) );
     public final void rule__EssentialOCLUnaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3302:1: ( ( '-' ) | ( 'not' ) | ( 'not2' ) )
+            // InternalCompleteOCL.g:3330:1: ( ( '-' ) | ( 'not' ) | ( 'not2' ) )
             int alt17=3;
             switch ( input.LA(1) ) {
             case 32:
@@ -10313,10 +10398,10 @@
 
             switch (alt17) {
                 case 1 :
-                    // InternalCompleteOCL.g:3303:1: ( '-' )
+                    // InternalCompleteOCL.g:3331:1: ( '-' )
                     {
-                    // InternalCompleteOCL.g:3303:1: ( '-' )
-                    // InternalCompleteOCL.g:3304:1: '-'
+                    // InternalCompleteOCL.g:3331:1: ( '-' )
+                    // InternalCompleteOCL.g:3332:1: '-'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
@@ -10332,10 +10417,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3311:6: ( 'not' )
+                    // InternalCompleteOCL.g:3339:6: ( 'not' )
                     {
-                    // InternalCompleteOCL.g:3311:6: ( 'not' )
-                    // InternalCompleteOCL.g:3312:1: 'not'
+                    // InternalCompleteOCL.g:3339:6: ( 'not' )
+                    // InternalCompleteOCL.g:3340:1: 'not'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
@@ -10351,10 +10436,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:3319:6: ( 'not2' )
+                    // InternalCompleteOCL.g:3347:6: ( 'not2' )
                     {
-                    // InternalCompleteOCL.g:3319:6: ( 'not2' )
-                    // InternalCompleteOCL.g:3320:1: 'not2'
+                    // InternalCompleteOCL.g:3347:6: ( 'not2' )
+                    // InternalCompleteOCL.g:3348:1: 'not2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNot2Keyword_2());
@@ -10387,13 +10472,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLInfixOperatorName__Alternatives"
-    // InternalCompleteOCL.g:3332:1: rule__EssentialOCLInfixOperatorName__Alternatives : ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) );
+    // InternalCompleteOCL.g:3360:1: rule__EssentialOCLInfixOperatorName__Alternatives : ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) );
     public final void rule__EssentialOCLInfixOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3336:1: ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) )
+            // InternalCompleteOCL.g:3364:1: ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) )
             int alt18=18;
             switch ( input.LA(1) ) {
             case 35:
@@ -10496,10 +10581,10 @@
 
             switch (alt18) {
                 case 1 :
-                    // InternalCompleteOCL.g:3337:1: ( '*' )
+                    // InternalCompleteOCL.g:3365:1: ( '*' )
                     {
-                    // InternalCompleteOCL.g:3337:1: ( '*' )
-                    // InternalCompleteOCL.g:3338:1: '*'
+                    // InternalCompleteOCL.g:3365:1: ( '*' )
+                    // InternalCompleteOCL.g:3366:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
@@ -10515,10 +10600,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3345:6: ( '/' )
+                    // InternalCompleteOCL.g:3373:6: ( '/' )
                     {
-                    // InternalCompleteOCL.g:3345:6: ( '/' )
-                    // InternalCompleteOCL.g:3346:1: '/'
+                    // InternalCompleteOCL.g:3373:6: ( '/' )
+                    // InternalCompleteOCL.g:3374:1: '/'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
@@ -10534,10 +10619,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:3353:6: ( '+' )
+                    // InternalCompleteOCL.g:3381:6: ( '+' )
                     {
-                    // InternalCompleteOCL.g:3353:6: ( '+' )
-                    // InternalCompleteOCL.g:3354:1: '+'
+                    // InternalCompleteOCL.g:3381:6: ( '+' )
+                    // InternalCompleteOCL.g:3382:1: '+'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
@@ -10553,10 +10638,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalCompleteOCL.g:3361:6: ( '-' )
+                    // InternalCompleteOCL.g:3389:6: ( '-' )
                     {
-                    // InternalCompleteOCL.g:3361:6: ( '-' )
-                    // InternalCompleteOCL.g:3362:1: '-'
+                    // InternalCompleteOCL.g:3389:6: ( '-' )
+                    // InternalCompleteOCL.g:3390:1: '-'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
@@ -10572,10 +10657,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalCompleteOCL.g:3369:6: ( '>' )
+                    // InternalCompleteOCL.g:3397:6: ( '>' )
                     {
-                    // InternalCompleteOCL.g:3369:6: ( '>' )
-                    // InternalCompleteOCL.g:3370:1: '>'
+                    // InternalCompleteOCL.g:3397:6: ( '>' )
+                    // InternalCompleteOCL.g:3398:1: '>'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
@@ -10591,10 +10676,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalCompleteOCL.g:3377:6: ( '<' )
+                    // InternalCompleteOCL.g:3405:6: ( '<' )
                     {
-                    // InternalCompleteOCL.g:3377:6: ( '<' )
-                    // InternalCompleteOCL.g:3378:1: '<'
+                    // InternalCompleteOCL.g:3405:6: ( '<' )
+                    // InternalCompleteOCL.g:3406:1: '<'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
@@ -10610,10 +10695,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalCompleteOCL.g:3385:6: ( '>=' )
+                    // InternalCompleteOCL.g:3413:6: ( '>=' )
                     {
-                    // InternalCompleteOCL.g:3385:6: ( '>=' )
-                    // InternalCompleteOCL.g:3386:1: '>='
+                    // InternalCompleteOCL.g:3413:6: ( '>=' )
+                    // InternalCompleteOCL.g:3414:1: '>='
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
@@ -10629,10 +10714,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalCompleteOCL.g:3393:6: ( '<=' )
+                    // InternalCompleteOCL.g:3421:6: ( '<=' )
                     {
-                    // InternalCompleteOCL.g:3393:6: ( '<=' )
-                    // InternalCompleteOCL.g:3394:1: '<='
+                    // InternalCompleteOCL.g:3421:6: ( '<=' )
+                    // InternalCompleteOCL.g:3422:1: '<='
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
@@ -10648,10 +10733,10 @@
                     }
                     break;
                 case 9 :
-                    // InternalCompleteOCL.g:3401:6: ( '=' )
+                    // InternalCompleteOCL.g:3429:6: ( '=' )
                     {
-                    // InternalCompleteOCL.g:3401:6: ( '=' )
-                    // InternalCompleteOCL.g:3402:1: '='
+                    // InternalCompleteOCL.g:3429:6: ( '=' )
+                    // InternalCompleteOCL.g:3430:1: '='
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
@@ -10667,10 +10752,10 @@
                     }
                     break;
                 case 10 :
-                    // InternalCompleteOCL.g:3409:6: ( '<>' )
+                    // InternalCompleteOCL.g:3437:6: ( '<>' )
                     {
-                    // InternalCompleteOCL.g:3409:6: ( '<>' )
-                    // InternalCompleteOCL.g:3410:1: '<>'
+                    // InternalCompleteOCL.g:3437:6: ( '<>' )
+                    // InternalCompleteOCL.g:3438:1: '<>'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
@@ -10686,10 +10771,10 @@
                     }
                     break;
                 case 11 :
-                    // InternalCompleteOCL.g:3417:6: ( 'and' )
+                    // InternalCompleteOCL.g:3445:6: ( 'and' )
                     {
-                    // InternalCompleteOCL.g:3417:6: ( 'and' )
-                    // InternalCompleteOCL.g:3418:1: 'and'
+                    // InternalCompleteOCL.g:3445:6: ( 'and' )
+                    // InternalCompleteOCL.g:3446:1: 'and'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
@@ -10705,10 +10790,10 @@
                     }
                     break;
                 case 12 :
-                    // InternalCompleteOCL.g:3425:6: ( 'and2' )
+                    // InternalCompleteOCL.g:3453:6: ( 'and2' )
                     {
-                    // InternalCompleteOCL.g:3425:6: ( 'and2' )
-                    // InternalCompleteOCL.g:3426:1: 'and2'
+                    // InternalCompleteOCL.g:3453:6: ( 'and2' )
+                    // InternalCompleteOCL.g:3454:1: 'and2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAnd2Keyword_11());
@@ -10724,10 +10809,10 @@
                     }
                     break;
                 case 13 :
-                    // InternalCompleteOCL.g:3433:6: ( 'implies' )
+                    // InternalCompleteOCL.g:3461:6: ( 'implies' )
                     {
-                    // InternalCompleteOCL.g:3433:6: ( 'implies' )
-                    // InternalCompleteOCL.g:3434:1: 'implies'
+                    // InternalCompleteOCL.g:3461:6: ( 'implies' )
+                    // InternalCompleteOCL.g:3462:1: 'implies'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_12());
@@ -10743,10 +10828,10 @@
                     }
                     break;
                 case 14 :
-                    // InternalCompleteOCL.g:3441:6: ( 'implies2' )
+                    // InternalCompleteOCL.g:3469:6: ( 'implies2' )
                     {
-                    // InternalCompleteOCL.g:3441:6: ( 'implies2' )
-                    // InternalCompleteOCL.g:3442:1: 'implies2'
+                    // InternalCompleteOCL.g:3469:6: ( 'implies2' )
+                    // InternalCompleteOCL.g:3470:1: 'implies2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImplies2Keyword_13());
@@ -10762,10 +10847,10 @@
                     }
                     break;
                 case 15 :
-                    // InternalCompleteOCL.g:3449:6: ( 'or' )
+                    // InternalCompleteOCL.g:3477:6: ( 'or' )
                     {
-                    // InternalCompleteOCL.g:3449:6: ( 'or' )
-                    // InternalCompleteOCL.g:3450:1: 'or'
+                    // InternalCompleteOCL.g:3477:6: ( 'or' )
+                    // InternalCompleteOCL.g:3478:1: 'or'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_14());
@@ -10781,10 +10866,10 @@
                     }
                     break;
                 case 16 :
-                    // InternalCompleteOCL.g:3457:6: ( 'or2' )
+                    // InternalCompleteOCL.g:3485:6: ( 'or2' )
                     {
-                    // InternalCompleteOCL.g:3457:6: ( 'or2' )
-                    // InternalCompleteOCL.g:3458:1: 'or2'
+                    // InternalCompleteOCL.g:3485:6: ( 'or2' )
+                    // InternalCompleteOCL.g:3486:1: 'or2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOr2Keyword_15());
@@ -10800,10 +10885,10 @@
                     }
                     break;
                 case 17 :
-                    // InternalCompleteOCL.g:3465:6: ( 'xor' )
+                    // InternalCompleteOCL.g:3493:6: ( 'xor' )
                     {
-                    // InternalCompleteOCL.g:3465:6: ( 'xor' )
-                    // InternalCompleteOCL.g:3466:1: 'xor'
+                    // InternalCompleteOCL.g:3493:6: ( 'xor' )
+                    // InternalCompleteOCL.g:3494:1: 'xor'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_16());
@@ -10819,10 +10904,10 @@
                     }
                     break;
                 case 18 :
-                    // InternalCompleteOCL.g:3473:6: ( 'xor2' )
+                    // InternalCompleteOCL.g:3501:6: ( 'xor2' )
                     {
-                    // InternalCompleteOCL.g:3473:6: ( 'xor2' )
-                    // InternalCompleteOCL.g:3474:1: 'xor2'
+                    // InternalCompleteOCL.g:3501:6: ( 'xor2' )
+                    // InternalCompleteOCL.g:3502:1: 'xor2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXor2Keyword_17());
@@ -10855,13 +10940,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLNavigationOperatorName__Alternatives"
-    // InternalCompleteOCL.g:3486:1: rule__EssentialOCLNavigationOperatorName__Alternatives : ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) );
+    // InternalCompleteOCL.g:3514:1: rule__EssentialOCLNavigationOperatorName__Alternatives : ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) );
     public final void rule__EssentialOCLNavigationOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3490:1: ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) )
+            // InternalCompleteOCL.g:3518:1: ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) )
             int alt19=4;
             switch ( input.LA(1) ) {
             case 52:
@@ -10894,10 +10979,10 @@
 
             switch (alt19) {
                 case 1 :
-                    // InternalCompleteOCL.g:3491:1: ( '.' )
+                    // InternalCompleteOCL.g:3519:1: ( '.' )
                     {
-                    // InternalCompleteOCL.g:3491:1: ( '.' )
-                    // InternalCompleteOCL.g:3492:1: '.'
+                    // InternalCompleteOCL.g:3519:1: ( '.' )
+                    // InternalCompleteOCL.g:3520:1: '.'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
@@ -10913,10 +10998,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3499:6: ( '->' )
+                    // InternalCompleteOCL.g:3527:6: ( '->' )
                     {
-                    // InternalCompleteOCL.g:3499:6: ( '->' )
-                    // InternalCompleteOCL.g:3500:1: '->'
+                    // InternalCompleteOCL.g:3527:6: ( '->' )
+                    // InternalCompleteOCL.g:3528:1: '->'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
@@ -10932,10 +11017,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:3507:6: ( '?.' )
+                    // InternalCompleteOCL.g:3535:6: ( '?.' )
                     {
-                    // InternalCompleteOCL.g:3507:6: ( '?.' )
-                    // InternalCompleteOCL.g:3508:1: '?.'
+                    // InternalCompleteOCL.g:3535:6: ( '?.' )
+                    // InternalCompleteOCL.g:3536:1: '?.'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
@@ -10951,10 +11036,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalCompleteOCL.g:3515:6: ( '?->' )
+                    // InternalCompleteOCL.g:3543:6: ( '?->' )
                     {
-                    // InternalCompleteOCL.g:3515:6: ( '?->' )
-                    // InternalCompleteOCL.g:3516:1: '?->'
+                    // InternalCompleteOCL.g:3543:6: ( '?->' )
+                    // InternalCompleteOCL.g:3544:1: '?->'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
@@ -10987,13 +11072,13 @@
 
 
     // $ANTLR start "rule__BinaryOperatorName__Alternatives"
-    // InternalCompleteOCL.g:3528:1: rule__BinaryOperatorName__Alternatives : ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) );
+    // InternalCompleteOCL.g:3556:1: rule__BinaryOperatorName__Alternatives : ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) );
     public final void rule__BinaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3532:1: ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) )
+            // InternalCompleteOCL.g:3560:1: ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) )
             int alt20=2;
             int LA20_0 = input.LA(1);
 
@@ -11012,10 +11097,10 @@
             }
             switch (alt20) {
                 case 1 :
-                    // InternalCompleteOCL.g:3533:1: ( ruleInfixOperatorName )
+                    // InternalCompleteOCL.g:3561:1: ( ruleInfixOperatorName )
                     {
-                    // InternalCompleteOCL.g:3533:1: ( ruleInfixOperatorName )
-                    // InternalCompleteOCL.g:3534:1: ruleInfixOperatorName
+                    // InternalCompleteOCL.g:3561:1: ( ruleInfixOperatorName )
+                    // InternalCompleteOCL.g:3562:1: ruleInfixOperatorName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
@@ -11035,10 +11120,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3539:6: ( ruleNavigationOperatorName )
+                    // InternalCompleteOCL.g:3567:6: ( ruleNavigationOperatorName )
                     {
-                    // InternalCompleteOCL.g:3539:6: ( ruleNavigationOperatorName )
-                    // InternalCompleteOCL.g:3540:1: ruleNavigationOperatorName
+                    // InternalCompleteOCL.g:3567:6: ( ruleNavigationOperatorName )
+                    // InternalCompleteOCL.g:3568:1: ruleNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
@@ -11075,13 +11160,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLUnreservedName__Alternatives"
-    // InternalCompleteOCL.g:3550:1: rule__EssentialOCLUnreservedName__Alternatives : ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) );
+    // InternalCompleteOCL.g:3578:1: rule__EssentialOCLUnreservedName__Alternatives : ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) );
     public final void rule__EssentialOCLUnreservedName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3554:1: ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) )
+            // InternalCompleteOCL.g:3582:1: ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) )
             int alt21=5;
             switch ( input.LA(1) ) {
             case RULE_SIMPLE_ID:
@@ -11136,10 +11221,10 @@
 
             switch (alt21) {
                 case 1 :
-                    // InternalCompleteOCL.g:3555:1: ( ruleUnrestrictedName )
+                    // InternalCompleteOCL.g:3583:1: ( ruleUnrestrictedName )
                     {
-                    // InternalCompleteOCL.g:3555:1: ( ruleUnrestrictedName )
-                    // InternalCompleteOCL.g:3556:1: ruleUnrestrictedName
+                    // InternalCompleteOCL.g:3583:1: ( ruleUnrestrictedName )
+                    // InternalCompleteOCL.g:3584:1: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
@@ -11159,10 +11244,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3561:6: ( ruleCollectionTypeIdentifier )
+                    // InternalCompleteOCL.g:3589:6: ( ruleCollectionTypeIdentifier )
                     {
-                    // InternalCompleteOCL.g:3561:6: ( ruleCollectionTypeIdentifier )
-                    // InternalCompleteOCL.g:3562:1: ruleCollectionTypeIdentifier
+                    // InternalCompleteOCL.g:3589:6: ( ruleCollectionTypeIdentifier )
+                    // InternalCompleteOCL.g:3590:1: ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
@@ -11182,10 +11267,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:3567:6: ( rulePrimitiveTypeIdentifier )
+                    // InternalCompleteOCL.g:3595:6: ( rulePrimitiveTypeIdentifier )
                     {
-                    // InternalCompleteOCL.g:3567:6: ( rulePrimitiveTypeIdentifier )
-                    // InternalCompleteOCL.g:3568:1: rulePrimitiveTypeIdentifier
+                    // InternalCompleteOCL.g:3595:6: ( rulePrimitiveTypeIdentifier )
+                    // InternalCompleteOCL.g:3596:1: rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
@@ -11205,10 +11290,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalCompleteOCL.g:3573:6: ( 'Map' )
+                    // InternalCompleteOCL.g:3601:6: ( 'Map' )
                     {
-                    // InternalCompleteOCL.g:3573:6: ( 'Map' )
-                    // InternalCompleteOCL.g:3574:1: 'Map'
+                    // InternalCompleteOCL.g:3601:6: ( 'Map' )
+                    // InternalCompleteOCL.g:3602:1: 'Map'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
@@ -11224,10 +11309,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalCompleteOCL.g:3581:6: ( 'Tuple' )
+                    // InternalCompleteOCL.g:3609:6: ( 'Tuple' )
                     {
-                    // InternalCompleteOCL.g:3581:6: ( 'Tuple' )
-                    // InternalCompleteOCL.g:3582:1: 'Tuple'
+                    // InternalCompleteOCL.g:3609:6: ( 'Tuple' )
+                    // InternalCompleteOCL.g:3610:1: 'Tuple'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
@@ -11260,13 +11345,13 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Alternatives"
-    // InternalCompleteOCL.g:3594:1: rule__URIFirstPathElementCS__Alternatives : ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) );
+    // InternalCompleteOCL.g:3622:1: rule__URIFirstPathElementCS__Alternatives : ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) );
     public final void rule__URIFirstPathElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3598:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) )
+            // InternalCompleteOCL.g:3626:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) )
             int alt22=2;
             int LA22_0 = input.LA(1);
 
@@ -11285,16 +11370,16 @@
             }
             switch (alt22) {
                 case 1 :
-                    // InternalCompleteOCL.g:3599:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
+                    // InternalCompleteOCL.g:3627:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
                     {
-                    // InternalCompleteOCL.g:3599:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
-                    // InternalCompleteOCL.g:3600:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
+                    // InternalCompleteOCL.g:3627:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
+                    // InternalCompleteOCL.g:3628:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0());
                     }
-                    // InternalCompleteOCL.g:3601:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
-                    // InternalCompleteOCL.g:3601:2: rule__URIFirstPathElementCS__ReferredElementAssignment_0
+                    // InternalCompleteOCL.g:3629:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
+                    // InternalCompleteOCL.g:3629:2: rule__URIFirstPathElementCS__ReferredElementAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__URIFirstPathElementCS__ReferredElementAssignment_0();
@@ -11314,16 +11399,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3605:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
+                    // InternalCompleteOCL.g:3633:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
                     {
-                    // InternalCompleteOCL.g:3605:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
-                    // InternalCompleteOCL.g:3606:1: ( rule__URIFirstPathElementCS__Group_1__0 )
+                    // InternalCompleteOCL.g:3633:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
+                    // InternalCompleteOCL.g:3634:1: ( rule__URIFirstPathElementCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1());
                     }
-                    // InternalCompleteOCL.g:3607:1: ( rule__URIFirstPathElementCS__Group_1__0 )
-                    // InternalCompleteOCL.g:3607:2: rule__URIFirstPathElementCS__Group_1__0
+                    // InternalCompleteOCL.g:3635:1: ( rule__URIFirstPathElementCS__Group_1__0 )
+                    // InternalCompleteOCL.g:3635:2: rule__URIFirstPathElementCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__URIFirstPathElementCS__Group_1__0();
@@ -11360,13 +11445,13 @@
 
 
     // $ANTLR start "rule__CollectionTypeIdentifier__Alternatives"
-    // InternalCompleteOCL.g:3616:1: rule__CollectionTypeIdentifier__Alternatives : ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) );
+    // InternalCompleteOCL.g:3644:1: rule__CollectionTypeIdentifier__Alternatives : ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) );
     public final void rule__CollectionTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3620:1: ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) )
+            // InternalCompleteOCL.g:3648:1: ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) )
             int alt23=5;
             switch ( input.LA(1) ) {
             case 58:
@@ -11404,10 +11489,10 @@
 
             switch (alt23) {
                 case 1 :
-                    // InternalCompleteOCL.g:3621:1: ( 'Set' )
+                    // InternalCompleteOCL.g:3649:1: ( 'Set' )
                     {
-                    // InternalCompleteOCL.g:3621:1: ( 'Set' )
-                    // InternalCompleteOCL.g:3622:1: 'Set'
+                    // InternalCompleteOCL.g:3649:1: ( 'Set' )
+                    // InternalCompleteOCL.g:3650:1: 'Set'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
@@ -11423,10 +11508,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3629:6: ( 'Bag' )
+                    // InternalCompleteOCL.g:3657:6: ( 'Bag' )
                     {
-                    // InternalCompleteOCL.g:3629:6: ( 'Bag' )
-                    // InternalCompleteOCL.g:3630:1: 'Bag'
+                    // InternalCompleteOCL.g:3657:6: ( 'Bag' )
+                    // InternalCompleteOCL.g:3658:1: 'Bag'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
@@ -11442,10 +11527,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:3637:6: ( 'Sequence' )
+                    // InternalCompleteOCL.g:3665:6: ( 'Sequence' )
                     {
-                    // InternalCompleteOCL.g:3637:6: ( 'Sequence' )
-                    // InternalCompleteOCL.g:3638:1: 'Sequence'
+                    // InternalCompleteOCL.g:3665:6: ( 'Sequence' )
+                    // InternalCompleteOCL.g:3666:1: 'Sequence'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
@@ -11461,10 +11546,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalCompleteOCL.g:3645:6: ( 'Collection' )
+                    // InternalCompleteOCL.g:3673:6: ( 'Collection' )
                     {
-                    // InternalCompleteOCL.g:3645:6: ( 'Collection' )
-                    // InternalCompleteOCL.g:3646:1: 'Collection'
+                    // InternalCompleteOCL.g:3673:6: ( 'Collection' )
+                    // InternalCompleteOCL.g:3674:1: 'Collection'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
@@ -11480,10 +11565,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalCompleteOCL.g:3653:6: ( 'OrderedSet' )
+                    // InternalCompleteOCL.g:3681:6: ( 'OrderedSet' )
                     {
-                    // InternalCompleteOCL.g:3653:6: ( 'OrderedSet' )
-                    // InternalCompleteOCL.g:3654:1: 'OrderedSet'
+                    // InternalCompleteOCL.g:3681:6: ( 'OrderedSet' )
+                    // InternalCompleteOCL.g:3682:1: 'OrderedSet'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
@@ -11516,13 +11601,13 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Alternatives"
-    // InternalCompleteOCL.g:3666:1: rule__CollectionLiteralPartCS__Alternatives : ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) );
+    // InternalCompleteOCL.g:3694:1: rule__CollectionLiteralPartCS__Alternatives : ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) );
     public final void rule__CollectionLiteralPartCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3670:1: ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) )
+            // InternalCompleteOCL.g:3698:1: ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) )
             int alt24=2;
             switch ( input.LA(1) ) {
             case RULE_INT:
@@ -11584,12 +11669,12 @@
                 {
                 int LA24_3 = input.LA(2);
 
-                if ( (LA24_3==67) ) {
-                    alt24=2;
-                }
-                else if ( (LA24_3==EOF||(LA24_3>=17 && LA24_3<=18)||LA24_3==32||(LA24_3>=35 && LA24_3<=55)||LA24_3==68||LA24_3==71||(LA24_3>=79 && LA24_3<=82)||LA24_3==88||LA24_3==104) ) {
+                if ( (LA24_3==EOF||(LA24_3>=17 && LA24_3<=18)||LA24_3==32||(LA24_3>=35 && LA24_3<=55)||LA24_3==68||LA24_3==71||(LA24_3>=79 && LA24_3<=82)||LA24_3==88||LA24_3==104) ) {
                     alt24=1;
                 }
+                else if ( (LA24_3==67) ) {
+                    alt24=2;
+                }
                 else {
                     if (state.backtracking>0) {state.failed=true; return ;}
                     NoViableAltException nvae =
@@ -11603,12 +11688,12 @@
                 {
                 int LA24_4 = input.LA(2);
 
-                if ( (LA24_4==EOF||(LA24_4>=17 && LA24_4<=18)||LA24_4==32||(LA24_4>=35 && LA24_4<=55)||LA24_4==68||LA24_4==71||(LA24_4>=79 && LA24_4<=82)||LA24_4==88||LA24_4==104) ) {
-                    alt24=1;
-                }
-                else if ( (LA24_4==67) ) {
+                if ( (LA24_4==67) ) {
                     alt24=2;
                 }
+                else if ( (LA24_4==EOF||(LA24_4>=17 && LA24_4<=18)||LA24_4==32||(LA24_4>=35 && LA24_4<=55)||LA24_4==68||LA24_4==71||(LA24_4>=79 && LA24_4<=82)||LA24_4==88||LA24_4==104) ) {
+                    alt24=1;
+                }
                 else {
                     if (state.backtracking>0) {state.failed=true; return ;}
                     NoViableAltException nvae =
@@ -11622,12 +11707,12 @@
                 {
                 int LA24_5 = input.LA(2);
 
-                if ( (LA24_5==67) ) {
-                    alt24=2;
-                }
-                else if ( (LA24_5==EOF||(LA24_5>=17 && LA24_5<=18)||LA24_5==32||(LA24_5>=35 && LA24_5<=55)||LA24_5==68||LA24_5==71||(LA24_5>=79 && LA24_5<=82)||LA24_5==88||LA24_5==104) ) {
+                if ( (LA24_5==EOF||(LA24_5>=17 && LA24_5<=18)||LA24_5==32||(LA24_5>=35 && LA24_5<=55)||LA24_5==68||LA24_5==71||(LA24_5>=79 && LA24_5<=82)||LA24_5==88||LA24_5==104) ) {
                     alt24=1;
                 }
+                else if ( (LA24_5==67) ) {
+                    alt24=2;
+                }
                 else {
                     if (state.backtracking>0) {state.failed=true; return ;}
                     NoViableAltException nvae =
@@ -11641,12 +11726,12 @@
                 {
                 int LA24_6 = input.LA(2);
 
-                if ( (LA24_6==EOF||(LA24_6>=17 && LA24_6<=18)||LA24_6==32||(LA24_6>=35 && LA24_6<=55)||LA24_6==68||LA24_6==71||(LA24_6>=79 && LA24_6<=82)||LA24_6==88||LA24_6==104) ) {
-                    alt24=1;
-                }
-                else if ( (LA24_6==67) ) {
+                if ( (LA24_6==67) ) {
                     alt24=2;
                 }
+                else if ( (LA24_6==EOF||(LA24_6>=17 && LA24_6<=18)||LA24_6==32||(LA24_6>=35 && LA24_6<=55)||LA24_6==68||LA24_6==71||(LA24_6>=79 && LA24_6<=82)||LA24_6==88||LA24_6==104) ) {
+                    alt24=1;
+                }
                 else {
                     if (state.backtracking>0) {state.failed=true; return ;}
                     NoViableAltException nvae =
@@ -11671,16 +11756,16 @@
 
             switch (alt24) {
                 case 1 :
-                    // InternalCompleteOCL.g:3671:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3699:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:3671:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
-                    // InternalCompleteOCL.g:3672:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3699:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3700:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0());
                     }
-                    // InternalCompleteOCL.g:3673:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
-                    // InternalCompleteOCL.g:3673:2: rule__CollectionLiteralPartCS__Group_0__0
+                    // InternalCompleteOCL.g:3701:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3701:2: rule__CollectionLiteralPartCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralPartCS__Group_0__0();
@@ -11700,16 +11785,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3677:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
+                    // InternalCompleteOCL.g:3705:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
                     {
-                    // InternalCompleteOCL.g:3677:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
-                    // InternalCompleteOCL.g:3678:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
+                    // InternalCompleteOCL.g:3705:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
+                    // InternalCompleteOCL.g:3706:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1());
                     }
-                    // InternalCompleteOCL.g:3679:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
-                    // InternalCompleteOCL.g:3679:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1
+                    // InternalCompleteOCL.g:3707:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
+                    // InternalCompleteOCL.g:3707:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1();
@@ -11746,13 +11831,13 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Alternatives"
-    // InternalCompleteOCL.g:3688:1: rule__ShadowPartCS__Alternatives : ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) );
+    // InternalCompleteOCL.g:3716:1: rule__ShadowPartCS__Alternatives : ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) );
     public final void rule__ShadowPartCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3692:1: ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) )
+            // InternalCompleteOCL.g:3720:1: ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) )
             int alt25=2;
             int LA25_0 = input.LA(1);
 
@@ -11771,16 +11856,16 @@
             }
             switch (alt25) {
                 case 1 :
-                    // InternalCompleteOCL.g:3693:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3721:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:3693:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
-                    // InternalCompleteOCL.g:3694:1: ( rule__ShadowPartCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3721:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3722:1: ( rule__ShadowPartCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getGroup_0());
                     }
-                    // InternalCompleteOCL.g:3695:1: ( rule__ShadowPartCS__Group_0__0 )
-                    // InternalCompleteOCL.g:3695:2: rule__ShadowPartCS__Group_0__0
+                    // InternalCompleteOCL.g:3723:1: ( rule__ShadowPartCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3723:2: rule__ShadowPartCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ShadowPartCS__Group_0__0();
@@ -11800,16 +11885,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3699:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
+                    // InternalCompleteOCL.g:3727:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
                     {
-                    // InternalCompleteOCL.g:3699:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
-                    // InternalCompleteOCL.g:3700:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
+                    // InternalCompleteOCL.g:3727:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
+                    // InternalCompleteOCL.g:3728:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_1());
                     }
-                    // InternalCompleteOCL.g:3701:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
-                    // InternalCompleteOCL.g:3701:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_1
+                    // InternalCompleteOCL.g:3729:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
+                    // InternalCompleteOCL.g:3729:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ShadowPartCS__OwnedInitExpressionAssignment_1();
@@ -11846,13 +11931,13 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0"
-    // InternalCompleteOCL.g:3710:1: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
+    // InternalCompleteOCL.g:3738:1: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
     public final void rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3714:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
+            // InternalCompleteOCL.g:3742:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt26=2;
             switch ( input.LA(1) ) {
             case RULE_INT:
@@ -11933,12 +12018,12 @@
                 {
                 int LA26_4 = input.LA(2);
 
-                if ( (LA26_4==67) ) {
-                    alt26=2;
-                }
-                else if ( (LA26_4==EOF||(LA26_4>=17 && LA26_4<=18)||LA26_4==32||(LA26_4>=35 && LA26_4<=55)||LA26_4==68||LA26_4==71||(LA26_4>=79 && LA26_4<=81)||LA26_4==88||LA26_4==104) ) {
+                if ( (LA26_4==EOF||(LA26_4>=17 && LA26_4<=18)||LA26_4==32||(LA26_4>=35 && LA26_4<=55)||LA26_4==68||LA26_4==71||(LA26_4>=79 && LA26_4<=81)||LA26_4==88||LA26_4==104) ) {
                     alt26=1;
                 }
+                else if ( (LA26_4==67) ) {
+                    alt26=2;
+                }
                 else {
                     if (state.backtracking>0) {state.failed=true; return ;}
                     NoViableAltException nvae =
@@ -11971,12 +12056,12 @@
                 {
                 int LA26_6 = input.LA(2);
 
-                if ( (LA26_6==67) ) {
-                    alt26=2;
-                }
-                else if ( (LA26_6==EOF||(LA26_6>=17 && LA26_6<=18)||LA26_6==32||(LA26_6>=35 && LA26_6<=55)||LA26_6==68||LA26_6==71||(LA26_6>=79 && LA26_6<=81)||LA26_6==88||LA26_6==104) ) {
+                if ( (LA26_6==EOF||(LA26_6>=17 && LA26_6<=18)||LA26_6==32||(LA26_6>=35 && LA26_6<=55)||LA26_6==68||LA26_6==71||(LA26_6>=79 && LA26_6<=81)||LA26_6==88||LA26_6==104) ) {
                     alt26=1;
                 }
+                else if ( (LA26_6==67) ) {
+                    alt26=2;
+                }
                 else {
                     if (state.backtracking>0) {state.failed=true; return ;}
                     NoViableAltException nvae =
@@ -12001,10 +12086,10 @@
 
             switch (alt26) {
                 case 1 :
-                    // InternalCompleteOCL.g:3715:1: ( ruleExpCS )
+                    // InternalCompleteOCL.g:3743:1: ( ruleExpCS )
                     {
-                    // InternalCompleteOCL.g:3715:1: ( ruleExpCS )
-                    // InternalCompleteOCL.g:3716:1: ruleExpCS
+                    // InternalCompleteOCL.g:3743:1: ( ruleExpCS )
+                    // InternalCompleteOCL.g:3744:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_2_0_0());
@@ -12024,10 +12109,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3721:6: ( rulePatternExpCS )
+                    // InternalCompleteOCL.g:3749:6: ( rulePatternExpCS )
                     {
-                    // InternalCompleteOCL.g:3721:6: ( rulePatternExpCS )
-                    // InternalCompleteOCL.g:3722:1: rulePatternExpCS
+                    // InternalCompleteOCL.g:3749:6: ( rulePatternExpCS )
+                    // InternalCompleteOCL.g:3750:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_0_2_0_1());
@@ -12064,13 +12149,13 @@
 
 
     // $ANTLR start "rule__PrimitiveLiteralExpCS__Alternatives"
-    // InternalCompleteOCL.g:3732:1: rule__PrimitiveLiteralExpCS__Alternatives : ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) );
+    // InternalCompleteOCL.g:3760:1: rule__PrimitiveLiteralExpCS__Alternatives : ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) );
     public final void rule__PrimitiveLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3736:1: ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) )
+            // InternalCompleteOCL.g:3764:1: ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) )
             int alt27=6;
             switch ( input.LA(1) ) {
             case RULE_INT:
@@ -12114,10 +12199,10 @@
 
             switch (alt27) {
                 case 1 :
-                    // InternalCompleteOCL.g:3737:1: ( ruleNumberLiteralExpCS )
+                    // InternalCompleteOCL.g:3765:1: ( ruleNumberLiteralExpCS )
                     {
-                    // InternalCompleteOCL.g:3737:1: ( ruleNumberLiteralExpCS )
-                    // InternalCompleteOCL.g:3738:1: ruleNumberLiteralExpCS
+                    // InternalCompleteOCL.g:3765:1: ( ruleNumberLiteralExpCS )
+                    // InternalCompleteOCL.g:3766:1: ruleNumberLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
@@ -12137,10 +12222,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3743:6: ( ruleStringLiteralExpCS )
+                    // InternalCompleteOCL.g:3771:6: ( ruleStringLiteralExpCS )
                     {
-                    // InternalCompleteOCL.g:3743:6: ( ruleStringLiteralExpCS )
-                    // InternalCompleteOCL.g:3744:1: ruleStringLiteralExpCS
+                    // InternalCompleteOCL.g:3771:6: ( ruleStringLiteralExpCS )
+                    // InternalCompleteOCL.g:3772:1: ruleStringLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
@@ -12160,10 +12245,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:3749:6: ( ruleBooleanLiteralExpCS )
+                    // InternalCompleteOCL.g:3777:6: ( ruleBooleanLiteralExpCS )
                     {
-                    // InternalCompleteOCL.g:3749:6: ( ruleBooleanLiteralExpCS )
-                    // InternalCompleteOCL.g:3750:1: ruleBooleanLiteralExpCS
+                    // InternalCompleteOCL.g:3777:6: ( ruleBooleanLiteralExpCS )
+                    // InternalCompleteOCL.g:3778:1: ruleBooleanLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
@@ -12183,10 +12268,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalCompleteOCL.g:3755:6: ( ruleUnlimitedNaturalLiteralExpCS )
+                    // InternalCompleteOCL.g:3783:6: ( ruleUnlimitedNaturalLiteralExpCS )
                     {
-                    // InternalCompleteOCL.g:3755:6: ( ruleUnlimitedNaturalLiteralExpCS )
-                    // InternalCompleteOCL.g:3756:1: ruleUnlimitedNaturalLiteralExpCS
+                    // InternalCompleteOCL.g:3783:6: ( ruleUnlimitedNaturalLiteralExpCS )
+                    // InternalCompleteOCL.g:3784:1: ruleUnlimitedNaturalLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
@@ -12206,10 +12291,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalCompleteOCL.g:3761:6: ( ruleInvalidLiteralExpCS )
+                    // InternalCompleteOCL.g:3789:6: ( ruleInvalidLiteralExpCS )
                     {
-                    // InternalCompleteOCL.g:3761:6: ( ruleInvalidLiteralExpCS )
-                    // InternalCompleteOCL.g:3762:1: ruleInvalidLiteralExpCS
+                    // InternalCompleteOCL.g:3789:6: ( ruleInvalidLiteralExpCS )
+                    // InternalCompleteOCL.g:3790:1: ruleInvalidLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
@@ -12229,10 +12314,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalCompleteOCL.g:3767:6: ( ruleNullLiteralExpCS )
+                    // InternalCompleteOCL.g:3795:6: ( ruleNullLiteralExpCS )
                     {
-                    // InternalCompleteOCL.g:3767:6: ( ruleNullLiteralExpCS )
-                    // InternalCompleteOCL.g:3768:1: ruleNullLiteralExpCS
+                    // InternalCompleteOCL.g:3795:6: ( ruleNullLiteralExpCS )
+                    // InternalCompleteOCL.g:3796:1: ruleNullLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
@@ -12269,13 +12354,13 @@
 
 
     // $ANTLR start "rule__BooleanLiteralExpCS__Alternatives"
-    // InternalCompleteOCL.g:3778:1: rule__BooleanLiteralExpCS__Alternatives : ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) );
+    // InternalCompleteOCL.g:3806:1: rule__BooleanLiteralExpCS__Alternatives : ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) );
     public final void rule__BooleanLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3782:1: ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) )
+            // InternalCompleteOCL.g:3810:1: ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) )
             int alt28=2;
             int LA28_0 = input.LA(1);
 
@@ -12294,16 +12379,16 @@
             }
             switch (alt28) {
                 case 1 :
-                    // InternalCompleteOCL.g:3783:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
+                    // InternalCompleteOCL.g:3811:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
                     {
-                    // InternalCompleteOCL.g:3783:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
-                    // InternalCompleteOCL.g:3784:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
+                    // InternalCompleteOCL.g:3811:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
+                    // InternalCompleteOCL.g:3812:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0());
                     }
-                    // InternalCompleteOCL.g:3785:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
-                    // InternalCompleteOCL.g:3785:2: rule__BooleanLiteralExpCS__SymbolAssignment_0
+                    // InternalCompleteOCL.g:3813:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
+                    // InternalCompleteOCL.g:3813:2: rule__BooleanLiteralExpCS__SymbolAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__BooleanLiteralExpCS__SymbolAssignment_0();
@@ -12323,16 +12408,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3789:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
+                    // InternalCompleteOCL.g:3817:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
                     {
-                    // InternalCompleteOCL.g:3789:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
-                    // InternalCompleteOCL.g:3790:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
+                    // InternalCompleteOCL.g:3817:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
+                    // InternalCompleteOCL.g:3818:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1());
                     }
-                    // InternalCompleteOCL.g:3791:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
-                    // InternalCompleteOCL.g:3791:2: rule__BooleanLiteralExpCS__SymbolAssignment_1
+                    // InternalCompleteOCL.g:3819:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
+                    // InternalCompleteOCL.g:3819:2: rule__BooleanLiteralExpCS__SymbolAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__BooleanLiteralExpCS__SymbolAssignment_1();
@@ -12369,13 +12454,13 @@
 
 
     // $ANTLR start "rule__TypeLiteralCS__Alternatives"
-    // InternalCompleteOCL.g:3800:1: rule__TypeLiteralCS__Alternatives : ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) );
+    // InternalCompleteOCL.g:3828:1: rule__TypeLiteralCS__Alternatives : ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) );
     public final void rule__TypeLiteralCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3804:1: ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) )
+            // InternalCompleteOCL.g:3832:1: ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) )
             int alt29=4;
             switch ( input.LA(1) ) {
             case 22:
@@ -12421,10 +12506,10 @@
 
             switch (alt29) {
                 case 1 :
-                    // InternalCompleteOCL.g:3805:1: ( rulePrimitiveTypeCS )
+                    // InternalCompleteOCL.g:3833:1: ( rulePrimitiveTypeCS )
                     {
-                    // InternalCompleteOCL.g:3805:1: ( rulePrimitiveTypeCS )
-                    // InternalCompleteOCL.g:3806:1: rulePrimitiveTypeCS
+                    // InternalCompleteOCL.g:3833:1: ( rulePrimitiveTypeCS )
+                    // InternalCompleteOCL.g:3834:1: rulePrimitiveTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
@@ -12444,10 +12529,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3811:6: ( ruleCollectionTypeCS )
+                    // InternalCompleteOCL.g:3839:6: ( ruleCollectionTypeCS )
                     {
-                    // InternalCompleteOCL.g:3811:6: ( ruleCollectionTypeCS )
-                    // InternalCompleteOCL.g:3812:1: ruleCollectionTypeCS
+                    // InternalCompleteOCL.g:3839:6: ( ruleCollectionTypeCS )
+                    // InternalCompleteOCL.g:3840:1: ruleCollectionTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
@@ -12467,10 +12552,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:3817:6: ( ruleMapTypeCS )
+                    // InternalCompleteOCL.g:3845:6: ( ruleMapTypeCS )
                     {
-                    // InternalCompleteOCL.g:3817:6: ( ruleMapTypeCS )
-                    // InternalCompleteOCL.g:3818:1: ruleMapTypeCS
+                    // InternalCompleteOCL.g:3845:6: ( ruleMapTypeCS )
+                    // InternalCompleteOCL.g:3846:1: ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
@@ -12490,10 +12575,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalCompleteOCL.g:3823:6: ( ruleTupleTypeCS )
+                    // InternalCompleteOCL.g:3851:6: ( ruleTupleTypeCS )
                     {
-                    // InternalCompleteOCL.g:3823:6: ( ruleTupleTypeCS )
-                    // InternalCompleteOCL.g:3824:1: ruleTupleTypeCS
+                    // InternalCompleteOCL.g:3851:6: ( ruleTupleTypeCS )
+                    // InternalCompleteOCL.g:3852:1: ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
@@ -12530,21 +12615,21 @@
 
 
     // $ANTLR start "rule__TypeExpWithoutMultiplicityCS__Alternatives"
-    // InternalCompleteOCL.g:3834:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );
+    // InternalCompleteOCL.g:3862:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );
     public final void rule__TypeExpWithoutMultiplicityCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3838:1: ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) )
+            // InternalCompleteOCL.g:3866:1: ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) )
             int alt30=3;
             alt30 = dfa30.predict(input);
             switch (alt30) {
                 case 1 :
-                    // InternalCompleteOCL.g:3839:1: ( ruleTypeNameExpCS )
+                    // InternalCompleteOCL.g:3867:1: ( ruleTypeNameExpCS )
                     {
-                    // InternalCompleteOCL.g:3839:1: ( ruleTypeNameExpCS )
-                    // InternalCompleteOCL.g:3840:1: ruleTypeNameExpCS
+                    // InternalCompleteOCL.g:3867:1: ( ruleTypeNameExpCS )
+                    // InternalCompleteOCL.g:3868:1: ruleTypeNameExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeNameExpCSParserRuleCall_0());
@@ -12564,10 +12649,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3845:6: ( ruleTypeLiteralCS )
+                    // InternalCompleteOCL.g:3873:6: ( ruleTypeLiteralCS )
                     {
-                    // InternalCompleteOCL.g:3845:6: ( ruleTypeLiteralCS )
-                    // InternalCompleteOCL.g:3846:1: ruleTypeLiteralCS
+                    // InternalCompleteOCL.g:3873:6: ( ruleTypeLiteralCS )
+                    // InternalCompleteOCL.g:3874:1: ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_1());
@@ -12587,10 +12672,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:3851:6: ( ruleCollectionPatternCS )
+                    // InternalCompleteOCL.g:3879:6: ( ruleCollectionPatternCS )
                     {
-                    // InternalCompleteOCL.g:3851:6: ( ruleCollectionPatternCS )
-                    // InternalCompleteOCL.g:3852:1: ruleCollectionPatternCS
+                    // InternalCompleteOCL.g:3879:6: ( ruleCollectionPatternCS )
+                    // InternalCompleteOCL.g:3880:1: ruleCollectionPatternCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getCollectionPatternCSParserRuleCall_2());
@@ -12627,27 +12712,27 @@
 
 
     // $ANTLR start "rule__ExpCS__Alternatives"
-    // InternalCompleteOCL.g:3862:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );
+    // InternalCompleteOCL.g:3890:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );
     public final void rule__ExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3866:1: ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) )
+            // InternalCompleteOCL.g:3894:1: ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) )
             int alt31=2;
             alt31 = dfa31.predict(input);
             switch (alt31) {
                 case 1 :
-                    // InternalCompleteOCL.g:3867:1: ( ( rule__ExpCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3895:1: ( ( rule__ExpCS__Group_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:3867:1: ( ( rule__ExpCS__Group_0__0 ) )
-                    // InternalCompleteOCL.g:3868:1: ( rule__ExpCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3895:1: ( ( rule__ExpCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3896:1: ( rule__ExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getExpCSAccess().getGroup_0());
                     }
-                    // InternalCompleteOCL.g:3869:1: ( rule__ExpCS__Group_0__0 )
-                    // InternalCompleteOCL.g:3869:2: rule__ExpCS__Group_0__0
+                    // InternalCompleteOCL.g:3897:1: ( rule__ExpCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3897:2: rule__ExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ExpCS__Group_0__0();
@@ -12667,10 +12752,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3873:6: ( rulePrefixedLetExpCS )
+                    // InternalCompleteOCL.g:3901:6: ( rulePrefixedLetExpCS )
                     {
-                    // InternalCompleteOCL.g:3873:6: ( rulePrefixedLetExpCS )
-                    // InternalCompleteOCL.g:3874:1: rulePrefixedLetExpCS
+                    // InternalCompleteOCL.g:3901:6: ( rulePrefixedLetExpCS )
+                    // InternalCompleteOCL.g:3902:1: rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
@@ -12707,13 +12792,13 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Alternatives"
-    // InternalCompleteOCL.g:3884:1: rule__PrefixedLetExpCS__Alternatives : ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) );
+    // InternalCompleteOCL.g:3912:1: rule__PrefixedLetExpCS__Alternatives : ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) );
     public final void rule__PrefixedLetExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3888:1: ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) )
+            // InternalCompleteOCL.g:3916:1: ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) )
             int alt32=2;
             int LA32_0 = input.LA(1);
 
@@ -12732,16 +12817,16 @@
             }
             switch (alt32) {
                 case 1 :
-                    // InternalCompleteOCL.g:3889:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3917:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:3889:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
-                    // InternalCompleteOCL.g:3890:1: ( rule__PrefixedLetExpCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3917:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3918:1: ( rule__PrefixedLetExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0());
                     }
-                    // InternalCompleteOCL.g:3891:1: ( rule__PrefixedLetExpCS__Group_0__0 )
-                    // InternalCompleteOCL.g:3891:2: rule__PrefixedLetExpCS__Group_0__0
+                    // InternalCompleteOCL.g:3919:1: ( rule__PrefixedLetExpCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3919:2: rule__PrefixedLetExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PrefixedLetExpCS__Group_0__0();
@@ -12761,10 +12846,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3895:6: ( ruleLetExpCS )
+                    // InternalCompleteOCL.g:3923:6: ( ruleLetExpCS )
                     {
-                    // InternalCompleteOCL.g:3895:6: ( ruleLetExpCS )
-                    // InternalCompleteOCL.g:3896:1: ruleLetExpCS
+                    // InternalCompleteOCL.g:3923:6: ( ruleLetExpCS )
+                    // InternalCompleteOCL.g:3924:1: ruleLetExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
@@ -12801,13 +12886,13 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Alternatives"
-    // InternalCompleteOCL.g:3906:1: rule__PrefixedPrimaryExpCS__Alternatives : ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) );
+    // InternalCompleteOCL.g:3934:1: rule__PrefixedPrimaryExpCS__Alternatives : ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) );
     public final void rule__PrefixedPrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3910:1: ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) )
+            // InternalCompleteOCL.g:3938:1: ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) )
             int alt33=2;
             int LA33_0 = input.LA(1);
 
@@ -12826,16 +12911,16 @@
             }
             switch (alt33) {
                 case 1 :
-                    // InternalCompleteOCL.g:3911:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3939:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:3911:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
-                    // InternalCompleteOCL.g:3912:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3939:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:3940:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0());
                     }
-                    // InternalCompleteOCL.g:3913:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
-                    // InternalCompleteOCL.g:3913:2: rule__PrefixedPrimaryExpCS__Group_0__0
+                    // InternalCompleteOCL.g:3941:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
+                    // InternalCompleteOCL.g:3941:2: rule__PrefixedPrimaryExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PrefixedPrimaryExpCS__Group_0__0();
@@ -12855,10 +12940,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3917:6: ( rulePrimaryExpCS )
+                    // InternalCompleteOCL.g:3945:6: ( rulePrimaryExpCS )
                     {
-                    // InternalCompleteOCL.g:3917:6: ( rulePrimaryExpCS )
-                    // InternalCompleteOCL.g:3918:1: rulePrimaryExpCS
+                    // InternalCompleteOCL.g:3945:6: ( rulePrimaryExpCS )
+                    // InternalCompleteOCL.g:3946:1: rulePrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
@@ -12895,21 +12980,21 @@
 
 
     // $ANTLR start "rule__PrimaryExpCS__Alternatives"
-    // InternalCompleteOCL.g:3928:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );
+    // InternalCompleteOCL.g:3956:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );
     public final void rule__PrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:3932:1: ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) )
+            // InternalCompleteOCL.g:3960:1: ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) )
             int alt34=10;
             alt34 = dfa34.predict(input);
             switch (alt34) {
                 case 1 :
-                    // InternalCompleteOCL.g:3933:1: ( ruleNestedExpCS )
+                    // InternalCompleteOCL.g:3961:1: ( ruleNestedExpCS )
                     {
-                    // InternalCompleteOCL.g:3933:1: ( ruleNestedExpCS )
-                    // InternalCompleteOCL.g:3934:1: ruleNestedExpCS
+                    // InternalCompleteOCL.g:3961:1: ( ruleNestedExpCS )
+                    // InternalCompleteOCL.g:3962:1: ruleNestedExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
@@ -12929,10 +13014,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:3939:6: ( ruleIfExpCS )
+                    // InternalCompleteOCL.g:3967:6: ( ruleIfExpCS )
                     {
-                    // InternalCompleteOCL.g:3939:6: ( ruleIfExpCS )
-                    // InternalCompleteOCL.g:3940:1: ruleIfExpCS
+                    // InternalCompleteOCL.g:3967:6: ( ruleIfExpCS )
+                    // InternalCompleteOCL.g:3968:1: ruleIfExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
@@ -12952,10 +13037,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:3945:6: ( ruleSelfExpCS )
+                    // InternalCompleteOCL.g:3973:6: ( ruleSelfExpCS )
                     {
-                    // InternalCompleteOCL.g:3945:6: ( ruleSelfExpCS )
-                    // InternalCompleteOCL.g:3946:1: ruleSelfExpCS
+                    // InternalCompleteOCL.g:3973:6: ( ruleSelfExpCS )
+                    // InternalCompleteOCL.g:3974:1: ruleSelfExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
@@ -12975,10 +13060,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalCompleteOCL.g:3951:6: ( rulePrimitiveLiteralExpCS )
+                    // InternalCompleteOCL.g:3979:6: ( rulePrimitiveLiteralExpCS )
                     {
-                    // InternalCompleteOCL.g:3951:6: ( rulePrimitiveLiteralExpCS )
-                    // InternalCompleteOCL.g:3952:1: rulePrimitiveLiteralExpCS
+                    // InternalCompleteOCL.g:3979:6: ( rulePrimitiveLiteralExpCS )
+                    // InternalCompleteOCL.g:3980:1: rulePrimitiveLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
@@ -12998,10 +13083,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalCompleteOCL.g:3957:6: ( ruleTupleLiteralExpCS )
+                    // InternalCompleteOCL.g:3985:6: ( ruleTupleLiteralExpCS )
                     {
-                    // InternalCompleteOCL.g:3957:6: ( ruleTupleLiteralExpCS )
-                    // InternalCompleteOCL.g:3958:1: ruleTupleLiteralExpCS
+                    // InternalCompleteOCL.g:3985:6: ( ruleTupleLiteralExpCS )
+                    // InternalCompleteOCL.g:3986:1: ruleTupleLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
@@ -13021,10 +13106,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalCompleteOCL.g:3963:6: ( ruleMapLiteralExpCS )
+                    // InternalCompleteOCL.g:3991:6: ( ruleMapLiteralExpCS )
                     {
-                    // InternalCompleteOCL.g:3963:6: ( ruleMapLiteralExpCS )
-                    // InternalCompleteOCL.g:3964:1: ruleMapLiteralExpCS
+                    // InternalCompleteOCL.g:3991:6: ( ruleMapLiteralExpCS )
+                    // InternalCompleteOCL.g:3992:1: ruleMapLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
@@ -13044,10 +13129,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalCompleteOCL.g:3969:6: ( ruleCollectionLiteralExpCS )
+                    // InternalCompleteOCL.g:3997:6: ( ruleCollectionLiteralExpCS )
                     {
-                    // InternalCompleteOCL.g:3969:6: ( ruleCollectionLiteralExpCS )
-                    // InternalCompleteOCL.g:3970:1: ruleCollectionLiteralExpCS
+                    // InternalCompleteOCL.g:3997:6: ( ruleCollectionLiteralExpCS )
+                    // InternalCompleteOCL.g:3998:1: ruleCollectionLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
@@ -13067,10 +13152,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalCompleteOCL.g:3975:6: ( ruleLambdaLiteralExpCS )
+                    // InternalCompleteOCL.g:4003:6: ( ruleLambdaLiteralExpCS )
                     {
-                    // InternalCompleteOCL.g:3975:6: ( ruleLambdaLiteralExpCS )
-                    // InternalCompleteOCL.g:3976:1: ruleLambdaLiteralExpCS
+                    // InternalCompleteOCL.g:4003:6: ( ruleLambdaLiteralExpCS )
+                    // InternalCompleteOCL.g:4004:1: ruleLambdaLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
@@ -13090,10 +13175,10 @@
                     }
                     break;
                 case 9 :
-                    // InternalCompleteOCL.g:3981:6: ( ruleTypeLiteralExpCS )
+                    // InternalCompleteOCL.g:4009:6: ( ruleTypeLiteralExpCS )
                     {
-                    // InternalCompleteOCL.g:3981:6: ( ruleTypeLiteralExpCS )
-                    // InternalCompleteOCL.g:3982:1: ruleTypeLiteralExpCS
+                    // InternalCompleteOCL.g:4009:6: ( ruleTypeLiteralExpCS )
+                    // InternalCompleteOCL.g:4010:1: ruleTypeLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
@@ -13113,10 +13198,10 @@
                     }
                     break;
                 case 10 :
-                    // InternalCompleteOCL.g:3987:6: ( ruleNameExpCS )
+                    // InternalCompleteOCL.g:4015:6: ( ruleNameExpCS )
                     {
-                    // InternalCompleteOCL.g:3987:6: ( ruleNameExpCS )
-                    // InternalCompleteOCL.g:3988:1: ruleNameExpCS
+                    // InternalCompleteOCL.g:4015:6: ( ruleNameExpCS )
+                    // InternalCompleteOCL.g:4016:1: ruleNameExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
@@ -13153,13 +13238,13 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0"
-    // InternalCompleteOCL.g:3998:1: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 : ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) );
+    // InternalCompleteOCL.g:4026:1: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 : ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) );
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4002:1: ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) )
+            // InternalCompleteOCL.g:4030:1: ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) )
             int alt35=3;
             switch ( input.LA(1) ) {
             case 71:
@@ -13187,10 +13272,10 @@
 
             switch (alt35) {
                 case 1 :
-                    // InternalCompleteOCL.g:4003:1: ( ruleNavigatingCommaArgCS )
+                    // InternalCompleteOCL.g:4031:1: ( ruleNavigatingCommaArgCS )
                     {
-                    // InternalCompleteOCL.g:4003:1: ( ruleNavigatingCommaArgCS )
-                    // InternalCompleteOCL.g:4004:1: ruleNavigatingCommaArgCS
+                    // InternalCompleteOCL.g:4031:1: ( ruleNavigatingCommaArgCS )
+                    // InternalCompleteOCL.g:4032:1: ruleNavigatingCommaArgCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0_0());
@@ -13210,10 +13295,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:4009:6: ( ruleNavigatingSemiArgCS )
+                    // InternalCompleteOCL.g:4037:6: ( ruleNavigatingSemiArgCS )
                     {
-                    // InternalCompleteOCL.g:4009:6: ( ruleNavigatingSemiArgCS )
-                    // InternalCompleteOCL.g:4010:1: ruleNavigatingSemiArgCS
+                    // InternalCompleteOCL.g:4037:6: ( ruleNavigatingSemiArgCS )
+                    // InternalCompleteOCL.g:4038:1: ruleNavigatingSemiArgCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_1_0_1());
@@ -13233,10 +13318,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:4015:6: ( ruleNavigatingBarArgCS )
+                    // InternalCompleteOCL.g:4043:6: ( ruleNavigatingBarArgCS )
                     {
-                    // InternalCompleteOCL.g:4015:6: ( ruleNavigatingBarArgCS )
-                    // InternalCompleteOCL.g:4016:1: ruleNavigatingBarArgCS
+                    // InternalCompleteOCL.g:4043:6: ( ruleNavigatingBarArgCS )
+                    // InternalCompleteOCL.g:4044:1: ruleNavigatingBarArgCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_1_0_2());
@@ -13273,13 +13358,13 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Alternatives"
-    // InternalCompleteOCL.g:4026:1: rule__NavigatingArgCS__Alternatives : ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) );
+    // InternalCompleteOCL.g:4054:1: rule__NavigatingArgCS__Alternatives : ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) );
     public final void rule__NavigatingArgCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4030:1: ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) )
+            // InternalCompleteOCL.g:4058:1: ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) )
             int alt36=2;
             int LA36_0 = input.LA(1);
 
@@ -13298,16 +13383,16 @@
             }
             switch (alt36) {
                 case 1 :
-                    // InternalCompleteOCL.g:4031:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:4059:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:4031:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
-                    // InternalCompleteOCL.g:4032:1: ( rule__NavigatingArgCS__Group_0__0 )
+                    // InternalCompleteOCL.g:4059:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
+                    // InternalCompleteOCL.g:4060:1: ( rule__NavigatingArgCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0());
                     }
-                    // InternalCompleteOCL.g:4033:1: ( rule__NavigatingArgCS__Group_0__0 )
-                    // InternalCompleteOCL.g:4033:2: rule__NavigatingArgCS__Group_0__0
+                    // InternalCompleteOCL.g:4061:1: ( rule__NavigatingArgCS__Group_0__0 )
+                    // InternalCompleteOCL.g:4061:2: rule__NavigatingArgCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0__0();
@@ -13327,16 +13412,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:4037:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
+                    // InternalCompleteOCL.g:4065:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
                     {
-                    // InternalCompleteOCL.g:4037:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
-                    // InternalCompleteOCL.g:4038:1: ( rule__NavigatingArgCS__Group_1__0 )
+                    // InternalCompleteOCL.g:4065:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
+                    // InternalCompleteOCL.g:4066:1: ( rule__NavigatingArgCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_1());
                     }
-                    // InternalCompleteOCL.g:4039:1: ( rule__NavigatingArgCS__Group_1__0 )
-                    // InternalCompleteOCL.g:4039:2: rule__NavigatingArgCS__Group_1__0
+                    // InternalCompleteOCL.g:4067:1: ( rule__NavigatingArgCS__Group_1__0 )
+                    // InternalCompleteOCL.g:4067:2: rule__NavigatingArgCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_1__0();
@@ -13373,13 +13458,13 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Alternatives_0_1"
-    // InternalCompleteOCL.g:4048:1: rule__NavigatingArgCS__Alternatives_0_1 : ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) );
+    // InternalCompleteOCL.g:4076:1: rule__NavigatingArgCS__Alternatives_0_1 : ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) );
     public final void rule__NavigatingArgCS__Alternatives_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4052:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) )
+            // InternalCompleteOCL.g:4080:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) )
             int alt37=3;
             switch ( input.LA(1) ) {
             case 85:
@@ -13435,16 +13520,16 @@
 
             switch (alt37) {
                 case 1 :
-                    // InternalCompleteOCL.g:4053:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+                    // InternalCompleteOCL.g:4081:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:4053:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
-                    // InternalCompleteOCL.g:4054:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+                    // InternalCompleteOCL.g:4081:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+                    // InternalCompleteOCL.g:4082:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
                     }
-                    // InternalCompleteOCL.g:4055:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
-                    // InternalCompleteOCL.g:4055:2: rule__NavigatingArgCS__Group_0_1_0__0
+                    // InternalCompleteOCL.g:4083:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+                    // InternalCompleteOCL.g:4083:2: rule__NavigatingArgCS__Group_0_1_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_0__0();
@@ -13464,16 +13549,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:4059:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+                    // InternalCompleteOCL.g:4087:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
                     {
-                    // InternalCompleteOCL.g:4059:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
-                    // InternalCompleteOCL.g:4060:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+                    // InternalCompleteOCL.g:4087:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+                    // InternalCompleteOCL.g:4088:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
                     }
-                    // InternalCompleteOCL.g:4061:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
-                    // InternalCompleteOCL.g:4061:2: rule__NavigatingArgCS__Group_0_1_1__0
+                    // InternalCompleteOCL.g:4089:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+                    // InternalCompleteOCL.g:4089:2: rule__NavigatingArgCS__Group_0_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_1__0();
@@ -13493,16 +13578,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:4065:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
+                    // InternalCompleteOCL.g:4093:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
                     {
-                    // InternalCompleteOCL.g:4065:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
-                    // InternalCompleteOCL.g:4066:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
+                    // InternalCompleteOCL.g:4093:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
+                    // InternalCompleteOCL.g:4094:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_2());
                     }
-                    // InternalCompleteOCL.g:4067:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
-                    // InternalCompleteOCL.g:4067:2: rule__NavigatingArgCS__Group_0_1_2__0
+                    // InternalCompleteOCL.g:4095:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
+                    // InternalCompleteOCL.g:4095:2: rule__NavigatingArgCS__Group_0_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_2__0();
@@ -13539,13 +13624,13 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Alternatives_2"
-    // InternalCompleteOCL.g:4076:1: rule__NavigatingCommaArgCS__Alternatives_2 : ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) );
+    // InternalCompleteOCL.g:4104:1: rule__NavigatingCommaArgCS__Alternatives_2 : ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) );
     public final void rule__NavigatingCommaArgCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4080:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) )
+            // InternalCompleteOCL.g:4108:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) )
             int alt38=3;
             switch ( input.LA(1) ) {
             case 85:
@@ -13601,16 +13686,16 @@
 
             switch (alt38) {
                 case 1 :
-                    // InternalCompleteOCL.g:4081:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+                    // InternalCompleteOCL.g:4109:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
                     {
-                    // InternalCompleteOCL.g:4081:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
-                    // InternalCompleteOCL.g:4082:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+                    // InternalCompleteOCL.g:4109:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+                    // InternalCompleteOCL.g:4110:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
                     }
-                    // InternalCompleteOCL.g:4083:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
-                    // InternalCompleteOCL.g:4083:2: rule__NavigatingCommaArgCS__Group_2_0__0
+                    // InternalCompleteOCL.g:4111:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+                    // InternalCompleteOCL.g:4111:2: rule__NavigatingCommaArgCS__Group_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_0__0();
@@ -13630,16 +13715,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:4087:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+                    // InternalCompleteOCL.g:4115:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
                     {
-                    // InternalCompleteOCL.g:4087:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
-                    // InternalCompleteOCL.g:4088:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+                    // InternalCompleteOCL.g:4115:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+                    // InternalCompleteOCL.g:4116:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
                     }
-                    // InternalCompleteOCL.g:4089:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
-                    // InternalCompleteOCL.g:4089:2: rule__NavigatingCommaArgCS__Group_2_1__0
+                    // InternalCompleteOCL.g:4117:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+                    // InternalCompleteOCL.g:4117:2: rule__NavigatingCommaArgCS__Group_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_1__0();
@@ -13659,16 +13744,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:4093:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
+                    // InternalCompleteOCL.g:4121:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
                     {
-                    // InternalCompleteOCL.g:4093:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
-                    // InternalCompleteOCL.g:4094:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
+                    // InternalCompleteOCL.g:4121:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
+                    // InternalCompleteOCL.g:4122:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_2());
                     }
-                    // InternalCompleteOCL.g:4095:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
-                    // InternalCompleteOCL.g:4095:2: rule__NavigatingCommaArgCS__Group_2_2__0
+                    // InternalCompleteOCL.g:4123:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
+                    // InternalCompleteOCL.g:4123:2: rule__NavigatingCommaArgCS__Group_2_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_2__0();
@@ -13705,13 +13790,13 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedConditionAlternatives_1_0"
-    // InternalCompleteOCL.g:4104:1: rule__IfExpCS__OwnedConditionAlternatives_1_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
+    // InternalCompleteOCL.g:4132:1: rule__IfExpCS__OwnedConditionAlternatives_1_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
     public final void rule__IfExpCS__OwnedConditionAlternatives_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4108:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
+            // InternalCompleteOCL.g:4136:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt39=2;
             switch ( input.LA(1) ) {
             case RULE_INT:
@@ -13811,12 +13896,12 @@
                 {
                 int LA39_5 = input.LA(2);
 
-                if ( (LA39_5==67) ) {
-                    alt39=2;
-                }
-                else if ( ((LA39_5>=17 && LA39_5<=18)||LA39_5==32||(LA39_5>=35 && LA39_5<=55)||LA39_5==68||(LA39_5>=79 && LA39_5<=80)||LA39_5==88||LA39_5==92||LA39_5==104) ) {
+                if ( ((LA39_5>=17 && LA39_5<=18)||LA39_5==32||(LA39_5>=35 && LA39_5<=55)||LA39_5==68||(LA39_5>=79 && LA39_5<=80)||LA39_5==88||LA39_5==92||LA39_5==104) ) {
                     alt39=1;
                 }
+                else if ( (LA39_5==67) ) {
+                    alt39=2;
+                }
                 else {
                     if (state.backtracking>0) {state.failed=true; return ;}
                     NoViableAltException nvae =
@@ -13860,10 +13945,10 @@
 
             switch (alt39) {
                 case 1 :
-                    // InternalCompleteOCL.g:4109:1: ( ruleExpCS )
+                    // InternalCompleteOCL.g:4137:1: ( ruleExpCS )
                     {
-                    // InternalCompleteOCL.g:4109:1: ( ruleExpCS )
-                    // InternalCompleteOCL.g:4110:1: ruleExpCS
+                    // InternalCompleteOCL.g:4137:1: ( ruleExpCS )
+                    // InternalCompleteOCL.g:4138:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
@@ -13883,10 +13968,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:4115:6: ( rulePatternExpCS )
+                    // InternalCompleteOCL.g:4143:6: ( rulePatternExpCS )
                     {
-                    // InternalCompleteOCL.g:4115:6: ( rulePatternExpCS )
-                    // InternalCompleteOCL.g:4116:1: rulePatternExpCS
+                    // InternalCompleteOCL.g:4143:6: ( rulePatternExpCS )
+                    // InternalCompleteOCL.g:4144:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
@@ -13923,13 +14008,13 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Alternatives_1"
-    // InternalCompleteOCL.g:4126:1: rule__MultiplicityCS__Alternatives_1 : ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) );
+    // InternalCompleteOCL.g:4154:1: rule__MultiplicityCS__Alternatives_1 : ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) );
     public final void rule__MultiplicityCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4130:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
+            // InternalCompleteOCL.g:4158:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
             int alt40=2;
             int LA40_0 = input.LA(1);
 
@@ -13948,10 +14033,10 @@
             }
             switch (alt40) {
                 case 1 :
-                    // InternalCompleteOCL.g:4131:1: ( ruleMultiplicityBoundsCS )
+                    // InternalCompleteOCL.g:4159:1: ( ruleMultiplicityBoundsCS )
                     {
-                    // InternalCompleteOCL.g:4131:1: ( ruleMultiplicityBoundsCS )
-                    // InternalCompleteOCL.g:4132:1: ruleMultiplicityBoundsCS
+                    // InternalCompleteOCL.g:4159:1: ( ruleMultiplicityBoundsCS )
+                    // InternalCompleteOCL.g:4160:1: ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
@@ -13971,10 +14056,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:4137:6: ( ruleMultiplicityStringCS )
+                    // InternalCompleteOCL.g:4165:6: ( ruleMultiplicityStringCS )
                     {
-                    // InternalCompleteOCL.g:4137:6: ( ruleMultiplicityStringCS )
-                    // InternalCompleteOCL.g:4138:1: ruleMultiplicityStringCS
+                    // InternalCompleteOCL.g:4165:6: ( ruleMultiplicityStringCS )
+                    // InternalCompleteOCL.g:4166:1: ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
@@ -14011,13 +14096,13 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Alternatives_2"
-    // InternalCompleteOCL.g:4148:1: rule__MultiplicityCS__Alternatives_2 : ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) );
+    // InternalCompleteOCL.g:4176:1: rule__MultiplicityCS__Alternatives_2 : ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) );
     public final void rule__MultiplicityCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4152:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
+            // InternalCompleteOCL.g:4180:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
             int alt41=2;
             int LA41_0 = input.LA(1);
 
@@ -14036,10 +14121,10 @@
             }
             switch (alt41) {
                 case 1 :
-                    // InternalCompleteOCL.g:4153:1: ( '|?' )
+                    // InternalCompleteOCL.g:4181:1: ( '|?' )
                     {
-                    // InternalCompleteOCL.g:4153:1: ( '|?' )
-                    // InternalCompleteOCL.g:4154:1: '|?'
+                    // InternalCompleteOCL.g:4181:1: ( '|?' )
+                    // InternalCompleteOCL.g:4182:1: '|?'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
@@ -14055,16 +14140,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:4161:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
+                    // InternalCompleteOCL.g:4189:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
                     {
-                    // InternalCompleteOCL.g:4161:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
-                    // InternalCompleteOCL.g:4162:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
+                    // InternalCompleteOCL.g:4189:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
+                    // InternalCompleteOCL.g:4190:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
-                    // InternalCompleteOCL.g:4163:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
-                    // InternalCompleteOCL.g:4163:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
+                    // InternalCompleteOCL.g:4191:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
+                    // InternalCompleteOCL.g:4191:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityCS__IsNullFreeAssignment_2_1();
@@ -14101,13 +14186,13 @@
 
 
     // $ANTLR start "rule__MultiplicityStringCS__StringBoundsAlternatives_0"
-    // InternalCompleteOCL.g:4172:1: rule__MultiplicityStringCS__StringBoundsAlternatives_0 : ( ( '*' ) | ( '+' ) | ( '?' ) );
+    // InternalCompleteOCL.g:4200:1: rule__MultiplicityStringCS__StringBoundsAlternatives_0 : ( ( '*' ) | ( '+' ) | ( '?' ) );
     public final void rule__MultiplicityStringCS__StringBoundsAlternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4176:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
+            // InternalCompleteOCL.g:4204:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
             int alt42=3;
             switch ( input.LA(1) ) {
             case 35:
@@ -14135,10 +14220,10 @@
 
             switch (alt42) {
                 case 1 :
-                    // InternalCompleteOCL.g:4177:1: ( '*' )
+                    // InternalCompleteOCL.g:4205:1: ( '*' )
                     {
-                    // InternalCompleteOCL.g:4177:1: ( '*' )
-                    // InternalCompleteOCL.g:4178:1: '*'
+                    // InternalCompleteOCL.g:4205:1: ( '*' )
+                    // InternalCompleteOCL.g:4206:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
@@ -14154,10 +14239,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:4185:6: ( '+' )
+                    // InternalCompleteOCL.g:4213:6: ( '+' )
                     {
-                    // InternalCompleteOCL.g:4185:6: ( '+' )
-                    // InternalCompleteOCL.g:4186:1: '+'
+                    // InternalCompleteOCL.g:4213:6: ( '+' )
+                    // InternalCompleteOCL.g:4214:1: '+'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
@@ -14173,10 +14258,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalCompleteOCL.g:4193:6: ( '?' )
+                    // InternalCompleteOCL.g:4221:6: ( '?' )
                     {
-                    // InternalCompleteOCL.g:4193:6: ( '?' )
-                    // InternalCompleteOCL.g:4194:1: '?'
+                    // InternalCompleteOCL.g:4221:6: ( '?' )
+                    // InternalCompleteOCL.g:4222:1: '?'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
@@ -14209,13 +14294,13 @@
 
 
     // $ANTLR start "rule__TypeRefCS__Alternatives"
-    // InternalCompleteOCL.g:4206:1: rule__TypeRefCS__Alternatives : ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) );
+    // InternalCompleteOCL.g:4234:1: rule__TypeRefCS__Alternatives : ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) );
     public final void rule__TypeRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4210:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
+            // InternalCompleteOCL.g:4238:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
             int alt43=2;
             int LA43_0 = input.LA(1);
 
@@ -14234,10 +14319,10 @@
             }
             switch (alt43) {
                 case 1 :
-                    // InternalCompleteOCL.g:4211:1: ( ruleTypedRefCS )
+                    // InternalCompleteOCL.g:4239:1: ( ruleTypedRefCS )
                     {
-                    // InternalCompleteOCL.g:4211:1: ( ruleTypedRefCS )
-                    // InternalCompleteOCL.g:4212:1: ruleTypedRefCS
+                    // InternalCompleteOCL.g:4239:1: ( ruleTypedRefCS )
+                    // InternalCompleteOCL.g:4240:1: ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
@@ -14257,10 +14342,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:4217:6: ( ruleWildcardTypeRefCS )
+                    // InternalCompleteOCL.g:4245:6: ( ruleWildcardTypeRefCS )
                     {
-                    // InternalCompleteOCL.g:4217:6: ( ruleWildcardTypeRefCS )
-                    // InternalCompleteOCL.g:4218:1: ruleWildcardTypeRefCS
+                    // InternalCompleteOCL.g:4245:6: ( ruleWildcardTypeRefCS )
+                    // InternalCompleteOCL.g:4246:1: ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
@@ -14297,13 +14382,13 @@
 
 
     // $ANTLR start "rule__ID__Alternatives"
-    // InternalCompleteOCL.g:4228:1: rule__ID__Alternatives : ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) );
+    // InternalCompleteOCL.g:4256:1: rule__ID__Alternatives : ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) );
     public final void rule__ID__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4232:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
+            // InternalCompleteOCL.g:4260:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
             int alt44=2;
             int LA44_0 = input.LA(1);
 
@@ -14322,10 +14407,10 @@
             }
             switch (alt44) {
                 case 1 :
-                    // InternalCompleteOCL.g:4233:1: ( RULE_SIMPLE_ID )
+                    // InternalCompleteOCL.g:4261:1: ( RULE_SIMPLE_ID )
                     {
-                    // InternalCompleteOCL.g:4233:1: ( RULE_SIMPLE_ID )
-                    // InternalCompleteOCL.g:4234:1: RULE_SIMPLE_ID
+                    // InternalCompleteOCL.g:4261:1: ( RULE_SIMPLE_ID )
+                    // InternalCompleteOCL.g:4262:1: RULE_SIMPLE_ID
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
@@ -14341,10 +14426,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:4239:6: ( RULE_ESCAPED_ID )
+                    // InternalCompleteOCL.g:4267:6: ( RULE_ESCAPED_ID )
                     {
-                    // InternalCompleteOCL.g:4239:6: ( RULE_ESCAPED_ID )
-                    // InternalCompleteOCL.g:4240:1: RULE_ESCAPED_ID
+                    // InternalCompleteOCL.g:4267:6: ( RULE_ESCAPED_ID )
+                    // InternalCompleteOCL.g:4268:1: RULE_ESCAPED_ID
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
@@ -14377,13 +14462,13 @@
 
 
     // $ANTLR start "rule__UPPER__Alternatives"
-    // InternalCompleteOCL.g:4250:1: rule__UPPER__Alternatives : ( ( RULE_INT ) | ( '*' ) );
+    // InternalCompleteOCL.g:4278:1: rule__UPPER__Alternatives : ( ( RULE_INT ) | ( '*' ) );
     public final void rule__UPPER__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4254:1: ( ( RULE_INT ) | ( '*' ) )
+            // InternalCompleteOCL.g:4282:1: ( ( RULE_INT ) | ( '*' ) )
             int alt45=2;
             int LA45_0 = input.LA(1);
 
@@ -14402,10 +14487,10 @@
             }
             switch (alt45) {
                 case 1 :
-                    // InternalCompleteOCL.g:4255:1: ( RULE_INT )
+                    // InternalCompleteOCL.g:4283:1: ( RULE_INT )
                     {
-                    // InternalCompleteOCL.g:4255:1: ( RULE_INT )
-                    // InternalCompleteOCL.g:4256:1: RULE_INT
+                    // InternalCompleteOCL.g:4283:1: ( RULE_INT )
+                    // InternalCompleteOCL.g:4284:1: RULE_INT
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
@@ -14421,10 +14506,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:4261:6: ( '*' )
+                    // InternalCompleteOCL.g:4289:6: ( '*' )
                     {
-                    // InternalCompleteOCL.g:4261:6: ( '*' )
-                    // InternalCompleteOCL.g:4262:1: '*'
+                    // InternalCompleteOCL.g:4289:6: ( '*' )
+                    // InternalCompleteOCL.g:4290:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
@@ -14457,14 +14542,14 @@
 
 
     // $ANTLR start "rule__CompleteOCLDocumentCS__Group__0"
-    // InternalCompleteOCL.g:4276:1: rule__CompleteOCLDocumentCS__Group__0 : rule__CompleteOCLDocumentCS__Group__0__Impl rule__CompleteOCLDocumentCS__Group__1 ;
+    // InternalCompleteOCL.g:4304:1: rule__CompleteOCLDocumentCS__Group__0 : rule__CompleteOCLDocumentCS__Group__0__Impl rule__CompleteOCLDocumentCS__Group__1 ;
     public final void rule__CompleteOCLDocumentCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4280:1: ( rule__CompleteOCLDocumentCS__Group__0__Impl rule__CompleteOCLDocumentCS__Group__1 )
-            // InternalCompleteOCL.g:4281:2: rule__CompleteOCLDocumentCS__Group__0__Impl rule__CompleteOCLDocumentCS__Group__1
+            // InternalCompleteOCL.g:4308:1: ( rule__CompleteOCLDocumentCS__Group__0__Impl rule__CompleteOCLDocumentCS__Group__1 )
+            // InternalCompleteOCL.g:4309:2: rule__CompleteOCLDocumentCS__Group__0__Impl rule__CompleteOCLDocumentCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_4);
             rule__CompleteOCLDocumentCS__Group__0__Impl();
@@ -14495,22 +14580,22 @@
 
 
     // $ANTLR start "rule__CompleteOCLDocumentCS__Group__0__Impl"
-    // InternalCompleteOCL.g:4288:1: rule__CompleteOCLDocumentCS__Group__0__Impl : ( ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )* ) ;
+    // InternalCompleteOCL.g:4316:1: rule__CompleteOCLDocumentCS__Group__0__Impl : ( ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )* ) ;
     public final void rule__CompleteOCLDocumentCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4292:1: ( ( ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )* ) )
-            // InternalCompleteOCL.g:4293:1: ( ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )* )
+            // InternalCompleteOCL.g:4320:1: ( ( ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )* ) )
+            // InternalCompleteOCL.g:4321:1: ( ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )* )
             {
-            // InternalCompleteOCL.g:4293:1: ( ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )* )
-            // InternalCompleteOCL.g:4294:1: ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )*
+            // InternalCompleteOCL.g:4321:1: ( ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )* )
+            // InternalCompleteOCL.g:4322:1: ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsAssignment_0());
             }
-            // InternalCompleteOCL.g:4295:1: ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )*
+            // InternalCompleteOCL.g:4323:1: ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )*
             loop46:
             do {
                 int alt46=2;
@@ -14523,7 +14608,7 @@
 
                 switch (alt46) {
             	case 1 :
-            	    // InternalCompleteOCL.g:4295:2: rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0
+            	    // InternalCompleteOCL.g:4323:2: rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_5);
             	    rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0();
@@ -14564,14 +14649,14 @@
 
 
     // $ANTLR start "rule__CompleteOCLDocumentCS__Group__1"
-    // InternalCompleteOCL.g:4305:1: rule__CompleteOCLDocumentCS__Group__1 : rule__CompleteOCLDocumentCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:4333:1: rule__CompleteOCLDocumentCS__Group__1 : rule__CompleteOCLDocumentCS__Group__1__Impl ;
     public final void rule__CompleteOCLDocumentCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4309:1: ( rule__CompleteOCLDocumentCS__Group__1__Impl )
-            // InternalCompleteOCL.g:4310:2: rule__CompleteOCLDocumentCS__Group__1__Impl
+            // InternalCompleteOCL.g:4337:1: ( rule__CompleteOCLDocumentCS__Group__1__Impl )
+            // InternalCompleteOCL.g:4338:2: rule__CompleteOCLDocumentCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CompleteOCLDocumentCS__Group__1__Impl();
@@ -14597,22 +14682,22 @@
 
 
     // $ANTLR start "rule__CompleteOCLDocumentCS__Group__1__Impl"
-    // InternalCompleteOCL.g:4316:1: rule__CompleteOCLDocumentCS__Group__1__Impl : ( ( rule__CompleteOCLDocumentCS__Alternatives_1 )* ) ;
+    // InternalCompleteOCL.g:4344:1: rule__CompleteOCLDocumentCS__Group__1__Impl : ( ( rule__CompleteOCLDocumentCS__Alternatives_1 )* ) ;
     public final void rule__CompleteOCLDocumentCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4320:1: ( ( ( rule__CompleteOCLDocumentCS__Alternatives_1 )* ) )
-            // InternalCompleteOCL.g:4321:1: ( ( rule__CompleteOCLDocumentCS__Alternatives_1 )* )
+            // InternalCompleteOCL.g:4348:1: ( ( ( rule__CompleteOCLDocumentCS__Alternatives_1 )* ) )
+            // InternalCompleteOCL.g:4349:1: ( ( rule__CompleteOCLDocumentCS__Alternatives_1 )* )
             {
-            // InternalCompleteOCL.g:4321:1: ( ( rule__CompleteOCLDocumentCS__Alternatives_1 )* )
-            // InternalCompleteOCL.g:4322:1: ( rule__CompleteOCLDocumentCS__Alternatives_1 )*
+            // InternalCompleteOCL.g:4349:1: ( ( rule__CompleteOCLDocumentCS__Alternatives_1 )* )
+            // InternalCompleteOCL.g:4350:1: ( rule__CompleteOCLDocumentCS__Alternatives_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCompleteOCLDocumentCSAccess().getAlternatives_1());
             }
-            // InternalCompleteOCL.g:4323:1: ( rule__CompleteOCLDocumentCS__Alternatives_1 )*
+            // InternalCompleteOCL.g:4351:1: ( rule__CompleteOCLDocumentCS__Alternatives_1 )*
             loop47:
             do {
                 int alt47=2;
@@ -14625,7 +14710,7 @@
 
                 switch (alt47) {
             	case 1 :
-            	    // InternalCompleteOCL.g:4323:2: rule__CompleteOCLDocumentCS__Alternatives_1
+            	    // InternalCompleteOCL.g:4351:2: rule__CompleteOCLDocumentCS__Alternatives_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_6);
             	    rule__CompleteOCLDocumentCS__Alternatives_1();
@@ -14666,14 +14751,14 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group__0"
-    // InternalCompleteOCL.g:4337:1: rule__ClassifierContextDeclCS__Group__0 : rule__ClassifierContextDeclCS__Group__0__Impl rule__ClassifierContextDeclCS__Group__1 ;
+    // InternalCompleteOCL.g:4365:1: rule__ClassifierContextDeclCS__Group__0 : rule__ClassifierContextDeclCS__Group__0__Impl rule__ClassifierContextDeclCS__Group__1 ;
     public final void rule__ClassifierContextDeclCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4341:1: ( rule__ClassifierContextDeclCS__Group__0__Impl rule__ClassifierContextDeclCS__Group__1 )
-            // InternalCompleteOCL.g:4342:2: rule__ClassifierContextDeclCS__Group__0__Impl rule__ClassifierContextDeclCS__Group__1
+            // InternalCompleteOCL.g:4369:1: ( rule__ClassifierContextDeclCS__Group__0__Impl rule__ClassifierContextDeclCS__Group__1 )
+            // InternalCompleteOCL.g:4370:2: rule__ClassifierContextDeclCS__Group__0__Impl rule__ClassifierContextDeclCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__ClassifierContextDeclCS__Group__0__Impl();
@@ -14704,17 +14789,17 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group__0__Impl"
-    // InternalCompleteOCL.g:4349:1: rule__ClassifierContextDeclCS__Group__0__Impl : ( 'context' ) ;
+    // InternalCompleteOCL.g:4377:1: rule__ClassifierContextDeclCS__Group__0__Impl : ( 'context' ) ;
     public final void rule__ClassifierContextDeclCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4353:1: ( ( 'context' ) )
-            // InternalCompleteOCL.g:4354:1: ( 'context' )
+            // InternalCompleteOCL.g:4381:1: ( ( 'context' ) )
+            // InternalCompleteOCL.g:4382:1: ( 'context' )
             {
-            // InternalCompleteOCL.g:4354:1: ( 'context' )
-            // InternalCompleteOCL.g:4355:1: 'context'
+            // InternalCompleteOCL.g:4382:1: ( 'context' )
+            // InternalCompleteOCL.g:4383:1: 'context'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getClassifierContextDeclCSAccess().getContextKeyword_0());
@@ -14745,14 +14830,14 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group__1"
-    // InternalCompleteOCL.g:4368:1: rule__ClassifierContextDeclCS__Group__1 : rule__ClassifierContextDeclCS__Group__1__Impl rule__ClassifierContextDeclCS__Group__2 ;
+    // InternalCompleteOCL.g:4396:1: rule__ClassifierContextDeclCS__Group__1 : rule__ClassifierContextDeclCS__Group__1__Impl rule__ClassifierContextDeclCS__Group__2 ;
     public final void rule__ClassifierContextDeclCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4372:1: ( rule__ClassifierContextDeclCS__Group__1__Impl rule__ClassifierContextDeclCS__Group__2 )
-            // InternalCompleteOCL.g:4373:2: rule__ClassifierContextDeclCS__Group__1__Impl rule__ClassifierContextDeclCS__Group__2
+            // InternalCompleteOCL.g:4400:1: ( rule__ClassifierContextDeclCS__Group__1__Impl rule__ClassifierContextDeclCS__Group__2 )
+            // InternalCompleteOCL.g:4401:2: rule__ClassifierContextDeclCS__Group__1__Impl rule__ClassifierContextDeclCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__ClassifierContextDeclCS__Group__1__Impl();
@@ -14783,22 +14868,22 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group__1__Impl"
-    // InternalCompleteOCL.g:4380:1: rule__ClassifierContextDeclCS__Group__1__Impl : ( ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )? ) ;
+    // InternalCompleteOCL.g:4408:1: rule__ClassifierContextDeclCS__Group__1__Impl : ( ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )? ) ;
     public final void rule__ClassifierContextDeclCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4384:1: ( ( ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )? ) )
-            // InternalCompleteOCL.g:4385:1: ( ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )? )
+            // InternalCompleteOCL.g:4412:1: ( ( ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )? ) )
+            // InternalCompleteOCL.g:4413:1: ( ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )? )
             {
-            // InternalCompleteOCL.g:4385:1: ( ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )? )
-            // InternalCompleteOCL.g:4386:1: ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )?
+            // InternalCompleteOCL.g:4413:1: ( ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )? )
+            // InternalCompleteOCL.g:4414:1: ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureAssignment_1());
             }
-            // InternalCompleteOCL.g:4387:1: ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )?
+            // InternalCompleteOCL.g:4415:1: ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )?
             int alt48=2;
             int LA48_0 = input.LA(1);
 
@@ -14807,7 +14892,7 @@
             }
             switch (alt48) {
                 case 1 :
-                    // InternalCompleteOCL.g:4387:2: rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1
+                    // InternalCompleteOCL.g:4415:2: rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1();
@@ -14845,14 +14930,14 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group__2"
-    // InternalCompleteOCL.g:4397:1: rule__ClassifierContextDeclCS__Group__2 : rule__ClassifierContextDeclCS__Group__2__Impl rule__ClassifierContextDeclCS__Group__3 ;
+    // InternalCompleteOCL.g:4425:1: rule__ClassifierContextDeclCS__Group__2 : rule__ClassifierContextDeclCS__Group__2__Impl rule__ClassifierContextDeclCS__Group__3 ;
     public final void rule__ClassifierContextDeclCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4401:1: ( rule__ClassifierContextDeclCS__Group__2__Impl rule__ClassifierContextDeclCS__Group__3 )
-            // InternalCompleteOCL.g:4402:2: rule__ClassifierContextDeclCS__Group__2__Impl rule__ClassifierContextDeclCS__Group__3
+            // InternalCompleteOCL.g:4429:1: ( rule__ClassifierContextDeclCS__Group__2__Impl rule__ClassifierContextDeclCS__Group__3 )
+            // InternalCompleteOCL.g:4430:2: rule__ClassifierContextDeclCS__Group__2__Impl rule__ClassifierContextDeclCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__ClassifierContextDeclCS__Group__2__Impl();
@@ -14883,29 +14968,29 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group__2__Impl"
-    // InternalCompleteOCL.g:4409:1: rule__ClassifierContextDeclCS__Group__2__Impl : ( ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )? ) ;
+    // InternalCompleteOCL.g:4437:1: rule__ClassifierContextDeclCS__Group__2__Impl : ( ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )? ) ;
     public final void rule__ClassifierContextDeclCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4413:1: ( ( ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )? ) )
-            // InternalCompleteOCL.g:4414:1: ( ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )? )
+            // InternalCompleteOCL.g:4441:1: ( ( ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )? ) )
+            // InternalCompleteOCL.g:4442:1: ( ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )? )
             {
-            // InternalCompleteOCL.g:4414:1: ( ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )? )
-            // InternalCompleteOCL.g:4415:1: ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )?
+            // InternalCompleteOCL.g:4442:1: ( ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )? )
+            // InternalCompleteOCL.g:4443:1: ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameAssignment_2());
             }
-            // InternalCompleteOCL.g:4416:1: ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )?
+            // InternalCompleteOCL.g:4444:1: ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )?
             int alt49=2;
             switch ( input.LA(1) ) {
                 case RULE_SIMPLE_ID:
                     {
                     int LA49_1 = input.LA(2);
 
-                    if ( ((LA49_1>=RULE_SIMPLE_ID && LA49_1<=RULE_ESCAPED_ID)||(LA49_1>=19 && LA49_1<=21)) ) {
+                    if ( ((LA49_1>=RULE_SIMPLE_ID && LA49_1<=RULE_ESCAPED_ID)||(LA49_1>=19 && LA49_1<=31)||(LA49_1>=56 && LA49_1<=62)) ) {
                         alt49=1;
                     }
                     }
@@ -14914,7 +14999,7 @@
                     {
                     int LA49_2 = input.LA(2);
 
-                    if ( ((LA49_2>=RULE_SIMPLE_ID && LA49_2<=RULE_ESCAPED_ID)||(LA49_2>=19 && LA49_2<=21)) ) {
+                    if ( ((LA49_2>=RULE_SIMPLE_ID && LA49_2<=RULE_ESCAPED_ID)||(LA49_2>=19 && LA49_2<=31)||(LA49_2>=56 && LA49_2<=62)) ) {
                         alt49=1;
                     }
                     }
@@ -14923,7 +15008,7 @@
                     {
                     int LA49_3 = input.LA(2);
 
-                    if ( ((LA49_3>=RULE_SIMPLE_ID && LA49_3<=RULE_ESCAPED_ID)||(LA49_3>=19 && LA49_3<=21)) ) {
+                    if ( ((LA49_3>=RULE_SIMPLE_ID && LA49_3<=RULE_ESCAPED_ID)||(LA49_3>=19 && LA49_3<=31)||(LA49_3>=56 && LA49_3<=62)) ) {
                         alt49=1;
                     }
                     }
@@ -14932,7 +15017,7 @@
                     {
                     int LA49_4 = input.LA(2);
 
-                    if ( ((LA49_4>=RULE_SIMPLE_ID && LA49_4<=RULE_ESCAPED_ID)||(LA49_4>=19 && LA49_4<=21)) ) {
+                    if ( ((LA49_4>=RULE_SIMPLE_ID && LA49_4<=RULE_ESCAPED_ID)||(LA49_4>=19 && LA49_4<=31)||(LA49_4>=56 && LA49_4<=62)) ) {
                         alt49=1;
                     }
                     }
@@ -14941,7 +15026,7 @@
                     {
                     int LA49_5 = input.LA(2);
 
-                    if ( ((LA49_5>=RULE_SIMPLE_ID && LA49_5<=RULE_ESCAPED_ID)||(LA49_5>=19 && LA49_5<=21)) ) {
+                    if ( ((LA49_5>=RULE_SIMPLE_ID && LA49_5<=RULE_ESCAPED_ID)||(LA49_5>=19 && LA49_5<=31)||(LA49_5>=56 && LA49_5<=62)) ) {
                         alt49=1;
                     }
                     }
@@ -14950,7 +15035,7 @@
 
             switch (alt49) {
                 case 1 :
-                    // InternalCompleteOCL.g:4416:2: rule__ClassifierContextDeclCS__SelfNameAssignment_2
+                    // InternalCompleteOCL.g:4444:2: rule__ClassifierContextDeclCS__SelfNameAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ClassifierContextDeclCS__SelfNameAssignment_2();
@@ -14988,14 +15073,14 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group__3"
-    // InternalCompleteOCL.g:4426:1: rule__ClassifierContextDeclCS__Group__3 : rule__ClassifierContextDeclCS__Group__3__Impl rule__ClassifierContextDeclCS__Group__4 ;
+    // InternalCompleteOCL.g:4454:1: rule__ClassifierContextDeclCS__Group__3 : rule__ClassifierContextDeclCS__Group__3__Impl rule__ClassifierContextDeclCS__Group__4 ;
     public final void rule__ClassifierContextDeclCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4430:1: ( rule__ClassifierContextDeclCS__Group__3__Impl rule__ClassifierContextDeclCS__Group__4 )
-            // InternalCompleteOCL.g:4431:2: rule__ClassifierContextDeclCS__Group__3__Impl rule__ClassifierContextDeclCS__Group__4
+            // InternalCompleteOCL.g:4458:1: ( rule__ClassifierContextDeclCS__Group__3__Impl rule__ClassifierContextDeclCS__Group__4 )
+            // InternalCompleteOCL.g:4459:2: rule__ClassifierContextDeclCS__Group__3__Impl rule__ClassifierContextDeclCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_8);
             rule__ClassifierContextDeclCS__Group__3__Impl();
@@ -15026,23 +15111,23 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group__3__Impl"
-    // InternalCompleteOCL.g:4438:1: rule__ClassifierContextDeclCS__Group__3__Impl : ( ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 ) ) ;
+    // InternalCompleteOCL.g:4466:1: rule__ClassifierContextDeclCS__Group__3__Impl : ( ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 ) ) ;
     public final void rule__ClassifierContextDeclCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4442:1: ( ( ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 ) ) )
-            // InternalCompleteOCL.g:4443:1: ( ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 ) )
+            // InternalCompleteOCL.g:4470:1: ( ( ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 ) ) )
+            // InternalCompleteOCL.g:4471:1: ( ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 ) )
             {
-            // InternalCompleteOCL.g:4443:1: ( ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 ) )
-            // InternalCompleteOCL.g:4444:1: ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 )
+            // InternalCompleteOCL.g:4471:1: ( ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 ) )
+            // InternalCompleteOCL.g:4472:1: ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNameAssignment_3());
             }
-            // InternalCompleteOCL.g:4445:1: ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 )
-            // InternalCompleteOCL.g:4445:2: rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3
+            // InternalCompleteOCL.g:4473:1: ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 )
+            // InternalCompleteOCL.g:4473:2: rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3();
@@ -15077,14 +15162,14 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group__4"
-    // InternalCompleteOCL.g:4455:1: rule__ClassifierContextDeclCS__Group__4 : rule__ClassifierContextDeclCS__Group__4__Impl ;
+    // InternalCompleteOCL.g:4483:1: rule__ClassifierContextDeclCS__Group__4 : rule__ClassifierContextDeclCS__Group__4__Impl ;
     public final void rule__ClassifierContextDeclCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4459:1: ( rule__ClassifierContextDeclCS__Group__4__Impl )
-            // InternalCompleteOCL.g:4460:2: rule__ClassifierContextDeclCS__Group__4__Impl
+            // InternalCompleteOCL.g:4487:1: ( rule__ClassifierContextDeclCS__Group__4__Impl )
+            // InternalCompleteOCL.g:4488:2: rule__ClassifierContextDeclCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ClassifierContextDeclCS__Group__4__Impl();
@@ -15110,26 +15195,26 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group__4__Impl"
-    // InternalCompleteOCL.g:4466:1: rule__ClassifierContextDeclCS__Group__4__Impl : ( ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) ) ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* ) ) ;
+    // InternalCompleteOCL.g:4494:1: rule__ClassifierContextDeclCS__Group__4__Impl : ( ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) ) ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* ) ) ;
     public final void rule__ClassifierContextDeclCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4470:1: ( ( ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) ) ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* ) ) )
-            // InternalCompleteOCL.g:4471:1: ( ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) ) ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* ) )
+            // InternalCompleteOCL.g:4498:1: ( ( ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) ) ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* ) ) )
+            // InternalCompleteOCL.g:4499:1: ( ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) ) ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* ) )
             {
-            // InternalCompleteOCL.g:4471:1: ( ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) ) ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* ) )
-            // InternalCompleteOCL.g:4472:1: ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) ) ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* )
+            // InternalCompleteOCL.g:4499:1: ( ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) ) ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* ) )
+            // InternalCompleteOCL.g:4500:1: ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) ) ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* )
             {
-            // InternalCompleteOCL.g:4472:1: ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) )
-            // InternalCompleteOCL.g:4473:1: ( rule__ClassifierContextDeclCS__Alternatives_4 )
+            // InternalCompleteOCL.g:4500:1: ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) )
+            // InternalCompleteOCL.g:4501:1: ( rule__ClassifierContextDeclCS__Alternatives_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getClassifierContextDeclCSAccess().getAlternatives_4());
             }
-            // InternalCompleteOCL.g:4474:1: ( rule__ClassifierContextDeclCS__Alternatives_4 )
-            // InternalCompleteOCL.g:4474:2: rule__ClassifierContextDeclCS__Alternatives_4
+            // InternalCompleteOCL.g:4502:1: ( rule__ClassifierContextDeclCS__Alternatives_4 )
+            // InternalCompleteOCL.g:4502:2: rule__ClassifierContextDeclCS__Alternatives_4
             {
             pushFollow(FollowSets000.FOLLOW_9);
             rule__ClassifierContextDeclCS__Alternatives_4();
@@ -15145,13 +15230,13 @@
 
             }
 
-            // InternalCompleteOCL.g:4477:1: ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* )
-            // InternalCompleteOCL.g:4478:1: ( rule__ClassifierContextDeclCS__Alternatives_4 )*
+            // InternalCompleteOCL.g:4505:1: ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* )
+            // InternalCompleteOCL.g:4506:1: ( rule__ClassifierContextDeclCS__Alternatives_4 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getClassifierContextDeclCSAccess().getAlternatives_4());
             }
-            // InternalCompleteOCL.g:4479:1: ( rule__ClassifierContextDeclCS__Alternatives_4 )*
+            // InternalCompleteOCL.g:4507:1: ( rule__ClassifierContextDeclCS__Alternatives_4 )*
             loop50:
             do {
                 int alt50=2;
@@ -15164,7 +15249,7 @@
 
                 switch (alt50) {
             	case 1 :
-            	    // InternalCompleteOCL.g:4479:2: rule__ClassifierContextDeclCS__Alternatives_4
+            	    // InternalCompleteOCL.g:4507:2: rule__ClassifierContextDeclCS__Alternatives_4
             	    {
             	    pushFollow(FollowSets000.FOLLOW_9);
             	    rule__ClassifierContextDeclCS__Alternatives_4();
@@ -15208,14 +15293,14 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group_4_0__0"
-    // InternalCompleteOCL.g:4500:1: rule__ClassifierContextDeclCS__Group_4_0__0 : rule__ClassifierContextDeclCS__Group_4_0__0__Impl rule__ClassifierContextDeclCS__Group_4_0__1 ;
+    // InternalCompleteOCL.g:4528:1: rule__ClassifierContextDeclCS__Group_4_0__0 : rule__ClassifierContextDeclCS__Group_4_0__0__Impl rule__ClassifierContextDeclCS__Group_4_0__1 ;
     public final void rule__ClassifierContextDeclCS__Group_4_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4504:1: ( rule__ClassifierContextDeclCS__Group_4_0__0__Impl rule__ClassifierContextDeclCS__Group_4_0__1 )
-            // InternalCompleteOCL.g:4505:2: rule__ClassifierContextDeclCS__Group_4_0__0__Impl rule__ClassifierContextDeclCS__Group_4_0__1
+            // InternalCompleteOCL.g:4532:1: ( rule__ClassifierContextDeclCS__Group_4_0__0__Impl rule__ClassifierContextDeclCS__Group_4_0__1 )
+            // InternalCompleteOCL.g:4533:2: rule__ClassifierContextDeclCS__Group_4_0__0__Impl rule__ClassifierContextDeclCS__Group_4_0__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__ClassifierContextDeclCS__Group_4_0__0__Impl();
@@ -15246,17 +15331,17 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group_4_0__0__Impl"
-    // InternalCompleteOCL.g:4512:1: rule__ClassifierContextDeclCS__Group_4_0__0__Impl : ( 'inv' ) ;
+    // InternalCompleteOCL.g:4540:1: rule__ClassifierContextDeclCS__Group_4_0__0__Impl : ( 'inv' ) ;
     public final void rule__ClassifierContextDeclCS__Group_4_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4516:1: ( ( 'inv' ) )
-            // InternalCompleteOCL.g:4517:1: ( 'inv' )
+            // InternalCompleteOCL.g:4544:1: ( ( 'inv' ) )
+            // InternalCompleteOCL.g:4545:1: ( 'inv' )
             {
-            // InternalCompleteOCL.g:4517:1: ( 'inv' )
-            // InternalCompleteOCL.g:4518:1: 'inv'
+            // InternalCompleteOCL.g:4545:1: ( 'inv' )
+            // InternalCompleteOCL.g:4546:1: 'inv'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getClassifierContextDeclCSAccess().getInvKeyword_4_0_0());
@@ -15287,14 +15372,14 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group_4_0__1"
-    // InternalCompleteOCL.g:4531:1: rule__ClassifierContextDeclCS__Group_4_0__1 : rule__ClassifierContextDeclCS__Group_4_0__1__Impl ;
+    // InternalCompleteOCL.g:4559:1: rule__ClassifierContextDeclCS__Group_4_0__1 : rule__ClassifierContextDeclCS__Group_4_0__1__Impl ;
     public final void rule__ClassifierContextDeclCS__Group_4_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4535:1: ( rule__ClassifierContextDeclCS__Group_4_0__1__Impl )
-            // InternalCompleteOCL.g:4536:2: rule__ClassifierContextDeclCS__Group_4_0__1__Impl
+            // InternalCompleteOCL.g:4563:1: ( rule__ClassifierContextDeclCS__Group_4_0__1__Impl )
+            // InternalCompleteOCL.g:4564:2: rule__ClassifierContextDeclCS__Group_4_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ClassifierContextDeclCS__Group_4_0__1__Impl();
@@ -15320,23 +15405,23 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__Group_4_0__1__Impl"
-    // InternalCompleteOCL.g:4542:1: rule__ClassifierContextDeclCS__Group_4_0__1__Impl : ( ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 ) ) ;
+    // InternalCompleteOCL.g:4570:1: rule__ClassifierContextDeclCS__Group_4_0__1__Impl : ( ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 ) ) ;
     public final void rule__ClassifierContextDeclCS__Group_4_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4546:1: ( ( ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 ) ) )
-            // InternalCompleteOCL.g:4547:1: ( ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 ) )
+            // InternalCompleteOCL.g:4574:1: ( ( ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 ) ) )
+            // InternalCompleteOCL.g:4575:1: ( ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 ) )
             {
-            // InternalCompleteOCL.g:4547:1: ( ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 ) )
-            // InternalCompleteOCL.g:4548:1: ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 )
+            // InternalCompleteOCL.g:4575:1: ( ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 ) )
+            // InternalCompleteOCL.g:4576:1: ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsAssignment_4_0_1());
             }
-            // InternalCompleteOCL.g:4549:1: ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 )
-            // InternalCompleteOCL.g:4549:2: rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1
+            // InternalCompleteOCL.g:4577:1: ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 )
+            // InternalCompleteOCL.g:4577:2: rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1();
@@ -15371,14 +15456,14 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group__0"
-    // InternalCompleteOCL.g:4563:1: rule__ConstraintCS__Group__0 : rule__ConstraintCS__Group__0__Impl rule__ConstraintCS__Group__1 ;
+    // InternalCompleteOCL.g:4591:1: rule__ConstraintCS__Group__0 : rule__ConstraintCS__Group__0__Impl rule__ConstraintCS__Group__1 ;
     public final void rule__ConstraintCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4567:1: ( rule__ConstraintCS__Group__0__Impl rule__ConstraintCS__Group__1 )
-            // InternalCompleteOCL.g:4568:2: rule__ConstraintCS__Group__0__Impl rule__ConstraintCS__Group__1
+            // InternalCompleteOCL.g:4595:1: ( rule__ConstraintCS__Group__0__Impl rule__ConstraintCS__Group__1 )
+            // InternalCompleteOCL.g:4596:2: rule__ConstraintCS__Group__0__Impl rule__ConstraintCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__ConstraintCS__Group__0__Impl();
@@ -15409,22 +15494,22 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group__0__Impl"
-    // InternalCompleteOCL.g:4575:1: rule__ConstraintCS__Group__0__Impl : ( ( rule__ConstraintCS__Group_0__0 )? ) ;
+    // InternalCompleteOCL.g:4603:1: rule__ConstraintCS__Group__0__Impl : ( ( rule__ConstraintCS__Group_0__0 )? ) ;
     public final void rule__ConstraintCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4579:1: ( ( ( rule__ConstraintCS__Group_0__0 )? ) )
-            // InternalCompleteOCL.g:4580:1: ( ( rule__ConstraintCS__Group_0__0 )? )
+            // InternalCompleteOCL.g:4607:1: ( ( ( rule__ConstraintCS__Group_0__0 )? ) )
+            // InternalCompleteOCL.g:4608:1: ( ( rule__ConstraintCS__Group_0__0 )? )
             {
-            // InternalCompleteOCL.g:4580:1: ( ( rule__ConstraintCS__Group_0__0 )? )
-            // InternalCompleteOCL.g:4581:1: ( rule__ConstraintCS__Group_0__0 )?
+            // InternalCompleteOCL.g:4608:1: ( ( rule__ConstraintCS__Group_0__0 )? )
+            // InternalCompleteOCL.g:4609:1: ( rule__ConstraintCS__Group_0__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getConstraintCSAccess().getGroup_0());
             }
-            // InternalCompleteOCL.g:4582:1: ( rule__ConstraintCS__Group_0__0 )?
+            // InternalCompleteOCL.g:4610:1: ( rule__ConstraintCS__Group_0__0 )?
             int alt51=2;
             int LA51_0 = input.LA(1);
 
@@ -15433,7 +15518,7 @@
             }
             switch (alt51) {
                 case 1 :
-                    // InternalCompleteOCL.g:4582:2: rule__ConstraintCS__Group_0__0
+                    // InternalCompleteOCL.g:4610:2: rule__ConstraintCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ConstraintCS__Group_0__0();
@@ -15471,14 +15556,14 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group__1"
-    // InternalCompleteOCL.g:4592:1: rule__ConstraintCS__Group__1 : rule__ConstraintCS__Group__1__Impl rule__ConstraintCS__Group__2 ;
+    // InternalCompleteOCL.g:4620:1: rule__ConstraintCS__Group__1 : rule__ConstraintCS__Group__1__Impl rule__ConstraintCS__Group__2 ;
     public final void rule__ConstraintCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4596:1: ( rule__ConstraintCS__Group__1__Impl rule__ConstraintCS__Group__2 )
-            // InternalCompleteOCL.g:4597:2: rule__ConstraintCS__Group__1__Impl rule__ConstraintCS__Group__2
+            // InternalCompleteOCL.g:4624:1: ( rule__ConstraintCS__Group__1__Impl rule__ConstraintCS__Group__2 )
+            // InternalCompleteOCL.g:4625:2: rule__ConstraintCS__Group__1__Impl rule__ConstraintCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__ConstraintCS__Group__1__Impl();
@@ -15509,17 +15594,17 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group__1__Impl"
-    // InternalCompleteOCL.g:4604:1: rule__ConstraintCS__Group__1__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:4632:1: rule__ConstraintCS__Group__1__Impl : ( ':' ) ;
     public final void rule__ConstraintCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4608:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:4609:1: ( ':' )
+            // InternalCompleteOCL.g:4636:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:4637:1: ( ':' )
             {
-            // InternalCompleteOCL.g:4609:1: ( ':' )
-            // InternalCompleteOCL.g:4610:1: ':'
+            // InternalCompleteOCL.g:4637:1: ( ':' )
+            // InternalCompleteOCL.g:4638:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getConstraintCSAccess().getColonKeyword_1());
@@ -15550,14 +15635,14 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group__2"
-    // InternalCompleteOCL.g:4623:1: rule__ConstraintCS__Group__2 : rule__ConstraintCS__Group__2__Impl ;
+    // InternalCompleteOCL.g:4651:1: rule__ConstraintCS__Group__2 : rule__ConstraintCS__Group__2__Impl ;
     public final void rule__ConstraintCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4627:1: ( rule__ConstraintCS__Group__2__Impl )
-            // InternalCompleteOCL.g:4628:2: rule__ConstraintCS__Group__2__Impl
+            // InternalCompleteOCL.g:4655:1: ( rule__ConstraintCS__Group__2__Impl )
+            // InternalCompleteOCL.g:4656:2: rule__ConstraintCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ConstraintCS__Group__2__Impl();
@@ -15583,23 +15668,23 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group__2__Impl"
-    // InternalCompleteOCL.g:4634:1: rule__ConstraintCS__Group__2__Impl : ( ( rule__ConstraintCS__OwnedSpecificationAssignment_2 ) ) ;
+    // InternalCompleteOCL.g:4662:1: rule__ConstraintCS__Group__2__Impl : ( ( rule__ConstraintCS__OwnedSpecificationAssignment_2 ) ) ;
     public final void rule__ConstraintCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4638:1: ( ( ( rule__ConstraintCS__OwnedSpecificationAssignment_2 ) ) )
-            // InternalCompleteOCL.g:4639:1: ( ( rule__ConstraintCS__OwnedSpecificationAssignment_2 ) )
+            // InternalCompleteOCL.g:4666:1: ( ( ( rule__ConstraintCS__OwnedSpecificationAssignment_2 ) ) )
+            // InternalCompleteOCL.g:4667:1: ( ( rule__ConstraintCS__OwnedSpecificationAssignment_2 ) )
             {
-            // InternalCompleteOCL.g:4639:1: ( ( rule__ConstraintCS__OwnedSpecificationAssignment_2 ) )
-            // InternalCompleteOCL.g:4640:1: ( rule__ConstraintCS__OwnedSpecificationAssignment_2 )
+            // InternalCompleteOCL.g:4667:1: ( ( rule__ConstraintCS__OwnedSpecificationAssignment_2 ) )
+            // InternalCompleteOCL.g:4668:1: ( rule__ConstraintCS__OwnedSpecificationAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getConstraintCSAccess().getOwnedSpecificationAssignment_2());
             }
-            // InternalCompleteOCL.g:4641:1: ( rule__ConstraintCS__OwnedSpecificationAssignment_2 )
-            // InternalCompleteOCL.g:4641:2: rule__ConstraintCS__OwnedSpecificationAssignment_2
+            // InternalCompleteOCL.g:4669:1: ( rule__ConstraintCS__OwnedSpecificationAssignment_2 )
+            // InternalCompleteOCL.g:4669:2: rule__ConstraintCS__OwnedSpecificationAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ConstraintCS__OwnedSpecificationAssignment_2();
@@ -15634,14 +15719,14 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group_0__0"
-    // InternalCompleteOCL.g:4657:1: rule__ConstraintCS__Group_0__0 : rule__ConstraintCS__Group_0__0__Impl rule__ConstraintCS__Group_0__1 ;
+    // InternalCompleteOCL.g:4685:1: rule__ConstraintCS__Group_0__0 : rule__ConstraintCS__Group_0__0__Impl rule__ConstraintCS__Group_0__1 ;
     public final void rule__ConstraintCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4661:1: ( rule__ConstraintCS__Group_0__0__Impl rule__ConstraintCS__Group_0__1 )
-            // InternalCompleteOCL.g:4662:2: rule__ConstraintCS__Group_0__0__Impl rule__ConstraintCS__Group_0__1
+            // InternalCompleteOCL.g:4689:1: ( rule__ConstraintCS__Group_0__0__Impl rule__ConstraintCS__Group_0__1 )
+            // InternalCompleteOCL.g:4690:2: rule__ConstraintCS__Group_0__0__Impl rule__ConstraintCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__ConstraintCS__Group_0__0__Impl();
@@ -15672,23 +15757,23 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group_0__0__Impl"
-    // InternalCompleteOCL.g:4669:1: rule__ConstraintCS__Group_0__0__Impl : ( ( rule__ConstraintCS__NameAssignment_0_0 ) ) ;
+    // InternalCompleteOCL.g:4697:1: rule__ConstraintCS__Group_0__0__Impl : ( ( rule__ConstraintCS__NameAssignment_0_0 ) ) ;
     public final void rule__ConstraintCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4673:1: ( ( ( rule__ConstraintCS__NameAssignment_0_0 ) ) )
-            // InternalCompleteOCL.g:4674:1: ( ( rule__ConstraintCS__NameAssignment_0_0 ) )
+            // InternalCompleteOCL.g:4701:1: ( ( ( rule__ConstraintCS__NameAssignment_0_0 ) ) )
+            // InternalCompleteOCL.g:4702:1: ( ( rule__ConstraintCS__NameAssignment_0_0 ) )
             {
-            // InternalCompleteOCL.g:4674:1: ( ( rule__ConstraintCS__NameAssignment_0_0 ) )
-            // InternalCompleteOCL.g:4675:1: ( rule__ConstraintCS__NameAssignment_0_0 )
+            // InternalCompleteOCL.g:4702:1: ( ( rule__ConstraintCS__NameAssignment_0_0 ) )
+            // InternalCompleteOCL.g:4703:1: ( rule__ConstraintCS__NameAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getConstraintCSAccess().getNameAssignment_0_0());
             }
-            // InternalCompleteOCL.g:4676:1: ( rule__ConstraintCS__NameAssignment_0_0 )
-            // InternalCompleteOCL.g:4676:2: rule__ConstraintCS__NameAssignment_0_0
+            // InternalCompleteOCL.g:4704:1: ( rule__ConstraintCS__NameAssignment_0_0 )
+            // InternalCompleteOCL.g:4704:2: rule__ConstraintCS__NameAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ConstraintCS__NameAssignment_0_0();
@@ -15723,14 +15808,14 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group_0__1"
-    // InternalCompleteOCL.g:4686:1: rule__ConstraintCS__Group_0__1 : rule__ConstraintCS__Group_0__1__Impl ;
+    // InternalCompleteOCL.g:4714:1: rule__ConstraintCS__Group_0__1 : rule__ConstraintCS__Group_0__1__Impl ;
     public final void rule__ConstraintCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4690:1: ( rule__ConstraintCS__Group_0__1__Impl )
-            // InternalCompleteOCL.g:4691:2: rule__ConstraintCS__Group_0__1__Impl
+            // InternalCompleteOCL.g:4718:1: ( rule__ConstraintCS__Group_0__1__Impl )
+            // InternalCompleteOCL.g:4719:2: rule__ConstraintCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ConstraintCS__Group_0__1__Impl();
@@ -15756,22 +15841,22 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group_0__1__Impl"
-    // InternalCompleteOCL.g:4697:1: rule__ConstraintCS__Group_0__1__Impl : ( ( rule__ConstraintCS__Group_0_1__0 )? ) ;
+    // InternalCompleteOCL.g:4725:1: rule__ConstraintCS__Group_0__1__Impl : ( ( rule__ConstraintCS__Group_0_1__0 )? ) ;
     public final void rule__ConstraintCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4701:1: ( ( ( rule__ConstraintCS__Group_0_1__0 )? ) )
-            // InternalCompleteOCL.g:4702:1: ( ( rule__ConstraintCS__Group_0_1__0 )? )
+            // InternalCompleteOCL.g:4729:1: ( ( ( rule__ConstraintCS__Group_0_1__0 )? ) )
+            // InternalCompleteOCL.g:4730:1: ( ( rule__ConstraintCS__Group_0_1__0 )? )
             {
-            // InternalCompleteOCL.g:4702:1: ( ( rule__ConstraintCS__Group_0_1__0 )? )
-            // InternalCompleteOCL.g:4703:1: ( rule__ConstraintCS__Group_0_1__0 )?
+            // InternalCompleteOCL.g:4730:1: ( ( rule__ConstraintCS__Group_0_1__0 )? )
+            // InternalCompleteOCL.g:4731:1: ( rule__ConstraintCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getConstraintCSAccess().getGroup_0_1());
             }
-            // InternalCompleteOCL.g:4704:1: ( rule__ConstraintCS__Group_0_1__0 )?
+            // InternalCompleteOCL.g:4732:1: ( rule__ConstraintCS__Group_0_1__0 )?
             int alt52=2;
             int LA52_0 = input.LA(1);
 
@@ -15780,7 +15865,7 @@
             }
             switch (alt52) {
                 case 1 :
-                    // InternalCompleteOCL.g:4704:2: rule__ConstraintCS__Group_0_1__0
+                    // InternalCompleteOCL.g:4732:2: rule__ConstraintCS__Group_0_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ConstraintCS__Group_0_1__0();
@@ -15818,14 +15903,14 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group_0_1__0"
-    // InternalCompleteOCL.g:4718:1: rule__ConstraintCS__Group_0_1__0 : rule__ConstraintCS__Group_0_1__0__Impl rule__ConstraintCS__Group_0_1__1 ;
+    // InternalCompleteOCL.g:4746:1: rule__ConstraintCS__Group_0_1__0 : rule__ConstraintCS__Group_0_1__0__Impl rule__ConstraintCS__Group_0_1__1 ;
     public final void rule__ConstraintCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4722:1: ( rule__ConstraintCS__Group_0_1__0__Impl rule__ConstraintCS__Group_0_1__1 )
-            // InternalCompleteOCL.g:4723:2: rule__ConstraintCS__Group_0_1__0__Impl rule__ConstraintCS__Group_0_1__1
+            // InternalCompleteOCL.g:4750:1: ( rule__ConstraintCS__Group_0_1__0__Impl rule__ConstraintCS__Group_0_1__1 )
+            // InternalCompleteOCL.g:4751:2: rule__ConstraintCS__Group_0_1__0__Impl rule__ConstraintCS__Group_0_1__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__ConstraintCS__Group_0_1__0__Impl();
@@ -15856,17 +15941,17 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group_0_1__0__Impl"
-    // InternalCompleteOCL.g:4730:1: rule__ConstraintCS__Group_0_1__0__Impl : ( '(' ) ;
+    // InternalCompleteOCL.g:4758:1: rule__ConstraintCS__Group_0_1__0__Impl : ( '(' ) ;
     public final void rule__ConstraintCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4734:1: ( ( '(' ) )
-            // InternalCompleteOCL.g:4735:1: ( '(' )
+            // InternalCompleteOCL.g:4762:1: ( ( '(' ) )
+            // InternalCompleteOCL.g:4763:1: ( '(' )
             {
-            // InternalCompleteOCL.g:4735:1: ( '(' )
-            // InternalCompleteOCL.g:4736:1: '('
+            // InternalCompleteOCL.g:4763:1: ( '(' )
+            // InternalCompleteOCL.g:4764:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getConstraintCSAccess().getLeftParenthesisKeyword_0_1_0());
@@ -15897,14 +15982,14 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group_0_1__1"
-    // InternalCompleteOCL.g:4749:1: rule__ConstraintCS__Group_0_1__1 : rule__ConstraintCS__Group_0_1__1__Impl rule__ConstraintCS__Group_0_1__2 ;
+    // InternalCompleteOCL.g:4777:1: rule__ConstraintCS__Group_0_1__1 : rule__ConstraintCS__Group_0_1__1__Impl rule__ConstraintCS__Group_0_1__2 ;
     public final void rule__ConstraintCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4753:1: ( rule__ConstraintCS__Group_0_1__1__Impl rule__ConstraintCS__Group_0_1__2 )
-            // InternalCompleteOCL.g:4754:2: rule__ConstraintCS__Group_0_1__1__Impl rule__ConstraintCS__Group_0_1__2
+            // InternalCompleteOCL.g:4781:1: ( rule__ConstraintCS__Group_0_1__1__Impl rule__ConstraintCS__Group_0_1__2 )
+            // InternalCompleteOCL.g:4782:2: rule__ConstraintCS__Group_0_1__1__Impl rule__ConstraintCS__Group_0_1__2
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__ConstraintCS__Group_0_1__1__Impl();
@@ -15935,23 +16020,23 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group_0_1__1__Impl"
-    // InternalCompleteOCL.g:4761:1: rule__ConstraintCS__Group_0_1__1__Impl : ( ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 ) ) ;
+    // InternalCompleteOCL.g:4789:1: rule__ConstraintCS__Group_0_1__1__Impl : ( ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 ) ) ;
     public final void rule__ConstraintCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4765:1: ( ( ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 ) ) )
-            // InternalCompleteOCL.g:4766:1: ( ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 ) )
+            // InternalCompleteOCL.g:4793:1: ( ( ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 ) ) )
+            // InternalCompleteOCL.g:4794:1: ( ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 ) )
             {
-            // InternalCompleteOCL.g:4766:1: ( ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 ) )
-            // InternalCompleteOCL.g:4767:1: ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 )
+            // InternalCompleteOCL.g:4794:1: ( ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 ) )
+            // InternalCompleteOCL.g:4795:1: ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationAssignment_0_1_1());
             }
-            // InternalCompleteOCL.g:4768:1: ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 )
-            // InternalCompleteOCL.g:4768:2: rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1
+            // InternalCompleteOCL.g:4796:1: ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 )
+            // InternalCompleteOCL.g:4796:2: rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1();
@@ -15986,14 +16071,14 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group_0_1__2"
-    // InternalCompleteOCL.g:4778:1: rule__ConstraintCS__Group_0_1__2 : rule__ConstraintCS__Group_0_1__2__Impl ;
+    // InternalCompleteOCL.g:4806:1: rule__ConstraintCS__Group_0_1__2 : rule__ConstraintCS__Group_0_1__2__Impl ;
     public final void rule__ConstraintCS__Group_0_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4782:1: ( rule__ConstraintCS__Group_0_1__2__Impl )
-            // InternalCompleteOCL.g:4783:2: rule__ConstraintCS__Group_0_1__2__Impl
+            // InternalCompleteOCL.g:4810:1: ( rule__ConstraintCS__Group_0_1__2__Impl )
+            // InternalCompleteOCL.g:4811:2: rule__ConstraintCS__Group_0_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ConstraintCS__Group_0_1__2__Impl();
@@ -16019,17 +16104,17 @@
 
 
     // $ANTLR start "rule__ConstraintCS__Group_0_1__2__Impl"
-    // InternalCompleteOCL.g:4789:1: rule__ConstraintCS__Group_0_1__2__Impl : ( ')' ) ;
+    // InternalCompleteOCL.g:4817:1: rule__ConstraintCS__Group_0_1__2__Impl : ( ')' ) ;
     public final void rule__ConstraintCS__Group_0_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4793:1: ( ( ')' ) )
-            // InternalCompleteOCL.g:4794:1: ( ')' )
+            // InternalCompleteOCL.g:4821:1: ( ( ')' ) )
+            // InternalCompleteOCL.g:4822:1: ( ')' )
             {
-            // InternalCompleteOCL.g:4794:1: ( ')' )
-            // InternalCompleteOCL.g:4795:1: ')'
+            // InternalCompleteOCL.g:4822:1: ( ')' )
+            // InternalCompleteOCL.g:4823:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getConstraintCSAccess().getRightParenthesisKeyword_0_1_2());
@@ -16060,14 +16145,14 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__0"
-    // InternalCompleteOCL.g:4814:1: rule__DefOperationCS__Group__0 : rule__DefOperationCS__Group__0__Impl rule__DefOperationCS__Group__1 ;
+    // InternalCompleteOCL.g:4842:1: rule__DefOperationCS__Group__0 : rule__DefOperationCS__Group__0__Impl rule__DefOperationCS__Group__1 ;
     public final void rule__DefOperationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4818:1: ( rule__DefOperationCS__Group__0__Impl rule__DefOperationCS__Group__1 )
-            // InternalCompleteOCL.g:4819:2: rule__DefOperationCS__Group__0__Impl rule__DefOperationCS__Group__1
+            // InternalCompleteOCL.g:4846:1: ( rule__DefOperationCS__Group__0__Impl rule__DefOperationCS__Group__1 )
+            // InternalCompleteOCL.g:4847:2: rule__DefOperationCS__Group__0__Impl rule__DefOperationCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__DefOperationCS__Group__0__Impl();
@@ -16098,22 +16183,22 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__0__Impl"
-    // InternalCompleteOCL.g:4826:1: rule__DefOperationCS__Group__0__Impl : ( ( rule__DefOperationCS__IsStaticAssignment_0 )? ) ;
+    // InternalCompleteOCL.g:4854:1: rule__DefOperationCS__Group__0__Impl : ( ( rule__DefOperationCS__IsStaticAssignment_0 )? ) ;
     public final void rule__DefOperationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4830:1: ( ( ( rule__DefOperationCS__IsStaticAssignment_0 )? ) )
-            // InternalCompleteOCL.g:4831:1: ( ( rule__DefOperationCS__IsStaticAssignment_0 )? )
+            // InternalCompleteOCL.g:4858:1: ( ( ( rule__DefOperationCS__IsStaticAssignment_0 )? ) )
+            // InternalCompleteOCL.g:4859:1: ( ( rule__DefOperationCS__IsStaticAssignment_0 )? )
             {
-            // InternalCompleteOCL.g:4831:1: ( ( rule__DefOperationCS__IsStaticAssignment_0 )? )
-            // InternalCompleteOCL.g:4832:1: ( rule__DefOperationCS__IsStaticAssignment_0 )?
+            // InternalCompleteOCL.g:4859:1: ( ( rule__DefOperationCS__IsStaticAssignment_0 )? )
+            // InternalCompleteOCL.g:4860:1: ( rule__DefOperationCS__IsStaticAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getIsStaticAssignment_0());
             }
-            // InternalCompleteOCL.g:4833:1: ( rule__DefOperationCS__IsStaticAssignment_0 )?
+            // InternalCompleteOCL.g:4861:1: ( rule__DefOperationCS__IsStaticAssignment_0 )?
             int alt53=2;
             int LA53_0 = input.LA(1);
 
@@ -16122,7 +16207,7 @@
             }
             switch (alt53) {
                 case 1 :
-                    // InternalCompleteOCL.g:4833:2: rule__DefOperationCS__IsStaticAssignment_0
+                    // InternalCompleteOCL.g:4861:2: rule__DefOperationCS__IsStaticAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DefOperationCS__IsStaticAssignment_0();
@@ -16160,14 +16245,14 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__1"
-    // InternalCompleteOCL.g:4843:1: rule__DefOperationCS__Group__1 : rule__DefOperationCS__Group__1__Impl rule__DefOperationCS__Group__2 ;
+    // InternalCompleteOCL.g:4871:1: rule__DefOperationCS__Group__1 : rule__DefOperationCS__Group__1__Impl rule__DefOperationCS__Group__2 ;
     public final void rule__DefOperationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4847:1: ( rule__DefOperationCS__Group__1__Impl rule__DefOperationCS__Group__2 )
-            // InternalCompleteOCL.g:4848:2: rule__DefOperationCS__Group__1__Impl rule__DefOperationCS__Group__2
+            // InternalCompleteOCL.g:4875:1: ( rule__DefOperationCS__Group__1__Impl rule__DefOperationCS__Group__2 )
+            // InternalCompleteOCL.g:4876:2: rule__DefOperationCS__Group__1__Impl rule__DefOperationCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__DefOperationCS__Group__1__Impl();
@@ -16198,17 +16283,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__1__Impl"
-    // InternalCompleteOCL.g:4855:1: rule__DefOperationCS__Group__1__Impl : ( 'def' ) ;
+    // InternalCompleteOCL.g:4883:1: rule__DefOperationCS__Group__1__Impl : ( 'def' ) ;
     public final void rule__DefOperationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4859:1: ( ( 'def' ) )
-            // InternalCompleteOCL.g:4860:1: ( 'def' )
+            // InternalCompleteOCL.g:4887:1: ( ( 'def' ) )
+            // InternalCompleteOCL.g:4888:1: ( 'def' )
             {
-            // InternalCompleteOCL.g:4860:1: ( 'def' )
-            // InternalCompleteOCL.g:4861:1: 'def'
+            // InternalCompleteOCL.g:4888:1: ( 'def' )
+            // InternalCompleteOCL.g:4889:1: 'def'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getDefKeyword_1());
@@ -16239,14 +16324,14 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__2"
-    // InternalCompleteOCL.g:4874:1: rule__DefOperationCS__Group__2 : rule__DefOperationCS__Group__2__Impl rule__DefOperationCS__Group__3 ;
+    // InternalCompleteOCL.g:4902:1: rule__DefOperationCS__Group__2 : rule__DefOperationCS__Group__2__Impl rule__DefOperationCS__Group__3 ;
     public final void rule__DefOperationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4878:1: ( rule__DefOperationCS__Group__2__Impl rule__DefOperationCS__Group__3 )
-            // InternalCompleteOCL.g:4879:2: rule__DefOperationCS__Group__2__Impl rule__DefOperationCS__Group__3
+            // InternalCompleteOCL.g:4906:1: ( rule__DefOperationCS__Group__2__Impl rule__DefOperationCS__Group__3 )
+            // InternalCompleteOCL.g:4907:2: rule__DefOperationCS__Group__2__Impl rule__DefOperationCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__DefOperationCS__Group__2__Impl();
@@ -16277,22 +16362,22 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__2__Impl"
-    // InternalCompleteOCL.g:4886:1: rule__DefOperationCS__Group__2__Impl : ( ( ruleUnrestrictedName )? ) ;
+    // InternalCompleteOCL.g:4914:1: rule__DefOperationCS__Group__2__Impl : ( ( ruleUnrestrictedName )? ) ;
     public final void rule__DefOperationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4890:1: ( ( ( ruleUnrestrictedName )? ) )
-            // InternalCompleteOCL.g:4891:1: ( ( ruleUnrestrictedName )? )
+            // InternalCompleteOCL.g:4918:1: ( ( ( ruleUnrestrictedName )? ) )
+            // InternalCompleteOCL.g:4919:1: ( ( ruleUnrestrictedName )? )
             {
-            // InternalCompleteOCL.g:4891:1: ( ( ruleUnrestrictedName )? )
-            // InternalCompleteOCL.g:4892:1: ( ruleUnrestrictedName )?
+            // InternalCompleteOCL.g:4919:1: ( ( ruleUnrestrictedName )? )
+            // InternalCompleteOCL.g:4920:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getUnrestrictedNameParserRuleCall_2());
             }
-            // InternalCompleteOCL.g:4893:1: ( ruleUnrestrictedName )?
+            // InternalCompleteOCL.g:4921:1: ( ruleUnrestrictedName )?
             int alt54=2;
             int LA54_0 = input.LA(1);
 
@@ -16301,7 +16386,7 @@
             }
             switch (alt54) {
                 case 1 :
-                    // InternalCompleteOCL.g:4893:3: ruleUnrestrictedName
+                    // InternalCompleteOCL.g:4921:3: ruleUnrestrictedName
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -16339,16 +16424,16 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__3"
-    // InternalCompleteOCL.g:4903:1: rule__DefOperationCS__Group__3 : rule__DefOperationCS__Group__3__Impl rule__DefOperationCS__Group__4 ;
+    // InternalCompleteOCL.g:4931:1: rule__DefOperationCS__Group__3 : rule__DefOperationCS__Group__3__Impl rule__DefOperationCS__Group__4 ;
     public final void rule__DefOperationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4907:1: ( rule__DefOperationCS__Group__3__Impl rule__DefOperationCS__Group__4 )
-            // InternalCompleteOCL.g:4908:2: rule__DefOperationCS__Group__3__Impl rule__DefOperationCS__Group__4
+            // InternalCompleteOCL.g:4935:1: ( rule__DefOperationCS__Group__3__Impl rule__DefOperationCS__Group__4 )
+            // InternalCompleteOCL.g:4936:2: rule__DefOperationCS__Group__3__Impl rule__DefOperationCS__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_7);
+            pushFollow(FollowSets000.FOLLOW_15);
             rule__DefOperationCS__Group__3__Impl();
 
             state._fsp--;
@@ -16377,17 +16462,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__3__Impl"
-    // InternalCompleteOCL.g:4915:1: rule__DefOperationCS__Group__3__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:4943:1: rule__DefOperationCS__Group__3__Impl : ( ':' ) ;
     public final void rule__DefOperationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4919:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:4920:1: ( ':' )
+            // InternalCompleteOCL.g:4947:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:4948:1: ( ':' )
             {
-            // InternalCompleteOCL.g:4920:1: ( ':' )
-            // InternalCompleteOCL.g:4921:1: ':'
+            // InternalCompleteOCL.g:4948:1: ( ':' )
+            // InternalCompleteOCL.g:4949:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getColonKeyword_3());
@@ -16418,16 +16503,16 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__4"
-    // InternalCompleteOCL.g:4934:1: rule__DefOperationCS__Group__4 : rule__DefOperationCS__Group__4__Impl rule__DefOperationCS__Group__5 ;
+    // InternalCompleteOCL.g:4962:1: rule__DefOperationCS__Group__4 : rule__DefOperationCS__Group__4__Impl rule__DefOperationCS__Group__5 ;
     public final void rule__DefOperationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4938:1: ( rule__DefOperationCS__Group__4__Impl rule__DefOperationCS__Group__5 )
-            // InternalCompleteOCL.g:4939:2: rule__DefOperationCS__Group__4__Impl rule__DefOperationCS__Group__5
+            // InternalCompleteOCL.g:4966:1: ( rule__DefOperationCS__Group__4__Impl rule__DefOperationCS__Group__5 )
+            // InternalCompleteOCL.g:4967:2: rule__DefOperationCS__Group__4__Impl rule__DefOperationCS__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_7);
+            pushFollow(FollowSets000.FOLLOW_15);
             rule__DefOperationCS__Group__4__Impl();
 
             state._fsp--;
@@ -16456,22 +16541,22 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__4__Impl"
-    // InternalCompleteOCL.g:4946:1: rule__DefOperationCS__Group__4__Impl : ( ( rule__DefOperationCS__OwnedSignatureAssignment_4 )? ) ;
+    // InternalCompleteOCL.g:4974:1: rule__DefOperationCS__Group__4__Impl : ( ( rule__DefOperationCS__OwnedSignatureAssignment_4 )? ) ;
     public final void rule__DefOperationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4950:1: ( ( ( rule__DefOperationCS__OwnedSignatureAssignment_4 )? ) )
-            // InternalCompleteOCL.g:4951:1: ( ( rule__DefOperationCS__OwnedSignatureAssignment_4 )? )
+            // InternalCompleteOCL.g:4978:1: ( ( ( rule__DefOperationCS__OwnedSignatureAssignment_4 )? ) )
+            // InternalCompleteOCL.g:4979:1: ( ( rule__DefOperationCS__OwnedSignatureAssignment_4 )? )
             {
-            // InternalCompleteOCL.g:4951:1: ( ( rule__DefOperationCS__OwnedSignatureAssignment_4 )? )
-            // InternalCompleteOCL.g:4952:1: ( rule__DefOperationCS__OwnedSignatureAssignment_4 )?
+            // InternalCompleteOCL.g:4979:1: ( ( rule__DefOperationCS__OwnedSignatureAssignment_4 )? )
+            // InternalCompleteOCL.g:4980:1: ( rule__DefOperationCS__OwnedSignatureAssignment_4 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getOwnedSignatureAssignment_4());
             }
-            // InternalCompleteOCL.g:4953:1: ( rule__DefOperationCS__OwnedSignatureAssignment_4 )?
+            // InternalCompleteOCL.g:4981:1: ( rule__DefOperationCS__OwnedSignatureAssignment_4 )?
             int alt55=2;
             int LA55_0 = input.LA(1);
 
@@ -16480,7 +16565,7 @@
             }
             switch (alt55) {
                 case 1 :
-                    // InternalCompleteOCL.g:4953:2: rule__DefOperationCS__OwnedSignatureAssignment_4
+                    // InternalCompleteOCL.g:4981:2: rule__DefOperationCS__OwnedSignatureAssignment_4
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DefOperationCS__OwnedSignatureAssignment_4();
@@ -16518,14 +16603,14 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__5"
-    // InternalCompleteOCL.g:4963:1: rule__DefOperationCS__Group__5 : rule__DefOperationCS__Group__5__Impl rule__DefOperationCS__Group__6 ;
+    // InternalCompleteOCL.g:4991:1: rule__DefOperationCS__Group__5 : rule__DefOperationCS__Group__5__Impl rule__DefOperationCS__Group__6 ;
     public final void rule__DefOperationCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4967:1: ( rule__DefOperationCS__Group__5__Impl rule__DefOperationCS__Group__6 )
-            // InternalCompleteOCL.g:4968:2: rule__DefOperationCS__Group__5__Impl rule__DefOperationCS__Group__6
+            // InternalCompleteOCL.g:4995:1: ( rule__DefOperationCS__Group__5__Impl rule__DefOperationCS__Group__6 )
+            // InternalCompleteOCL.g:4996:2: rule__DefOperationCS__Group__5__Impl rule__DefOperationCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__DefOperationCS__Group__5__Impl();
@@ -16556,23 +16641,23 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__5__Impl"
-    // InternalCompleteOCL.g:4975:1: rule__DefOperationCS__Group__5__Impl : ( ( rule__DefOperationCS__NameAssignment_5 ) ) ;
+    // InternalCompleteOCL.g:5003:1: rule__DefOperationCS__Group__5__Impl : ( ( rule__DefOperationCS__NameAssignment_5 ) ) ;
     public final void rule__DefOperationCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4979:1: ( ( ( rule__DefOperationCS__NameAssignment_5 ) ) )
-            // InternalCompleteOCL.g:4980:1: ( ( rule__DefOperationCS__NameAssignment_5 ) )
+            // InternalCompleteOCL.g:5007:1: ( ( ( rule__DefOperationCS__NameAssignment_5 ) ) )
+            // InternalCompleteOCL.g:5008:1: ( ( rule__DefOperationCS__NameAssignment_5 ) )
             {
-            // InternalCompleteOCL.g:4980:1: ( ( rule__DefOperationCS__NameAssignment_5 ) )
-            // InternalCompleteOCL.g:4981:1: ( rule__DefOperationCS__NameAssignment_5 )
+            // InternalCompleteOCL.g:5008:1: ( ( rule__DefOperationCS__NameAssignment_5 ) )
+            // InternalCompleteOCL.g:5009:1: ( rule__DefOperationCS__NameAssignment_5 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getNameAssignment_5());
             }
-            // InternalCompleteOCL.g:4982:1: ( rule__DefOperationCS__NameAssignment_5 )
-            // InternalCompleteOCL.g:4982:2: rule__DefOperationCS__NameAssignment_5
+            // InternalCompleteOCL.g:5010:1: ( rule__DefOperationCS__NameAssignment_5 )
+            // InternalCompleteOCL.g:5010:2: rule__DefOperationCS__NameAssignment_5
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefOperationCS__NameAssignment_5();
@@ -16607,16 +16692,16 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__6"
-    // InternalCompleteOCL.g:4992:1: rule__DefOperationCS__Group__6 : rule__DefOperationCS__Group__6__Impl rule__DefOperationCS__Group__7 ;
+    // InternalCompleteOCL.g:5020:1: rule__DefOperationCS__Group__6 : rule__DefOperationCS__Group__6__Impl rule__DefOperationCS__Group__7 ;
     public final void rule__DefOperationCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:4996:1: ( rule__DefOperationCS__Group__6__Impl rule__DefOperationCS__Group__7 )
-            // InternalCompleteOCL.g:4997:2: rule__DefOperationCS__Group__6__Impl rule__DefOperationCS__Group__7
+            // InternalCompleteOCL.g:5024:1: ( rule__DefOperationCS__Group__6__Impl rule__DefOperationCS__Group__7 )
+            // InternalCompleteOCL.g:5025:2: rule__DefOperationCS__Group__6__Impl rule__DefOperationCS__Group__7
             {
-            pushFollow(FollowSets000.FOLLOW_15);
+            pushFollow(FollowSets000.FOLLOW_16);
             rule__DefOperationCS__Group__6__Impl();
 
             state._fsp--;
@@ -16645,17 +16730,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__6__Impl"
-    // InternalCompleteOCL.g:5004:1: rule__DefOperationCS__Group__6__Impl : ( '(' ) ;
+    // InternalCompleteOCL.g:5032:1: rule__DefOperationCS__Group__6__Impl : ( '(' ) ;
     public final void rule__DefOperationCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5008:1: ( ( '(' ) )
-            // InternalCompleteOCL.g:5009:1: ( '(' )
+            // InternalCompleteOCL.g:5036:1: ( ( '(' ) )
+            // InternalCompleteOCL.g:5037:1: ( '(' )
             {
-            // InternalCompleteOCL.g:5009:1: ( '(' )
-            // InternalCompleteOCL.g:5010:1: '('
+            // InternalCompleteOCL.g:5037:1: ( '(' )
+            // InternalCompleteOCL.g:5038:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getLeftParenthesisKeyword_6());
@@ -16686,16 +16771,16 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__7"
-    // InternalCompleteOCL.g:5023:1: rule__DefOperationCS__Group__7 : rule__DefOperationCS__Group__7__Impl rule__DefOperationCS__Group__8 ;
+    // InternalCompleteOCL.g:5051:1: rule__DefOperationCS__Group__7 : rule__DefOperationCS__Group__7__Impl rule__DefOperationCS__Group__8 ;
     public final void rule__DefOperationCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5027:1: ( rule__DefOperationCS__Group__7__Impl rule__DefOperationCS__Group__8 )
-            // InternalCompleteOCL.g:5028:2: rule__DefOperationCS__Group__7__Impl rule__DefOperationCS__Group__8
+            // InternalCompleteOCL.g:5055:1: ( rule__DefOperationCS__Group__7__Impl rule__DefOperationCS__Group__8 )
+            // InternalCompleteOCL.g:5056:2: rule__DefOperationCS__Group__7__Impl rule__DefOperationCS__Group__8
             {
-            pushFollow(FollowSets000.FOLLOW_15);
+            pushFollow(FollowSets000.FOLLOW_16);
             rule__DefOperationCS__Group__7__Impl();
 
             state._fsp--;
@@ -16724,22 +16809,22 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__7__Impl"
-    // InternalCompleteOCL.g:5035:1: rule__DefOperationCS__Group__7__Impl : ( ( rule__DefOperationCS__Group_7__0 )? ) ;
+    // InternalCompleteOCL.g:5063:1: rule__DefOperationCS__Group__7__Impl : ( ( rule__DefOperationCS__Group_7__0 )? ) ;
     public final void rule__DefOperationCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5039:1: ( ( ( rule__DefOperationCS__Group_7__0 )? ) )
-            // InternalCompleteOCL.g:5040:1: ( ( rule__DefOperationCS__Group_7__0 )? )
+            // InternalCompleteOCL.g:5067:1: ( ( ( rule__DefOperationCS__Group_7__0 )? ) )
+            // InternalCompleteOCL.g:5068:1: ( ( rule__DefOperationCS__Group_7__0 )? )
             {
-            // InternalCompleteOCL.g:5040:1: ( ( rule__DefOperationCS__Group_7__0 )? )
-            // InternalCompleteOCL.g:5041:1: ( rule__DefOperationCS__Group_7__0 )?
+            // InternalCompleteOCL.g:5068:1: ( ( rule__DefOperationCS__Group_7__0 )? )
+            // InternalCompleteOCL.g:5069:1: ( rule__DefOperationCS__Group_7__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getGroup_7());
             }
-            // InternalCompleteOCL.g:5042:1: ( rule__DefOperationCS__Group_7__0 )?
+            // InternalCompleteOCL.g:5070:1: ( rule__DefOperationCS__Group_7__0 )?
             int alt56=2;
             int LA56_0 = input.LA(1);
 
@@ -16748,7 +16833,7 @@
             }
             switch (alt56) {
                 case 1 :
-                    // InternalCompleteOCL.g:5042:2: rule__DefOperationCS__Group_7__0
+                    // InternalCompleteOCL.g:5070:2: rule__DefOperationCS__Group_7__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DefOperationCS__Group_7__0();
@@ -16786,16 +16871,16 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__8"
-    // InternalCompleteOCL.g:5052:1: rule__DefOperationCS__Group__8 : rule__DefOperationCS__Group__8__Impl rule__DefOperationCS__Group__9 ;
+    // InternalCompleteOCL.g:5080:1: rule__DefOperationCS__Group__8 : rule__DefOperationCS__Group__8__Impl rule__DefOperationCS__Group__9 ;
     public final void rule__DefOperationCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5056:1: ( rule__DefOperationCS__Group__8__Impl rule__DefOperationCS__Group__9 )
-            // InternalCompleteOCL.g:5057:2: rule__DefOperationCS__Group__8__Impl rule__DefOperationCS__Group__9
+            // InternalCompleteOCL.g:5084:1: ( rule__DefOperationCS__Group__8__Impl rule__DefOperationCS__Group__9 )
+            // InternalCompleteOCL.g:5085:2: rule__DefOperationCS__Group__8__Impl rule__DefOperationCS__Group__9
             {
-            pushFollow(FollowSets000.FOLLOW_16);
+            pushFollow(FollowSets000.FOLLOW_17);
             rule__DefOperationCS__Group__8__Impl();
 
             state._fsp--;
@@ -16824,17 +16909,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__8__Impl"
-    // InternalCompleteOCL.g:5064:1: rule__DefOperationCS__Group__8__Impl : ( ')' ) ;
+    // InternalCompleteOCL.g:5092:1: rule__DefOperationCS__Group__8__Impl : ( ')' ) ;
     public final void rule__DefOperationCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5068:1: ( ( ')' ) )
-            // InternalCompleteOCL.g:5069:1: ( ')' )
+            // InternalCompleteOCL.g:5096:1: ( ( ')' ) )
+            // InternalCompleteOCL.g:5097:1: ( ')' )
             {
-            // InternalCompleteOCL.g:5069:1: ( ')' )
-            // InternalCompleteOCL.g:5070:1: ')'
+            // InternalCompleteOCL.g:5097:1: ( ')' )
+            // InternalCompleteOCL.g:5098:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getRightParenthesisKeyword_8());
@@ -16865,16 +16950,16 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__9"
-    // InternalCompleteOCL.g:5083:1: rule__DefOperationCS__Group__9 : rule__DefOperationCS__Group__9__Impl rule__DefOperationCS__Group__10 ;
+    // InternalCompleteOCL.g:5111:1: rule__DefOperationCS__Group__9 : rule__DefOperationCS__Group__9__Impl rule__DefOperationCS__Group__10 ;
     public final void rule__DefOperationCS__Group__9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5087:1: ( rule__DefOperationCS__Group__9__Impl rule__DefOperationCS__Group__10 )
-            // InternalCompleteOCL.g:5088:2: rule__DefOperationCS__Group__9__Impl rule__DefOperationCS__Group__10
+            // InternalCompleteOCL.g:5115:1: ( rule__DefOperationCS__Group__9__Impl rule__DefOperationCS__Group__10 )
+            // InternalCompleteOCL.g:5116:2: rule__DefOperationCS__Group__9__Impl rule__DefOperationCS__Group__10
             {
-            pushFollow(FollowSets000.FOLLOW_17);
+            pushFollow(FollowSets000.FOLLOW_18);
             rule__DefOperationCS__Group__9__Impl();
 
             state._fsp--;
@@ -16903,17 +16988,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__9__Impl"
-    // InternalCompleteOCL.g:5095:1: rule__DefOperationCS__Group__9__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:5123:1: rule__DefOperationCS__Group__9__Impl : ( ':' ) ;
     public final void rule__DefOperationCS__Group__9__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5099:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:5100:1: ( ':' )
+            // InternalCompleteOCL.g:5127:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:5128:1: ( ':' )
             {
-            // InternalCompleteOCL.g:5100:1: ( ':' )
-            // InternalCompleteOCL.g:5101:1: ':'
+            // InternalCompleteOCL.g:5128:1: ( ':' )
+            // InternalCompleteOCL.g:5129:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getColonKeyword_9());
@@ -16944,16 +17029,16 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__10"
-    // InternalCompleteOCL.g:5114:1: rule__DefOperationCS__Group__10 : rule__DefOperationCS__Group__10__Impl rule__DefOperationCS__Group__11 ;
+    // InternalCompleteOCL.g:5142:1: rule__DefOperationCS__Group__10 : rule__DefOperationCS__Group__10__Impl rule__DefOperationCS__Group__11 ;
     public final void rule__DefOperationCS__Group__10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5118:1: ( rule__DefOperationCS__Group__10__Impl rule__DefOperationCS__Group__11 )
-            // InternalCompleteOCL.g:5119:2: rule__DefOperationCS__Group__10__Impl rule__DefOperationCS__Group__11
+            // InternalCompleteOCL.g:5146:1: ( rule__DefOperationCS__Group__10__Impl rule__DefOperationCS__Group__11 )
+            // InternalCompleteOCL.g:5147:2: rule__DefOperationCS__Group__10__Impl rule__DefOperationCS__Group__11
             {
-            pushFollow(FollowSets000.FOLLOW_17);
+            pushFollow(FollowSets000.FOLLOW_18);
             rule__DefOperationCS__Group__10__Impl();
 
             state._fsp--;
@@ -16982,22 +17067,22 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__10__Impl"
-    // InternalCompleteOCL.g:5126:1: rule__DefOperationCS__Group__10__Impl : ( ( rule__DefOperationCS__OwnedTypeAssignment_10 )? ) ;
+    // InternalCompleteOCL.g:5154:1: rule__DefOperationCS__Group__10__Impl : ( ( rule__DefOperationCS__OwnedTypeAssignment_10 )? ) ;
     public final void rule__DefOperationCS__Group__10__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5130:1: ( ( ( rule__DefOperationCS__OwnedTypeAssignment_10 )? ) )
-            // InternalCompleteOCL.g:5131:1: ( ( rule__DefOperationCS__OwnedTypeAssignment_10 )? )
+            // InternalCompleteOCL.g:5158:1: ( ( ( rule__DefOperationCS__OwnedTypeAssignment_10 )? ) )
+            // InternalCompleteOCL.g:5159:1: ( ( rule__DefOperationCS__OwnedTypeAssignment_10 )? )
             {
-            // InternalCompleteOCL.g:5131:1: ( ( rule__DefOperationCS__OwnedTypeAssignment_10 )? )
-            // InternalCompleteOCL.g:5132:1: ( rule__DefOperationCS__OwnedTypeAssignment_10 )?
+            // InternalCompleteOCL.g:5159:1: ( ( rule__DefOperationCS__OwnedTypeAssignment_10 )? )
+            // InternalCompleteOCL.g:5160:1: ( rule__DefOperationCS__OwnedTypeAssignment_10 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getOwnedTypeAssignment_10());
             }
-            // InternalCompleteOCL.g:5133:1: ( rule__DefOperationCS__OwnedTypeAssignment_10 )?
+            // InternalCompleteOCL.g:5161:1: ( rule__DefOperationCS__OwnedTypeAssignment_10 )?
             int alt57=2;
             int LA57_0 = input.LA(1);
 
@@ -17006,7 +17091,7 @@
             }
             switch (alt57) {
                 case 1 :
-                    // InternalCompleteOCL.g:5133:2: rule__DefOperationCS__OwnedTypeAssignment_10
+                    // InternalCompleteOCL.g:5161:2: rule__DefOperationCS__OwnedTypeAssignment_10
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DefOperationCS__OwnedTypeAssignment_10();
@@ -17044,14 +17129,14 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__11"
-    // InternalCompleteOCL.g:5143:1: rule__DefOperationCS__Group__11 : rule__DefOperationCS__Group__11__Impl rule__DefOperationCS__Group__12 ;
+    // InternalCompleteOCL.g:5171:1: rule__DefOperationCS__Group__11 : rule__DefOperationCS__Group__11__Impl rule__DefOperationCS__Group__12 ;
     public final void rule__DefOperationCS__Group__11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5147:1: ( rule__DefOperationCS__Group__11__Impl rule__DefOperationCS__Group__12 )
-            // InternalCompleteOCL.g:5148:2: rule__DefOperationCS__Group__11__Impl rule__DefOperationCS__Group__12
+            // InternalCompleteOCL.g:5175:1: ( rule__DefOperationCS__Group__11__Impl rule__DefOperationCS__Group__12 )
+            // InternalCompleteOCL.g:5176:2: rule__DefOperationCS__Group__11__Impl rule__DefOperationCS__Group__12
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__DefOperationCS__Group__11__Impl();
@@ -17082,17 +17167,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__11__Impl"
-    // InternalCompleteOCL.g:5155:1: rule__DefOperationCS__Group__11__Impl : ( '=' ) ;
+    // InternalCompleteOCL.g:5183:1: rule__DefOperationCS__Group__11__Impl : ( '=' ) ;
     public final void rule__DefOperationCS__Group__11__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5159:1: ( ( '=' ) )
-            // InternalCompleteOCL.g:5160:1: ( '=' )
+            // InternalCompleteOCL.g:5187:1: ( ( '=' ) )
+            // InternalCompleteOCL.g:5188:1: ( '=' )
             {
-            // InternalCompleteOCL.g:5160:1: ( '=' )
-            // InternalCompleteOCL.g:5161:1: '='
+            // InternalCompleteOCL.g:5188:1: ( '=' )
+            // InternalCompleteOCL.g:5189:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getEqualsSignKeyword_11());
@@ -17123,14 +17208,14 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__12"
-    // InternalCompleteOCL.g:5174:1: rule__DefOperationCS__Group__12 : rule__DefOperationCS__Group__12__Impl ;
+    // InternalCompleteOCL.g:5202:1: rule__DefOperationCS__Group__12 : rule__DefOperationCS__Group__12__Impl ;
     public final void rule__DefOperationCS__Group__12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5178:1: ( rule__DefOperationCS__Group__12__Impl )
-            // InternalCompleteOCL.g:5179:2: rule__DefOperationCS__Group__12__Impl
+            // InternalCompleteOCL.g:5206:1: ( rule__DefOperationCS__Group__12__Impl )
+            // InternalCompleteOCL.g:5207:2: rule__DefOperationCS__Group__12__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefOperationCS__Group__12__Impl();
@@ -17156,23 +17241,23 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group__12__Impl"
-    // InternalCompleteOCL.g:5185:1: rule__DefOperationCS__Group__12__Impl : ( ( rule__DefOperationCS__OwnedSpecificationAssignment_12 ) ) ;
+    // InternalCompleteOCL.g:5213:1: rule__DefOperationCS__Group__12__Impl : ( ( rule__DefOperationCS__OwnedSpecificationAssignment_12 ) ) ;
     public final void rule__DefOperationCS__Group__12__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5189:1: ( ( ( rule__DefOperationCS__OwnedSpecificationAssignment_12 ) ) )
-            // InternalCompleteOCL.g:5190:1: ( ( rule__DefOperationCS__OwnedSpecificationAssignment_12 ) )
+            // InternalCompleteOCL.g:5217:1: ( ( ( rule__DefOperationCS__OwnedSpecificationAssignment_12 ) ) )
+            // InternalCompleteOCL.g:5218:1: ( ( rule__DefOperationCS__OwnedSpecificationAssignment_12 ) )
             {
-            // InternalCompleteOCL.g:5190:1: ( ( rule__DefOperationCS__OwnedSpecificationAssignment_12 ) )
-            // InternalCompleteOCL.g:5191:1: ( rule__DefOperationCS__OwnedSpecificationAssignment_12 )
+            // InternalCompleteOCL.g:5218:1: ( ( rule__DefOperationCS__OwnedSpecificationAssignment_12 ) )
+            // InternalCompleteOCL.g:5219:1: ( rule__DefOperationCS__OwnedSpecificationAssignment_12 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationAssignment_12());
             }
-            // InternalCompleteOCL.g:5192:1: ( rule__DefOperationCS__OwnedSpecificationAssignment_12 )
-            // InternalCompleteOCL.g:5192:2: rule__DefOperationCS__OwnedSpecificationAssignment_12
+            // InternalCompleteOCL.g:5220:1: ( rule__DefOperationCS__OwnedSpecificationAssignment_12 )
+            // InternalCompleteOCL.g:5220:2: rule__DefOperationCS__OwnedSpecificationAssignment_12
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefOperationCS__OwnedSpecificationAssignment_12();
@@ -17207,16 +17292,16 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group_7__0"
-    // InternalCompleteOCL.g:5228:1: rule__DefOperationCS__Group_7__0 : rule__DefOperationCS__Group_7__0__Impl rule__DefOperationCS__Group_7__1 ;
+    // InternalCompleteOCL.g:5256:1: rule__DefOperationCS__Group_7__0 : rule__DefOperationCS__Group_7__0__Impl rule__DefOperationCS__Group_7__1 ;
     public final void rule__DefOperationCS__Group_7__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5232:1: ( rule__DefOperationCS__Group_7__0__Impl rule__DefOperationCS__Group_7__1 )
-            // InternalCompleteOCL.g:5233:2: rule__DefOperationCS__Group_7__0__Impl rule__DefOperationCS__Group_7__1
+            // InternalCompleteOCL.g:5260:1: ( rule__DefOperationCS__Group_7__0__Impl rule__DefOperationCS__Group_7__1 )
+            // InternalCompleteOCL.g:5261:2: rule__DefOperationCS__Group_7__0__Impl rule__DefOperationCS__Group_7__1
             {
-            pushFollow(FollowSets000.FOLLOW_18);
+            pushFollow(FollowSets000.FOLLOW_19);
             rule__DefOperationCS__Group_7__0__Impl();
 
             state._fsp--;
@@ -17245,23 +17330,23 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group_7__0__Impl"
-    // InternalCompleteOCL.g:5240:1: rule__DefOperationCS__Group_7__0__Impl : ( ( rule__DefOperationCS__OwnedParametersAssignment_7_0 ) ) ;
+    // InternalCompleteOCL.g:5268:1: rule__DefOperationCS__Group_7__0__Impl : ( ( rule__DefOperationCS__OwnedParametersAssignment_7_0 ) ) ;
     public final void rule__DefOperationCS__Group_7__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5244:1: ( ( ( rule__DefOperationCS__OwnedParametersAssignment_7_0 ) ) )
-            // InternalCompleteOCL.g:5245:1: ( ( rule__DefOperationCS__OwnedParametersAssignment_7_0 ) )
+            // InternalCompleteOCL.g:5272:1: ( ( ( rule__DefOperationCS__OwnedParametersAssignment_7_0 ) ) )
+            // InternalCompleteOCL.g:5273:1: ( ( rule__DefOperationCS__OwnedParametersAssignment_7_0 ) )
             {
-            // InternalCompleteOCL.g:5245:1: ( ( rule__DefOperationCS__OwnedParametersAssignment_7_0 ) )
-            // InternalCompleteOCL.g:5246:1: ( rule__DefOperationCS__OwnedParametersAssignment_7_0 )
+            // InternalCompleteOCL.g:5273:1: ( ( rule__DefOperationCS__OwnedParametersAssignment_7_0 ) )
+            // InternalCompleteOCL.g:5274:1: ( rule__DefOperationCS__OwnedParametersAssignment_7_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getOwnedParametersAssignment_7_0());
             }
-            // InternalCompleteOCL.g:5247:1: ( rule__DefOperationCS__OwnedParametersAssignment_7_0 )
-            // InternalCompleteOCL.g:5247:2: rule__DefOperationCS__OwnedParametersAssignment_7_0
+            // InternalCompleteOCL.g:5275:1: ( rule__DefOperationCS__OwnedParametersAssignment_7_0 )
+            // InternalCompleteOCL.g:5275:2: rule__DefOperationCS__OwnedParametersAssignment_7_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefOperationCS__OwnedParametersAssignment_7_0();
@@ -17296,14 +17381,14 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group_7__1"
-    // InternalCompleteOCL.g:5257:1: rule__DefOperationCS__Group_7__1 : rule__DefOperationCS__Group_7__1__Impl ;
+    // InternalCompleteOCL.g:5285:1: rule__DefOperationCS__Group_7__1 : rule__DefOperationCS__Group_7__1__Impl ;
     public final void rule__DefOperationCS__Group_7__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5261:1: ( rule__DefOperationCS__Group_7__1__Impl )
-            // InternalCompleteOCL.g:5262:2: rule__DefOperationCS__Group_7__1__Impl
+            // InternalCompleteOCL.g:5289:1: ( rule__DefOperationCS__Group_7__1__Impl )
+            // InternalCompleteOCL.g:5290:2: rule__DefOperationCS__Group_7__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefOperationCS__Group_7__1__Impl();
@@ -17329,22 +17414,22 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group_7__1__Impl"
-    // InternalCompleteOCL.g:5268:1: rule__DefOperationCS__Group_7__1__Impl : ( ( rule__DefOperationCS__Group_7_1__0 )* ) ;
+    // InternalCompleteOCL.g:5296:1: rule__DefOperationCS__Group_7__1__Impl : ( ( rule__DefOperationCS__Group_7_1__0 )* ) ;
     public final void rule__DefOperationCS__Group_7__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5272:1: ( ( ( rule__DefOperationCS__Group_7_1__0 )* ) )
-            // InternalCompleteOCL.g:5273:1: ( ( rule__DefOperationCS__Group_7_1__0 )* )
+            // InternalCompleteOCL.g:5300:1: ( ( ( rule__DefOperationCS__Group_7_1__0 )* ) )
+            // InternalCompleteOCL.g:5301:1: ( ( rule__DefOperationCS__Group_7_1__0 )* )
             {
-            // InternalCompleteOCL.g:5273:1: ( ( rule__DefOperationCS__Group_7_1__0 )* )
-            // InternalCompleteOCL.g:5274:1: ( rule__DefOperationCS__Group_7_1__0 )*
+            // InternalCompleteOCL.g:5301:1: ( ( rule__DefOperationCS__Group_7_1__0 )* )
+            // InternalCompleteOCL.g:5302:1: ( rule__DefOperationCS__Group_7_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getGroup_7_1());
             }
-            // InternalCompleteOCL.g:5275:1: ( rule__DefOperationCS__Group_7_1__0 )*
+            // InternalCompleteOCL.g:5303:1: ( rule__DefOperationCS__Group_7_1__0 )*
             loop58:
             do {
                 int alt58=2;
@@ -17357,9 +17442,9 @@
 
                 switch (alt58) {
             	case 1 :
-            	    // InternalCompleteOCL.g:5275:2: rule__DefOperationCS__Group_7_1__0
+            	    // InternalCompleteOCL.g:5303:2: rule__DefOperationCS__Group_7_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__DefOperationCS__Group_7_1__0();
 
             	    state._fsp--;
@@ -17398,16 +17483,16 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group_7_1__0"
-    // InternalCompleteOCL.g:5289:1: rule__DefOperationCS__Group_7_1__0 : rule__DefOperationCS__Group_7_1__0__Impl rule__DefOperationCS__Group_7_1__1 ;
+    // InternalCompleteOCL.g:5317:1: rule__DefOperationCS__Group_7_1__0 : rule__DefOperationCS__Group_7_1__0__Impl rule__DefOperationCS__Group_7_1__1 ;
     public final void rule__DefOperationCS__Group_7_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5293:1: ( rule__DefOperationCS__Group_7_1__0__Impl rule__DefOperationCS__Group_7_1__1 )
-            // InternalCompleteOCL.g:5294:2: rule__DefOperationCS__Group_7_1__0__Impl rule__DefOperationCS__Group_7_1__1
+            // InternalCompleteOCL.g:5321:1: ( rule__DefOperationCS__Group_7_1__0__Impl rule__DefOperationCS__Group_7_1__1 )
+            // InternalCompleteOCL.g:5322:2: rule__DefOperationCS__Group_7_1__0__Impl rule__DefOperationCS__Group_7_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__DefOperationCS__Group_7_1__0__Impl();
 
             state._fsp--;
@@ -17436,17 +17521,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group_7_1__0__Impl"
-    // InternalCompleteOCL.g:5301:1: rule__DefOperationCS__Group_7_1__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:5329:1: rule__DefOperationCS__Group_7_1__0__Impl : ( ',' ) ;
     public final void rule__DefOperationCS__Group_7_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5305:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:5306:1: ( ',' )
+            // InternalCompleteOCL.g:5333:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:5334:1: ( ',' )
             {
-            // InternalCompleteOCL.g:5306:1: ( ',' )
-            // InternalCompleteOCL.g:5307:1: ','
+            // InternalCompleteOCL.g:5334:1: ( ',' )
+            // InternalCompleteOCL.g:5335:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getCommaKeyword_7_1_0());
@@ -17477,14 +17562,14 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group_7_1__1"
-    // InternalCompleteOCL.g:5320:1: rule__DefOperationCS__Group_7_1__1 : rule__DefOperationCS__Group_7_1__1__Impl ;
+    // InternalCompleteOCL.g:5348:1: rule__DefOperationCS__Group_7_1__1 : rule__DefOperationCS__Group_7_1__1__Impl ;
     public final void rule__DefOperationCS__Group_7_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5324:1: ( rule__DefOperationCS__Group_7_1__1__Impl )
-            // InternalCompleteOCL.g:5325:2: rule__DefOperationCS__Group_7_1__1__Impl
+            // InternalCompleteOCL.g:5352:1: ( rule__DefOperationCS__Group_7_1__1__Impl )
+            // InternalCompleteOCL.g:5353:2: rule__DefOperationCS__Group_7_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefOperationCS__Group_7_1__1__Impl();
@@ -17510,23 +17595,23 @@
 
 
     // $ANTLR start "rule__DefOperationCS__Group_7_1__1__Impl"
-    // InternalCompleteOCL.g:5331:1: rule__DefOperationCS__Group_7_1__1__Impl : ( ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 ) ) ;
+    // InternalCompleteOCL.g:5359:1: rule__DefOperationCS__Group_7_1__1__Impl : ( ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 ) ) ;
     public final void rule__DefOperationCS__Group_7_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5335:1: ( ( ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 ) ) )
-            // InternalCompleteOCL.g:5336:1: ( ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 ) )
+            // InternalCompleteOCL.g:5363:1: ( ( ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 ) ) )
+            // InternalCompleteOCL.g:5364:1: ( ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 ) )
             {
-            // InternalCompleteOCL.g:5336:1: ( ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 ) )
-            // InternalCompleteOCL.g:5337:1: ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 )
+            // InternalCompleteOCL.g:5364:1: ( ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 ) )
+            // InternalCompleteOCL.g:5365:1: ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getOwnedParametersAssignment_7_1_1());
             }
-            // InternalCompleteOCL.g:5338:1: ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 )
-            // InternalCompleteOCL.g:5338:2: rule__DefOperationCS__OwnedParametersAssignment_7_1_1
+            // InternalCompleteOCL.g:5366:1: ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 )
+            // InternalCompleteOCL.g:5366:2: rule__DefOperationCS__OwnedParametersAssignment_7_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefOperationCS__OwnedParametersAssignment_7_1_1();
@@ -17561,16 +17646,16 @@
 
 
     // $ANTLR start "rule__DefParameterCS__Group__0"
-    // InternalCompleteOCL.g:5352:1: rule__DefParameterCS__Group__0 : rule__DefParameterCS__Group__0__Impl rule__DefParameterCS__Group__1 ;
+    // InternalCompleteOCL.g:5380:1: rule__DefParameterCS__Group__0 : rule__DefParameterCS__Group__0__Impl rule__DefParameterCS__Group__1 ;
     public final void rule__DefParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5356:1: ( rule__DefParameterCS__Group__0__Impl rule__DefParameterCS__Group__1 )
-            // InternalCompleteOCL.g:5357:2: rule__DefParameterCS__Group__0__Impl rule__DefParameterCS__Group__1
+            // InternalCompleteOCL.g:5384:1: ( rule__DefParameterCS__Group__0__Impl rule__DefParameterCS__Group__1 )
+            // InternalCompleteOCL.g:5385:2: rule__DefParameterCS__Group__0__Impl rule__DefParameterCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_16);
+            pushFollow(FollowSets000.FOLLOW_17);
             rule__DefParameterCS__Group__0__Impl();
 
             state._fsp--;
@@ -17599,23 +17684,23 @@
 
 
     // $ANTLR start "rule__DefParameterCS__Group__0__Impl"
-    // InternalCompleteOCL.g:5364:1: rule__DefParameterCS__Group__0__Impl : ( ( rule__DefParameterCS__NameAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:5392:1: rule__DefParameterCS__Group__0__Impl : ( ( rule__DefParameterCS__NameAssignment_0 ) ) ;
     public final void rule__DefParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5368:1: ( ( ( rule__DefParameterCS__NameAssignment_0 ) ) )
-            // InternalCompleteOCL.g:5369:1: ( ( rule__DefParameterCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:5396:1: ( ( ( rule__DefParameterCS__NameAssignment_0 ) ) )
+            // InternalCompleteOCL.g:5397:1: ( ( rule__DefParameterCS__NameAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:5369:1: ( ( rule__DefParameterCS__NameAssignment_0 ) )
-            // InternalCompleteOCL.g:5370:1: ( rule__DefParameterCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:5397:1: ( ( rule__DefParameterCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:5398:1: ( rule__DefParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefParameterCSAccess().getNameAssignment_0());
             }
-            // InternalCompleteOCL.g:5371:1: ( rule__DefParameterCS__NameAssignment_0 )
-            // InternalCompleteOCL.g:5371:2: rule__DefParameterCS__NameAssignment_0
+            // InternalCompleteOCL.g:5399:1: ( rule__DefParameterCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:5399:2: rule__DefParameterCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefParameterCS__NameAssignment_0();
@@ -17650,16 +17735,16 @@
 
 
     // $ANTLR start "rule__DefParameterCS__Group__1"
-    // InternalCompleteOCL.g:5381:1: rule__DefParameterCS__Group__1 : rule__DefParameterCS__Group__1__Impl rule__DefParameterCS__Group__2 ;
+    // InternalCompleteOCL.g:5409:1: rule__DefParameterCS__Group__1 : rule__DefParameterCS__Group__1__Impl rule__DefParameterCS__Group__2 ;
     public final void rule__DefParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5385:1: ( rule__DefParameterCS__Group__1__Impl rule__DefParameterCS__Group__2 )
-            // InternalCompleteOCL.g:5386:2: rule__DefParameterCS__Group__1__Impl rule__DefParameterCS__Group__2
+            // InternalCompleteOCL.g:5413:1: ( rule__DefParameterCS__Group__1__Impl rule__DefParameterCS__Group__2 )
+            // InternalCompleteOCL.g:5414:2: rule__DefParameterCS__Group__1__Impl rule__DefParameterCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__DefParameterCS__Group__1__Impl();
 
             state._fsp--;
@@ -17688,17 +17773,17 @@
 
 
     // $ANTLR start "rule__DefParameterCS__Group__1__Impl"
-    // InternalCompleteOCL.g:5393:1: rule__DefParameterCS__Group__1__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:5421:1: rule__DefParameterCS__Group__1__Impl : ( ':' ) ;
     public final void rule__DefParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5397:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:5398:1: ( ':' )
+            // InternalCompleteOCL.g:5425:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:5426:1: ( ':' )
             {
-            // InternalCompleteOCL.g:5398:1: ( ':' )
-            // InternalCompleteOCL.g:5399:1: ':'
+            // InternalCompleteOCL.g:5426:1: ( ':' )
+            // InternalCompleteOCL.g:5427:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefParameterCSAccess().getColonKeyword_1());
@@ -17729,14 +17814,14 @@
 
 
     // $ANTLR start "rule__DefParameterCS__Group__2"
-    // InternalCompleteOCL.g:5412:1: rule__DefParameterCS__Group__2 : rule__DefParameterCS__Group__2__Impl ;
+    // InternalCompleteOCL.g:5440:1: rule__DefParameterCS__Group__2 : rule__DefParameterCS__Group__2__Impl ;
     public final void rule__DefParameterCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5416:1: ( rule__DefParameterCS__Group__2__Impl )
-            // InternalCompleteOCL.g:5417:2: rule__DefParameterCS__Group__2__Impl
+            // InternalCompleteOCL.g:5444:1: ( rule__DefParameterCS__Group__2__Impl )
+            // InternalCompleteOCL.g:5445:2: rule__DefParameterCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefParameterCS__Group__2__Impl();
@@ -17762,23 +17847,23 @@
 
 
     // $ANTLR start "rule__DefParameterCS__Group__2__Impl"
-    // InternalCompleteOCL.g:5423:1: rule__DefParameterCS__Group__2__Impl : ( ( rule__DefParameterCS__OwnedTypeAssignment_2 ) ) ;
+    // InternalCompleteOCL.g:5451:1: rule__DefParameterCS__Group__2__Impl : ( ( rule__DefParameterCS__OwnedTypeAssignment_2 ) ) ;
     public final void rule__DefParameterCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5427:1: ( ( ( rule__DefParameterCS__OwnedTypeAssignment_2 ) ) )
-            // InternalCompleteOCL.g:5428:1: ( ( rule__DefParameterCS__OwnedTypeAssignment_2 ) )
+            // InternalCompleteOCL.g:5455:1: ( ( ( rule__DefParameterCS__OwnedTypeAssignment_2 ) ) )
+            // InternalCompleteOCL.g:5456:1: ( ( rule__DefParameterCS__OwnedTypeAssignment_2 ) )
             {
-            // InternalCompleteOCL.g:5428:1: ( ( rule__DefParameterCS__OwnedTypeAssignment_2 ) )
-            // InternalCompleteOCL.g:5429:1: ( rule__DefParameterCS__OwnedTypeAssignment_2 )
+            // InternalCompleteOCL.g:5456:1: ( ( rule__DefParameterCS__OwnedTypeAssignment_2 ) )
+            // InternalCompleteOCL.g:5457:1: ( rule__DefParameterCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefParameterCSAccess().getOwnedTypeAssignment_2());
             }
-            // InternalCompleteOCL.g:5430:1: ( rule__DefParameterCS__OwnedTypeAssignment_2 )
-            // InternalCompleteOCL.g:5430:2: rule__DefParameterCS__OwnedTypeAssignment_2
+            // InternalCompleteOCL.g:5458:1: ( rule__DefParameterCS__OwnedTypeAssignment_2 )
+            // InternalCompleteOCL.g:5458:2: rule__DefParameterCS__OwnedTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefParameterCS__OwnedTypeAssignment_2();
@@ -17813,14 +17898,14 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__0"
-    // InternalCompleteOCL.g:5446:1: rule__DefPropertyCS__Group__0 : rule__DefPropertyCS__Group__0__Impl rule__DefPropertyCS__Group__1 ;
+    // InternalCompleteOCL.g:5474:1: rule__DefPropertyCS__Group__0 : rule__DefPropertyCS__Group__0__Impl rule__DefPropertyCS__Group__1 ;
     public final void rule__DefPropertyCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5450:1: ( rule__DefPropertyCS__Group__0__Impl rule__DefPropertyCS__Group__1 )
-            // InternalCompleteOCL.g:5451:2: rule__DefPropertyCS__Group__0__Impl rule__DefPropertyCS__Group__1
+            // InternalCompleteOCL.g:5478:1: ( rule__DefPropertyCS__Group__0__Impl rule__DefPropertyCS__Group__1 )
+            // InternalCompleteOCL.g:5479:2: rule__DefPropertyCS__Group__0__Impl rule__DefPropertyCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_8);
             rule__DefPropertyCS__Group__0__Impl();
@@ -17851,22 +17936,22 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__0__Impl"
-    // InternalCompleteOCL.g:5458:1: rule__DefPropertyCS__Group__0__Impl : ( ( rule__DefPropertyCS__IsStaticAssignment_0 )? ) ;
+    // InternalCompleteOCL.g:5486:1: rule__DefPropertyCS__Group__0__Impl : ( ( rule__DefPropertyCS__IsStaticAssignment_0 )? ) ;
     public final void rule__DefPropertyCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5462:1: ( ( ( rule__DefPropertyCS__IsStaticAssignment_0 )? ) )
-            // InternalCompleteOCL.g:5463:1: ( ( rule__DefPropertyCS__IsStaticAssignment_0 )? )
+            // InternalCompleteOCL.g:5490:1: ( ( ( rule__DefPropertyCS__IsStaticAssignment_0 )? ) )
+            // InternalCompleteOCL.g:5491:1: ( ( rule__DefPropertyCS__IsStaticAssignment_0 )? )
             {
-            // InternalCompleteOCL.g:5463:1: ( ( rule__DefPropertyCS__IsStaticAssignment_0 )? )
-            // InternalCompleteOCL.g:5464:1: ( rule__DefPropertyCS__IsStaticAssignment_0 )?
+            // InternalCompleteOCL.g:5491:1: ( ( rule__DefPropertyCS__IsStaticAssignment_0 )? )
+            // InternalCompleteOCL.g:5492:1: ( rule__DefPropertyCS__IsStaticAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getIsStaticAssignment_0());
             }
-            // InternalCompleteOCL.g:5465:1: ( rule__DefPropertyCS__IsStaticAssignment_0 )?
+            // InternalCompleteOCL.g:5493:1: ( rule__DefPropertyCS__IsStaticAssignment_0 )?
             int alt59=2;
             int LA59_0 = input.LA(1);
 
@@ -17875,7 +17960,7 @@
             }
             switch (alt59) {
                 case 1 :
-                    // InternalCompleteOCL.g:5465:2: rule__DefPropertyCS__IsStaticAssignment_0
+                    // InternalCompleteOCL.g:5493:2: rule__DefPropertyCS__IsStaticAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DefPropertyCS__IsStaticAssignment_0();
@@ -17913,14 +17998,14 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__1"
-    // InternalCompleteOCL.g:5475:1: rule__DefPropertyCS__Group__1 : rule__DefPropertyCS__Group__1__Impl rule__DefPropertyCS__Group__2 ;
+    // InternalCompleteOCL.g:5503:1: rule__DefPropertyCS__Group__1 : rule__DefPropertyCS__Group__1__Impl rule__DefPropertyCS__Group__2 ;
     public final void rule__DefPropertyCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5479:1: ( rule__DefPropertyCS__Group__1__Impl rule__DefPropertyCS__Group__2 )
-            // InternalCompleteOCL.g:5480:2: rule__DefPropertyCS__Group__1__Impl rule__DefPropertyCS__Group__2
+            // InternalCompleteOCL.g:5507:1: ( rule__DefPropertyCS__Group__1__Impl rule__DefPropertyCS__Group__2 )
+            // InternalCompleteOCL.g:5508:2: rule__DefPropertyCS__Group__1__Impl rule__DefPropertyCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__DefPropertyCS__Group__1__Impl();
@@ -17951,17 +18036,17 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__1__Impl"
-    // InternalCompleteOCL.g:5487:1: rule__DefPropertyCS__Group__1__Impl : ( 'def' ) ;
+    // InternalCompleteOCL.g:5515:1: rule__DefPropertyCS__Group__1__Impl : ( 'def' ) ;
     public final void rule__DefPropertyCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5491:1: ( ( 'def' ) )
-            // InternalCompleteOCL.g:5492:1: ( 'def' )
+            // InternalCompleteOCL.g:5519:1: ( ( 'def' ) )
+            // InternalCompleteOCL.g:5520:1: ( 'def' )
             {
-            // InternalCompleteOCL.g:5492:1: ( 'def' )
-            // InternalCompleteOCL.g:5493:1: 'def'
+            // InternalCompleteOCL.g:5520:1: ( 'def' )
+            // InternalCompleteOCL.g:5521:1: 'def'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getDefKeyword_1());
@@ -17992,14 +18077,14 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__2"
-    // InternalCompleteOCL.g:5506:1: rule__DefPropertyCS__Group__2 : rule__DefPropertyCS__Group__2__Impl rule__DefPropertyCS__Group__3 ;
+    // InternalCompleteOCL.g:5534:1: rule__DefPropertyCS__Group__2 : rule__DefPropertyCS__Group__2__Impl rule__DefPropertyCS__Group__3 ;
     public final void rule__DefPropertyCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5510:1: ( rule__DefPropertyCS__Group__2__Impl rule__DefPropertyCS__Group__3 )
-            // InternalCompleteOCL.g:5511:2: rule__DefPropertyCS__Group__2__Impl rule__DefPropertyCS__Group__3
+            // InternalCompleteOCL.g:5538:1: ( rule__DefPropertyCS__Group__2__Impl rule__DefPropertyCS__Group__3 )
+            // InternalCompleteOCL.g:5539:2: rule__DefPropertyCS__Group__2__Impl rule__DefPropertyCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__DefPropertyCS__Group__2__Impl();
@@ -18030,22 +18115,22 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__2__Impl"
-    // InternalCompleteOCL.g:5518:1: rule__DefPropertyCS__Group__2__Impl : ( ( ruleUnrestrictedName )? ) ;
+    // InternalCompleteOCL.g:5546:1: rule__DefPropertyCS__Group__2__Impl : ( ( ruleUnrestrictedName )? ) ;
     public final void rule__DefPropertyCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5522:1: ( ( ( ruleUnrestrictedName )? ) )
-            // InternalCompleteOCL.g:5523:1: ( ( ruleUnrestrictedName )? )
+            // InternalCompleteOCL.g:5550:1: ( ( ( ruleUnrestrictedName )? ) )
+            // InternalCompleteOCL.g:5551:1: ( ( ruleUnrestrictedName )? )
             {
-            // InternalCompleteOCL.g:5523:1: ( ( ruleUnrestrictedName )? )
-            // InternalCompleteOCL.g:5524:1: ( ruleUnrestrictedName )?
+            // InternalCompleteOCL.g:5551:1: ( ( ruleUnrestrictedName )? )
+            // InternalCompleteOCL.g:5552:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getUnrestrictedNameParserRuleCall_2());
             }
-            // InternalCompleteOCL.g:5525:1: ( ruleUnrestrictedName )?
+            // InternalCompleteOCL.g:5553:1: ( ruleUnrestrictedName )?
             int alt60=2;
             int LA60_0 = input.LA(1);
 
@@ -18054,7 +18139,7 @@
             }
             switch (alt60) {
                 case 1 :
-                    // InternalCompleteOCL.g:5525:3: ruleUnrestrictedName
+                    // InternalCompleteOCL.g:5553:3: ruleUnrestrictedName
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -18092,16 +18177,16 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__3"
-    // InternalCompleteOCL.g:5535:1: rule__DefPropertyCS__Group__3 : rule__DefPropertyCS__Group__3__Impl rule__DefPropertyCS__Group__4 ;
+    // InternalCompleteOCL.g:5563:1: rule__DefPropertyCS__Group__3 : rule__DefPropertyCS__Group__3__Impl rule__DefPropertyCS__Group__4 ;
     public final void rule__DefPropertyCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5539:1: ( rule__DefPropertyCS__Group__3__Impl rule__DefPropertyCS__Group__4 )
-            // InternalCompleteOCL.g:5540:2: rule__DefPropertyCS__Group__3__Impl rule__DefPropertyCS__Group__4
+            // InternalCompleteOCL.g:5567:1: ( rule__DefPropertyCS__Group__3__Impl rule__DefPropertyCS__Group__4 )
+            // InternalCompleteOCL.g:5568:2: rule__DefPropertyCS__Group__3__Impl rule__DefPropertyCS__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__DefPropertyCS__Group__3__Impl();
 
             state._fsp--;
@@ -18130,17 +18215,17 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__3__Impl"
-    // InternalCompleteOCL.g:5547:1: rule__DefPropertyCS__Group__3__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:5575:1: rule__DefPropertyCS__Group__3__Impl : ( ':' ) ;
     public final void rule__DefPropertyCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5551:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:5552:1: ( ':' )
+            // InternalCompleteOCL.g:5579:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:5580:1: ( ':' )
             {
-            // InternalCompleteOCL.g:5552:1: ( ':' )
-            // InternalCompleteOCL.g:5553:1: ':'
+            // InternalCompleteOCL.g:5580:1: ( ':' )
+            // InternalCompleteOCL.g:5581:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getColonKeyword_3());
@@ -18171,16 +18256,16 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__4"
-    // InternalCompleteOCL.g:5566:1: rule__DefPropertyCS__Group__4 : rule__DefPropertyCS__Group__4__Impl rule__DefPropertyCS__Group__5 ;
+    // InternalCompleteOCL.g:5594:1: rule__DefPropertyCS__Group__4 : rule__DefPropertyCS__Group__4__Impl rule__DefPropertyCS__Group__5 ;
     public final void rule__DefPropertyCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5570:1: ( rule__DefPropertyCS__Group__4__Impl rule__DefPropertyCS__Group__5 )
-            // InternalCompleteOCL.g:5571:2: rule__DefPropertyCS__Group__4__Impl rule__DefPropertyCS__Group__5
+            // InternalCompleteOCL.g:5598:1: ( rule__DefPropertyCS__Group__4__Impl rule__DefPropertyCS__Group__5 )
+            // InternalCompleteOCL.g:5599:2: rule__DefPropertyCS__Group__4__Impl rule__DefPropertyCS__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_16);
+            pushFollow(FollowSets000.FOLLOW_17);
             rule__DefPropertyCS__Group__4__Impl();
 
             state._fsp--;
@@ -18209,23 +18294,23 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__4__Impl"
-    // InternalCompleteOCL.g:5578:1: rule__DefPropertyCS__Group__4__Impl : ( ( rule__DefPropertyCS__NameAssignment_4 ) ) ;
+    // InternalCompleteOCL.g:5606:1: rule__DefPropertyCS__Group__4__Impl : ( ( rule__DefPropertyCS__NameAssignment_4 ) ) ;
     public final void rule__DefPropertyCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5582:1: ( ( ( rule__DefPropertyCS__NameAssignment_4 ) ) )
-            // InternalCompleteOCL.g:5583:1: ( ( rule__DefPropertyCS__NameAssignment_4 ) )
+            // InternalCompleteOCL.g:5610:1: ( ( ( rule__DefPropertyCS__NameAssignment_4 ) ) )
+            // InternalCompleteOCL.g:5611:1: ( ( rule__DefPropertyCS__NameAssignment_4 ) )
             {
-            // InternalCompleteOCL.g:5583:1: ( ( rule__DefPropertyCS__NameAssignment_4 ) )
-            // InternalCompleteOCL.g:5584:1: ( rule__DefPropertyCS__NameAssignment_4 )
+            // InternalCompleteOCL.g:5611:1: ( ( rule__DefPropertyCS__NameAssignment_4 ) )
+            // InternalCompleteOCL.g:5612:1: ( rule__DefPropertyCS__NameAssignment_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getNameAssignment_4());
             }
-            // InternalCompleteOCL.g:5585:1: ( rule__DefPropertyCS__NameAssignment_4 )
-            // InternalCompleteOCL.g:5585:2: rule__DefPropertyCS__NameAssignment_4
+            // InternalCompleteOCL.g:5613:1: ( rule__DefPropertyCS__NameAssignment_4 )
+            // InternalCompleteOCL.g:5613:2: rule__DefPropertyCS__NameAssignment_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefPropertyCS__NameAssignment_4();
@@ -18260,16 +18345,16 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__5"
-    // InternalCompleteOCL.g:5595:1: rule__DefPropertyCS__Group__5 : rule__DefPropertyCS__Group__5__Impl rule__DefPropertyCS__Group__6 ;
+    // InternalCompleteOCL.g:5623:1: rule__DefPropertyCS__Group__5 : rule__DefPropertyCS__Group__5__Impl rule__DefPropertyCS__Group__6 ;
     public final void rule__DefPropertyCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5599:1: ( rule__DefPropertyCS__Group__5__Impl rule__DefPropertyCS__Group__6 )
-            // InternalCompleteOCL.g:5600:2: rule__DefPropertyCS__Group__5__Impl rule__DefPropertyCS__Group__6
+            // InternalCompleteOCL.g:5627:1: ( rule__DefPropertyCS__Group__5__Impl rule__DefPropertyCS__Group__6 )
+            // InternalCompleteOCL.g:5628:2: rule__DefPropertyCS__Group__5__Impl rule__DefPropertyCS__Group__6
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__DefPropertyCS__Group__5__Impl();
 
             state._fsp--;
@@ -18298,17 +18383,17 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__5__Impl"
-    // InternalCompleteOCL.g:5607:1: rule__DefPropertyCS__Group__5__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:5635:1: rule__DefPropertyCS__Group__5__Impl : ( ':' ) ;
     public final void rule__DefPropertyCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5611:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:5612:1: ( ':' )
+            // InternalCompleteOCL.g:5639:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:5640:1: ( ':' )
             {
-            // InternalCompleteOCL.g:5612:1: ( ':' )
-            // InternalCompleteOCL.g:5613:1: ':'
+            // InternalCompleteOCL.g:5640:1: ( ':' )
+            // InternalCompleteOCL.g:5641:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getColonKeyword_5());
@@ -18339,16 +18424,16 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__6"
-    // InternalCompleteOCL.g:5626:1: rule__DefPropertyCS__Group__6 : rule__DefPropertyCS__Group__6__Impl rule__DefPropertyCS__Group__7 ;
+    // InternalCompleteOCL.g:5654:1: rule__DefPropertyCS__Group__6 : rule__DefPropertyCS__Group__6__Impl rule__DefPropertyCS__Group__7 ;
     public final void rule__DefPropertyCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5630:1: ( rule__DefPropertyCS__Group__6__Impl rule__DefPropertyCS__Group__7 )
-            // InternalCompleteOCL.g:5631:2: rule__DefPropertyCS__Group__6__Impl rule__DefPropertyCS__Group__7
+            // InternalCompleteOCL.g:5658:1: ( rule__DefPropertyCS__Group__6__Impl rule__DefPropertyCS__Group__7 )
+            // InternalCompleteOCL.g:5659:2: rule__DefPropertyCS__Group__6__Impl rule__DefPropertyCS__Group__7
             {
-            pushFollow(FollowSets000.FOLLOW_22);
+            pushFollow(FollowSets000.FOLLOW_23);
             rule__DefPropertyCS__Group__6__Impl();
 
             state._fsp--;
@@ -18377,23 +18462,23 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__6__Impl"
-    // InternalCompleteOCL.g:5638:1: rule__DefPropertyCS__Group__6__Impl : ( ( rule__DefPropertyCS__OwnedTypeAssignment_6 ) ) ;
+    // InternalCompleteOCL.g:5666:1: rule__DefPropertyCS__Group__6__Impl : ( ( rule__DefPropertyCS__OwnedTypeAssignment_6 ) ) ;
     public final void rule__DefPropertyCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5642:1: ( ( ( rule__DefPropertyCS__OwnedTypeAssignment_6 ) ) )
-            // InternalCompleteOCL.g:5643:1: ( ( rule__DefPropertyCS__OwnedTypeAssignment_6 ) )
+            // InternalCompleteOCL.g:5670:1: ( ( ( rule__DefPropertyCS__OwnedTypeAssignment_6 ) ) )
+            // InternalCompleteOCL.g:5671:1: ( ( rule__DefPropertyCS__OwnedTypeAssignment_6 ) )
             {
-            // InternalCompleteOCL.g:5643:1: ( ( rule__DefPropertyCS__OwnedTypeAssignment_6 ) )
-            // InternalCompleteOCL.g:5644:1: ( rule__DefPropertyCS__OwnedTypeAssignment_6 )
+            // InternalCompleteOCL.g:5671:1: ( ( rule__DefPropertyCS__OwnedTypeAssignment_6 ) )
+            // InternalCompleteOCL.g:5672:1: ( rule__DefPropertyCS__OwnedTypeAssignment_6 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getOwnedTypeAssignment_6());
             }
-            // InternalCompleteOCL.g:5645:1: ( rule__DefPropertyCS__OwnedTypeAssignment_6 )
-            // InternalCompleteOCL.g:5645:2: rule__DefPropertyCS__OwnedTypeAssignment_6
+            // InternalCompleteOCL.g:5673:1: ( rule__DefPropertyCS__OwnedTypeAssignment_6 )
+            // InternalCompleteOCL.g:5673:2: rule__DefPropertyCS__OwnedTypeAssignment_6
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefPropertyCS__OwnedTypeAssignment_6();
@@ -18428,14 +18513,14 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__7"
-    // InternalCompleteOCL.g:5655:1: rule__DefPropertyCS__Group__7 : rule__DefPropertyCS__Group__7__Impl rule__DefPropertyCS__Group__8 ;
+    // InternalCompleteOCL.g:5683:1: rule__DefPropertyCS__Group__7 : rule__DefPropertyCS__Group__7__Impl rule__DefPropertyCS__Group__8 ;
     public final void rule__DefPropertyCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5659:1: ( rule__DefPropertyCS__Group__7__Impl rule__DefPropertyCS__Group__8 )
-            // InternalCompleteOCL.g:5660:2: rule__DefPropertyCS__Group__7__Impl rule__DefPropertyCS__Group__8
+            // InternalCompleteOCL.g:5687:1: ( rule__DefPropertyCS__Group__7__Impl rule__DefPropertyCS__Group__8 )
+            // InternalCompleteOCL.g:5688:2: rule__DefPropertyCS__Group__7__Impl rule__DefPropertyCS__Group__8
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__DefPropertyCS__Group__7__Impl();
@@ -18466,17 +18551,17 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__7__Impl"
-    // InternalCompleteOCL.g:5667:1: rule__DefPropertyCS__Group__7__Impl : ( '=' ) ;
+    // InternalCompleteOCL.g:5695:1: rule__DefPropertyCS__Group__7__Impl : ( '=' ) ;
     public final void rule__DefPropertyCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5671:1: ( ( '=' ) )
-            // InternalCompleteOCL.g:5672:1: ( '=' )
+            // InternalCompleteOCL.g:5699:1: ( ( '=' ) )
+            // InternalCompleteOCL.g:5700:1: ( '=' )
             {
-            // InternalCompleteOCL.g:5672:1: ( '=' )
-            // InternalCompleteOCL.g:5673:1: '='
+            // InternalCompleteOCL.g:5700:1: ( '=' )
+            // InternalCompleteOCL.g:5701:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getEqualsSignKeyword_7());
@@ -18507,14 +18592,14 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__8"
-    // InternalCompleteOCL.g:5686:1: rule__DefPropertyCS__Group__8 : rule__DefPropertyCS__Group__8__Impl ;
+    // InternalCompleteOCL.g:5714:1: rule__DefPropertyCS__Group__8 : rule__DefPropertyCS__Group__8__Impl ;
     public final void rule__DefPropertyCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5690:1: ( rule__DefPropertyCS__Group__8__Impl )
-            // InternalCompleteOCL.g:5691:2: rule__DefPropertyCS__Group__8__Impl
+            // InternalCompleteOCL.g:5718:1: ( rule__DefPropertyCS__Group__8__Impl )
+            // InternalCompleteOCL.g:5719:2: rule__DefPropertyCS__Group__8__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefPropertyCS__Group__8__Impl();
@@ -18540,23 +18625,23 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__Group__8__Impl"
-    // InternalCompleteOCL.g:5697:1: rule__DefPropertyCS__Group__8__Impl : ( ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 ) ) ;
+    // InternalCompleteOCL.g:5725:1: rule__DefPropertyCS__Group__8__Impl : ( ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 ) ) ;
     public final void rule__DefPropertyCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5701:1: ( ( ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 ) ) )
-            // InternalCompleteOCL.g:5702:1: ( ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 ) )
+            // InternalCompleteOCL.g:5729:1: ( ( ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 ) ) )
+            // InternalCompleteOCL.g:5730:1: ( ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 ) )
             {
-            // InternalCompleteOCL.g:5702:1: ( ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 ) )
-            // InternalCompleteOCL.g:5703:1: ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 )
+            // InternalCompleteOCL.g:5730:1: ( ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 ) )
+            // InternalCompleteOCL.g:5731:1: ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationAssignment_8());
             }
-            // InternalCompleteOCL.g:5704:1: ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 )
-            // InternalCompleteOCL.g:5704:2: rule__DefPropertyCS__OwnedSpecificationAssignment_8
+            // InternalCompleteOCL.g:5732:1: ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 )
+            // InternalCompleteOCL.g:5732:2: rule__DefPropertyCS__OwnedSpecificationAssignment_8
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DefPropertyCS__OwnedSpecificationAssignment_8();
@@ -18591,16 +18676,16 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__0"
-    // InternalCompleteOCL.g:5732:1: rule__ImportCS__Group__0 : rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 ;
+    // InternalCompleteOCL.g:5760:1: rule__ImportCS__Group__0 : rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 ;
     public final void rule__ImportCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5736:1: ( rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 )
-            // InternalCompleteOCL.g:5737:2: rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1
+            // InternalCompleteOCL.g:5764:1: ( rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 )
+            // InternalCompleteOCL.g:5765:2: rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_23);
+            pushFollow(FollowSets000.FOLLOW_24);
             rule__ImportCS__Group__0__Impl();
 
             state._fsp--;
@@ -18629,23 +18714,23 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__0__Impl"
-    // InternalCompleteOCL.g:5744:1: rule__ImportCS__Group__0__Impl : ( ( rule__ImportCS__Alternatives_0 ) ) ;
+    // InternalCompleteOCL.g:5772:1: rule__ImportCS__Group__0__Impl : ( ( rule__ImportCS__Alternatives_0 ) ) ;
     public final void rule__ImportCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5748:1: ( ( ( rule__ImportCS__Alternatives_0 ) ) )
-            // InternalCompleteOCL.g:5749:1: ( ( rule__ImportCS__Alternatives_0 ) )
+            // InternalCompleteOCL.g:5776:1: ( ( ( rule__ImportCS__Alternatives_0 ) ) )
+            // InternalCompleteOCL.g:5777:1: ( ( rule__ImportCS__Alternatives_0 ) )
             {
-            // InternalCompleteOCL.g:5749:1: ( ( rule__ImportCS__Alternatives_0 ) )
-            // InternalCompleteOCL.g:5750:1: ( rule__ImportCS__Alternatives_0 )
+            // InternalCompleteOCL.g:5777:1: ( ( rule__ImportCS__Alternatives_0 ) )
+            // InternalCompleteOCL.g:5778:1: ( rule__ImportCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getAlternatives_0());
             }
-            // InternalCompleteOCL.g:5751:1: ( rule__ImportCS__Alternatives_0 )
-            // InternalCompleteOCL.g:5751:2: rule__ImportCS__Alternatives_0
+            // InternalCompleteOCL.g:5779:1: ( rule__ImportCS__Alternatives_0 )
+            // InternalCompleteOCL.g:5779:2: rule__ImportCS__Alternatives_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__Alternatives_0();
@@ -18680,16 +18765,16 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__1"
-    // InternalCompleteOCL.g:5761:1: rule__ImportCS__Group__1 : rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 ;
+    // InternalCompleteOCL.g:5789:1: rule__ImportCS__Group__1 : rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 ;
     public final void rule__ImportCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5765:1: ( rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 )
-            // InternalCompleteOCL.g:5766:2: rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2
+            // InternalCompleteOCL.g:5793:1: ( rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 )
+            // InternalCompleteOCL.g:5794:2: rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_23);
+            pushFollow(FollowSets000.FOLLOW_24);
             rule__ImportCS__Group__1__Impl();
 
             state._fsp--;
@@ -18718,22 +18803,22 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__1__Impl"
-    // InternalCompleteOCL.g:5773:1: rule__ImportCS__Group__1__Impl : ( ( rule__ImportCS__Group_1__0 )? ) ;
+    // InternalCompleteOCL.g:5801:1: rule__ImportCS__Group__1__Impl : ( ( rule__ImportCS__Group_1__0 )? ) ;
     public final void rule__ImportCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5777:1: ( ( ( rule__ImportCS__Group_1__0 )? ) )
-            // InternalCompleteOCL.g:5778:1: ( ( rule__ImportCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:5805:1: ( ( ( rule__ImportCS__Group_1__0 )? ) )
+            // InternalCompleteOCL.g:5806:1: ( ( rule__ImportCS__Group_1__0 )? )
             {
-            // InternalCompleteOCL.g:5778:1: ( ( rule__ImportCS__Group_1__0 )? )
-            // InternalCompleteOCL.g:5779:1: ( rule__ImportCS__Group_1__0 )?
+            // InternalCompleteOCL.g:5806:1: ( ( rule__ImportCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:5807:1: ( rule__ImportCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:5780:1: ( rule__ImportCS__Group_1__0 )?
+            // InternalCompleteOCL.g:5808:1: ( rule__ImportCS__Group_1__0 )?
             int alt61=2;
             int LA61_0 = input.LA(1);
 
@@ -18753,7 +18838,7 @@
             }
             switch (alt61) {
                 case 1 :
-                    // InternalCompleteOCL.g:5780:2: rule__ImportCS__Group_1__0
+                    // InternalCompleteOCL.g:5808:2: rule__ImportCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ImportCS__Group_1__0();
@@ -18791,16 +18876,16 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__2"
-    // InternalCompleteOCL.g:5790:1: rule__ImportCS__Group__2 : rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 ;
+    // InternalCompleteOCL.g:5818:1: rule__ImportCS__Group__2 : rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 ;
     public final void rule__ImportCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5794:1: ( rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 )
-            // InternalCompleteOCL.g:5795:2: rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3
+            // InternalCompleteOCL.g:5822:1: ( rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 )
+            // InternalCompleteOCL.g:5823:2: rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_24);
+            pushFollow(FollowSets000.FOLLOW_25);
             rule__ImportCS__Group__2__Impl();
 
             state._fsp--;
@@ -18829,23 +18914,23 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__2__Impl"
-    // InternalCompleteOCL.g:5802:1: rule__ImportCS__Group__2__Impl : ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) ;
+    // InternalCompleteOCL.g:5830:1: rule__ImportCS__Group__2__Impl : ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) ;
     public final void rule__ImportCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5806:1: ( ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) )
-            // InternalCompleteOCL.g:5807:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
+            // InternalCompleteOCL.g:5834:1: ( ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) )
+            // InternalCompleteOCL.g:5835:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
             {
-            // InternalCompleteOCL.g:5807:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
-            // InternalCompleteOCL.g:5808:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
+            // InternalCompleteOCL.g:5835:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
+            // InternalCompleteOCL.g:5836:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2());
             }
-            // InternalCompleteOCL.g:5809:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
-            // InternalCompleteOCL.g:5809:2: rule__ImportCS__OwnedPathNameAssignment_2
+            // InternalCompleteOCL.g:5837:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
+            // InternalCompleteOCL.g:5837:2: rule__ImportCS__OwnedPathNameAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__OwnedPathNameAssignment_2();
@@ -18880,14 +18965,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__3"
-    // InternalCompleteOCL.g:5819:1: rule__ImportCS__Group__3 : rule__ImportCS__Group__3__Impl ;
+    // InternalCompleteOCL.g:5847:1: rule__ImportCS__Group__3 : rule__ImportCS__Group__3__Impl ;
     public final void rule__ImportCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5823:1: ( rule__ImportCS__Group__3__Impl )
-            // InternalCompleteOCL.g:5824:2: rule__ImportCS__Group__3__Impl
+            // InternalCompleteOCL.g:5851:1: ( rule__ImportCS__Group__3__Impl )
+            // InternalCompleteOCL.g:5852:2: rule__ImportCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__Group__3__Impl();
@@ -18913,22 +18998,22 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__3__Impl"
-    // InternalCompleteOCL.g:5830:1: rule__ImportCS__Group__3__Impl : ( ( rule__ImportCS__IsAllAssignment_3 )? ) ;
+    // InternalCompleteOCL.g:5858:1: rule__ImportCS__Group__3__Impl : ( ( rule__ImportCS__IsAllAssignment_3 )? ) ;
     public final void rule__ImportCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5834:1: ( ( ( rule__ImportCS__IsAllAssignment_3 )? ) )
-            // InternalCompleteOCL.g:5835:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
+            // InternalCompleteOCL.g:5862:1: ( ( ( rule__ImportCS__IsAllAssignment_3 )? ) )
+            // InternalCompleteOCL.g:5863:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
             {
-            // InternalCompleteOCL.g:5835:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
-            // InternalCompleteOCL.g:5836:1: ( rule__ImportCS__IsAllAssignment_3 )?
+            // InternalCompleteOCL.g:5863:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
+            // InternalCompleteOCL.g:5864:1: ( rule__ImportCS__IsAllAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getIsAllAssignment_3());
             }
-            // InternalCompleteOCL.g:5837:1: ( rule__ImportCS__IsAllAssignment_3 )?
+            // InternalCompleteOCL.g:5865:1: ( rule__ImportCS__IsAllAssignment_3 )?
             int alt62=2;
             int LA62_0 = input.LA(1);
 
@@ -18937,7 +19022,7 @@
             }
             switch (alt62) {
                 case 1 :
-                    // InternalCompleteOCL.g:5837:2: rule__ImportCS__IsAllAssignment_3
+                    // InternalCompleteOCL.g:5865:2: rule__ImportCS__IsAllAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ImportCS__IsAllAssignment_3();
@@ -18975,16 +19060,16 @@
 
 
     // $ANTLR start "rule__ImportCS__Group_1__0"
-    // InternalCompleteOCL.g:5855:1: rule__ImportCS__Group_1__0 : rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 ;
+    // InternalCompleteOCL.g:5883:1: rule__ImportCS__Group_1__0 : rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 ;
     public final void rule__ImportCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5859:1: ( rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 )
-            // InternalCompleteOCL.g:5860:2: rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1
+            // InternalCompleteOCL.g:5887:1: ( rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 )
+            // InternalCompleteOCL.g:5888:2: rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_16);
+            pushFollow(FollowSets000.FOLLOW_17);
             rule__ImportCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -19013,23 +19098,23 @@
 
 
     // $ANTLR start "rule__ImportCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:5867:1: rule__ImportCS__Group_1__0__Impl : ( ( rule__ImportCS__NameAssignment_1_0 ) ) ;
+    // InternalCompleteOCL.g:5895:1: rule__ImportCS__Group_1__0__Impl : ( ( rule__ImportCS__NameAssignment_1_0 ) ) ;
     public final void rule__ImportCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5871:1: ( ( ( rule__ImportCS__NameAssignment_1_0 ) ) )
-            // InternalCompleteOCL.g:5872:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
+            // InternalCompleteOCL.g:5899:1: ( ( ( rule__ImportCS__NameAssignment_1_0 ) ) )
+            // InternalCompleteOCL.g:5900:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
             {
-            // InternalCompleteOCL.g:5872:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
-            // InternalCompleteOCL.g:5873:1: ( rule__ImportCS__NameAssignment_1_0 )
+            // InternalCompleteOCL.g:5900:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
+            // InternalCompleteOCL.g:5901:1: ( rule__ImportCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getNameAssignment_1_0());
             }
-            // InternalCompleteOCL.g:5874:1: ( rule__ImportCS__NameAssignment_1_0 )
-            // InternalCompleteOCL.g:5874:2: rule__ImportCS__NameAssignment_1_0
+            // InternalCompleteOCL.g:5902:1: ( rule__ImportCS__NameAssignment_1_0 )
+            // InternalCompleteOCL.g:5902:2: rule__ImportCS__NameAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__NameAssignment_1_0();
@@ -19064,14 +19149,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group_1__1"
-    // InternalCompleteOCL.g:5884:1: rule__ImportCS__Group_1__1 : rule__ImportCS__Group_1__1__Impl ;
+    // InternalCompleteOCL.g:5912:1: rule__ImportCS__Group_1__1 : rule__ImportCS__Group_1__1__Impl ;
     public final void rule__ImportCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5888:1: ( rule__ImportCS__Group_1__1__Impl )
-            // InternalCompleteOCL.g:5889:2: rule__ImportCS__Group_1__1__Impl
+            // InternalCompleteOCL.g:5916:1: ( rule__ImportCS__Group_1__1__Impl )
+            // InternalCompleteOCL.g:5917:2: rule__ImportCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__Group_1__1__Impl();
@@ -19097,17 +19182,17 @@
 
 
     // $ANTLR start "rule__ImportCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:5895:1: rule__ImportCS__Group_1__1__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:5923:1: rule__ImportCS__Group_1__1__Impl : ( ':' ) ;
     public final void rule__ImportCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5899:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:5900:1: ( ':' )
+            // InternalCompleteOCL.g:5927:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:5928:1: ( ':' )
             {
-            // InternalCompleteOCL.g:5900:1: ( ':' )
-            // InternalCompleteOCL.g:5901:1: ':'
+            // InternalCompleteOCL.g:5928:1: ( ':' )
+            // InternalCompleteOCL.g:5929:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getColonKeyword_1_1());
@@ -19138,14 +19223,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__0"
-    // InternalCompleteOCL.g:5918:1: rule__OperationContextDeclCS__Group__0 : rule__OperationContextDeclCS__Group__0__Impl rule__OperationContextDeclCS__Group__1 ;
+    // InternalCompleteOCL.g:5946:1: rule__OperationContextDeclCS__Group__0 : rule__OperationContextDeclCS__Group__0__Impl rule__OperationContextDeclCS__Group__1 ;
     public final void rule__OperationContextDeclCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5922:1: ( rule__OperationContextDeclCS__Group__0__Impl rule__OperationContextDeclCS__Group__1 )
-            // InternalCompleteOCL.g:5923:2: rule__OperationContextDeclCS__Group__0__Impl rule__OperationContextDeclCS__Group__1
+            // InternalCompleteOCL.g:5950:1: ( rule__OperationContextDeclCS__Group__0__Impl rule__OperationContextDeclCS__Group__1 )
+            // InternalCompleteOCL.g:5951:2: rule__OperationContextDeclCS__Group__0__Impl rule__OperationContextDeclCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__OperationContextDeclCS__Group__0__Impl();
@@ -19176,17 +19261,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__0__Impl"
-    // InternalCompleteOCL.g:5930:1: rule__OperationContextDeclCS__Group__0__Impl : ( 'context' ) ;
+    // InternalCompleteOCL.g:5958:1: rule__OperationContextDeclCS__Group__0__Impl : ( 'context' ) ;
     public final void rule__OperationContextDeclCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5934:1: ( ( 'context' ) )
-            // InternalCompleteOCL.g:5935:1: ( 'context' )
+            // InternalCompleteOCL.g:5962:1: ( ( 'context' ) )
+            // InternalCompleteOCL.g:5963:1: ( 'context' )
             {
-            // InternalCompleteOCL.g:5935:1: ( 'context' )
-            // InternalCompleteOCL.g:5936:1: 'context'
+            // InternalCompleteOCL.g:5963:1: ( 'context' )
+            // InternalCompleteOCL.g:5964:1: 'context'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getContextKeyword_0());
@@ -19217,14 +19302,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__1"
-    // InternalCompleteOCL.g:5949:1: rule__OperationContextDeclCS__Group__1 : rule__OperationContextDeclCS__Group__1__Impl rule__OperationContextDeclCS__Group__2 ;
+    // InternalCompleteOCL.g:5977:1: rule__OperationContextDeclCS__Group__1 : rule__OperationContextDeclCS__Group__1__Impl rule__OperationContextDeclCS__Group__2 ;
     public final void rule__OperationContextDeclCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5953:1: ( rule__OperationContextDeclCS__Group__1__Impl rule__OperationContextDeclCS__Group__2 )
-            // InternalCompleteOCL.g:5954:2: rule__OperationContextDeclCS__Group__1__Impl rule__OperationContextDeclCS__Group__2
+            // InternalCompleteOCL.g:5981:1: ( rule__OperationContextDeclCS__Group__1__Impl rule__OperationContextDeclCS__Group__2 )
+            // InternalCompleteOCL.g:5982:2: rule__OperationContextDeclCS__Group__1__Impl rule__OperationContextDeclCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__OperationContextDeclCS__Group__1__Impl();
@@ -19255,22 +19340,22 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__1__Impl"
-    // InternalCompleteOCL.g:5961:1: rule__OperationContextDeclCS__Group__1__Impl : ( ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )? ) ;
+    // InternalCompleteOCL.g:5989:1: rule__OperationContextDeclCS__Group__1__Impl : ( ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )? ) ;
     public final void rule__OperationContextDeclCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5965:1: ( ( ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )? ) )
-            // InternalCompleteOCL.g:5966:1: ( ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )? )
+            // InternalCompleteOCL.g:5993:1: ( ( ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )? ) )
+            // InternalCompleteOCL.g:5994:1: ( ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )? )
             {
-            // InternalCompleteOCL.g:5966:1: ( ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )? )
-            // InternalCompleteOCL.g:5967:1: ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )?
+            // InternalCompleteOCL.g:5994:1: ( ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )? )
+            // InternalCompleteOCL.g:5995:1: ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureAssignment_1());
             }
-            // InternalCompleteOCL.g:5968:1: ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )?
+            // InternalCompleteOCL.g:5996:1: ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )?
             int alt63=2;
             int LA63_0 = input.LA(1);
 
@@ -19279,7 +19364,7 @@
             }
             switch (alt63) {
                 case 1 :
-                    // InternalCompleteOCL.g:5968:2: rule__OperationContextDeclCS__OwnedSignatureAssignment_1
+                    // InternalCompleteOCL.g:5996:2: rule__OperationContextDeclCS__OwnedSignatureAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationContextDeclCS__OwnedSignatureAssignment_1();
@@ -19317,14 +19402,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__2"
-    // InternalCompleteOCL.g:5978:1: rule__OperationContextDeclCS__Group__2 : rule__OperationContextDeclCS__Group__2__Impl rule__OperationContextDeclCS__Group__3 ;
+    // InternalCompleteOCL.g:6006:1: rule__OperationContextDeclCS__Group__2 : rule__OperationContextDeclCS__Group__2__Impl rule__OperationContextDeclCS__Group__3 ;
     public final void rule__OperationContextDeclCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5982:1: ( rule__OperationContextDeclCS__Group__2__Impl rule__OperationContextDeclCS__Group__3 )
-            // InternalCompleteOCL.g:5983:2: rule__OperationContextDeclCS__Group__2__Impl rule__OperationContextDeclCS__Group__3
+            // InternalCompleteOCL.g:6010:1: ( rule__OperationContextDeclCS__Group__2__Impl rule__OperationContextDeclCS__Group__3 )
+            // InternalCompleteOCL.g:6011:2: rule__OperationContextDeclCS__Group__2__Impl rule__OperationContextDeclCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__OperationContextDeclCS__Group__2__Impl();
@@ -19355,23 +19440,23 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__2__Impl"
-    // InternalCompleteOCL.g:5990:1: rule__OperationContextDeclCS__Group__2__Impl : ( ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 ) ) ;
+    // InternalCompleteOCL.g:6018:1: rule__OperationContextDeclCS__Group__2__Impl : ( ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 ) ) ;
     public final void rule__OperationContextDeclCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:5994:1: ( ( ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 ) ) )
-            // InternalCompleteOCL.g:5995:1: ( ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 ) )
+            // InternalCompleteOCL.g:6022:1: ( ( ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 ) ) )
+            // InternalCompleteOCL.g:6023:1: ( ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 ) )
             {
-            // InternalCompleteOCL.g:5995:1: ( ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 ) )
-            // InternalCompleteOCL.g:5996:1: ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 )
+            // InternalCompleteOCL.g:6023:1: ( ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 ) )
+            // InternalCompleteOCL.g:6024:1: ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNameAssignment_2());
             }
-            // InternalCompleteOCL.g:5997:1: ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 )
-            // InternalCompleteOCL.g:5997:2: rule__OperationContextDeclCS__OwnedPathNameAssignment_2
+            // InternalCompleteOCL.g:6025:1: ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 )
+            // InternalCompleteOCL.g:6025:2: rule__OperationContextDeclCS__OwnedPathNameAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationContextDeclCS__OwnedPathNameAssignment_2();
@@ -19406,16 +19491,16 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__3"
-    // InternalCompleteOCL.g:6007:1: rule__OperationContextDeclCS__Group__3 : rule__OperationContextDeclCS__Group__3__Impl rule__OperationContextDeclCS__Group__4 ;
+    // InternalCompleteOCL.g:6035:1: rule__OperationContextDeclCS__Group__3 : rule__OperationContextDeclCS__Group__3__Impl rule__OperationContextDeclCS__Group__4 ;
     public final void rule__OperationContextDeclCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6011:1: ( rule__OperationContextDeclCS__Group__3__Impl rule__OperationContextDeclCS__Group__4 )
-            // InternalCompleteOCL.g:6012:2: rule__OperationContextDeclCS__Group__3__Impl rule__OperationContextDeclCS__Group__4
+            // InternalCompleteOCL.g:6039:1: ( rule__OperationContextDeclCS__Group__3__Impl rule__OperationContextDeclCS__Group__4 )
+            // InternalCompleteOCL.g:6040:2: rule__OperationContextDeclCS__Group__3__Impl rule__OperationContextDeclCS__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_25);
+            pushFollow(FollowSets000.FOLLOW_26);
             rule__OperationContextDeclCS__Group__3__Impl();
 
             state._fsp--;
@@ -19444,17 +19529,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__3__Impl"
-    // InternalCompleteOCL.g:6019:1: rule__OperationContextDeclCS__Group__3__Impl : ( '(' ) ;
+    // InternalCompleteOCL.g:6047:1: rule__OperationContextDeclCS__Group__3__Impl : ( '(' ) ;
     public final void rule__OperationContextDeclCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6023:1: ( ( '(' ) )
-            // InternalCompleteOCL.g:6024:1: ( '(' )
+            // InternalCompleteOCL.g:6051:1: ( ( '(' ) )
+            // InternalCompleteOCL.g:6052:1: ( '(' )
             {
-            // InternalCompleteOCL.g:6024:1: ( '(' )
-            // InternalCompleteOCL.g:6025:1: '('
+            // InternalCompleteOCL.g:6052:1: ( '(' )
+            // InternalCompleteOCL.g:6053:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getLeftParenthesisKeyword_3());
@@ -19485,16 +19570,16 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__4"
-    // InternalCompleteOCL.g:6038:1: rule__OperationContextDeclCS__Group__4 : rule__OperationContextDeclCS__Group__4__Impl rule__OperationContextDeclCS__Group__5 ;
+    // InternalCompleteOCL.g:6066:1: rule__OperationContextDeclCS__Group__4 : rule__OperationContextDeclCS__Group__4__Impl rule__OperationContextDeclCS__Group__5 ;
     public final void rule__OperationContextDeclCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6042:1: ( rule__OperationContextDeclCS__Group__4__Impl rule__OperationContextDeclCS__Group__5 )
-            // InternalCompleteOCL.g:6043:2: rule__OperationContextDeclCS__Group__4__Impl rule__OperationContextDeclCS__Group__5
+            // InternalCompleteOCL.g:6070:1: ( rule__OperationContextDeclCS__Group__4__Impl rule__OperationContextDeclCS__Group__5 )
+            // InternalCompleteOCL.g:6071:2: rule__OperationContextDeclCS__Group__4__Impl rule__OperationContextDeclCS__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_25);
+            pushFollow(FollowSets000.FOLLOW_26);
             rule__OperationContextDeclCS__Group__4__Impl();
 
             state._fsp--;
@@ -19523,22 +19608,22 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__4__Impl"
-    // InternalCompleteOCL.g:6050:1: rule__OperationContextDeclCS__Group__4__Impl : ( ( rule__OperationContextDeclCS__Group_4__0 )? ) ;
+    // InternalCompleteOCL.g:6078:1: rule__OperationContextDeclCS__Group__4__Impl : ( ( rule__OperationContextDeclCS__Group_4__0 )? ) ;
     public final void rule__OperationContextDeclCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6054:1: ( ( ( rule__OperationContextDeclCS__Group_4__0 )? ) )
-            // InternalCompleteOCL.g:6055:1: ( ( rule__OperationContextDeclCS__Group_4__0 )? )
+            // InternalCompleteOCL.g:6082:1: ( ( ( rule__OperationContextDeclCS__Group_4__0 )? ) )
+            // InternalCompleteOCL.g:6083:1: ( ( rule__OperationContextDeclCS__Group_4__0 )? )
             {
-            // InternalCompleteOCL.g:6055:1: ( ( rule__OperationContextDeclCS__Group_4__0 )? )
-            // InternalCompleteOCL.g:6056:1: ( rule__OperationContextDeclCS__Group_4__0 )?
+            // InternalCompleteOCL.g:6083:1: ( ( rule__OperationContextDeclCS__Group_4__0 )? )
+            // InternalCompleteOCL.g:6084:1: ( rule__OperationContextDeclCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getGroup_4());
             }
-            // InternalCompleteOCL.g:6057:1: ( rule__OperationContextDeclCS__Group_4__0 )?
+            // InternalCompleteOCL.g:6085:1: ( rule__OperationContextDeclCS__Group_4__0 )?
             int alt64=2;
             int LA64_0 = input.LA(1);
 
@@ -19547,7 +19632,7 @@
             }
             switch (alt64) {
                 case 1 :
-                    // InternalCompleteOCL.g:6057:2: rule__OperationContextDeclCS__Group_4__0
+                    // InternalCompleteOCL.g:6085:2: rule__OperationContextDeclCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationContextDeclCS__Group_4__0();
@@ -19585,16 +19670,16 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__5"
-    // InternalCompleteOCL.g:6067:1: rule__OperationContextDeclCS__Group__5 : rule__OperationContextDeclCS__Group__5__Impl rule__OperationContextDeclCS__Group__6 ;
+    // InternalCompleteOCL.g:6095:1: rule__OperationContextDeclCS__Group__5 : rule__OperationContextDeclCS__Group__5__Impl rule__OperationContextDeclCS__Group__6 ;
     public final void rule__OperationContextDeclCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6071:1: ( rule__OperationContextDeclCS__Group__5__Impl rule__OperationContextDeclCS__Group__6 )
-            // InternalCompleteOCL.g:6072:2: rule__OperationContextDeclCS__Group__5__Impl rule__OperationContextDeclCS__Group__6
+            // InternalCompleteOCL.g:6099:1: ( rule__OperationContextDeclCS__Group__5__Impl rule__OperationContextDeclCS__Group__6 )
+            // InternalCompleteOCL.g:6100:2: rule__OperationContextDeclCS__Group__5__Impl rule__OperationContextDeclCS__Group__6
             {
-            pushFollow(FollowSets000.FOLLOW_16);
+            pushFollow(FollowSets000.FOLLOW_17);
             rule__OperationContextDeclCS__Group__5__Impl();
 
             state._fsp--;
@@ -19623,17 +19708,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__5__Impl"
-    // InternalCompleteOCL.g:6079:1: rule__OperationContextDeclCS__Group__5__Impl : ( ')' ) ;
+    // InternalCompleteOCL.g:6107:1: rule__OperationContextDeclCS__Group__5__Impl : ( ')' ) ;
     public final void rule__OperationContextDeclCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6083:1: ( ( ')' ) )
-            // InternalCompleteOCL.g:6084:1: ( ')' )
+            // InternalCompleteOCL.g:6111:1: ( ( ')' ) )
+            // InternalCompleteOCL.g:6112:1: ( ')' )
             {
-            // InternalCompleteOCL.g:6084:1: ( ')' )
-            // InternalCompleteOCL.g:6085:1: ')'
+            // InternalCompleteOCL.g:6112:1: ( ')' )
+            // InternalCompleteOCL.g:6113:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getRightParenthesisKeyword_5());
@@ -19664,16 +19749,16 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__6"
-    // InternalCompleteOCL.g:6098:1: rule__OperationContextDeclCS__Group__6 : rule__OperationContextDeclCS__Group__6__Impl rule__OperationContextDeclCS__Group__7 ;
+    // InternalCompleteOCL.g:6126:1: rule__OperationContextDeclCS__Group__6 : rule__OperationContextDeclCS__Group__6__Impl rule__OperationContextDeclCS__Group__7 ;
     public final void rule__OperationContextDeclCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6102:1: ( rule__OperationContextDeclCS__Group__6__Impl rule__OperationContextDeclCS__Group__7 )
-            // InternalCompleteOCL.g:6103:2: rule__OperationContextDeclCS__Group__6__Impl rule__OperationContextDeclCS__Group__7
+            // InternalCompleteOCL.g:6130:1: ( rule__OperationContextDeclCS__Group__6__Impl rule__OperationContextDeclCS__Group__7 )
+            // InternalCompleteOCL.g:6131:2: rule__OperationContextDeclCS__Group__6__Impl rule__OperationContextDeclCS__Group__7
             {
-            pushFollow(FollowSets000.FOLLOW_26);
+            pushFollow(FollowSets000.FOLLOW_27);
             rule__OperationContextDeclCS__Group__6__Impl();
 
             state._fsp--;
@@ -19702,17 +19787,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__6__Impl"
-    // InternalCompleteOCL.g:6110:1: rule__OperationContextDeclCS__Group__6__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:6138:1: rule__OperationContextDeclCS__Group__6__Impl : ( ':' ) ;
     public final void rule__OperationContextDeclCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6114:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:6115:1: ( ':' )
+            // InternalCompleteOCL.g:6142:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:6143:1: ( ':' )
             {
-            // InternalCompleteOCL.g:6115:1: ( ':' )
-            // InternalCompleteOCL.g:6116:1: ':'
+            // InternalCompleteOCL.g:6143:1: ( ':' )
+            // InternalCompleteOCL.g:6144:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_6());
@@ -19743,16 +19828,16 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__7"
-    // InternalCompleteOCL.g:6129:1: rule__OperationContextDeclCS__Group__7 : rule__OperationContextDeclCS__Group__7__Impl rule__OperationContextDeclCS__Group__8 ;
+    // InternalCompleteOCL.g:6157:1: rule__OperationContextDeclCS__Group__7 : rule__OperationContextDeclCS__Group__7__Impl rule__OperationContextDeclCS__Group__8 ;
     public final void rule__OperationContextDeclCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6133:1: ( rule__OperationContextDeclCS__Group__7__Impl rule__OperationContextDeclCS__Group__8 )
-            // InternalCompleteOCL.g:6134:2: rule__OperationContextDeclCS__Group__7__Impl rule__OperationContextDeclCS__Group__8
+            // InternalCompleteOCL.g:6161:1: ( rule__OperationContextDeclCS__Group__7__Impl rule__OperationContextDeclCS__Group__8 )
+            // InternalCompleteOCL.g:6162:2: rule__OperationContextDeclCS__Group__7__Impl rule__OperationContextDeclCS__Group__8
             {
-            pushFollow(FollowSets000.FOLLOW_26);
+            pushFollow(FollowSets000.FOLLOW_27);
             rule__OperationContextDeclCS__Group__7__Impl();
 
             state._fsp--;
@@ -19781,22 +19866,22 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__7__Impl"
-    // InternalCompleteOCL.g:6141:1: rule__OperationContextDeclCS__Group__7__Impl : ( ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )? ) ;
+    // InternalCompleteOCL.g:6169:1: rule__OperationContextDeclCS__Group__7__Impl : ( ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )? ) ;
     public final void rule__OperationContextDeclCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6145:1: ( ( ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )? ) )
-            // InternalCompleteOCL.g:6146:1: ( ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )? )
+            // InternalCompleteOCL.g:6173:1: ( ( ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )? ) )
+            // InternalCompleteOCL.g:6174:1: ( ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )? )
             {
-            // InternalCompleteOCL.g:6146:1: ( ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )? )
-            // InternalCompleteOCL.g:6147:1: ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )?
+            // InternalCompleteOCL.g:6174:1: ( ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )? )
+            // InternalCompleteOCL.g:6175:1: ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeAssignment_7());
             }
-            // InternalCompleteOCL.g:6148:1: ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )?
+            // InternalCompleteOCL.g:6176:1: ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )?
             int alt65=2;
             int LA65_0 = input.LA(1);
 
@@ -19805,7 +19890,7 @@
             }
             switch (alt65) {
                 case 1 :
-                    // InternalCompleteOCL.g:6148:2: rule__OperationContextDeclCS__OwnedTypeAssignment_7
+                    // InternalCompleteOCL.g:6176:2: rule__OperationContextDeclCS__OwnedTypeAssignment_7
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationContextDeclCS__OwnedTypeAssignment_7();
@@ -19843,14 +19928,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__8"
-    // InternalCompleteOCL.g:6158:1: rule__OperationContextDeclCS__Group__8 : rule__OperationContextDeclCS__Group__8__Impl ;
+    // InternalCompleteOCL.g:6186:1: rule__OperationContextDeclCS__Group__8 : rule__OperationContextDeclCS__Group__8__Impl ;
     public final void rule__OperationContextDeclCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6162:1: ( rule__OperationContextDeclCS__Group__8__Impl )
-            // InternalCompleteOCL.g:6163:2: rule__OperationContextDeclCS__Group__8__Impl
+            // InternalCompleteOCL.g:6190:1: ( rule__OperationContextDeclCS__Group__8__Impl )
+            // InternalCompleteOCL.g:6191:2: rule__OperationContextDeclCS__Group__8__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationContextDeclCS__Group__8__Impl();
@@ -19876,22 +19961,22 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group__8__Impl"
-    // InternalCompleteOCL.g:6169:1: rule__OperationContextDeclCS__Group__8__Impl : ( ( rule__OperationContextDeclCS__Alternatives_8 )* ) ;
+    // InternalCompleteOCL.g:6197:1: rule__OperationContextDeclCS__Group__8__Impl : ( ( rule__OperationContextDeclCS__Alternatives_8 )* ) ;
     public final void rule__OperationContextDeclCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6173:1: ( ( ( rule__OperationContextDeclCS__Alternatives_8 )* ) )
-            // InternalCompleteOCL.g:6174:1: ( ( rule__OperationContextDeclCS__Alternatives_8 )* )
+            // InternalCompleteOCL.g:6201:1: ( ( ( rule__OperationContextDeclCS__Alternatives_8 )* ) )
+            // InternalCompleteOCL.g:6202:1: ( ( rule__OperationContextDeclCS__Alternatives_8 )* )
             {
-            // InternalCompleteOCL.g:6174:1: ( ( rule__OperationContextDeclCS__Alternatives_8 )* )
-            // InternalCompleteOCL.g:6175:1: ( rule__OperationContextDeclCS__Alternatives_8 )*
+            // InternalCompleteOCL.g:6202:1: ( ( rule__OperationContextDeclCS__Alternatives_8 )* )
+            // InternalCompleteOCL.g:6203:1: ( rule__OperationContextDeclCS__Alternatives_8 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getAlternatives_8());
             }
-            // InternalCompleteOCL.g:6176:1: ( rule__OperationContextDeclCS__Alternatives_8 )*
+            // InternalCompleteOCL.g:6204:1: ( rule__OperationContextDeclCS__Alternatives_8 )*
             loop66:
             do {
                 int alt66=2;
@@ -19904,9 +19989,9 @@
 
                 switch (alt66) {
             	case 1 :
-            	    // InternalCompleteOCL.g:6176:2: rule__OperationContextDeclCS__Alternatives_8
+            	    // InternalCompleteOCL.g:6204:2: rule__OperationContextDeclCS__Alternatives_8
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_27);
+            	    pushFollow(FollowSets000.FOLLOW_28);
             	    rule__OperationContextDeclCS__Alternatives_8();
 
             	    state._fsp--;
@@ -19945,16 +20030,16 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_4__0"
-    // InternalCompleteOCL.g:6204:1: rule__OperationContextDeclCS__Group_4__0 : rule__OperationContextDeclCS__Group_4__0__Impl rule__OperationContextDeclCS__Group_4__1 ;
+    // InternalCompleteOCL.g:6232:1: rule__OperationContextDeclCS__Group_4__0 : rule__OperationContextDeclCS__Group_4__0__Impl rule__OperationContextDeclCS__Group_4__1 ;
     public final void rule__OperationContextDeclCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6208:1: ( rule__OperationContextDeclCS__Group_4__0__Impl rule__OperationContextDeclCS__Group_4__1 )
-            // InternalCompleteOCL.g:6209:2: rule__OperationContextDeclCS__Group_4__0__Impl rule__OperationContextDeclCS__Group_4__1
+            // InternalCompleteOCL.g:6236:1: ( rule__OperationContextDeclCS__Group_4__0__Impl rule__OperationContextDeclCS__Group_4__1 )
+            // InternalCompleteOCL.g:6237:2: rule__OperationContextDeclCS__Group_4__0__Impl rule__OperationContextDeclCS__Group_4__1
             {
-            pushFollow(FollowSets000.FOLLOW_18);
+            pushFollow(FollowSets000.FOLLOW_19);
             rule__OperationContextDeclCS__Group_4__0__Impl();
 
             state._fsp--;
@@ -19983,23 +20068,23 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_4__0__Impl"
-    // InternalCompleteOCL.g:6216:1: rule__OperationContextDeclCS__Group_4__0__Impl : ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 ) ) ;
+    // InternalCompleteOCL.g:6244:1: rule__OperationContextDeclCS__Group_4__0__Impl : ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 ) ) ;
     public final void rule__OperationContextDeclCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6220:1: ( ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 ) ) )
-            // InternalCompleteOCL.g:6221:1: ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 ) )
+            // InternalCompleteOCL.g:6248:1: ( ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 ) ) )
+            // InternalCompleteOCL.g:6249:1: ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 ) )
             {
-            // InternalCompleteOCL.g:6221:1: ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 ) )
-            // InternalCompleteOCL.g:6222:1: ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 )
+            // InternalCompleteOCL.g:6249:1: ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 ) )
+            // InternalCompleteOCL.g:6250:1: ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersAssignment_4_0());
             }
-            // InternalCompleteOCL.g:6223:1: ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 )
-            // InternalCompleteOCL.g:6223:2: rule__OperationContextDeclCS__OwnedParametersAssignment_4_0
+            // InternalCompleteOCL.g:6251:1: ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 )
+            // InternalCompleteOCL.g:6251:2: rule__OperationContextDeclCS__OwnedParametersAssignment_4_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationContextDeclCS__OwnedParametersAssignment_4_0();
@@ -20034,14 +20119,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_4__1"
-    // InternalCompleteOCL.g:6233:1: rule__OperationContextDeclCS__Group_4__1 : rule__OperationContextDeclCS__Group_4__1__Impl ;
+    // InternalCompleteOCL.g:6261:1: rule__OperationContextDeclCS__Group_4__1 : rule__OperationContextDeclCS__Group_4__1__Impl ;
     public final void rule__OperationContextDeclCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6237:1: ( rule__OperationContextDeclCS__Group_4__1__Impl )
-            // InternalCompleteOCL.g:6238:2: rule__OperationContextDeclCS__Group_4__1__Impl
+            // InternalCompleteOCL.g:6265:1: ( rule__OperationContextDeclCS__Group_4__1__Impl )
+            // InternalCompleteOCL.g:6266:2: rule__OperationContextDeclCS__Group_4__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationContextDeclCS__Group_4__1__Impl();
@@ -20067,22 +20152,22 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_4__1__Impl"
-    // InternalCompleteOCL.g:6244:1: rule__OperationContextDeclCS__Group_4__1__Impl : ( ( rule__OperationContextDeclCS__Group_4_1__0 )* ) ;
+    // InternalCompleteOCL.g:6272:1: rule__OperationContextDeclCS__Group_4__1__Impl : ( ( rule__OperationContextDeclCS__Group_4_1__0 )* ) ;
     public final void rule__OperationContextDeclCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6248:1: ( ( ( rule__OperationContextDeclCS__Group_4_1__0 )* ) )
-            // InternalCompleteOCL.g:6249:1: ( ( rule__OperationContextDeclCS__Group_4_1__0 )* )
+            // InternalCompleteOCL.g:6276:1: ( ( ( rule__OperationContextDeclCS__Group_4_1__0 )* ) )
+            // InternalCompleteOCL.g:6277:1: ( ( rule__OperationContextDeclCS__Group_4_1__0 )* )
             {
-            // InternalCompleteOCL.g:6249:1: ( ( rule__OperationContextDeclCS__Group_4_1__0 )* )
-            // InternalCompleteOCL.g:6250:1: ( rule__OperationContextDeclCS__Group_4_1__0 )*
+            // InternalCompleteOCL.g:6277:1: ( ( rule__OperationContextDeclCS__Group_4_1__0 )* )
+            // InternalCompleteOCL.g:6278:1: ( rule__OperationContextDeclCS__Group_4_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getGroup_4_1());
             }
-            // InternalCompleteOCL.g:6251:1: ( rule__OperationContextDeclCS__Group_4_1__0 )*
+            // InternalCompleteOCL.g:6279:1: ( rule__OperationContextDeclCS__Group_4_1__0 )*
             loop67:
             do {
                 int alt67=2;
@@ -20095,9 +20180,9 @@
 
                 switch (alt67) {
             	case 1 :
-            	    // InternalCompleteOCL.g:6251:2: rule__OperationContextDeclCS__Group_4_1__0
+            	    // InternalCompleteOCL.g:6279:2: rule__OperationContextDeclCS__Group_4_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__OperationContextDeclCS__Group_4_1__0();
 
             	    state._fsp--;
@@ -20136,16 +20221,16 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_4_1__0"
-    // InternalCompleteOCL.g:6265:1: rule__OperationContextDeclCS__Group_4_1__0 : rule__OperationContextDeclCS__Group_4_1__0__Impl rule__OperationContextDeclCS__Group_4_1__1 ;
+    // InternalCompleteOCL.g:6293:1: rule__OperationContextDeclCS__Group_4_1__0 : rule__OperationContextDeclCS__Group_4_1__0__Impl rule__OperationContextDeclCS__Group_4_1__1 ;
     public final void rule__OperationContextDeclCS__Group_4_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6269:1: ( rule__OperationContextDeclCS__Group_4_1__0__Impl rule__OperationContextDeclCS__Group_4_1__1 )
-            // InternalCompleteOCL.g:6270:2: rule__OperationContextDeclCS__Group_4_1__0__Impl rule__OperationContextDeclCS__Group_4_1__1
+            // InternalCompleteOCL.g:6297:1: ( rule__OperationContextDeclCS__Group_4_1__0__Impl rule__OperationContextDeclCS__Group_4_1__1 )
+            // InternalCompleteOCL.g:6298:2: rule__OperationContextDeclCS__Group_4_1__0__Impl rule__OperationContextDeclCS__Group_4_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__OperationContextDeclCS__Group_4_1__0__Impl();
 
             state._fsp--;
@@ -20174,17 +20259,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_4_1__0__Impl"
-    // InternalCompleteOCL.g:6277:1: rule__OperationContextDeclCS__Group_4_1__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:6305:1: rule__OperationContextDeclCS__Group_4_1__0__Impl : ( ',' ) ;
     public final void rule__OperationContextDeclCS__Group_4_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6281:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:6282:1: ( ',' )
+            // InternalCompleteOCL.g:6309:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:6310:1: ( ',' )
             {
-            // InternalCompleteOCL.g:6282:1: ( ',' )
-            // InternalCompleteOCL.g:6283:1: ','
+            // InternalCompleteOCL.g:6310:1: ( ',' )
+            // InternalCompleteOCL.g:6311:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getCommaKeyword_4_1_0());
@@ -20215,14 +20300,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_4_1__1"
-    // InternalCompleteOCL.g:6296:1: rule__OperationContextDeclCS__Group_4_1__1 : rule__OperationContextDeclCS__Group_4_1__1__Impl ;
+    // InternalCompleteOCL.g:6324:1: rule__OperationContextDeclCS__Group_4_1__1 : rule__OperationContextDeclCS__Group_4_1__1__Impl ;
     public final void rule__OperationContextDeclCS__Group_4_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6300:1: ( rule__OperationContextDeclCS__Group_4_1__1__Impl )
-            // InternalCompleteOCL.g:6301:2: rule__OperationContextDeclCS__Group_4_1__1__Impl
+            // InternalCompleteOCL.g:6328:1: ( rule__OperationContextDeclCS__Group_4_1__1__Impl )
+            // InternalCompleteOCL.g:6329:2: rule__OperationContextDeclCS__Group_4_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationContextDeclCS__Group_4_1__1__Impl();
@@ -20248,23 +20333,23 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_4_1__1__Impl"
-    // InternalCompleteOCL.g:6307:1: rule__OperationContextDeclCS__Group_4_1__1__Impl : ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 ) ) ;
+    // InternalCompleteOCL.g:6335:1: rule__OperationContextDeclCS__Group_4_1__1__Impl : ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 ) ) ;
     public final void rule__OperationContextDeclCS__Group_4_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6311:1: ( ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 ) ) )
-            // InternalCompleteOCL.g:6312:1: ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 ) )
+            // InternalCompleteOCL.g:6339:1: ( ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 ) ) )
+            // InternalCompleteOCL.g:6340:1: ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 ) )
             {
-            // InternalCompleteOCL.g:6312:1: ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 ) )
-            // InternalCompleteOCL.g:6313:1: ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 )
+            // InternalCompleteOCL.g:6340:1: ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 ) )
+            // InternalCompleteOCL.g:6341:1: ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersAssignment_4_1_1());
             }
-            // InternalCompleteOCL.g:6314:1: ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 )
-            // InternalCompleteOCL.g:6314:2: rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1
+            // InternalCompleteOCL.g:6342:1: ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 )
+            // InternalCompleteOCL.g:6342:2: rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1();
@@ -20299,14 +20384,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_0__0"
-    // InternalCompleteOCL.g:6328:1: rule__OperationContextDeclCS__Group_8_0__0 : rule__OperationContextDeclCS__Group_8_0__0__Impl rule__OperationContextDeclCS__Group_8_0__1 ;
+    // InternalCompleteOCL.g:6356:1: rule__OperationContextDeclCS__Group_8_0__0 : rule__OperationContextDeclCS__Group_8_0__0__Impl rule__OperationContextDeclCS__Group_8_0__1 ;
     public final void rule__OperationContextDeclCS__Group_8_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6332:1: ( rule__OperationContextDeclCS__Group_8_0__0__Impl rule__OperationContextDeclCS__Group_8_0__1 )
-            // InternalCompleteOCL.g:6333:2: rule__OperationContextDeclCS__Group_8_0__0__Impl rule__OperationContextDeclCS__Group_8_0__1
+            // InternalCompleteOCL.g:6360:1: ( rule__OperationContextDeclCS__Group_8_0__0__Impl rule__OperationContextDeclCS__Group_8_0__1 )
+            // InternalCompleteOCL.g:6361:2: rule__OperationContextDeclCS__Group_8_0__0__Impl rule__OperationContextDeclCS__Group_8_0__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__OperationContextDeclCS__Group_8_0__0__Impl();
@@ -20337,17 +20422,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_0__0__Impl"
-    // InternalCompleteOCL.g:6340:1: rule__OperationContextDeclCS__Group_8_0__0__Impl : ( 'pre' ) ;
+    // InternalCompleteOCL.g:6368:1: rule__OperationContextDeclCS__Group_8_0__0__Impl : ( 'pre' ) ;
     public final void rule__OperationContextDeclCS__Group_8_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6344:1: ( ( 'pre' ) )
-            // InternalCompleteOCL.g:6345:1: ( 'pre' )
+            // InternalCompleteOCL.g:6372:1: ( ( 'pre' ) )
+            // InternalCompleteOCL.g:6373:1: ( 'pre' )
             {
-            // InternalCompleteOCL.g:6345:1: ( 'pre' )
-            // InternalCompleteOCL.g:6346:1: 'pre'
+            // InternalCompleteOCL.g:6373:1: ( 'pre' )
+            // InternalCompleteOCL.g:6374:1: 'pre'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getPreKeyword_8_0_0());
@@ -20378,14 +20463,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_0__1"
-    // InternalCompleteOCL.g:6359:1: rule__OperationContextDeclCS__Group_8_0__1 : rule__OperationContextDeclCS__Group_8_0__1__Impl ;
+    // InternalCompleteOCL.g:6387:1: rule__OperationContextDeclCS__Group_8_0__1 : rule__OperationContextDeclCS__Group_8_0__1__Impl ;
     public final void rule__OperationContextDeclCS__Group_8_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6363:1: ( rule__OperationContextDeclCS__Group_8_0__1__Impl )
-            // InternalCompleteOCL.g:6364:2: rule__OperationContextDeclCS__Group_8_0__1__Impl
+            // InternalCompleteOCL.g:6391:1: ( rule__OperationContextDeclCS__Group_8_0__1__Impl )
+            // InternalCompleteOCL.g:6392:2: rule__OperationContextDeclCS__Group_8_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationContextDeclCS__Group_8_0__1__Impl();
@@ -20411,23 +20496,23 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_0__1__Impl"
-    // InternalCompleteOCL.g:6370:1: rule__OperationContextDeclCS__Group_8_0__1__Impl : ( ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 ) ) ;
+    // InternalCompleteOCL.g:6398:1: rule__OperationContextDeclCS__Group_8_0__1__Impl : ( ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 ) ) ;
     public final void rule__OperationContextDeclCS__Group_8_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6374:1: ( ( ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 ) ) )
-            // InternalCompleteOCL.g:6375:1: ( ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 ) )
+            // InternalCompleteOCL.g:6402:1: ( ( ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 ) ) )
+            // InternalCompleteOCL.g:6403:1: ( ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 ) )
             {
-            // InternalCompleteOCL.g:6375:1: ( ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 ) )
-            // InternalCompleteOCL.g:6376:1: ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 )
+            // InternalCompleteOCL.g:6403:1: ( ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 ) )
+            // InternalCompleteOCL.g:6404:1: ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsAssignment_8_0_1());
             }
-            // InternalCompleteOCL.g:6377:1: ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 )
-            // InternalCompleteOCL.g:6377:2: rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1
+            // InternalCompleteOCL.g:6405:1: ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 )
+            // InternalCompleteOCL.g:6405:2: rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1();
@@ -20462,14 +20547,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_1__0"
-    // InternalCompleteOCL.g:6391:1: rule__OperationContextDeclCS__Group_8_1__0 : rule__OperationContextDeclCS__Group_8_1__0__Impl rule__OperationContextDeclCS__Group_8_1__1 ;
+    // InternalCompleteOCL.g:6419:1: rule__OperationContextDeclCS__Group_8_1__0 : rule__OperationContextDeclCS__Group_8_1__0__Impl rule__OperationContextDeclCS__Group_8_1__1 ;
     public final void rule__OperationContextDeclCS__Group_8_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6395:1: ( rule__OperationContextDeclCS__Group_8_1__0__Impl rule__OperationContextDeclCS__Group_8_1__1 )
-            // InternalCompleteOCL.g:6396:2: rule__OperationContextDeclCS__Group_8_1__0__Impl rule__OperationContextDeclCS__Group_8_1__1
+            // InternalCompleteOCL.g:6423:1: ( rule__OperationContextDeclCS__Group_8_1__0__Impl rule__OperationContextDeclCS__Group_8_1__1 )
+            // InternalCompleteOCL.g:6424:2: rule__OperationContextDeclCS__Group_8_1__0__Impl rule__OperationContextDeclCS__Group_8_1__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__OperationContextDeclCS__Group_8_1__0__Impl();
@@ -20500,17 +20585,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_1__0__Impl"
-    // InternalCompleteOCL.g:6403:1: rule__OperationContextDeclCS__Group_8_1__0__Impl : ( 'post' ) ;
+    // InternalCompleteOCL.g:6431:1: rule__OperationContextDeclCS__Group_8_1__0__Impl : ( 'post' ) ;
     public final void rule__OperationContextDeclCS__Group_8_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6407:1: ( ( 'post' ) )
-            // InternalCompleteOCL.g:6408:1: ( 'post' )
+            // InternalCompleteOCL.g:6435:1: ( ( 'post' ) )
+            // InternalCompleteOCL.g:6436:1: ( 'post' )
             {
-            // InternalCompleteOCL.g:6408:1: ( 'post' )
-            // InternalCompleteOCL.g:6409:1: 'post'
+            // InternalCompleteOCL.g:6436:1: ( 'post' )
+            // InternalCompleteOCL.g:6437:1: 'post'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getPostKeyword_8_1_0());
@@ -20541,14 +20626,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_1__1"
-    // InternalCompleteOCL.g:6422:1: rule__OperationContextDeclCS__Group_8_1__1 : rule__OperationContextDeclCS__Group_8_1__1__Impl ;
+    // InternalCompleteOCL.g:6450:1: rule__OperationContextDeclCS__Group_8_1__1 : rule__OperationContextDeclCS__Group_8_1__1__Impl ;
     public final void rule__OperationContextDeclCS__Group_8_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6426:1: ( rule__OperationContextDeclCS__Group_8_1__1__Impl )
-            // InternalCompleteOCL.g:6427:2: rule__OperationContextDeclCS__Group_8_1__1__Impl
+            // InternalCompleteOCL.g:6454:1: ( rule__OperationContextDeclCS__Group_8_1__1__Impl )
+            // InternalCompleteOCL.g:6455:2: rule__OperationContextDeclCS__Group_8_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationContextDeclCS__Group_8_1__1__Impl();
@@ -20574,23 +20659,23 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_1__1__Impl"
-    // InternalCompleteOCL.g:6433:1: rule__OperationContextDeclCS__Group_8_1__1__Impl : ( ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 ) ) ;
+    // InternalCompleteOCL.g:6461:1: rule__OperationContextDeclCS__Group_8_1__1__Impl : ( ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 ) ) ;
     public final void rule__OperationContextDeclCS__Group_8_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6437:1: ( ( ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 ) ) )
-            // InternalCompleteOCL.g:6438:1: ( ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 ) )
+            // InternalCompleteOCL.g:6465:1: ( ( ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 ) ) )
+            // InternalCompleteOCL.g:6466:1: ( ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 ) )
             {
-            // InternalCompleteOCL.g:6438:1: ( ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 ) )
-            // InternalCompleteOCL.g:6439:1: ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 )
+            // InternalCompleteOCL.g:6466:1: ( ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 ) )
+            // InternalCompleteOCL.g:6467:1: ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsAssignment_8_1_1());
             }
-            // InternalCompleteOCL.g:6440:1: ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 )
-            // InternalCompleteOCL.g:6440:2: rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1
+            // InternalCompleteOCL.g:6468:1: ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 )
+            // InternalCompleteOCL.g:6468:2: rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1();
@@ -20625,14 +20710,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_2__0"
-    // InternalCompleteOCL.g:6454:1: rule__OperationContextDeclCS__Group_8_2__0 : rule__OperationContextDeclCS__Group_8_2__0__Impl rule__OperationContextDeclCS__Group_8_2__1 ;
+    // InternalCompleteOCL.g:6482:1: rule__OperationContextDeclCS__Group_8_2__0 : rule__OperationContextDeclCS__Group_8_2__0__Impl rule__OperationContextDeclCS__Group_8_2__1 ;
     public final void rule__OperationContextDeclCS__Group_8_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6458:1: ( rule__OperationContextDeclCS__Group_8_2__0__Impl rule__OperationContextDeclCS__Group_8_2__1 )
-            // InternalCompleteOCL.g:6459:2: rule__OperationContextDeclCS__Group_8_2__0__Impl rule__OperationContextDeclCS__Group_8_2__1
+            // InternalCompleteOCL.g:6486:1: ( rule__OperationContextDeclCS__Group_8_2__0__Impl rule__OperationContextDeclCS__Group_8_2__1 )
+            // InternalCompleteOCL.g:6487:2: rule__OperationContextDeclCS__Group_8_2__0__Impl rule__OperationContextDeclCS__Group_8_2__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__OperationContextDeclCS__Group_8_2__0__Impl();
@@ -20663,17 +20748,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_2__0__Impl"
-    // InternalCompleteOCL.g:6466:1: rule__OperationContextDeclCS__Group_8_2__0__Impl : ( 'body' ) ;
+    // InternalCompleteOCL.g:6494:1: rule__OperationContextDeclCS__Group_8_2__0__Impl : ( 'body' ) ;
     public final void rule__OperationContextDeclCS__Group_8_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6470:1: ( ( 'body' ) )
-            // InternalCompleteOCL.g:6471:1: ( 'body' )
+            // InternalCompleteOCL.g:6498:1: ( ( 'body' ) )
+            // InternalCompleteOCL.g:6499:1: ( 'body' )
             {
-            // InternalCompleteOCL.g:6471:1: ( 'body' )
-            // InternalCompleteOCL.g:6472:1: 'body'
+            // InternalCompleteOCL.g:6499:1: ( 'body' )
+            // InternalCompleteOCL.g:6500:1: 'body'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getBodyKeyword_8_2_0());
@@ -20704,14 +20789,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_2__1"
-    // InternalCompleteOCL.g:6485:1: rule__OperationContextDeclCS__Group_8_2__1 : rule__OperationContextDeclCS__Group_8_2__1__Impl rule__OperationContextDeclCS__Group_8_2__2 ;
+    // InternalCompleteOCL.g:6513:1: rule__OperationContextDeclCS__Group_8_2__1 : rule__OperationContextDeclCS__Group_8_2__1__Impl rule__OperationContextDeclCS__Group_8_2__2 ;
     public final void rule__OperationContextDeclCS__Group_8_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6489:1: ( rule__OperationContextDeclCS__Group_8_2__1__Impl rule__OperationContextDeclCS__Group_8_2__2 )
-            // InternalCompleteOCL.g:6490:2: rule__OperationContextDeclCS__Group_8_2__1__Impl rule__OperationContextDeclCS__Group_8_2__2
+            // InternalCompleteOCL.g:6517:1: ( rule__OperationContextDeclCS__Group_8_2__1__Impl rule__OperationContextDeclCS__Group_8_2__2 )
+            // InternalCompleteOCL.g:6518:2: rule__OperationContextDeclCS__Group_8_2__1__Impl rule__OperationContextDeclCS__Group_8_2__2
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__OperationContextDeclCS__Group_8_2__1__Impl();
@@ -20742,22 +20827,22 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_2__1__Impl"
-    // InternalCompleteOCL.g:6497:1: rule__OperationContextDeclCS__Group_8_2__1__Impl : ( ( ruleUnrestrictedName )? ) ;
+    // InternalCompleteOCL.g:6525:1: rule__OperationContextDeclCS__Group_8_2__1__Impl : ( ( ruleUnrestrictedName )? ) ;
     public final void rule__OperationContextDeclCS__Group_8_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6501:1: ( ( ( ruleUnrestrictedName )? ) )
-            // InternalCompleteOCL.g:6502:1: ( ( ruleUnrestrictedName )? )
+            // InternalCompleteOCL.g:6529:1: ( ( ( ruleUnrestrictedName )? ) )
+            // InternalCompleteOCL.g:6530:1: ( ( ruleUnrestrictedName )? )
             {
-            // InternalCompleteOCL.g:6502:1: ( ( ruleUnrestrictedName )? )
-            // InternalCompleteOCL.g:6503:1: ( ruleUnrestrictedName )?
+            // InternalCompleteOCL.g:6530:1: ( ( ruleUnrestrictedName )? )
+            // InternalCompleteOCL.g:6531:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getUnrestrictedNameParserRuleCall_8_2_1());
             }
-            // InternalCompleteOCL.g:6504:1: ( ruleUnrestrictedName )?
+            // InternalCompleteOCL.g:6532:1: ( ruleUnrestrictedName )?
             int alt68=2;
             int LA68_0 = input.LA(1);
 
@@ -20766,7 +20851,7 @@
             }
             switch (alt68) {
                 case 1 :
-                    // InternalCompleteOCL.g:6504:3: ruleUnrestrictedName
+                    // InternalCompleteOCL.g:6532:3: ruleUnrestrictedName
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -20804,14 +20889,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_2__2"
-    // InternalCompleteOCL.g:6514:1: rule__OperationContextDeclCS__Group_8_2__2 : rule__OperationContextDeclCS__Group_8_2__2__Impl rule__OperationContextDeclCS__Group_8_2__3 ;
+    // InternalCompleteOCL.g:6542:1: rule__OperationContextDeclCS__Group_8_2__2 : rule__OperationContextDeclCS__Group_8_2__2__Impl rule__OperationContextDeclCS__Group_8_2__3 ;
     public final void rule__OperationContextDeclCS__Group_8_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6518:1: ( rule__OperationContextDeclCS__Group_8_2__2__Impl rule__OperationContextDeclCS__Group_8_2__3 )
-            // InternalCompleteOCL.g:6519:2: rule__OperationContextDeclCS__Group_8_2__2__Impl rule__OperationContextDeclCS__Group_8_2__3
+            // InternalCompleteOCL.g:6546:1: ( rule__OperationContextDeclCS__Group_8_2__2__Impl rule__OperationContextDeclCS__Group_8_2__3 )
+            // InternalCompleteOCL.g:6547:2: rule__OperationContextDeclCS__Group_8_2__2__Impl rule__OperationContextDeclCS__Group_8_2__3
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__OperationContextDeclCS__Group_8_2__2__Impl();
@@ -20842,17 +20927,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_2__2__Impl"
-    // InternalCompleteOCL.g:6526:1: rule__OperationContextDeclCS__Group_8_2__2__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:6554:1: rule__OperationContextDeclCS__Group_8_2__2__Impl : ( ':' ) ;
     public final void rule__OperationContextDeclCS__Group_8_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6530:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:6531:1: ( ':' )
+            // InternalCompleteOCL.g:6558:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:6559:1: ( ':' )
             {
-            // InternalCompleteOCL.g:6531:1: ( ':' )
-            // InternalCompleteOCL.g:6532:1: ':'
+            // InternalCompleteOCL.g:6559:1: ( ':' )
+            // InternalCompleteOCL.g:6560:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_8_2_2());
@@ -20883,14 +20968,14 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_2__3"
-    // InternalCompleteOCL.g:6545:1: rule__OperationContextDeclCS__Group_8_2__3 : rule__OperationContextDeclCS__Group_8_2__3__Impl ;
+    // InternalCompleteOCL.g:6573:1: rule__OperationContextDeclCS__Group_8_2__3 : rule__OperationContextDeclCS__Group_8_2__3__Impl ;
     public final void rule__OperationContextDeclCS__Group_8_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6549:1: ( rule__OperationContextDeclCS__Group_8_2__3__Impl )
-            // InternalCompleteOCL.g:6550:2: rule__OperationContextDeclCS__Group_8_2__3__Impl
+            // InternalCompleteOCL.g:6577:1: ( rule__OperationContextDeclCS__Group_8_2__3__Impl )
+            // InternalCompleteOCL.g:6578:2: rule__OperationContextDeclCS__Group_8_2__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationContextDeclCS__Group_8_2__3__Impl();
@@ -20916,23 +21001,23 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__Group_8_2__3__Impl"
-    // InternalCompleteOCL.g:6556:1: rule__OperationContextDeclCS__Group_8_2__3__Impl : ( ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 ) ) ;
+    // InternalCompleteOCL.g:6584:1: rule__OperationContextDeclCS__Group_8_2__3__Impl : ( ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 ) ) ;
     public final void rule__OperationContextDeclCS__Group_8_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6560:1: ( ( ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 ) ) )
-            // InternalCompleteOCL.g:6561:1: ( ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 ) )
+            // InternalCompleteOCL.g:6588:1: ( ( ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 ) ) )
+            // InternalCompleteOCL.g:6589:1: ( ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 ) )
             {
-            // InternalCompleteOCL.g:6561:1: ( ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 ) )
-            // InternalCompleteOCL.g:6562:1: ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 )
+            // InternalCompleteOCL.g:6589:1: ( ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 ) )
+            // InternalCompleteOCL.g:6590:1: ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesAssignment_8_2_3());
             }
-            // InternalCompleteOCL.g:6563:1: ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 )
-            // InternalCompleteOCL.g:6563:2: rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3
+            // InternalCompleteOCL.g:6591:1: ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 )
+            // InternalCompleteOCL.g:6591:2: rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3();
@@ -20967,14 +21052,14 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group__0"
-    // InternalCompleteOCL.g:6581:1: rule__PackageDeclarationCS__Group__0 : rule__PackageDeclarationCS__Group__0__Impl rule__PackageDeclarationCS__Group__1 ;
+    // InternalCompleteOCL.g:6609:1: rule__PackageDeclarationCS__Group__0 : rule__PackageDeclarationCS__Group__0__Impl rule__PackageDeclarationCS__Group__1 ;
     public final void rule__PackageDeclarationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6585:1: ( rule__PackageDeclarationCS__Group__0__Impl rule__PackageDeclarationCS__Group__1 )
-            // InternalCompleteOCL.g:6586:2: rule__PackageDeclarationCS__Group__0__Impl rule__PackageDeclarationCS__Group__1
+            // InternalCompleteOCL.g:6613:1: ( rule__PackageDeclarationCS__Group__0__Impl rule__PackageDeclarationCS__Group__1 )
+            // InternalCompleteOCL.g:6614:2: rule__PackageDeclarationCS__Group__0__Impl rule__PackageDeclarationCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__PackageDeclarationCS__Group__0__Impl();
@@ -21005,17 +21090,17 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group__0__Impl"
-    // InternalCompleteOCL.g:6593:1: rule__PackageDeclarationCS__Group__0__Impl : ( 'package' ) ;
+    // InternalCompleteOCL.g:6621:1: rule__PackageDeclarationCS__Group__0__Impl : ( 'package' ) ;
     public final void rule__PackageDeclarationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6597:1: ( ( 'package' ) )
-            // InternalCompleteOCL.g:6598:1: ( 'package' )
+            // InternalCompleteOCL.g:6625:1: ( ( 'package' ) )
+            // InternalCompleteOCL.g:6626:1: ( 'package' )
             {
-            // InternalCompleteOCL.g:6598:1: ( 'package' )
-            // InternalCompleteOCL.g:6599:1: 'package'
+            // InternalCompleteOCL.g:6626:1: ( 'package' )
+            // InternalCompleteOCL.g:6627:1: 'package'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageDeclarationCSAccess().getPackageKeyword_0());
@@ -21046,16 +21131,16 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group__1"
-    // InternalCompleteOCL.g:6612:1: rule__PackageDeclarationCS__Group__1 : rule__PackageDeclarationCS__Group__1__Impl rule__PackageDeclarationCS__Group__2 ;
+    // InternalCompleteOCL.g:6640:1: rule__PackageDeclarationCS__Group__1 : rule__PackageDeclarationCS__Group__1__Impl rule__PackageDeclarationCS__Group__2 ;
     public final void rule__PackageDeclarationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6616:1: ( rule__PackageDeclarationCS__Group__1__Impl rule__PackageDeclarationCS__Group__2 )
-            // InternalCompleteOCL.g:6617:2: rule__PackageDeclarationCS__Group__1__Impl rule__PackageDeclarationCS__Group__2
+            // InternalCompleteOCL.g:6644:1: ( rule__PackageDeclarationCS__Group__1__Impl rule__PackageDeclarationCS__Group__2 )
+            // InternalCompleteOCL.g:6645:2: rule__PackageDeclarationCS__Group__1__Impl rule__PackageDeclarationCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_28);
+            pushFollow(FollowSets000.FOLLOW_29);
             rule__PackageDeclarationCS__Group__1__Impl();
 
             state._fsp--;
@@ -21084,23 +21169,23 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group__1__Impl"
-    // InternalCompleteOCL.g:6624:1: rule__PackageDeclarationCS__Group__1__Impl : ( ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 ) ) ;
+    // InternalCompleteOCL.g:6652:1: rule__PackageDeclarationCS__Group__1__Impl : ( ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 ) ) ;
     public final void rule__PackageDeclarationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6628:1: ( ( ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 ) ) )
-            // InternalCompleteOCL.g:6629:1: ( ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 ) )
+            // InternalCompleteOCL.g:6656:1: ( ( ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 ) ) )
+            // InternalCompleteOCL.g:6657:1: ( ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 ) )
             {
-            // InternalCompleteOCL.g:6629:1: ( ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 ) )
-            // InternalCompleteOCL.g:6630:1: ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 )
+            // InternalCompleteOCL.g:6657:1: ( ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 ) )
+            // InternalCompleteOCL.g:6658:1: ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNameAssignment_1());
             }
-            // InternalCompleteOCL.g:6631:1: ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 )
-            // InternalCompleteOCL.g:6631:2: rule__PackageDeclarationCS__OwnedPathNameAssignment_1
+            // InternalCompleteOCL.g:6659:1: ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 )
+            // InternalCompleteOCL.g:6659:2: rule__PackageDeclarationCS__OwnedPathNameAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageDeclarationCS__OwnedPathNameAssignment_1();
@@ -21135,16 +21220,16 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group__2"
-    // InternalCompleteOCL.g:6641:1: rule__PackageDeclarationCS__Group__2 : rule__PackageDeclarationCS__Group__2__Impl rule__PackageDeclarationCS__Group__3 ;
+    // InternalCompleteOCL.g:6669:1: rule__PackageDeclarationCS__Group__2 : rule__PackageDeclarationCS__Group__2__Impl rule__PackageDeclarationCS__Group__3 ;
     public final void rule__PackageDeclarationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6645:1: ( rule__PackageDeclarationCS__Group__2__Impl rule__PackageDeclarationCS__Group__3 )
-            // InternalCompleteOCL.g:6646:2: rule__PackageDeclarationCS__Group__2__Impl rule__PackageDeclarationCS__Group__3
+            // InternalCompleteOCL.g:6673:1: ( rule__PackageDeclarationCS__Group__2__Impl rule__PackageDeclarationCS__Group__3 )
+            // InternalCompleteOCL.g:6674:2: rule__PackageDeclarationCS__Group__2__Impl rule__PackageDeclarationCS__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_28);
+            pushFollow(FollowSets000.FOLLOW_29);
             rule__PackageDeclarationCS__Group__2__Impl();
 
             state._fsp--;
@@ -21173,22 +21258,22 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group__2__Impl"
-    // InternalCompleteOCL.g:6653:1: rule__PackageDeclarationCS__Group__2__Impl : ( ( rule__PackageDeclarationCS__Group_2__0 )* ) ;
+    // InternalCompleteOCL.g:6681:1: rule__PackageDeclarationCS__Group__2__Impl : ( ( rule__PackageDeclarationCS__Group_2__0 )* ) ;
     public final void rule__PackageDeclarationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6657:1: ( ( ( rule__PackageDeclarationCS__Group_2__0 )* ) )
-            // InternalCompleteOCL.g:6658:1: ( ( rule__PackageDeclarationCS__Group_2__0 )* )
+            // InternalCompleteOCL.g:6685:1: ( ( ( rule__PackageDeclarationCS__Group_2__0 )* ) )
+            // InternalCompleteOCL.g:6686:1: ( ( rule__PackageDeclarationCS__Group_2__0 )* )
             {
-            // InternalCompleteOCL.g:6658:1: ( ( rule__PackageDeclarationCS__Group_2__0 )* )
-            // InternalCompleteOCL.g:6659:1: ( rule__PackageDeclarationCS__Group_2__0 )*
+            // InternalCompleteOCL.g:6686:1: ( ( rule__PackageDeclarationCS__Group_2__0 )* )
+            // InternalCompleteOCL.g:6687:1: ( rule__PackageDeclarationCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageDeclarationCSAccess().getGroup_2());
             }
-            // InternalCompleteOCL.g:6660:1: ( rule__PackageDeclarationCS__Group_2__0 )*
+            // InternalCompleteOCL.g:6688:1: ( rule__PackageDeclarationCS__Group_2__0 )*
             loop69:
             do {
                 int alt69=2;
@@ -21201,9 +21286,9 @@
 
                 switch (alt69) {
             	case 1 :
-            	    // InternalCompleteOCL.g:6660:2: rule__PackageDeclarationCS__Group_2__0
+            	    // InternalCompleteOCL.g:6688:2: rule__PackageDeclarationCS__Group_2__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_29);
+            	    pushFollow(FollowSets000.FOLLOW_30);
             	    rule__PackageDeclarationCS__Group_2__0();
 
             	    state._fsp--;
@@ -21242,16 +21327,16 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group__3"
-    // InternalCompleteOCL.g:6670:1: rule__PackageDeclarationCS__Group__3 : rule__PackageDeclarationCS__Group__3__Impl rule__PackageDeclarationCS__Group__4 ;
+    // InternalCompleteOCL.g:6698:1: rule__PackageDeclarationCS__Group__3 : rule__PackageDeclarationCS__Group__3__Impl rule__PackageDeclarationCS__Group__4 ;
     public final void rule__PackageDeclarationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6674:1: ( rule__PackageDeclarationCS__Group__3__Impl rule__PackageDeclarationCS__Group__4 )
-            // InternalCompleteOCL.g:6675:2: rule__PackageDeclarationCS__Group__3__Impl rule__PackageDeclarationCS__Group__4
+            // InternalCompleteOCL.g:6702:1: ( rule__PackageDeclarationCS__Group__3__Impl rule__PackageDeclarationCS__Group__4 )
+            // InternalCompleteOCL.g:6703:2: rule__PackageDeclarationCS__Group__3__Impl rule__PackageDeclarationCS__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_28);
+            pushFollow(FollowSets000.FOLLOW_29);
             rule__PackageDeclarationCS__Group__3__Impl();
 
             state._fsp--;
@@ -21280,22 +21365,22 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group__3__Impl"
-    // InternalCompleteOCL.g:6682:1: rule__PackageDeclarationCS__Group__3__Impl : ( ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )* ) ;
+    // InternalCompleteOCL.g:6710:1: rule__PackageDeclarationCS__Group__3__Impl : ( ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )* ) ;
     public final void rule__PackageDeclarationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6686:1: ( ( ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )* ) )
-            // InternalCompleteOCL.g:6687:1: ( ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )* )
+            // InternalCompleteOCL.g:6714:1: ( ( ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )* ) )
+            // InternalCompleteOCL.g:6715:1: ( ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )* )
             {
-            // InternalCompleteOCL.g:6687:1: ( ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )* )
-            // InternalCompleteOCL.g:6688:1: ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )*
+            // InternalCompleteOCL.g:6715:1: ( ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )* )
+            // InternalCompleteOCL.g:6716:1: ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsAssignment_3());
             }
-            // InternalCompleteOCL.g:6689:1: ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )*
+            // InternalCompleteOCL.g:6717:1: ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )*
             loop70:
             do {
                 int alt70=2;
@@ -21308,7 +21393,7 @@
 
                 switch (alt70) {
             	case 1 :
-            	    // InternalCompleteOCL.g:6689:2: rule__PackageDeclarationCS__OwnedContextsAssignment_3
+            	    // InternalCompleteOCL.g:6717:2: rule__PackageDeclarationCS__OwnedContextsAssignment_3
             	    {
             	    pushFollow(FollowSets000.FOLLOW_6);
             	    rule__PackageDeclarationCS__OwnedContextsAssignment_3();
@@ -21349,14 +21434,14 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group__4"
-    // InternalCompleteOCL.g:6699:1: rule__PackageDeclarationCS__Group__4 : rule__PackageDeclarationCS__Group__4__Impl ;
+    // InternalCompleteOCL.g:6727:1: rule__PackageDeclarationCS__Group__4 : rule__PackageDeclarationCS__Group__4__Impl ;
     public final void rule__PackageDeclarationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6703:1: ( rule__PackageDeclarationCS__Group__4__Impl )
-            // InternalCompleteOCL.g:6704:2: rule__PackageDeclarationCS__Group__4__Impl
+            // InternalCompleteOCL.g:6731:1: ( rule__PackageDeclarationCS__Group__4__Impl )
+            // InternalCompleteOCL.g:6732:2: rule__PackageDeclarationCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageDeclarationCS__Group__4__Impl();
@@ -21382,17 +21467,17 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group__4__Impl"
-    // InternalCompleteOCL.g:6710:1: rule__PackageDeclarationCS__Group__4__Impl : ( 'endpackage' ) ;
+    // InternalCompleteOCL.g:6738:1: rule__PackageDeclarationCS__Group__4__Impl : ( 'endpackage' ) ;
     public final void rule__PackageDeclarationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6714:1: ( ( 'endpackage' ) )
-            // InternalCompleteOCL.g:6715:1: ( 'endpackage' )
+            // InternalCompleteOCL.g:6742:1: ( ( 'endpackage' ) )
+            // InternalCompleteOCL.g:6743:1: ( 'endpackage' )
             {
-            // InternalCompleteOCL.g:6715:1: ( 'endpackage' )
-            // InternalCompleteOCL.g:6716:1: 'endpackage'
+            // InternalCompleteOCL.g:6743:1: ( 'endpackage' )
+            // InternalCompleteOCL.g:6744:1: 'endpackage'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageDeclarationCSAccess().getEndpackageKeyword_4());
@@ -21423,14 +21508,14 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group_2__0"
-    // InternalCompleteOCL.g:6739:1: rule__PackageDeclarationCS__Group_2__0 : rule__PackageDeclarationCS__Group_2__0__Impl rule__PackageDeclarationCS__Group_2__1 ;
+    // InternalCompleteOCL.g:6767:1: rule__PackageDeclarationCS__Group_2__0 : rule__PackageDeclarationCS__Group_2__0__Impl rule__PackageDeclarationCS__Group_2__1 ;
     public final void rule__PackageDeclarationCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6743:1: ( rule__PackageDeclarationCS__Group_2__0__Impl rule__PackageDeclarationCS__Group_2__1 )
-            // InternalCompleteOCL.g:6744:2: rule__PackageDeclarationCS__Group_2__0__Impl rule__PackageDeclarationCS__Group_2__1
+            // InternalCompleteOCL.g:6771:1: ( rule__PackageDeclarationCS__Group_2__0__Impl rule__PackageDeclarationCS__Group_2__1 )
+            // InternalCompleteOCL.g:6772:2: rule__PackageDeclarationCS__Group_2__0__Impl rule__PackageDeclarationCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__PackageDeclarationCS__Group_2__0__Impl();
@@ -21461,17 +21546,17 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group_2__0__Impl"
-    // InternalCompleteOCL.g:6751:1: rule__PackageDeclarationCS__Group_2__0__Impl : ( 'inv' ) ;
+    // InternalCompleteOCL.g:6779:1: rule__PackageDeclarationCS__Group_2__0__Impl : ( 'inv' ) ;
     public final void rule__PackageDeclarationCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6755:1: ( ( 'inv' ) )
-            // InternalCompleteOCL.g:6756:1: ( 'inv' )
+            // InternalCompleteOCL.g:6783:1: ( ( 'inv' ) )
+            // InternalCompleteOCL.g:6784:1: ( 'inv' )
             {
-            // InternalCompleteOCL.g:6756:1: ( 'inv' )
-            // InternalCompleteOCL.g:6757:1: 'inv'
+            // InternalCompleteOCL.g:6784:1: ( 'inv' )
+            // InternalCompleteOCL.g:6785:1: 'inv'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageDeclarationCSAccess().getInvKeyword_2_0());
@@ -21502,14 +21587,14 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group_2__1"
-    // InternalCompleteOCL.g:6770:1: rule__PackageDeclarationCS__Group_2__1 : rule__PackageDeclarationCS__Group_2__1__Impl ;
+    // InternalCompleteOCL.g:6798:1: rule__PackageDeclarationCS__Group_2__1 : rule__PackageDeclarationCS__Group_2__1__Impl ;
     public final void rule__PackageDeclarationCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6774:1: ( rule__PackageDeclarationCS__Group_2__1__Impl )
-            // InternalCompleteOCL.g:6775:2: rule__PackageDeclarationCS__Group_2__1__Impl
+            // InternalCompleteOCL.g:6802:1: ( rule__PackageDeclarationCS__Group_2__1__Impl )
+            // InternalCompleteOCL.g:6803:2: rule__PackageDeclarationCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageDeclarationCS__Group_2__1__Impl();
@@ -21535,23 +21620,23 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__Group_2__1__Impl"
-    // InternalCompleteOCL.g:6781:1: rule__PackageDeclarationCS__Group_2__1__Impl : ( ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 ) ) ;
+    // InternalCompleteOCL.g:6809:1: rule__PackageDeclarationCS__Group_2__1__Impl : ( ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 ) ) ;
     public final void rule__PackageDeclarationCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6785:1: ( ( ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 ) ) )
-            // InternalCompleteOCL.g:6786:1: ( ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 ) )
+            // InternalCompleteOCL.g:6813:1: ( ( ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 ) ) )
+            // InternalCompleteOCL.g:6814:1: ( ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 ) )
             {
-            // InternalCompleteOCL.g:6786:1: ( ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 ) )
-            // InternalCompleteOCL.g:6787:1: ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 )
+            // InternalCompleteOCL.g:6814:1: ( ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 ) )
+            // InternalCompleteOCL.g:6815:1: ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsAssignment_2_1());
             }
-            // InternalCompleteOCL.g:6788:1: ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 )
-            // InternalCompleteOCL.g:6788:2: rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1
+            // InternalCompleteOCL.g:6816:1: ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 )
+            // InternalCompleteOCL.g:6816:2: rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1();
@@ -21586,16 +21671,16 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__0"
-    // InternalCompleteOCL.g:6802:1: rule__ParameterCS__Group__0 : rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 ;
+    // InternalCompleteOCL.g:6830:1: rule__ParameterCS__Group__0 : rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 ;
     public final void rule__ParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6806:1: ( rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 )
-            // InternalCompleteOCL.g:6807:2: rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1
+            // InternalCompleteOCL.g:6834:1: ( rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 )
+            // InternalCompleteOCL.g:6835:2: rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__ParameterCS__Group__0__Impl();
 
             state._fsp--;
@@ -21624,22 +21709,22 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__0__Impl"
-    // InternalCompleteOCL.g:6814:1: rule__ParameterCS__Group__0__Impl : ( ( rule__ParameterCS__Group_0__0 )? ) ;
+    // InternalCompleteOCL.g:6842:1: rule__ParameterCS__Group__0__Impl : ( ( rule__ParameterCS__Group_0__0 )? ) ;
     public final void rule__ParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6818:1: ( ( ( rule__ParameterCS__Group_0__0 )? ) )
-            // InternalCompleteOCL.g:6819:1: ( ( rule__ParameterCS__Group_0__0 )? )
+            // InternalCompleteOCL.g:6846:1: ( ( ( rule__ParameterCS__Group_0__0 )? ) )
+            // InternalCompleteOCL.g:6847:1: ( ( rule__ParameterCS__Group_0__0 )? )
             {
-            // InternalCompleteOCL.g:6819:1: ( ( rule__ParameterCS__Group_0__0 )? )
-            // InternalCompleteOCL.g:6820:1: ( rule__ParameterCS__Group_0__0 )?
+            // InternalCompleteOCL.g:6847:1: ( ( rule__ParameterCS__Group_0__0 )? )
+            // InternalCompleteOCL.g:6848:1: ( rule__ParameterCS__Group_0__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getGroup_0());
             }
-            // InternalCompleteOCL.g:6821:1: ( rule__ParameterCS__Group_0__0 )?
+            // InternalCompleteOCL.g:6849:1: ( rule__ParameterCS__Group_0__0 )?
             int alt71=2;
             switch ( input.LA(1) ) {
                 case RULE_SIMPLE_ID:
@@ -21691,7 +21776,7 @@
 
             switch (alt71) {
                 case 1 :
-                    // InternalCompleteOCL.g:6821:2: rule__ParameterCS__Group_0__0
+                    // InternalCompleteOCL.g:6849:2: rule__ParameterCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ParameterCS__Group_0__0();
@@ -21729,14 +21814,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__1"
-    // InternalCompleteOCL.g:6831:1: rule__ParameterCS__Group__1 : rule__ParameterCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:6859:1: rule__ParameterCS__Group__1 : rule__ParameterCS__Group__1__Impl ;
     public final void rule__ParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6835:1: ( rule__ParameterCS__Group__1__Impl )
-            // InternalCompleteOCL.g:6836:2: rule__ParameterCS__Group__1__Impl
+            // InternalCompleteOCL.g:6863:1: ( rule__ParameterCS__Group__1__Impl )
+            // InternalCompleteOCL.g:6864:2: rule__ParameterCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__Group__1__Impl();
@@ -21762,23 +21847,23 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__1__Impl"
-    // InternalCompleteOCL.g:6842:1: rule__ParameterCS__Group__1__Impl : ( ( rule__ParameterCS__OwnedTypeAssignment_1 ) ) ;
+    // InternalCompleteOCL.g:6870:1: rule__ParameterCS__Group__1__Impl : ( ( rule__ParameterCS__OwnedTypeAssignment_1 ) ) ;
     public final void rule__ParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6846:1: ( ( ( rule__ParameterCS__OwnedTypeAssignment_1 ) ) )
-            // InternalCompleteOCL.g:6847:1: ( ( rule__ParameterCS__OwnedTypeAssignment_1 ) )
+            // InternalCompleteOCL.g:6874:1: ( ( ( rule__ParameterCS__OwnedTypeAssignment_1 ) ) )
+            // InternalCompleteOCL.g:6875:1: ( ( rule__ParameterCS__OwnedTypeAssignment_1 ) )
             {
-            // InternalCompleteOCL.g:6847:1: ( ( rule__ParameterCS__OwnedTypeAssignment_1 ) )
-            // InternalCompleteOCL.g:6848:1: ( rule__ParameterCS__OwnedTypeAssignment_1 )
+            // InternalCompleteOCL.g:6875:1: ( ( rule__ParameterCS__OwnedTypeAssignment_1 ) )
+            // InternalCompleteOCL.g:6876:1: ( rule__ParameterCS__OwnedTypeAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_1());
             }
-            // InternalCompleteOCL.g:6849:1: ( rule__ParameterCS__OwnedTypeAssignment_1 )
-            // InternalCompleteOCL.g:6849:2: rule__ParameterCS__OwnedTypeAssignment_1
+            // InternalCompleteOCL.g:6877:1: ( rule__ParameterCS__OwnedTypeAssignment_1 )
+            // InternalCompleteOCL.g:6877:2: rule__ParameterCS__OwnedTypeAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__OwnedTypeAssignment_1();
@@ -21813,16 +21898,16 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_0__0"
-    // InternalCompleteOCL.g:6863:1: rule__ParameterCS__Group_0__0 : rule__ParameterCS__Group_0__0__Impl rule__ParameterCS__Group_0__1 ;
+    // InternalCompleteOCL.g:6891:1: rule__ParameterCS__Group_0__0 : rule__ParameterCS__Group_0__0__Impl rule__ParameterCS__Group_0__1 ;
     public final void rule__ParameterCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6867:1: ( rule__ParameterCS__Group_0__0__Impl rule__ParameterCS__Group_0__1 )
-            // InternalCompleteOCL.g:6868:2: rule__ParameterCS__Group_0__0__Impl rule__ParameterCS__Group_0__1
+            // InternalCompleteOCL.g:6895:1: ( rule__ParameterCS__Group_0__0__Impl rule__ParameterCS__Group_0__1 )
+            // InternalCompleteOCL.g:6896:2: rule__ParameterCS__Group_0__0__Impl rule__ParameterCS__Group_0__1
             {
-            pushFollow(FollowSets000.FOLLOW_16);
+            pushFollow(FollowSets000.FOLLOW_17);
             rule__ParameterCS__Group_0__0__Impl();
 
             state._fsp--;
@@ -21851,23 +21936,23 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_0__0__Impl"
-    // InternalCompleteOCL.g:6875:1: rule__ParameterCS__Group_0__0__Impl : ( ( rule__ParameterCS__NameAssignment_0_0 ) ) ;
+    // InternalCompleteOCL.g:6903:1: rule__ParameterCS__Group_0__0__Impl : ( ( rule__ParameterCS__NameAssignment_0_0 ) ) ;
     public final void rule__ParameterCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6879:1: ( ( ( rule__ParameterCS__NameAssignment_0_0 ) ) )
-            // InternalCompleteOCL.g:6880:1: ( ( rule__ParameterCS__NameAssignment_0_0 ) )
+            // InternalCompleteOCL.g:6907:1: ( ( ( rule__ParameterCS__NameAssignment_0_0 ) ) )
+            // InternalCompleteOCL.g:6908:1: ( ( rule__ParameterCS__NameAssignment_0_0 ) )
             {
-            // InternalCompleteOCL.g:6880:1: ( ( rule__ParameterCS__NameAssignment_0_0 ) )
-            // InternalCompleteOCL.g:6881:1: ( rule__ParameterCS__NameAssignment_0_0 )
+            // InternalCompleteOCL.g:6908:1: ( ( rule__ParameterCS__NameAssignment_0_0 ) )
+            // InternalCompleteOCL.g:6909:1: ( rule__ParameterCS__NameAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getNameAssignment_0_0());
             }
-            // InternalCompleteOCL.g:6882:1: ( rule__ParameterCS__NameAssignment_0_0 )
-            // InternalCompleteOCL.g:6882:2: rule__ParameterCS__NameAssignment_0_0
+            // InternalCompleteOCL.g:6910:1: ( rule__ParameterCS__NameAssignment_0_0 )
+            // InternalCompleteOCL.g:6910:2: rule__ParameterCS__NameAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__NameAssignment_0_0();
@@ -21902,14 +21987,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_0__1"
-    // InternalCompleteOCL.g:6892:1: rule__ParameterCS__Group_0__1 : rule__ParameterCS__Group_0__1__Impl ;
+    // InternalCompleteOCL.g:6920:1: rule__ParameterCS__Group_0__1 : rule__ParameterCS__Group_0__1__Impl ;
     public final void rule__ParameterCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6896:1: ( rule__ParameterCS__Group_0__1__Impl )
-            // InternalCompleteOCL.g:6897:2: rule__ParameterCS__Group_0__1__Impl
+            // InternalCompleteOCL.g:6924:1: ( rule__ParameterCS__Group_0__1__Impl )
+            // InternalCompleteOCL.g:6925:2: rule__ParameterCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__Group_0__1__Impl();
@@ -21935,17 +22020,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_0__1__Impl"
-    // InternalCompleteOCL.g:6903:1: rule__ParameterCS__Group_0__1__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:6931:1: rule__ParameterCS__Group_0__1__Impl : ( ':' ) ;
     public final void rule__ParameterCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6907:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:6908:1: ( ':' )
+            // InternalCompleteOCL.g:6935:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:6936:1: ( ':' )
             {
-            // InternalCompleteOCL.g:6908:1: ( ':' )
-            // InternalCompleteOCL.g:6909:1: ':'
+            // InternalCompleteOCL.g:6936:1: ( ':' )
+            // InternalCompleteOCL.g:6937:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getColonKeyword_0_1());
@@ -21976,14 +22061,14 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group__0"
-    // InternalCompleteOCL.g:6926:1: rule__PropertyContextDeclCS__Group__0 : rule__PropertyContextDeclCS__Group__0__Impl rule__PropertyContextDeclCS__Group__1 ;
+    // InternalCompleteOCL.g:6954:1: rule__PropertyContextDeclCS__Group__0 : rule__PropertyContextDeclCS__Group__0__Impl rule__PropertyContextDeclCS__Group__1 ;
     public final void rule__PropertyContextDeclCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6930:1: ( rule__PropertyContextDeclCS__Group__0__Impl rule__PropertyContextDeclCS__Group__1 )
-            // InternalCompleteOCL.g:6931:2: rule__PropertyContextDeclCS__Group__0__Impl rule__PropertyContextDeclCS__Group__1
+            // InternalCompleteOCL.g:6958:1: ( rule__PropertyContextDeclCS__Group__0__Impl rule__PropertyContextDeclCS__Group__1 )
+            // InternalCompleteOCL.g:6959:2: rule__PropertyContextDeclCS__Group__0__Impl rule__PropertyContextDeclCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__PropertyContextDeclCS__Group__0__Impl();
@@ -22014,17 +22099,17 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group__0__Impl"
-    // InternalCompleteOCL.g:6938:1: rule__PropertyContextDeclCS__Group__0__Impl : ( 'context' ) ;
+    // InternalCompleteOCL.g:6966:1: rule__PropertyContextDeclCS__Group__0__Impl : ( 'context' ) ;
     public final void rule__PropertyContextDeclCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6942:1: ( ( 'context' ) )
-            // InternalCompleteOCL.g:6943:1: ( 'context' )
+            // InternalCompleteOCL.g:6970:1: ( ( 'context' ) )
+            // InternalCompleteOCL.g:6971:1: ( 'context' )
             {
-            // InternalCompleteOCL.g:6943:1: ( 'context' )
-            // InternalCompleteOCL.g:6944:1: 'context'
+            // InternalCompleteOCL.g:6971:1: ( 'context' )
+            // InternalCompleteOCL.g:6972:1: 'context'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getContextKeyword_0());
@@ -22055,16 +22140,16 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group__1"
-    // InternalCompleteOCL.g:6957:1: rule__PropertyContextDeclCS__Group__1 : rule__PropertyContextDeclCS__Group__1__Impl rule__PropertyContextDeclCS__Group__2 ;
+    // InternalCompleteOCL.g:6985:1: rule__PropertyContextDeclCS__Group__1 : rule__PropertyContextDeclCS__Group__1__Impl rule__PropertyContextDeclCS__Group__2 ;
     public final void rule__PropertyContextDeclCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6961:1: ( rule__PropertyContextDeclCS__Group__1__Impl rule__PropertyContextDeclCS__Group__2 )
-            // InternalCompleteOCL.g:6962:2: rule__PropertyContextDeclCS__Group__1__Impl rule__PropertyContextDeclCS__Group__2
+            // InternalCompleteOCL.g:6989:1: ( rule__PropertyContextDeclCS__Group__1__Impl rule__PropertyContextDeclCS__Group__2 )
+            // InternalCompleteOCL.g:6990:2: rule__PropertyContextDeclCS__Group__1__Impl rule__PropertyContextDeclCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_16);
+            pushFollow(FollowSets000.FOLLOW_17);
             rule__PropertyContextDeclCS__Group__1__Impl();
 
             state._fsp--;
@@ -22093,23 +22178,23 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group__1__Impl"
-    // InternalCompleteOCL.g:6969:1: rule__PropertyContextDeclCS__Group__1__Impl : ( ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 ) ) ;
+    // InternalCompleteOCL.g:6997:1: rule__PropertyContextDeclCS__Group__1__Impl : ( ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 ) ) ;
     public final void rule__PropertyContextDeclCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6973:1: ( ( ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 ) ) )
-            // InternalCompleteOCL.g:6974:1: ( ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 ) )
+            // InternalCompleteOCL.g:7001:1: ( ( ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 ) ) )
+            // InternalCompleteOCL.g:7002:1: ( ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 ) )
             {
-            // InternalCompleteOCL.g:6974:1: ( ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 ) )
-            // InternalCompleteOCL.g:6975:1: ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 )
+            // InternalCompleteOCL.g:7002:1: ( ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 ) )
+            // InternalCompleteOCL.g:7003:1: ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNameAssignment_1());
             }
-            // InternalCompleteOCL.g:6976:1: ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 )
-            // InternalCompleteOCL.g:6976:2: rule__PropertyContextDeclCS__OwnedPathNameAssignment_1
+            // InternalCompleteOCL.g:7004:1: ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 )
+            // InternalCompleteOCL.g:7004:2: rule__PropertyContextDeclCS__OwnedPathNameAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PropertyContextDeclCS__OwnedPathNameAssignment_1();
@@ -22144,16 +22229,16 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group__2"
-    // InternalCompleteOCL.g:6986:1: rule__PropertyContextDeclCS__Group__2 : rule__PropertyContextDeclCS__Group__2__Impl rule__PropertyContextDeclCS__Group__3 ;
+    // InternalCompleteOCL.g:7014:1: rule__PropertyContextDeclCS__Group__2 : rule__PropertyContextDeclCS__Group__2__Impl rule__PropertyContextDeclCS__Group__3 ;
     public final void rule__PropertyContextDeclCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:6990:1: ( rule__PropertyContextDeclCS__Group__2__Impl rule__PropertyContextDeclCS__Group__3 )
-            // InternalCompleteOCL.g:6991:2: rule__PropertyContextDeclCS__Group__2__Impl rule__PropertyContextDeclCS__Group__3
+            // InternalCompleteOCL.g:7018:1: ( rule__PropertyContextDeclCS__Group__2__Impl rule__PropertyContextDeclCS__Group__3 )
+            // InternalCompleteOCL.g:7019:2: rule__PropertyContextDeclCS__Group__2__Impl rule__PropertyContextDeclCS__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__PropertyContextDeclCS__Group__2__Impl();
 
             state._fsp--;
@@ -22182,17 +22267,17 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group__2__Impl"
-    // InternalCompleteOCL.g:6998:1: rule__PropertyContextDeclCS__Group__2__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:7026:1: rule__PropertyContextDeclCS__Group__2__Impl : ( ':' ) ;
     public final void rule__PropertyContextDeclCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7002:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:7003:1: ( ':' )
+            // InternalCompleteOCL.g:7030:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:7031:1: ( ':' )
             {
-            // InternalCompleteOCL.g:7003:1: ( ':' )
-            // InternalCompleteOCL.g:7004:1: ':'
+            // InternalCompleteOCL.g:7031:1: ( ':' )
+            // InternalCompleteOCL.g:7032:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_2());
@@ -22223,16 +22308,16 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group__3"
-    // InternalCompleteOCL.g:7017:1: rule__PropertyContextDeclCS__Group__3 : rule__PropertyContextDeclCS__Group__3__Impl rule__PropertyContextDeclCS__Group__4 ;
+    // InternalCompleteOCL.g:7045:1: rule__PropertyContextDeclCS__Group__3 : rule__PropertyContextDeclCS__Group__3__Impl rule__PropertyContextDeclCS__Group__4 ;
     public final void rule__PropertyContextDeclCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7021:1: ( rule__PropertyContextDeclCS__Group__3__Impl rule__PropertyContextDeclCS__Group__4 )
-            // InternalCompleteOCL.g:7022:2: rule__PropertyContextDeclCS__Group__3__Impl rule__PropertyContextDeclCS__Group__4
+            // InternalCompleteOCL.g:7049:1: ( rule__PropertyContextDeclCS__Group__3__Impl rule__PropertyContextDeclCS__Group__4 )
+            // InternalCompleteOCL.g:7050:2: rule__PropertyContextDeclCS__Group__3__Impl rule__PropertyContextDeclCS__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_30);
+            pushFollow(FollowSets000.FOLLOW_31);
             rule__PropertyContextDeclCS__Group__3__Impl();
 
             state._fsp--;
@@ -22261,23 +22346,23 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group__3__Impl"
-    // InternalCompleteOCL.g:7029:1: rule__PropertyContextDeclCS__Group__3__Impl : ( ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 ) ) ;
+    // InternalCompleteOCL.g:7057:1: rule__PropertyContextDeclCS__Group__3__Impl : ( ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 ) ) ;
     public final void rule__PropertyContextDeclCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7033:1: ( ( ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 ) ) )
-            // InternalCompleteOCL.g:7034:1: ( ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 ) )
+            // InternalCompleteOCL.g:7061:1: ( ( ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 ) ) )
+            // InternalCompleteOCL.g:7062:1: ( ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 ) )
             {
-            // InternalCompleteOCL.g:7034:1: ( ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 ) )
-            // InternalCompleteOCL.g:7035:1: ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 )
+            // InternalCompleteOCL.g:7062:1: ( ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 ) )
+            // InternalCompleteOCL.g:7063:1: ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeAssignment_3());
             }
-            // InternalCompleteOCL.g:7036:1: ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 )
-            // InternalCompleteOCL.g:7036:2: rule__PropertyContextDeclCS__OwnedTypeAssignment_3
+            // InternalCompleteOCL.g:7064:1: ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 )
+            // InternalCompleteOCL.g:7064:2: rule__PropertyContextDeclCS__OwnedTypeAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PropertyContextDeclCS__OwnedTypeAssignment_3();
@@ -22312,14 +22397,14 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group__4"
-    // InternalCompleteOCL.g:7046:1: rule__PropertyContextDeclCS__Group__4 : rule__PropertyContextDeclCS__Group__4__Impl ;
+    // InternalCompleteOCL.g:7074:1: rule__PropertyContextDeclCS__Group__4 : rule__PropertyContextDeclCS__Group__4__Impl ;
     public final void rule__PropertyContextDeclCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7050:1: ( rule__PropertyContextDeclCS__Group__4__Impl )
-            // InternalCompleteOCL.g:7051:2: rule__PropertyContextDeclCS__Group__4__Impl
+            // InternalCompleteOCL.g:7078:1: ( rule__PropertyContextDeclCS__Group__4__Impl )
+            // InternalCompleteOCL.g:7079:2: rule__PropertyContextDeclCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PropertyContextDeclCS__Group__4__Impl();
@@ -22345,22 +22430,22 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group__4__Impl"
-    // InternalCompleteOCL.g:7057:1: rule__PropertyContextDeclCS__Group__4__Impl : ( ( rule__PropertyContextDeclCS__Alternatives_4 )* ) ;
+    // InternalCompleteOCL.g:7085:1: rule__PropertyContextDeclCS__Group__4__Impl : ( ( rule__PropertyContextDeclCS__Alternatives_4 )* ) ;
     public final void rule__PropertyContextDeclCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7061:1: ( ( ( rule__PropertyContextDeclCS__Alternatives_4 )* ) )
-            // InternalCompleteOCL.g:7062:1: ( ( rule__PropertyContextDeclCS__Alternatives_4 )* )
+            // InternalCompleteOCL.g:7089:1: ( ( ( rule__PropertyContextDeclCS__Alternatives_4 )* ) )
+            // InternalCompleteOCL.g:7090:1: ( ( rule__PropertyContextDeclCS__Alternatives_4 )* )
             {
-            // InternalCompleteOCL.g:7062:1: ( ( rule__PropertyContextDeclCS__Alternatives_4 )* )
-            // InternalCompleteOCL.g:7063:1: ( rule__PropertyContextDeclCS__Alternatives_4 )*
+            // InternalCompleteOCL.g:7090:1: ( ( rule__PropertyContextDeclCS__Alternatives_4 )* )
+            // InternalCompleteOCL.g:7091:1: ( rule__PropertyContextDeclCS__Alternatives_4 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getAlternatives_4());
             }
-            // InternalCompleteOCL.g:7064:1: ( rule__PropertyContextDeclCS__Alternatives_4 )*
+            // InternalCompleteOCL.g:7092:1: ( rule__PropertyContextDeclCS__Alternatives_4 )*
             loop72:
             do {
                 int alt72=2;
@@ -22373,9 +22458,9 @@
 
                 switch (alt72) {
             	case 1 :
-            	    // InternalCompleteOCL.g:7064:2: rule__PropertyContextDeclCS__Alternatives_4
+            	    // InternalCompleteOCL.g:7092:2: rule__PropertyContextDeclCS__Alternatives_4
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_31);
+            	    pushFollow(FollowSets000.FOLLOW_32);
             	    rule__PropertyContextDeclCS__Alternatives_4();
 
             	    state._fsp--;
@@ -22414,14 +22499,14 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_0__0"
-    // InternalCompleteOCL.g:7084:1: rule__PropertyContextDeclCS__Group_4_0__0 : rule__PropertyContextDeclCS__Group_4_0__0__Impl rule__PropertyContextDeclCS__Group_4_0__1 ;
+    // InternalCompleteOCL.g:7112:1: rule__PropertyContextDeclCS__Group_4_0__0 : rule__PropertyContextDeclCS__Group_4_0__0__Impl rule__PropertyContextDeclCS__Group_4_0__1 ;
     public final void rule__PropertyContextDeclCS__Group_4_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7088:1: ( rule__PropertyContextDeclCS__Group_4_0__0__Impl rule__PropertyContextDeclCS__Group_4_0__1 )
-            // InternalCompleteOCL.g:7089:2: rule__PropertyContextDeclCS__Group_4_0__0__Impl rule__PropertyContextDeclCS__Group_4_0__1
+            // InternalCompleteOCL.g:7116:1: ( rule__PropertyContextDeclCS__Group_4_0__0__Impl rule__PropertyContextDeclCS__Group_4_0__1 )
+            // InternalCompleteOCL.g:7117:2: rule__PropertyContextDeclCS__Group_4_0__0__Impl rule__PropertyContextDeclCS__Group_4_0__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__PropertyContextDeclCS__Group_4_0__0__Impl();
@@ -22452,17 +22537,17 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_0__0__Impl"
-    // InternalCompleteOCL.g:7096:1: rule__PropertyContextDeclCS__Group_4_0__0__Impl : ( 'derive' ) ;
+    // InternalCompleteOCL.g:7124:1: rule__PropertyContextDeclCS__Group_4_0__0__Impl : ( 'derive' ) ;
     public final void rule__PropertyContextDeclCS__Group_4_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7100:1: ( ( 'derive' ) )
-            // InternalCompleteOCL.g:7101:1: ( 'derive' )
+            // InternalCompleteOCL.g:7128:1: ( ( 'derive' ) )
+            // InternalCompleteOCL.g:7129:1: ( 'derive' )
             {
-            // InternalCompleteOCL.g:7101:1: ( 'derive' )
-            // InternalCompleteOCL.g:7102:1: 'derive'
+            // InternalCompleteOCL.g:7129:1: ( 'derive' )
+            // InternalCompleteOCL.g:7130:1: 'derive'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getDeriveKeyword_4_0_0());
@@ -22493,14 +22578,14 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_0__1"
-    // InternalCompleteOCL.g:7115:1: rule__PropertyContextDeclCS__Group_4_0__1 : rule__PropertyContextDeclCS__Group_4_0__1__Impl rule__PropertyContextDeclCS__Group_4_0__2 ;
+    // InternalCompleteOCL.g:7143:1: rule__PropertyContextDeclCS__Group_4_0__1 : rule__PropertyContextDeclCS__Group_4_0__1__Impl rule__PropertyContextDeclCS__Group_4_0__2 ;
     public final void rule__PropertyContextDeclCS__Group_4_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7119:1: ( rule__PropertyContextDeclCS__Group_4_0__1__Impl rule__PropertyContextDeclCS__Group_4_0__2 )
-            // InternalCompleteOCL.g:7120:2: rule__PropertyContextDeclCS__Group_4_0__1__Impl rule__PropertyContextDeclCS__Group_4_0__2
+            // InternalCompleteOCL.g:7147:1: ( rule__PropertyContextDeclCS__Group_4_0__1__Impl rule__PropertyContextDeclCS__Group_4_0__2 )
+            // InternalCompleteOCL.g:7148:2: rule__PropertyContextDeclCS__Group_4_0__1__Impl rule__PropertyContextDeclCS__Group_4_0__2
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__PropertyContextDeclCS__Group_4_0__1__Impl();
@@ -22531,22 +22616,22 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_0__1__Impl"
-    // InternalCompleteOCL.g:7127:1: rule__PropertyContextDeclCS__Group_4_0__1__Impl : ( ( ruleUnrestrictedName )? ) ;
+    // InternalCompleteOCL.g:7155:1: rule__PropertyContextDeclCS__Group_4_0__1__Impl : ( ( ruleUnrestrictedName )? ) ;
     public final void rule__PropertyContextDeclCS__Group_4_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7131:1: ( ( ( ruleUnrestrictedName )? ) )
-            // InternalCompleteOCL.g:7132:1: ( ( ruleUnrestrictedName )? )
+            // InternalCompleteOCL.g:7159:1: ( ( ( ruleUnrestrictedName )? ) )
+            // InternalCompleteOCL.g:7160:1: ( ( ruleUnrestrictedName )? )
             {
-            // InternalCompleteOCL.g:7132:1: ( ( ruleUnrestrictedName )? )
-            // InternalCompleteOCL.g:7133:1: ( ruleUnrestrictedName )?
+            // InternalCompleteOCL.g:7160:1: ( ( ruleUnrestrictedName )? )
+            // InternalCompleteOCL.g:7161:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getUnrestrictedNameParserRuleCall_4_0_1());
             }
-            // InternalCompleteOCL.g:7134:1: ( ruleUnrestrictedName )?
+            // InternalCompleteOCL.g:7162:1: ( ruleUnrestrictedName )?
             int alt73=2;
             int LA73_0 = input.LA(1);
 
@@ -22555,7 +22640,7 @@
             }
             switch (alt73) {
                 case 1 :
-                    // InternalCompleteOCL.g:7134:3: ruleUnrestrictedName
+                    // InternalCompleteOCL.g:7162:3: ruleUnrestrictedName
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -22593,14 +22678,14 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_0__2"
-    // InternalCompleteOCL.g:7144:1: rule__PropertyContextDeclCS__Group_4_0__2 : rule__PropertyContextDeclCS__Group_4_0__2__Impl rule__PropertyContextDeclCS__Group_4_0__3 ;
+    // InternalCompleteOCL.g:7172:1: rule__PropertyContextDeclCS__Group_4_0__2 : rule__PropertyContextDeclCS__Group_4_0__2__Impl rule__PropertyContextDeclCS__Group_4_0__3 ;
     public final void rule__PropertyContextDeclCS__Group_4_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7148:1: ( rule__PropertyContextDeclCS__Group_4_0__2__Impl rule__PropertyContextDeclCS__Group_4_0__3 )
-            // InternalCompleteOCL.g:7149:2: rule__PropertyContextDeclCS__Group_4_0__2__Impl rule__PropertyContextDeclCS__Group_4_0__3
+            // InternalCompleteOCL.g:7176:1: ( rule__PropertyContextDeclCS__Group_4_0__2__Impl rule__PropertyContextDeclCS__Group_4_0__3 )
+            // InternalCompleteOCL.g:7177:2: rule__PropertyContextDeclCS__Group_4_0__2__Impl rule__PropertyContextDeclCS__Group_4_0__3
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__PropertyContextDeclCS__Group_4_0__2__Impl();
@@ -22631,17 +22716,17 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_0__2__Impl"
-    // InternalCompleteOCL.g:7156:1: rule__PropertyContextDeclCS__Group_4_0__2__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:7184:1: rule__PropertyContextDeclCS__Group_4_0__2__Impl : ( ':' ) ;
     public final void rule__PropertyContextDeclCS__Group_4_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7160:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:7161:1: ( ':' )
+            // InternalCompleteOCL.g:7188:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:7189:1: ( ':' )
             {
-            // InternalCompleteOCL.g:7161:1: ( ':' )
-            // InternalCompleteOCL.g:7162:1: ':'
+            // InternalCompleteOCL.g:7189:1: ( ':' )
+            // InternalCompleteOCL.g:7190:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_4_0_2());
@@ -22672,14 +22757,14 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_0__3"
-    // InternalCompleteOCL.g:7175:1: rule__PropertyContextDeclCS__Group_4_0__3 : rule__PropertyContextDeclCS__Group_4_0__3__Impl ;
+    // InternalCompleteOCL.g:7203:1: rule__PropertyContextDeclCS__Group_4_0__3 : rule__PropertyContextDeclCS__Group_4_0__3__Impl ;
     public final void rule__PropertyContextDeclCS__Group_4_0__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7179:1: ( rule__PropertyContextDeclCS__Group_4_0__3__Impl )
-            // InternalCompleteOCL.g:7180:2: rule__PropertyContextDeclCS__Group_4_0__3__Impl
+            // InternalCompleteOCL.g:7207:1: ( rule__PropertyContextDeclCS__Group_4_0__3__Impl )
+            // InternalCompleteOCL.g:7208:2: rule__PropertyContextDeclCS__Group_4_0__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PropertyContextDeclCS__Group_4_0__3__Impl();
@@ -22705,23 +22790,23 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_0__3__Impl"
-    // InternalCompleteOCL.g:7186:1: rule__PropertyContextDeclCS__Group_4_0__3__Impl : ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 ) ) ;
+    // InternalCompleteOCL.g:7214:1: rule__PropertyContextDeclCS__Group_4_0__3__Impl : ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 ) ) ;
     public final void rule__PropertyContextDeclCS__Group_4_0__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7190:1: ( ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 ) ) )
-            // InternalCompleteOCL.g:7191:1: ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 ) )
+            // InternalCompleteOCL.g:7218:1: ( ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 ) ) )
+            // InternalCompleteOCL.g:7219:1: ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 ) )
             {
-            // InternalCompleteOCL.g:7191:1: ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 ) )
-            // InternalCompleteOCL.g:7192:1: ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 )
+            // InternalCompleteOCL.g:7219:1: ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 ) )
+            // InternalCompleteOCL.g:7220:1: ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsAssignment_4_0_3());
             }
-            // InternalCompleteOCL.g:7193:1: ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 )
-            // InternalCompleteOCL.g:7193:2: rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3
+            // InternalCompleteOCL.g:7221:1: ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 )
+            // InternalCompleteOCL.g:7221:2: rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3();
@@ -22756,14 +22841,14 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_1__0"
-    // InternalCompleteOCL.g:7211:1: rule__PropertyContextDeclCS__Group_4_1__0 : rule__PropertyContextDeclCS__Group_4_1__0__Impl rule__PropertyContextDeclCS__Group_4_1__1 ;
+    // InternalCompleteOCL.g:7239:1: rule__PropertyContextDeclCS__Group_4_1__0 : rule__PropertyContextDeclCS__Group_4_1__0__Impl rule__PropertyContextDeclCS__Group_4_1__1 ;
     public final void rule__PropertyContextDeclCS__Group_4_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7215:1: ( rule__PropertyContextDeclCS__Group_4_1__0__Impl rule__PropertyContextDeclCS__Group_4_1__1 )
-            // InternalCompleteOCL.g:7216:2: rule__PropertyContextDeclCS__Group_4_1__0__Impl rule__PropertyContextDeclCS__Group_4_1__1
+            // InternalCompleteOCL.g:7243:1: ( rule__PropertyContextDeclCS__Group_4_1__0__Impl rule__PropertyContextDeclCS__Group_4_1__1 )
+            // InternalCompleteOCL.g:7244:2: rule__PropertyContextDeclCS__Group_4_1__0__Impl rule__PropertyContextDeclCS__Group_4_1__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__PropertyContextDeclCS__Group_4_1__0__Impl();
@@ -22794,17 +22879,17 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_1__0__Impl"
-    // InternalCompleteOCL.g:7223:1: rule__PropertyContextDeclCS__Group_4_1__0__Impl : ( 'init' ) ;
+    // InternalCompleteOCL.g:7251:1: rule__PropertyContextDeclCS__Group_4_1__0__Impl : ( 'init' ) ;
     public final void rule__PropertyContextDeclCS__Group_4_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7227:1: ( ( 'init' ) )
-            // InternalCompleteOCL.g:7228:1: ( 'init' )
+            // InternalCompleteOCL.g:7255:1: ( ( 'init' ) )
+            // InternalCompleteOCL.g:7256:1: ( 'init' )
             {
-            // InternalCompleteOCL.g:7228:1: ( 'init' )
-            // InternalCompleteOCL.g:7229:1: 'init'
+            // InternalCompleteOCL.g:7256:1: ( 'init' )
+            // InternalCompleteOCL.g:7257:1: 'init'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getInitKeyword_4_1_0());
@@ -22835,14 +22920,14 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_1__1"
-    // InternalCompleteOCL.g:7242:1: rule__PropertyContextDeclCS__Group_4_1__1 : rule__PropertyContextDeclCS__Group_4_1__1__Impl rule__PropertyContextDeclCS__Group_4_1__2 ;
+    // InternalCompleteOCL.g:7270:1: rule__PropertyContextDeclCS__Group_4_1__1 : rule__PropertyContextDeclCS__Group_4_1__1__Impl rule__PropertyContextDeclCS__Group_4_1__2 ;
     public final void rule__PropertyContextDeclCS__Group_4_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7246:1: ( rule__PropertyContextDeclCS__Group_4_1__1__Impl rule__PropertyContextDeclCS__Group_4_1__2 )
-            // InternalCompleteOCL.g:7247:2: rule__PropertyContextDeclCS__Group_4_1__1__Impl rule__PropertyContextDeclCS__Group_4_1__2
+            // InternalCompleteOCL.g:7274:1: ( rule__PropertyContextDeclCS__Group_4_1__1__Impl rule__PropertyContextDeclCS__Group_4_1__2 )
+            // InternalCompleteOCL.g:7275:2: rule__PropertyContextDeclCS__Group_4_1__1__Impl rule__PropertyContextDeclCS__Group_4_1__2
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__PropertyContextDeclCS__Group_4_1__1__Impl();
@@ -22873,22 +22958,22 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_1__1__Impl"
-    // InternalCompleteOCL.g:7254:1: rule__PropertyContextDeclCS__Group_4_1__1__Impl : ( ( ruleUnrestrictedName )? ) ;
+    // InternalCompleteOCL.g:7282:1: rule__PropertyContextDeclCS__Group_4_1__1__Impl : ( ( ruleUnrestrictedName )? ) ;
     public final void rule__PropertyContextDeclCS__Group_4_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7258:1: ( ( ( ruleUnrestrictedName )? ) )
-            // InternalCompleteOCL.g:7259:1: ( ( ruleUnrestrictedName )? )
+            // InternalCompleteOCL.g:7286:1: ( ( ( ruleUnrestrictedName )? ) )
+            // InternalCompleteOCL.g:7287:1: ( ( ruleUnrestrictedName )? )
             {
-            // InternalCompleteOCL.g:7259:1: ( ( ruleUnrestrictedName )? )
-            // InternalCompleteOCL.g:7260:1: ( ruleUnrestrictedName )?
+            // InternalCompleteOCL.g:7287:1: ( ( ruleUnrestrictedName )? )
+            // InternalCompleteOCL.g:7288:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getUnrestrictedNameParserRuleCall_4_1_1());
             }
-            // InternalCompleteOCL.g:7261:1: ( ruleUnrestrictedName )?
+            // InternalCompleteOCL.g:7289:1: ( ruleUnrestrictedName )?
             int alt74=2;
             int LA74_0 = input.LA(1);
 
@@ -22897,7 +22982,7 @@
             }
             switch (alt74) {
                 case 1 :
-                    // InternalCompleteOCL.g:7261:3: ruleUnrestrictedName
+                    // InternalCompleteOCL.g:7289:3: ruleUnrestrictedName
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -22935,14 +23020,14 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_1__2"
-    // InternalCompleteOCL.g:7271:1: rule__PropertyContextDeclCS__Group_4_1__2 : rule__PropertyContextDeclCS__Group_4_1__2__Impl rule__PropertyContextDeclCS__Group_4_1__3 ;
+    // InternalCompleteOCL.g:7299:1: rule__PropertyContextDeclCS__Group_4_1__2 : rule__PropertyContextDeclCS__Group_4_1__2__Impl rule__PropertyContextDeclCS__Group_4_1__3 ;
     public final void rule__PropertyContextDeclCS__Group_4_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7275:1: ( rule__PropertyContextDeclCS__Group_4_1__2__Impl rule__PropertyContextDeclCS__Group_4_1__3 )
-            // InternalCompleteOCL.g:7276:2: rule__PropertyContextDeclCS__Group_4_1__2__Impl rule__PropertyContextDeclCS__Group_4_1__3
+            // InternalCompleteOCL.g:7303:1: ( rule__PropertyContextDeclCS__Group_4_1__2__Impl rule__PropertyContextDeclCS__Group_4_1__3 )
+            // InternalCompleteOCL.g:7304:2: rule__PropertyContextDeclCS__Group_4_1__2__Impl rule__PropertyContextDeclCS__Group_4_1__3
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__PropertyContextDeclCS__Group_4_1__2__Impl();
@@ -22973,17 +23058,17 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_1__2__Impl"
-    // InternalCompleteOCL.g:7283:1: rule__PropertyContextDeclCS__Group_4_1__2__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:7311:1: rule__PropertyContextDeclCS__Group_4_1__2__Impl : ( ':' ) ;
     public final void rule__PropertyContextDeclCS__Group_4_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7287:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:7288:1: ( ':' )
+            // InternalCompleteOCL.g:7315:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:7316:1: ( ':' )
             {
-            // InternalCompleteOCL.g:7288:1: ( ':' )
-            // InternalCompleteOCL.g:7289:1: ':'
+            // InternalCompleteOCL.g:7316:1: ( ':' )
+            // InternalCompleteOCL.g:7317:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_4_1_2());
@@ -23014,14 +23099,14 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_1__3"
-    // InternalCompleteOCL.g:7302:1: rule__PropertyContextDeclCS__Group_4_1__3 : rule__PropertyContextDeclCS__Group_4_1__3__Impl ;
+    // InternalCompleteOCL.g:7330:1: rule__PropertyContextDeclCS__Group_4_1__3 : rule__PropertyContextDeclCS__Group_4_1__3__Impl ;
     public final void rule__PropertyContextDeclCS__Group_4_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7306:1: ( rule__PropertyContextDeclCS__Group_4_1__3__Impl )
-            // InternalCompleteOCL.g:7307:2: rule__PropertyContextDeclCS__Group_4_1__3__Impl
+            // InternalCompleteOCL.g:7334:1: ( rule__PropertyContextDeclCS__Group_4_1__3__Impl )
+            // InternalCompleteOCL.g:7335:2: rule__PropertyContextDeclCS__Group_4_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PropertyContextDeclCS__Group_4_1__3__Impl();
@@ -23047,23 +23132,23 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__Group_4_1__3__Impl"
-    // InternalCompleteOCL.g:7313:1: rule__PropertyContextDeclCS__Group_4_1__3__Impl : ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 ) ) ;
+    // InternalCompleteOCL.g:7341:1: rule__PropertyContextDeclCS__Group_4_1__3__Impl : ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 ) ) ;
     public final void rule__PropertyContextDeclCS__Group_4_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7317:1: ( ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 ) ) )
-            // InternalCompleteOCL.g:7318:1: ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 ) )
+            // InternalCompleteOCL.g:7345:1: ( ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 ) ) )
+            // InternalCompleteOCL.g:7346:1: ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 ) )
             {
-            // InternalCompleteOCL.g:7318:1: ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 ) )
-            // InternalCompleteOCL.g:7319:1: ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 )
+            // InternalCompleteOCL.g:7346:1: ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 ) )
+            // InternalCompleteOCL.g:7347:1: ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsAssignment_4_1_3());
             }
-            // InternalCompleteOCL.g:7320:1: ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 )
-            // InternalCompleteOCL.g:7320:2: rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3
+            // InternalCompleteOCL.g:7348:1: ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 )
+            // InternalCompleteOCL.g:7348:2: rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3();
@@ -23098,16 +23183,16 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__0"
-    // InternalCompleteOCL.g:7338:1: rule__TemplateSignatureCS__Group_0__0 : rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1 ;
+    // InternalCompleteOCL.g:7366:1: rule__TemplateSignatureCS__Group_0__0 : rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1 ;
     public final void rule__TemplateSignatureCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7342:1: ( rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1 )
-            // InternalCompleteOCL.g:7343:2: rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1
+            // InternalCompleteOCL.g:7370:1: ( rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1 )
+            // InternalCompleteOCL.g:7371:2: rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__TemplateSignatureCS__Group_0__0__Impl();
 
             state._fsp--;
@@ -23136,17 +23221,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__0__Impl"
-    // InternalCompleteOCL.g:7350:1: rule__TemplateSignatureCS__Group_0__0__Impl : ( '(' ) ;
+    // InternalCompleteOCL.g:7378:1: rule__TemplateSignatureCS__Group_0__0__Impl : ( '(' ) ;
     public final void rule__TemplateSignatureCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7354:1: ( ( '(' ) )
-            // InternalCompleteOCL.g:7355:1: ( '(' )
+            // InternalCompleteOCL.g:7382:1: ( ( '(' ) )
+            // InternalCompleteOCL.g:7383:1: ( '(' )
             {
-            // InternalCompleteOCL.g:7355:1: ( '(' )
-            // InternalCompleteOCL.g:7356:1: '('
+            // InternalCompleteOCL.g:7383:1: ( '(' )
+            // InternalCompleteOCL.g:7384:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0());
@@ -23177,16 +23262,16 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__1"
-    // InternalCompleteOCL.g:7369:1: rule__TemplateSignatureCS__Group_0__1 : rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2 ;
+    // InternalCompleteOCL.g:7397:1: rule__TemplateSignatureCS__Group_0__1 : rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2 ;
     public final void rule__TemplateSignatureCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7373:1: ( rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2 )
-            // InternalCompleteOCL.g:7374:2: rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2
+            // InternalCompleteOCL.g:7401:1: ( rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2 )
+            // InternalCompleteOCL.g:7402:2: rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2
             {
-            pushFollow(FollowSets000.FOLLOW_32);
+            pushFollow(FollowSets000.FOLLOW_33);
             rule__TemplateSignatureCS__Group_0__1__Impl();
 
             state._fsp--;
@@ -23215,23 +23300,23 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__1__Impl"
-    // InternalCompleteOCL.g:7381:1: rule__TemplateSignatureCS__Group_0__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) ) ;
+    // InternalCompleteOCL.g:7409:1: rule__TemplateSignatureCS__Group_0__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) ) ;
     public final void rule__TemplateSignatureCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7385:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) ) )
-            // InternalCompleteOCL.g:7386:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) )
+            // InternalCompleteOCL.g:7413:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) ) )
+            // InternalCompleteOCL.g:7414:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) )
             {
-            // InternalCompleteOCL.g:7386:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) )
-            // InternalCompleteOCL.g:7387:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 )
+            // InternalCompleteOCL.g:7414:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) )
+            // InternalCompleteOCL.g:7415:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_1());
             }
-            // InternalCompleteOCL.g:7388:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 )
-            // InternalCompleteOCL.g:7388:2: rule__TemplateSignatureCS__OwnedParametersAssignment_0_1
+            // InternalCompleteOCL.g:7416:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 )
+            // InternalCompleteOCL.g:7416:2: rule__TemplateSignatureCS__OwnedParametersAssignment_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__OwnedParametersAssignment_0_1();
@@ -23266,16 +23351,16 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__2"
-    // InternalCompleteOCL.g:7398:1: rule__TemplateSignatureCS__Group_0__2 : rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3 ;
+    // InternalCompleteOCL.g:7426:1: rule__TemplateSignatureCS__Group_0__2 : rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3 ;
     public final void rule__TemplateSignatureCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7402:1: ( rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3 )
-            // InternalCompleteOCL.g:7403:2: rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3
+            // InternalCompleteOCL.g:7430:1: ( rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3 )
+            // InternalCompleteOCL.g:7431:2: rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3
             {
-            pushFollow(FollowSets000.FOLLOW_32);
+            pushFollow(FollowSets000.FOLLOW_33);
             rule__TemplateSignatureCS__Group_0__2__Impl();
 
             state._fsp--;
@@ -23304,22 +23389,22 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__2__Impl"
-    // InternalCompleteOCL.g:7410:1: rule__TemplateSignatureCS__Group_0__2__Impl : ( ( rule__TemplateSignatureCS__Group_0_2__0 )* ) ;
+    // InternalCompleteOCL.g:7438:1: rule__TemplateSignatureCS__Group_0__2__Impl : ( ( rule__TemplateSignatureCS__Group_0_2__0 )* ) ;
     public final void rule__TemplateSignatureCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7414:1: ( ( ( rule__TemplateSignatureCS__Group_0_2__0 )* ) )
-            // InternalCompleteOCL.g:7415:1: ( ( rule__TemplateSignatureCS__Group_0_2__0 )* )
+            // InternalCompleteOCL.g:7442:1: ( ( ( rule__TemplateSignatureCS__Group_0_2__0 )* ) )
+            // InternalCompleteOCL.g:7443:1: ( ( rule__TemplateSignatureCS__Group_0_2__0 )* )
             {
-            // InternalCompleteOCL.g:7415:1: ( ( rule__TemplateSignatureCS__Group_0_2__0 )* )
-            // InternalCompleteOCL.g:7416:1: ( rule__TemplateSignatureCS__Group_0_2__0 )*
+            // InternalCompleteOCL.g:7443:1: ( ( rule__TemplateSignatureCS__Group_0_2__0 )* )
+            // InternalCompleteOCL.g:7444:1: ( rule__TemplateSignatureCS__Group_0_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getGroup_0_2());
             }
-            // InternalCompleteOCL.g:7417:1: ( rule__TemplateSignatureCS__Group_0_2__0 )*
+            // InternalCompleteOCL.g:7445:1: ( rule__TemplateSignatureCS__Group_0_2__0 )*
             loop75:
             do {
                 int alt75=2;
@@ -23332,9 +23417,9 @@
 
                 switch (alt75) {
             	case 1 :
-            	    // InternalCompleteOCL.g:7417:2: rule__TemplateSignatureCS__Group_0_2__0
+            	    // InternalCompleteOCL.g:7445:2: rule__TemplateSignatureCS__Group_0_2__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__TemplateSignatureCS__Group_0_2__0();
 
             	    state._fsp--;
@@ -23373,14 +23458,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__3"
-    // InternalCompleteOCL.g:7427:1: rule__TemplateSignatureCS__Group_0__3 : rule__TemplateSignatureCS__Group_0__3__Impl ;
+    // InternalCompleteOCL.g:7455:1: rule__TemplateSignatureCS__Group_0__3 : rule__TemplateSignatureCS__Group_0__3__Impl ;
     public final void rule__TemplateSignatureCS__Group_0__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7431:1: ( rule__TemplateSignatureCS__Group_0__3__Impl )
-            // InternalCompleteOCL.g:7432:2: rule__TemplateSignatureCS__Group_0__3__Impl
+            // InternalCompleteOCL.g:7459:1: ( rule__TemplateSignatureCS__Group_0__3__Impl )
+            // InternalCompleteOCL.g:7460:2: rule__TemplateSignatureCS__Group_0__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__Group_0__3__Impl();
@@ -23406,17 +23491,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__3__Impl"
-    // InternalCompleteOCL.g:7438:1: rule__TemplateSignatureCS__Group_0__3__Impl : ( ')' ) ;
+    // InternalCompleteOCL.g:7466:1: rule__TemplateSignatureCS__Group_0__3__Impl : ( ')' ) ;
     public final void rule__TemplateSignatureCS__Group_0__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7442:1: ( ( ')' ) )
-            // InternalCompleteOCL.g:7443:1: ( ')' )
+            // InternalCompleteOCL.g:7470:1: ( ( ')' ) )
+            // InternalCompleteOCL.g:7471:1: ( ')' )
             {
-            // InternalCompleteOCL.g:7443:1: ( ')' )
-            // InternalCompleteOCL.g:7444:1: ')'
+            // InternalCompleteOCL.g:7471:1: ( ')' )
+            // InternalCompleteOCL.g:7472:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3());
@@ -23447,16 +23532,16 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0_2__0"
-    // InternalCompleteOCL.g:7465:1: rule__TemplateSignatureCS__Group_0_2__0 : rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1 ;
+    // InternalCompleteOCL.g:7493:1: rule__TemplateSignatureCS__Group_0_2__0 : rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1 ;
     public final void rule__TemplateSignatureCS__Group_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7469:1: ( rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1 )
-            // InternalCompleteOCL.g:7470:2: rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1
+            // InternalCompleteOCL.g:7497:1: ( rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1 )
+            // InternalCompleteOCL.g:7498:2: rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__TemplateSignatureCS__Group_0_2__0__Impl();
 
             state._fsp--;
@@ -23485,17 +23570,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0_2__0__Impl"
-    // InternalCompleteOCL.g:7477:1: rule__TemplateSignatureCS__Group_0_2__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:7505:1: rule__TemplateSignatureCS__Group_0_2__0__Impl : ( ',' ) ;
     public final void rule__TemplateSignatureCS__Group_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7481:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:7482:1: ( ',' )
+            // InternalCompleteOCL.g:7509:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:7510:1: ( ',' )
             {
-            // InternalCompleteOCL.g:7482:1: ( ',' )
-            // InternalCompleteOCL.g:7483:1: ','
+            // InternalCompleteOCL.g:7510:1: ( ',' )
+            // InternalCompleteOCL.g:7511:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0());
@@ -23526,14 +23611,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0_2__1"
-    // InternalCompleteOCL.g:7496:1: rule__TemplateSignatureCS__Group_0_2__1 : rule__TemplateSignatureCS__Group_0_2__1__Impl ;
+    // InternalCompleteOCL.g:7524:1: rule__TemplateSignatureCS__Group_0_2__1 : rule__TemplateSignatureCS__Group_0_2__1__Impl ;
     public final void rule__TemplateSignatureCS__Group_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7500:1: ( rule__TemplateSignatureCS__Group_0_2__1__Impl )
-            // InternalCompleteOCL.g:7501:2: rule__TemplateSignatureCS__Group_0_2__1__Impl
+            // InternalCompleteOCL.g:7528:1: ( rule__TemplateSignatureCS__Group_0_2__1__Impl )
+            // InternalCompleteOCL.g:7529:2: rule__TemplateSignatureCS__Group_0_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__Group_0_2__1__Impl();
@@ -23559,23 +23644,23 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0_2__1__Impl"
-    // InternalCompleteOCL.g:7507:1: rule__TemplateSignatureCS__Group_0_2__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) ) ;
+    // InternalCompleteOCL.g:7535:1: rule__TemplateSignatureCS__Group_0_2__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) ) ;
     public final void rule__TemplateSignatureCS__Group_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7511:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) ) )
-            // InternalCompleteOCL.g:7512:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) )
+            // InternalCompleteOCL.g:7539:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) ) )
+            // InternalCompleteOCL.g:7540:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) )
             {
-            // InternalCompleteOCL.g:7512:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) )
-            // InternalCompleteOCL.g:7513:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 )
+            // InternalCompleteOCL.g:7540:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) )
+            // InternalCompleteOCL.g:7541:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_2_1());
             }
-            // InternalCompleteOCL.g:7514:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 )
-            // InternalCompleteOCL.g:7514:2: rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1
+            // InternalCompleteOCL.g:7542:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 )
+            // InternalCompleteOCL.g:7542:2: rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1();
@@ -23610,16 +23695,16 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__0"
-    // InternalCompleteOCL.g:7528:1: rule__TemplateSignatureCS__Group_1__0 : rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1 ;
+    // InternalCompleteOCL.g:7556:1: rule__TemplateSignatureCS__Group_1__0 : rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1 ;
     public final void rule__TemplateSignatureCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7532:1: ( rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1 )
-            // InternalCompleteOCL.g:7533:2: rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1
+            // InternalCompleteOCL.g:7560:1: ( rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1 )
+            // InternalCompleteOCL.g:7561:2: rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__TemplateSignatureCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -23648,17 +23733,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:7540:1: rule__TemplateSignatureCS__Group_1__0__Impl : ( '<' ) ;
+    // InternalCompleteOCL.g:7568:1: rule__TemplateSignatureCS__Group_1__0__Impl : ( '<' ) ;
     public final void rule__TemplateSignatureCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7544:1: ( ( '<' ) )
-            // InternalCompleteOCL.g:7545:1: ( '<' )
+            // InternalCompleteOCL.g:7572:1: ( ( '<' ) )
+            // InternalCompleteOCL.g:7573:1: ( '<' )
             {
-            // InternalCompleteOCL.g:7545:1: ( '<' )
-            // InternalCompleteOCL.g:7546:1: '<'
+            // InternalCompleteOCL.g:7573:1: ( '<' )
+            // InternalCompleteOCL.g:7574:1: '<'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0());
@@ -23689,16 +23774,16 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__1"
-    // InternalCompleteOCL.g:7559:1: rule__TemplateSignatureCS__Group_1__1 : rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2 ;
+    // InternalCompleteOCL.g:7587:1: rule__TemplateSignatureCS__Group_1__1 : rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2 ;
     public final void rule__TemplateSignatureCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7563:1: ( rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2 )
-            // InternalCompleteOCL.g:7564:2: rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2
+            // InternalCompleteOCL.g:7591:1: ( rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2 )
+            // InternalCompleteOCL.g:7592:2: rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2
             {
-            pushFollow(FollowSets000.FOLLOW_33);
+            pushFollow(FollowSets000.FOLLOW_34);
             rule__TemplateSignatureCS__Group_1__1__Impl();
 
             state._fsp--;
@@ -23727,23 +23812,23 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:7571:1: rule__TemplateSignatureCS__Group_1__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:7599:1: rule__TemplateSignatureCS__Group_1__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) ) ;
     public final void rule__TemplateSignatureCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7575:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:7576:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) )
+            // InternalCompleteOCL.g:7603:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:7604:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:7576:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) )
-            // InternalCompleteOCL.g:7577:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 )
+            // InternalCompleteOCL.g:7604:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) )
+            // InternalCompleteOCL.g:7605:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_1());
             }
-            // InternalCompleteOCL.g:7578:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 )
-            // InternalCompleteOCL.g:7578:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1_1
+            // InternalCompleteOCL.g:7606:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 )
+            // InternalCompleteOCL.g:7606:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__OwnedParametersAssignment_1_1();
@@ -23778,16 +23863,16 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__2"
-    // InternalCompleteOCL.g:7588:1: rule__TemplateSignatureCS__Group_1__2 : rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3 ;
+    // InternalCompleteOCL.g:7616:1: rule__TemplateSignatureCS__Group_1__2 : rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3 ;
     public final void rule__TemplateSignatureCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7592:1: ( rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3 )
-            // InternalCompleteOCL.g:7593:2: rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3
+            // InternalCompleteOCL.g:7620:1: ( rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3 )
+            // InternalCompleteOCL.g:7621:2: rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3
             {
-            pushFollow(FollowSets000.FOLLOW_33);
+            pushFollow(FollowSets000.FOLLOW_34);
             rule__TemplateSignatureCS__Group_1__2__Impl();
 
             state._fsp--;
@@ -23816,22 +23901,22 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__2__Impl"
-    // InternalCompleteOCL.g:7600:1: rule__TemplateSignatureCS__Group_1__2__Impl : ( ( rule__TemplateSignatureCS__Group_1_2__0 )* ) ;
+    // InternalCompleteOCL.g:7628:1: rule__TemplateSignatureCS__Group_1__2__Impl : ( ( rule__TemplateSignatureCS__Group_1_2__0 )* ) ;
     public final void rule__TemplateSignatureCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7604:1: ( ( ( rule__TemplateSignatureCS__Group_1_2__0 )* ) )
-            // InternalCompleteOCL.g:7605:1: ( ( rule__TemplateSignatureCS__Group_1_2__0 )* )
+            // InternalCompleteOCL.g:7632:1: ( ( ( rule__TemplateSignatureCS__Group_1_2__0 )* ) )
+            // InternalCompleteOCL.g:7633:1: ( ( rule__TemplateSignatureCS__Group_1_2__0 )* )
             {
-            // InternalCompleteOCL.g:7605:1: ( ( rule__TemplateSignatureCS__Group_1_2__0 )* )
-            // InternalCompleteOCL.g:7606:1: ( rule__TemplateSignatureCS__Group_1_2__0 )*
+            // InternalCompleteOCL.g:7633:1: ( ( rule__TemplateSignatureCS__Group_1_2__0 )* )
+            // InternalCompleteOCL.g:7634:1: ( rule__TemplateSignatureCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getGroup_1_2());
             }
-            // InternalCompleteOCL.g:7607:1: ( rule__TemplateSignatureCS__Group_1_2__0 )*
+            // InternalCompleteOCL.g:7635:1: ( rule__TemplateSignatureCS__Group_1_2__0 )*
             loop76:
             do {
                 int alt76=2;
@@ -23844,9 +23929,9 @@
 
                 switch (alt76) {
             	case 1 :
-            	    // InternalCompleteOCL.g:7607:2: rule__TemplateSignatureCS__Group_1_2__0
+            	    // InternalCompleteOCL.g:7635:2: rule__TemplateSignatureCS__Group_1_2__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__TemplateSignatureCS__Group_1_2__0();
 
             	    state._fsp--;
@@ -23885,14 +23970,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__3"
-    // InternalCompleteOCL.g:7617:1: rule__TemplateSignatureCS__Group_1__3 : rule__TemplateSignatureCS__Group_1__3__Impl ;
+    // InternalCompleteOCL.g:7645:1: rule__TemplateSignatureCS__Group_1__3 : rule__TemplateSignatureCS__Group_1__3__Impl ;
     public final void rule__TemplateSignatureCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7621:1: ( rule__TemplateSignatureCS__Group_1__3__Impl )
-            // InternalCompleteOCL.g:7622:2: rule__TemplateSignatureCS__Group_1__3__Impl
+            // InternalCompleteOCL.g:7649:1: ( rule__TemplateSignatureCS__Group_1__3__Impl )
+            // InternalCompleteOCL.g:7650:2: rule__TemplateSignatureCS__Group_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__Group_1__3__Impl();
@@ -23918,17 +24003,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__3__Impl"
-    // InternalCompleteOCL.g:7628:1: rule__TemplateSignatureCS__Group_1__3__Impl : ( '>' ) ;
+    // InternalCompleteOCL.g:7656:1: rule__TemplateSignatureCS__Group_1__3__Impl : ( '>' ) ;
     public final void rule__TemplateSignatureCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7632:1: ( ( '>' ) )
-            // InternalCompleteOCL.g:7633:1: ( '>' )
+            // InternalCompleteOCL.g:7660:1: ( ( '>' ) )
+            // InternalCompleteOCL.g:7661:1: ( '>' )
             {
-            // InternalCompleteOCL.g:7633:1: ( '>' )
-            // InternalCompleteOCL.g:7634:1: '>'
+            // InternalCompleteOCL.g:7661:1: ( '>' )
+            // InternalCompleteOCL.g:7662:1: '>'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3());
@@ -23959,16 +24044,16 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1_2__0"
-    // InternalCompleteOCL.g:7655:1: rule__TemplateSignatureCS__Group_1_2__0 : rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1 ;
+    // InternalCompleteOCL.g:7683:1: rule__TemplateSignatureCS__Group_1_2__0 : rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1 ;
     public final void rule__TemplateSignatureCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7659:1: ( rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1 )
-            // InternalCompleteOCL.g:7660:2: rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1
+            // InternalCompleteOCL.g:7687:1: ( rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1 )
+            // InternalCompleteOCL.g:7688:2: rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__TemplateSignatureCS__Group_1_2__0__Impl();
 
             state._fsp--;
@@ -23997,17 +24082,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1_2__0__Impl"
-    // InternalCompleteOCL.g:7667:1: rule__TemplateSignatureCS__Group_1_2__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:7695:1: rule__TemplateSignatureCS__Group_1_2__0__Impl : ( ',' ) ;
     public final void rule__TemplateSignatureCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7671:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:7672:1: ( ',' )
+            // InternalCompleteOCL.g:7699:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:7700:1: ( ',' )
             {
-            // InternalCompleteOCL.g:7672:1: ( ',' )
-            // InternalCompleteOCL.g:7673:1: ','
+            // InternalCompleteOCL.g:7700:1: ( ',' )
+            // InternalCompleteOCL.g:7701:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0());
@@ -24038,14 +24123,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1_2__1"
-    // InternalCompleteOCL.g:7686:1: rule__TemplateSignatureCS__Group_1_2__1 : rule__TemplateSignatureCS__Group_1_2__1__Impl ;
+    // InternalCompleteOCL.g:7714:1: rule__TemplateSignatureCS__Group_1_2__1 : rule__TemplateSignatureCS__Group_1_2__1__Impl ;
     public final void rule__TemplateSignatureCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7690:1: ( rule__TemplateSignatureCS__Group_1_2__1__Impl )
-            // InternalCompleteOCL.g:7691:2: rule__TemplateSignatureCS__Group_1_2__1__Impl
+            // InternalCompleteOCL.g:7718:1: ( rule__TemplateSignatureCS__Group_1_2__1__Impl )
+            // InternalCompleteOCL.g:7719:2: rule__TemplateSignatureCS__Group_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__Group_1_2__1__Impl();
@@ -24071,23 +24156,23 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1_2__1__Impl"
-    // InternalCompleteOCL.g:7697:1: rule__TemplateSignatureCS__Group_1_2__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) ) ;
+    // InternalCompleteOCL.g:7725:1: rule__TemplateSignatureCS__Group_1_2__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) ) ;
     public final void rule__TemplateSignatureCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7701:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) ) )
-            // InternalCompleteOCL.g:7702:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) )
+            // InternalCompleteOCL.g:7729:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) ) )
+            // InternalCompleteOCL.g:7730:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) )
             {
-            // InternalCompleteOCL.g:7702:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) )
-            // InternalCompleteOCL.g:7703:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 )
+            // InternalCompleteOCL.g:7730:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) )
+            // InternalCompleteOCL.g:7731:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_2_1());
             }
-            // InternalCompleteOCL.g:7704:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 )
-            // InternalCompleteOCL.g:7704:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1
+            // InternalCompleteOCL.g:7732:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 )
+            // InternalCompleteOCL.g:7732:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1();
@@ -24122,16 +24207,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgExpCS__Group_0__0"
-    // InternalCompleteOCL.g:7718:1: rule__NavigatingArgExpCS__Group_0__0 : rule__NavigatingArgExpCS__Group_0__0__Impl rule__NavigatingArgExpCS__Group_0__1 ;
+    // InternalCompleteOCL.g:7746:1: rule__NavigatingArgExpCS__Group_0__0 : rule__NavigatingArgExpCS__Group_0__0__Impl rule__NavigatingArgExpCS__Group_0__1 ;
     public final void rule__NavigatingArgExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7722:1: ( rule__NavigatingArgExpCS__Group_0__0__Impl rule__NavigatingArgExpCS__Group_0__1 )
-            // InternalCompleteOCL.g:7723:2: rule__NavigatingArgExpCS__Group_0__0__Impl rule__NavigatingArgExpCS__Group_0__1
+            // InternalCompleteOCL.g:7750:1: ( rule__NavigatingArgExpCS__Group_0__0__Impl rule__NavigatingArgExpCS__Group_0__1 )
+            // InternalCompleteOCL.g:7751:2: rule__NavigatingArgExpCS__Group_0__0__Impl rule__NavigatingArgExpCS__Group_0__1
             {
-            pushFollow(FollowSets000.FOLLOW_34);
+            pushFollow(FollowSets000.FOLLOW_35);
             rule__NavigatingArgExpCS__Group_0__0__Impl();
 
             state._fsp--;
@@ -24160,23 +24245,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgExpCS__Group_0__0__Impl"
-    // InternalCompleteOCL.g:7730:1: rule__NavigatingArgExpCS__Group_0__0__Impl : ( () ) ;
+    // InternalCompleteOCL.g:7758:1: rule__NavigatingArgExpCS__Group_0__0__Impl : ( () ) ;
     public final void rule__NavigatingArgExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7734:1: ( ( () ) )
-            // InternalCompleteOCL.g:7735:1: ( () )
+            // InternalCompleteOCL.g:7762:1: ( ( () ) )
+            // InternalCompleteOCL.g:7763:1: ( () )
             {
-            // InternalCompleteOCL.g:7735:1: ( () )
-            // InternalCompleteOCL.g:7736:1: ()
+            // InternalCompleteOCL.g:7763:1: ( () )
+            // InternalCompleteOCL.g:7764:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgExpCSAccess().getOCLMessageArgCSAction_0_0());
             }
-            // InternalCompleteOCL.g:7737:1: ()
-            // InternalCompleteOCL.g:7739:1:
+            // InternalCompleteOCL.g:7765:1: ()
+            // InternalCompleteOCL.g:7767:1:
             {
             }
 
@@ -24201,14 +24286,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgExpCS__Group_0__1"
-    // InternalCompleteOCL.g:7749:1: rule__NavigatingArgExpCS__Group_0__1 : rule__NavigatingArgExpCS__Group_0__1__Impl ;
+    // InternalCompleteOCL.g:7777:1: rule__NavigatingArgExpCS__Group_0__1 : rule__NavigatingArgExpCS__Group_0__1__Impl ;
     public final void rule__NavigatingArgExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7753:1: ( rule__NavigatingArgExpCS__Group_0__1__Impl )
-            // InternalCompleteOCL.g:7754:2: rule__NavigatingArgExpCS__Group_0__1__Impl
+            // InternalCompleteOCL.g:7781:1: ( rule__NavigatingArgExpCS__Group_0__1__Impl )
+            // InternalCompleteOCL.g:7782:2: rule__NavigatingArgExpCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgExpCS__Group_0__1__Impl();
@@ -24234,17 +24319,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgExpCS__Group_0__1__Impl"
-    // InternalCompleteOCL.g:7760:1: rule__NavigatingArgExpCS__Group_0__1__Impl : ( '?' ) ;
+    // InternalCompleteOCL.g:7788:1: rule__NavigatingArgExpCS__Group_0__1__Impl : ( '?' ) ;
     public final void rule__NavigatingArgExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7764:1: ( ( '?' ) )
-            // InternalCompleteOCL.g:7765:1: ( '?' )
+            // InternalCompleteOCL.g:7792:1: ( ( '?' ) )
+            // InternalCompleteOCL.g:7793:1: ( '?' )
             {
-            // InternalCompleteOCL.g:7765:1: ( '?' )
-            // InternalCompleteOCL.g:7766:1: '?'
+            // InternalCompleteOCL.g:7793:1: ( '?' )
+            // InternalCompleteOCL.g:7794:1: '?'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgExpCSAccess().getQuestionMarkKeyword_0_1());
@@ -24275,16 +24360,16 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group__0"
-    // InternalCompleteOCL.g:7783:1: rule__URIPathNameCS__Group__0 : rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 ;
+    // InternalCompleteOCL.g:7811:1: rule__URIPathNameCS__Group__0 : rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 ;
     public final void rule__URIPathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7787:1: ( rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 )
-            // InternalCompleteOCL.g:7788:2: rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1
+            // InternalCompleteOCL.g:7815:1: ( rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 )
+            // InternalCompleteOCL.g:7816:2: rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_35);
+            pushFollow(FollowSets000.FOLLOW_36);
             rule__URIPathNameCS__Group__0__Impl();
 
             state._fsp--;
@@ -24313,23 +24398,23 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group__0__Impl"
-    // InternalCompleteOCL.g:7795:1: rule__URIPathNameCS__Group__0__Impl : ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:7823:1: rule__URIPathNameCS__Group__0__Impl : ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) ;
     public final void rule__URIPathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7799:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) )
-            // InternalCompleteOCL.g:7800:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalCompleteOCL.g:7827:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) )
+            // InternalCompleteOCL.g:7828:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:7800:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
-            // InternalCompleteOCL.g:7801:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalCompleteOCL.g:7828:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalCompleteOCL.g:7829:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
-            // InternalCompleteOCL.g:7802:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
-            // InternalCompleteOCL.g:7802:2: rule__URIPathNameCS__OwnedPathElementsAssignment_0
+            // InternalCompleteOCL.g:7830:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalCompleteOCL.g:7830:2: rule__URIPathNameCS__OwnedPathElementsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIPathNameCS__OwnedPathElementsAssignment_0();
@@ -24364,14 +24449,14 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group__1"
-    // InternalCompleteOCL.g:7812:1: rule__URIPathNameCS__Group__1 : rule__URIPathNameCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:7840:1: rule__URIPathNameCS__Group__1 : rule__URIPathNameCS__Group__1__Impl ;
     public final void rule__URIPathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7816:1: ( rule__URIPathNameCS__Group__1__Impl )
-            // InternalCompleteOCL.g:7817:2: rule__URIPathNameCS__Group__1__Impl
+            // InternalCompleteOCL.g:7844:1: ( rule__URIPathNameCS__Group__1__Impl )
+            // InternalCompleteOCL.g:7845:2: rule__URIPathNameCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIPathNameCS__Group__1__Impl();
@@ -24397,22 +24482,22 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group__1__Impl"
-    // InternalCompleteOCL.g:7823:1: rule__URIPathNameCS__Group__1__Impl : ( ( rule__URIPathNameCS__Group_1__0 )* ) ;
+    // InternalCompleteOCL.g:7851:1: rule__URIPathNameCS__Group__1__Impl : ( ( rule__URIPathNameCS__Group_1__0 )* ) ;
     public final void rule__URIPathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7827:1: ( ( ( rule__URIPathNameCS__Group_1__0 )* ) )
-            // InternalCompleteOCL.g:7828:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
+            // InternalCompleteOCL.g:7855:1: ( ( ( rule__URIPathNameCS__Group_1__0 )* ) )
+            // InternalCompleteOCL.g:7856:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
             {
-            // InternalCompleteOCL.g:7828:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
-            // InternalCompleteOCL.g:7829:1: ( rule__URIPathNameCS__Group_1__0 )*
+            // InternalCompleteOCL.g:7856:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
+            // InternalCompleteOCL.g:7857:1: ( rule__URIPathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:7830:1: ( rule__URIPathNameCS__Group_1__0 )*
+            // InternalCompleteOCL.g:7858:1: ( rule__URIPathNameCS__Group_1__0 )*
             loop77:
             do {
                 int alt77=2;
@@ -24425,9 +24510,9 @@
 
                 switch (alt77) {
             	case 1 :
-            	    // InternalCompleteOCL.g:7830:2: rule__URIPathNameCS__Group_1__0
+            	    // InternalCompleteOCL.g:7858:2: rule__URIPathNameCS__Group_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_36);
+            	    pushFollow(FollowSets000.FOLLOW_37);
             	    rule__URIPathNameCS__Group_1__0();
 
             	    state._fsp--;
@@ -24466,16 +24551,16 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group_1__0"
-    // InternalCompleteOCL.g:7844:1: rule__URIPathNameCS__Group_1__0 : rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 ;
+    // InternalCompleteOCL.g:7872:1: rule__URIPathNameCS__Group_1__0 : rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 ;
     public final void rule__URIPathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7848:1: ( rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 )
-            // InternalCompleteOCL.g:7849:2: rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1
+            // InternalCompleteOCL.g:7876:1: ( rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 )
+            // InternalCompleteOCL.g:7877:2: rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_37);
+            pushFollow(FollowSets000.FOLLOW_7);
             rule__URIPathNameCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -24504,17 +24589,17 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:7856:1: rule__URIPathNameCS__Group_1__0__Impl : ( '::' ) ;
+    // InternalCompleteOCL.g:7884:1: rule__URIPathNameCS__Group_1__0__Impl : ( '::' ) ;
     public final void rule__URIPathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7860:1: ( ( '::' ) )
-            // InternalCompleteOCL.g:7861:1: ( '::' )
+            // InternalCompleteOCL.g:7888:1: ( ( '::' ) )
+            // InternalCompleteOCL.g:7889:1: ( '::' )
             {
-            // InternalCompleteOCL.g:7861:1: ( '::' )
-            // InternalCompleteOCL.g:7862:1: '::'
+            // InternalCompleteOCL.g:7889:1: ( '::' )
+            // InternalCompleteOCL.g:7890:1: '::'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
@@ -24545,14 +24630,14 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group_1__1"
-    // InternalCompleteOCL.g:7875:1: rule__URIPathNameCS__Group_1__1 : rule__URIPathNameCS__Group_1__1__Impl ;
+    // InternalCompleteOCL.g:7903:1: rule__URIPathNameCS__Group_1__1 : rule__URIPathNameCS__Group_1__1__Impl ;
     public final void rule__URIPathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7879:1: ( rule__URIPathNameCS__Group_1__1__Impl )
-            // InternalCompleteOCL.g:7880:2: rule__URIPathNameCS__Group_1__1__Impl
+            // InternalCompleteOCL.g:7907:1: ( rule__URIPathNameCS__Group_1__1__Impl )
+            // InternalCompleteOCL.g:7908:2: rule__URIPathNameCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIPathNameCS__Group_1__1__Impl();
@@ -24578,23 +24663,23 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:7886:1: rule__URIPathNameCS__Group_1__1__Impl : ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:7914:1: rule__URIPathNameCS__Group_1__1__Impl : ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
     public final void rule__URIPathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7890:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:7891:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalCompleteOCL.g:7918:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:7919:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:7891:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
-            // InternalCompleteOCL.g:7892:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalCompleteOCL.g:7919:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalCompleteOCL.g:7920:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
-            // InternalCompleteOCL.g:7893:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
-            // InternalCompleteOCL.g:7893:2: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1
+            // InternalCompleteOCL.g:7921:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalCompleteOCL.g:7921:2: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIPathNameCS__OwnedPathElementsAssignment_1_1();
@@ -24629,16 +24714,16 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__0"
-    // InternalCompleteOCL.g:7907:1: rule__URIFirstPathElementCS__Group_1__0 : rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 ;
+    // InternalCompleteOCL.g:7935:1: rule__URIFirstPathElementCS__Group_1__0 : rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 ;
     public final void rule__URIFirstPathElementCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7911:1: ( rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 )
-            // InternalCompleteOCL.g:7912:2: rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1
+            // InternalCompleteOCL.g:7939:1: ( rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 )
+            // InternalCompleteOCL.g:7940:2: rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_23);
+            pushFollow(FollowSets000.FOLLOW_24);
             rule__URIFirstPathElementCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -24667,23 +24752,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:7919:1: rule__URIFirstPathElementCS__Group_1__0__Impl : ( () ) ;
+    // InternalCompleteOCL.g:7947:1: rule__URIFirstPathElementCS__Group_1__0__Impl : ( () ) ;
     public final void rule__URIFirstPathElementCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7923:1: ( ( () ) )
-            // InternalCompleteOCL.g:7924:1: ( () )
+            // InternalCompleteOCL.g:7951:1: ( ( () ) )
+            // InternalCompleteOCL.g:7952:1: ( () )
             {
-            // InternalCompleteOCL.g:7924:1: ( () )
-            // InternalCompleteOCL.g:7925:1: ()
+            // InternalCompleteOCL.g:7952:1: ( () )
+            // InternalCompleteOCL.g:7953:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0());
             }
-            // InternalCompleteOCL.g:7926:1: ()
-            // InternalCompleteOCL.g:7928:1:
+            // InternalCompleteOCL.g:7954:1: ()
+            // InternalCompleteOCL.g:7956:1:
             {
             }
 
@@ -24708,14 +24793,14 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__1"
-    // InternalCompleteOCL.g:7938:1: rule__URIFirstPathElementCS__Group_1__1 : rule__URIFirstPathElementCS__Group_1__1__Impl ;
+    // InternalCompleteOCL.g:7966:1: rule__URIFirstPathElementCS__Group_1__1 : rule__URIFirstPathElementCS__Group_1__1__Impl ;
     public final void rule__URIFirstPathElementCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7942:1: ( rule__URIFirstPathElementCS__Group_1__1__Impl )
-            // InternalCompleteOCL.g:7943:2: rule__URIFirstPathElementCS__Group_1__1__Impl
+            // InternalCompleteOCL.g:7970:1: ( rule__URIFirstPathElementCS__Group_1__1__Impl )
+            // InternalCompleteOCL.g:7971:2: rule__URIFirstPathElementCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIFirstPathElementCS__Group_1__1__Impl();
@@ -24741,23 +24826,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:7949:1: rule__URIFirstPathElementCS__Group_1__1__Impl : ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:7977:1: rule__URIFirstPathElementCS__Group_1__1__Impl : ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) ;
     public final void rule__URIFirstPathElementCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7953:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:7954:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
+            // InternalCompleteOCL.g:7981:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:7982:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:7954:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
-            // InternalCompleteOCL.g:7955:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
+            // InternalCompleteOCL.g:7982:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
+            // InternalCompleteOCL.g:7983:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1());
             }
-            // InternalCompleteOCL.g:7956:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
-            // InternalCompleteOCL.g:7956:2: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1
+            // InternalCompleteOCL.g:7984:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
+            // InternalCompleteOCL.g:7984:2: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIFirstPathElementCS__ReferredElementAssignment_1_1();
@@ -24792,14 +24877,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__0"
-    // InternalCompleteOCL.g:7970:1: rule__CollectionTypeCS__Group__0 : rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 ;
+    // InternalCompleteOCL.g:7998:1: rule__CollectionTypeCS__Group__0 : rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 ;
     public final void rule__CollectionTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7974:1: ( rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 )
-            // InternalCompleteOCL.g:7975:2: rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1
+            // InternalCompleteOCL.g:8002:1: ( rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 )
+            // InternalCompleteOCL.g:8003:2: rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__CollectionTypeCS__Group__0__Impl();
@@ -24830,23 +24915,23 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__0__Impl"
-    // InternalCompleteOCL.g:7982:1: rule__CollectionTypeCS__Group__0__Impl : ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:8010:1: rule__CollectionTypeCS__Group__0__Impl : ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) ;
     public final void rule__CollectionTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:7986:1: ( ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) )
-            // InternalCompleteOCL.g:7987:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:8014:1: ( ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) )
+            // InternalCompleteOCL.g:8015:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:7987:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
-            // InternalCompleteOCL.g:7988:1: ( rule__CollectionTypeCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:8015:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:8016:1: ( rule__CollectionTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0());
             }
-            // InternalCompleteOCL.g:7989:1: ( rule__CollectionTypeCS__NameAssignment_0 )
-            // InternalCompleteOCL.g:7989:2: rule__CollectionTypeCS__NameAssignment_0
+            // InternalCompleteOCL.g:8017:1: ( rule__CollectionTypeCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:8017:2: rule__CollectionTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__NameAssignment_0();
@@ -24881,14 +24966,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__1"
-    // InternalCompleteOCL.g:7999:1: rule__CollectionTypeCS__Group__1 : rule__CollectionTypeCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:8027:1: rule__CollectionTypeCS__Group__1 : rule__CollectionTypeCS__Group__1__Impl ;
     public final void rule__CollectionTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8003:1: ( rule__CollectionTypeCS__Group__1__Impl )
-            // InternalCompleteOCL.g:8004:2: rule__CollectionTypeCS__Group__1__Impl
+            // InternalCompleteOCL.g:8031:1: ( rule__CollectionTypeCS__Group__1__Impl )
+            // InternalCompleteOCL.g:8032:2: rule__CollectionTypeCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__Group__1__Impl();
@@ -24914,22 +24999,22 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__1__Impl"
-    // InternalCompleteOCL.g:8010:1: rule__CollectionTypeCS__Group__1__Impl : ( ( rule__CollectionTypeCS__Group_1__0 )? ) ;
+    // InternalCompleteOCL.g:8038:1: rule__CollectionTypeCS__Group__1__Impl : ( ( rule__CollectionTypeCS__Group_1__0 )? ) ;
     public final void rule__CollectionTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8014:1: ( ( ( rule__CollectionTypeCS__Group_1__0 )? ) )
-            // InternalCompleteOCL.g:8015:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:8042:1: ( ( ( rule__CollectionTypeCS__Group_1__0 )? ) )
+            // InternalCompleteOCL.g:8043:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
             {
-            // InternalCompleteOCL.g:8015:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
-            // InternalCompleteOCL.g:8016:1: ( rule__CollectionTypeCS__Group_1__0 )?
+            // InternalCompleteOCL.g:8043:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:8044:1: ( rule__CollectionTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:8017:1: ( rule__CollectionTypeCS__Group_1__0 )?
+            // InternalCompleteOCL.g:8045:1: ( rule__CollectionTypeCS__Group_1__0 )?
             int alt78=2;
             int LA78_0 = input.LA(1);
 
@@ -24938,7 +25023,7 @@
             }
             switch (alt78) {
                 case 1 :
-                    // InternalCompleteOCL.g:8017:2: rule__CollectionTypeCS__Group_1__0
+                    // InternalCompleteOCL.g:8045:2: rule__CollectionTypeCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionTypeCS__Group_1__0();
@@ -24976,16 +25061,16 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__0"
-    // InternalCompleteOCL.g:8031:1: rule__CollectionTypeCS__Group_1__0 : rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 ;
+    // InternalCompleteOCL.g:8059:1: rule__CollectionTypeCS__Group_1__0 : rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 ;
     public final void rule__CollectionTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8035:1: ( rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 )
-            // InternalCompleteOCL.g:8036:2: rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1
+            // InternalCompleteOCL.g:8063:1: ( rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 )
+            // InternalCompleteOCL.g:8064:2: rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__CollectionTypeCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -25014,17 +25099,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:8043:1: rule__CollectionTypeCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalCompleteOCL.g:8071:1: rule__CollectionTypeCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__CollectionTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8047:1: ( ( '(' ) )
-            // InternalCompleteOCL.g:8048:1: ( '(' )
+            // InternalCompleteOCL.g:8075:1: ( ( '(' ) )
+            // InternalCompleteOCL.g:8076:1: ( '(' )
             {
-            // InternalCompleteOCL.g:8048:1: ( '(' )
-            // InternalCompleteOCL.g:8049:1: '('
+            // InternalCompleteOCL.g:8076:1: ( '(' )
+            // InternalCompleteOCL.g:8077:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -25055,14 +25140,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__1"
-    // InternalCompleteOCL.g:8062:1: rule__CollectionTypeCS__Group_1__1 : rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 ;
+    // InternalCompleteOCL.g:8090:1: rule__CollectionTypeCS__Group_1__1 : rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 ;
     public final void rule__CollectionTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8066:1: ( rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 )
-            // InternalCompleteOCL.g:8067:2: rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2
+            // InternalCompleteOCL.g:8094:1: ( rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 )
+            // InternalCompleteOCL.g:8095:2: rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_38);
             rule__CollectionTypeCS__Group_1__1__Impl();
@@ -25093,23 +25178,23 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:8074:1: rule__CollectionTypeCS__Group_1__1__Impl : ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:8102:1: rule__CollectionTypeCS__Group_1__1__Impl : ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__CollectionTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8078:1: ( ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:8079:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
+            // InternalCompleteOCL.g:8106:1: ( ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:8107:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:8079:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
-            // InternalCompleteOCL.g:8080:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
+            // InternalCompleteOCL.g:8107:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
+            // InternalCompleteOCL.g:8108:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalCompleteOCL.g:8081:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
-            // InternalCompleteOCL.g:8081:2: rule__CollectionTypeCS__OwnedTypeAssignment_1_1
+            // InternalCompleteOCL.g:8109:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
+            // InternalCompleteOCL.g:8109:2: rule__CollectionTypeCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__OwnedTypeAssignment_1_1();
@@ -25144,14 +25229,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__2"
-    // InternalCompleteOCL.g:8091:1: rule__CollectionTypeCS__Group_1__2 : rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 ;
+    // InternalCompleteOCL.g:8119:1: rule__CollectionTypeCS__Group_1__2 : rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 ;
     public final void rule__CollectionTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8095:1: ( rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 )
-            // InternalCompleteOCL.g:8096:2: rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3
+            // InternalCompleteOCL.g:8123:1: ( rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 )
+            // InternalCompleteOCL.g:8124:2: rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3
             {
             pushFollow(FollowSets000.FOLLOW_38);
             rule__CollectionTypeCS__Group_1__2__Impl();
@@ -25182,22 +25267,22 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__2__Impl"
-    // InternalCompleteOCL.g:8103:1: rule__CollectionTypeCS__Group_1__2__Impl : ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) ;
+    // InternalCompleteOCL.g:8131:1: rule__CollectionTypeCS__Group_1__2__Impl : ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) ;
     public final void rule__CollectionTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8107:1: ( ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) )
-            // InternalCompleteOCL.g:8108:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
+            // InternalCompleteOCL.g:8135:1: ( ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) )
+            // InternalCompleteOCL.g:8136:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
             {
-            // InternalCompleteOCL.g:8108:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
-            // InternalCompleteOCL.g:8109:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
+            // InternalCompleteOCL.g:8136:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
+            // InternalCompleteOCL.g:8137:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedCollectionMultiplicityAssignment_1_2());
             }
-            // InternalCompleteOCL.g:8110:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
+            // InternalCompleteOCL.g:8138:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
             int alt79=2;
             int LA79_0 = input.LA(1);
 
@@ -25206,7 +25291,7 @@
             }
             switch (alt79) {
                 case 1 :
-                    // InternalCompleteOCL.g:8110:2: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2
+                    // InternalCompleteOCL.g:8138:2: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2();
@@ -25244,14 +25329,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__3"
-    // InternalCompleteOCL.g:8120:1: rule__CollectionTypeCS__Group_1__3 : rule__CollectionTypeCS__Group_1__3__Impl ;
+    // InternalCompleteOCL.g:8148:1: rule__CollectionTypeCS__Group_1__3 : rule__CollectionTypeCS__Group_1__3__Impl ;
     public final void rule__CollectionTypeCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8124:1: ( rule__CollectionTypeCS__Group_1__3__Impl )
-            // InternalCompleteOCL.g:8125:2: rule__CollectionTypeCS__Group_1__3__Impl
+            // InternalCompleteOCL.g:8152:1: ( rule__CollectionTypeCS__Group_1__3__Impl )
+            // InternalCompleteOCL.g:8153:2: rule__CollectionTypeCS__Group_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__Group_1__3__Impl();
@@ -25277,17 +25362,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__3__Impl"
-    // InternalCompleteOCL.g:8131:1: rule__CollectionTypeCS__Group_1__3__Impl : ( ')' ) ;
+    // InternalCompleteOCL.g:8159:1: rule__CollectionTypeCS__Group_1__3__Impl : ( ')' ) ;
     public final void rule__CollectionTypeCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8135:1: ( ( ')' ) )
-            // InternalCompleteOCL.g:8136:1: ( ')' )
+            // InternalCompleteOCL.g:8163:1: ( ( ')' ) )
+            // InternalCompleteOCL.g:8164:1: ( ')' )
             {
-            // InternalCompleteOCL.g:8136:1: ( ')' )
-            // InternalCompleteOCL.g:8137:1: ')'
+            // InternalCompleteOCL.g:8164:1: ( ')' )
+            // InternalCompleteOCL.g:8165:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_3());
@@ -25318,14 +25403,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__0"
-    // InternalCompleteOCL.g:8158:1: rule__MapTypeCS__Group__0 : rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 ;
+    // InternalCompleteOCL.g:8186:1: rule__MapTypeCS__Group__0 : rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 ;
     public final void rule__MapTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8162:1: ( rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 )
-            // InternalCompleteOCL.g:8163:2: rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1
+            // InternalCompleteOCL.g:8190:1: ( rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 )
+            // InternalCompleteOCL.g:8191:2: rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__MapTypeCS__Group__0__Impl();
@@ -25356,23 +25441,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__0__Impl"
-    // InternalCompleteOCL.g:8170:1: rule__MapTypeCS__Group__0__Impl : ( ( rule__MapTypeCS__NameAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:8198:1: rule__MapTypeCS__Group__0__Impl : ( ( rule__MapTypeCS__NameAssignment_0 ) ) ;
     public final void rule__MapTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8174:1: ( ( ( rule__MapTypeCS__NameAssignment_0 ) ) )
-            // InternalCompleteOCL.g:8175:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:8202:1: ( ( ( rule__MapTypeCS__NameAssignment_0 ) ) )
+            // InternalCompleteOCL.g:8203:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:8175:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
-            // InternalCompleteOCL.g:8176:1: ( rule__MapTypeCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:8203:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:8204:1: ( rule__MapTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getNameAssignment_0());
             }
-            // InternalCompleteOCL.g:8177:1: ( rule__MapTypeCS__NameAssignment_0 )
-            // InternalCompleteOCL.g:8177:2: rule__MapTypeCS__NameAssignment_0
+            // InternalCompleteOCL.g:8205:1: ( rule__MapTypeCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:8205:2: rule__MapTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__NameAssignment_0();
@@ -25407,14 +25492,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__1"
-    // InternalCompleteOCL.g:8187:1: rule__MapTypeCS__Group__1 : rule__MapTypeCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:8215:1: rule__MapTypeCS__Group__1 : rule__MapTypeCS__Group__1__Impl ;
     public final void rule__MapTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8191:1: ( rule__MapTypeCS__Group__1__Impl )
-            // InternalCompleteOCL.g:8192:2: rule__MapTypeCS__Group__1__Impl
+            // InternalCompleteOCL.g:8219:1: ( rule__MapTypeCS__Group__1__Impl )
+            // InternalCompleteOCL.g:8220:2: rule__MapTypeCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__Group__1__Impl();
@@ -25440,22 +25525,22 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__1__Impl"
-    // InternalCompleteOCL.g:8198:1: rule__MapTypeCS__Group__1__Impl : ( ( rule__MapTypeCS__Group_1__0 )? ) ;
+    // InternalCompleteOCL.g:8226:1: rule__MapTypeCS__Group__1__Impl : ( ( rule__MapTypeCS__Group_1__0 )? ) ;
     public final void rule__MapTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8202:1: ( ( ( rule__MapTypeCS__Group_1__0 )? ) )
-            // InternalCompleteOCL.g:8203:1: ( ( rule__MapTypeCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:8230:1: ( ( ( rule__MapTypeCS__Group_1__0 )? ) )
+            // InternalCompleteOCL.g:8231:1: ( ( rule__MapTypeCS__Group_1__0 )? )
             {
-            // InternalCompleteOCL.g:8203:1: ( ( rule__MapTypeCS__Group_1__0 )? )
-            // InternalCompleteOCL.g:8204:1: ( rule__MapTypeCS__Group_1__0 )?
+            // InternalCompleteOCL.g:8231:1: ( ( rule__MapTypeCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:8232:1: ( rule__MapTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:8205:1: ( rule__MapTypeCS__Group_1__0 )?
+            // InternalCompleteOCL.g:8233:1: ( rule__MapTypeCS__Group_1__0 )?
             int alt80=2;
             int LA80_0 = input.LA(1);
 
@@ -25464,7 +25549,7 @@
             }
             switch (alt80) {
                 case 1 :
-                    // InternalCompleteOCL.g:8205:2: rule__MapTypeCS__Group_1__0
+                    // InternalCompleteOCL.g:8233:2: rule__MapTypeCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MapTypeCS__Group_1__0();
@@ -25502,16 +25587,16 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__0"
-    // InternalCompleteOCL.g:8219:1: rule__MapTypeCS__Group_1__0 : rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 ;
+    // InternalCompleteOCL.g:8247:1: rule__MapTypeCS__Group_1__0 : rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 ;
     public final void rule__MapTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8223:1: ( rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 )
-            // InternalCompleteOCL.g:8224:2: rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1
+            // InternalCompleteOCL.g:8251:1: ( rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 )
+            // InternalCompleteOCL.g:8252:2: rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__MapTypeCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -25540,17 +25625,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:8231:1: rule__MapTypeCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalCompleteOCL.g:8259:1: rule__MapTypeCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__MapTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8235:1: ( ( '(' ) )
-            // InternalCompleteOCL.g:8236:1: ( '(' )
+            // InternalCompleteOCL.g:8263:1: ( ( '(' ) )
+            // InternalCompleteOCL.g:8264:1: ( '(' )
             {
-            // InternalCompleteOCL.g:8236:1: ( '(' )
-            // InternalCompleteOCL.g:8237:1: '('
+            // InternalCompleteOCL.g:8264:1: ( '(' )
+            // InternalCompleteOCL.g:8265:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -25581,16 +25666,16 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__1"
-    // InternalCompleteOCL.g:8250:1: rule__MapTypeCS__Group_1__1 : rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 ;
+    // InternalCompleteOCL.g:8278:1: rule__MapTypeCS__Group_1__1 : rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 ;
     public final void rule__MapTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8254:1: ( rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 )
-            // InternalCompleteOCL.g:8255:2: rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2
+            // InternalCompleteOCL.g:8282:1: ( rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 )
+            // InternalCompleteOCL.g:8283:2: rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2
             {
-            pushFollow(FollowSets000.FOLLOW_18);
+            pushFollow(FollowSets000.FOLLOW_19);
             rule__MapTypeCS__Group_1__1__Impl();
 
             state._fsp--;
@@ -25619,23 +25704,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:8262:1: rule__MapTypeCS__Group_1__1__Impl : ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:8290:1: rule__MapTypeCS__Group_1__1__Impl : ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) ;
     public final void rule__MapTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8266:1: ( ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:8267:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
+            // InternalCompleteOCL.g:8294:1: ( ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:8295:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:8267:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
-            // InternalCompleteOCL.g:8268:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
+            // InternalCompleteOCL.g:8295:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
+            // InternalCompleteOCL.g:8296:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1());
             }
-            // InternalCompleteOCL.g:8269:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
-            // InternalCompleteOCL.g:8269:2: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1
+            // InternalCompleteOCL.g:8297:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
+            // InternalCompleteOCL.g:8297:2: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__OwnedKeyTypeAssignment_1_1();
@@ -25670,16 +25755,16 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__2"
-    // InternalCompleteOCL.g:8279:1: rule__MapTypeCS__Group_1__2 : rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 ;
+    // InternalCompleteOCL.g:8307:1: rule__MapTypeCS__Group_1__2 : rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 ;
     public final void rule__MapTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8283:1: ( rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 )
-            // InternalCompleteOCL.g:8284:2: rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3
+            // InternalCompleteOCL.g:8311:1: ( rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 )
+            // InternalCompleteOCL.g:8312:2: rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__MapTypeCS__Group_1__2__Impl();
 
             state._fsp--;
@@ -25708,17 +25793,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__2__Impl"
-    // InternalCompleteOCL.g:8291:1: rule__MapTypeCS__Group_1__2__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:8319:1: rule__MapTypeCS__Group_1__2__Impl : ( ',' ) ;
     public final void rule__MapTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8295:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:8296:1: ( ',' )
+            // InternalCompleteOCL.g:8323:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:8324:1: ( ',' )
             {
-            // InternalCompleteOCL.g:8296:1: ( ',' )
-            // InternalCompleteOCL.g:8297:1: ','
+            // InternalCompleteOCL.g:8324:1: ( ',' )
+            // InternalCompleteOCL.g:8325:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
@@ -25749,14 +25834,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__3"
-    // InternalCompleteOCL.g:8310:1: rule__MapTypeCS__Group_1__3 : rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 ;
+    // InternalCompleteOCL.g:8338:1: rule__MapTypeCS__Group_1__3 : rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 ;
     public final void rule__MapTypeCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8314:1: ( rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 )
-            // InternalCompleteOCL.g:8315:2: rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4
+            // InternalCompleteOCL.g:8342:1: ( rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 )
+            // InternalCompleteOCL.g:8343:2: rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__MapTypeCS__Group_1__3__Impl();
@@ -25787,23 +25872,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__3__Impl"
-    // InternalCompleteOCL.g:8322:1: rule__MapTypeCS__Group_1__3__Impl : ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) ;
+    // InternalCompleteOCL.g:8350:1: rule__MapTypeCS__Group_1__3__Impl : ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) ;
     public final void rule__MapTypeCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8326:1: ( ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) )
-            // InternalCompleteOCL.g:8327:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
+            // InternalCompleteOCL.g:8354:1: ( ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) )
+            // InternalCompleteOCL.g:8355:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
             {
-            // InternalCompleteOCL.g:8327:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
-            // InternalCompleteOCL.g:8328:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
+            // InternalCompleteOCL.g:8355:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
+            // InternalCompleteOCL.g:8356:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3());
             }
-            // InternalCompleteOCL.g:8329:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
-            // InternalCompleteOCL.g:8329:2: rule__MapTypeCS__OwnedValueTypeAssignment_1_3
+            // InternalCompleteOCL.g:8357:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
+            // InternalCompleteOCL.g:8357:2: rule__MapTypeCS__OwnedValueTypeAssignment_1_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__OwnedValueTypeAssignment_1_3();
@@ -25838,14 +25923,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__4"
-    // InternalCompleteOCL.g:8339:1: rule__MapTypeCS__Group_1__4 : rule__MapTypeCS__Group_1__4__Impl ;
+    // InternalCompleteOCL.g:8367:1: rule__MapTypeCS__Group_1__4 : rule__MapTypeCS__Group_1__4__Impl ;
     public final void rule__MapTypeCS__Group_1__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8343:1: ( rule__MapTypeCS__Group_1__4__Impl )
-            // InternalCompleteOCL.g:8344:2: rule__MapTypeCS__Group_1__4__Impl
+            // InternalCompleteOCL.g:8371:1: ( rule__MapTypeCS__Group_1__4__Impl )
+            // InternalCompleteOCL.g:8372:2: rule__MapTypeCS__Group_1__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__Group_1__4__Impl();
@@ -25871,17 +25956,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__4__Impl"
-    // InternalCompleteOCL.g:8350:1: rule__MapTypeCS__Group_1__4__Impl : ( ')' ) ;
+    // InternalCompleteOCL.g:8378:1: rule__MapTypeCS__Group_1__4__Impl : ( ')' ) ;
     public final void rule__MapTypeCS__Group_1__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8354:1: ( ( ')' ) )
-            // InternalCompleteOCL.g:8355:1: ( ')' )
+            // InternalCompleteOCL.g:8382:1: ( ( ')' ) )
+            // InternalCompleteOCL.g:8383:1: ( ')' )
             {
-            // InternalCompleteOCL.g:8355:1: ( ')' )
-            // InternalCompleteOCL.g:8356:1: ')'
+            // InternalCompleteOCL.g:8383:1: ( ')' )
+            // InternalCompleteOCL.g:8384:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
@@ -25912,14 +25997,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__0"
-    // InternalCompleteOCL.g:8379:1: rule__TupleTypeCS__Group__0 : rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 ;
+    // InternalCompleteOCL.g:8407:1: rule__TupleTypeCS__Group__0 : rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 ;
     public final void rule__TupleTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8383:1: ( rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 )
-            // InternalCompleteOCL.g:8384:2: rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1
+            // InternalCompleteOCL.g:8411:1: ( rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 )
+            // InternalCompleteOCL.g:8412:2: rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__TupleTypeCS__Group__0__Impl();
@@ -25950,23 +26035,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__0__Impl"
-    // InternalCompleteOCL.g:8391:1: rule__TupleTypeCS__Group__0__Impl : ( ( rule__TupleTypeCS__NameAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:8419:1: rule__TupleTypeCS__Group__0__Impl : ( ( rule__TupleTypeCS__NameAssignment_0 ) ) ;
     public final void rule__TupleTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8395:1: ( ( ( rule__TupleTypeCS__NameAssignment_0 ) ) )
-            // InternalCompleteOCL.g:8396:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:8423:1: ( ( ( rule__TupleTypeCS__NameAssignment_0 ) ) )
+            // InternalCompleteOCL.g:8424:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:8396:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
-            // InternalCompleteOCL.g:8397:1: ( rule__TupleTypeCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:8424:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:8425:1: ( rule__TupleTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0());
             }
-            // InternalCompleteOCL.g:8398:1: ( rule__TupleTypeCS__NameAssignment_0 )
-            // InternalCompleteOCL.g:8398:2: rule__TupleTypeCS__NameAssignment_0
+            // InternalCompleteOCL.g:8426:1: ( rule__TupleTypeCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:8426:2: rule__TupleTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__NameAssignment_0();
@@ -26001,14 +26086,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__1"
-    // InternalCompleteOCL.g:8408:1: rule__TupleTypeCS__Group__1 : rule__TupleTypeCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:8436:1: rule__TupleTypeCS__Group__1 : rule__TupleTypeCS__Group__1__Impl ;
     public final void rule__TupleTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8412:1: ( rule__TupleTypeCS__Group__1__Impl )
-            // InternalCompleteOCL.g:8413:2: rule__TupleTypeCS__Group__1__Impl
+            // InternalCompleteOCL.g:8440:1: ( rule__TupleTypeCS__Group__1__Impl )
+            // InternalCompleteOCL.g:8441:2: rule__TupleTypeCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group__1__Impl();
@@ -26034,22 +26119,22 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__1__Impl"
-    // InternalCompleteOCL.g:8419:1: rule__TupleTypeCS__Group__1__Impl : ( ( rule__TupleTypeCS__Group_1__0 )? ) ;
+    // InternalCompleteOCL.g:8447:1: rule__TupleTypeCS__Group__1__Impl : ( ( rule__TupleTypeCS__Group_1__0 )? ) ;
     public final void rule__TupleTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8423:1: ( ( ( rule__TupleTypeCS__Group_1__0 )? ) )
-            // InternalCompleteOCL.g:8424:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:8451:1: ( ( ( rule__TupleTypeCS__Group_1__0 )? ) )
+            // InternalCompleteOCL.g:8452:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
             {
-            // InternalCompleteOCL.g:8424:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
-            // InternalCompleteOCL.g:8425:1: ( rule__TupleTypeCS__Group_1__0 )?
+            // InternalCompleteOCL.g:8452:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:8453:1: ( rule__TupleTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:8426:1: ( rule__TupleTypeCS__Group_1__0 )?
+            // InternalCompleteOCL.g:8454:1: ( rule__TupleTypeCS__Group_1__0 )?
             int alt81=2;
             int LA81_0 = input.LA(1);
 
@@ -26058,7 +26143,7 @@
             }
             switch (alt81) {
                 case 1 :
-                    // InternalCompleteOCL.g:8426:2: rule__TupleTypeCS__Group_1__0
+                    // InternalCompleteOCL.g:8454:2: rule__TupleTypeCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TupleTypeCS__Group_1__0();
@@ -26096,16 +26181,16 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__0"
-    // InternalCompleteOCL.g:8440:1: rule__TupleTypeCS__Group_1__0 : rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 ;
+    // InternalCompleteOCL.g:8468:1: rule__TupleTypeCS__Group_1__0 : rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 ;
     public final void rule__TupleTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8444:1: ( rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 )
-            // InternalCompleteOCL.g:8445:2: rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1
+            // InternalCompleteOCL.g:8472:1: ( rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 )
+            // InternalCompleteOCL.g:8473:2: rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_15);
+            pushFollow(FollowSets000.FOLLOW_16);
             rule__TupleTypeCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -26134,17 +26219,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:8452:1: rule__TupleTypeCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalCompleteOCL.g:8480:1: rule__TupleTypeCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__TupleTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8456:1: ( ( '(' ) )
-            // InternalCompleteOCL.g:8457:1: ( '(' )
+            // InternalCompleteOCL.g:8484:1: ( ( '(' ) )
+            // InternalCompleteOCL.g:8485:1: ( '(' )
             {
-            // InternalCompleteOCL.g:8457:1: ( '(' )
-            // InternalCompleteOCL.g:8458:1: '('
+            // InternalCompleteOCL.g:8485:1: ( '(' )
+            // InternalCompleteOCL.g:8486:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -26175,16 +26260,16 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__1"
-    // InternalCompleteOCL.g:8471:1: rule__TupleTypeCS__Group_1__1 : rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 ;
+    // InternalCompleteOCL.g:8499:1: rule__TupleTypeCS__Group_1__1 : rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 ;
     public final void rule__TupleTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8475:1: ( rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 )
-            // InternalCompleteOCL.g:8476:2: rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2
+            // InternalCompleteOCL.g:8503:1: ( rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 )
+            // InternalCompleteOCL.g:8504:2: rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2
             {
-            pushFollow(FollowSets000.FOLLOW_15);
+            pushFollow(FollowSets000.FOLLOW_16);
             rule__TupleTypeCS__Group_1__1__Impl();
 
             state._fsp--;
@@ -26213,22 +26298,22 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:8483:1: rule__TupleTypeCS__Group_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1__0 )? ) ;
+    // InternalCompleteOCL.g:8511:1: rule__TupleTypeCS__Group_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1__0 )? ) ;
     public final void rule__TupleTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8487:1: ( ( ( rule__TupleTypeCS__Group_1_1__0 )? ) )
-            // InternalCompleteOCL.g:8488:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
+            // InternalCompleteOCL.g:8515:1: ( ( ( rule__TupleTypeCS__Group_1_1__0 )? ) )
+            // InternalCompleteOCL.g:8516:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
             {
-            // InternalCompleteOCL.g:8488:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
-            // InternalCompleteOCL.g:8489:1: ( rule__TupleTypeCS__Group_1_1__0 )?
+            // InternalCompleteOCL.g:8516:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
+            // InternalCompleteOCL.g:8517:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1());
             }
-            // InternalCompleteOCL.g:8490:1: ( rule__TupleTypeCS__Group_1_1__0 )?
+            // InternalCompleteOCL.g:8518:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             int alt82=2;
             int LA82_0 = input.LA(1);
 
@@ -26237,7 +26322,7 @@
             }
             switch (alt82) {
                 case 1 :
-                    // InternalCompleteOCL.g:8490:2: rule__TupleTypeCS__Group_1_1__0
+                    // InternalCompleteOCL.g:8518:2: rule__TupleTypeCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TupleTypeCS__Group_1_1__0();
@@ -26275,14 +26360,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__2"
-    // InternalCompleteOCL.g:8500:1: rule__TupleTypeCS__Group_1__2 : rule__TupleTypeCS__Group_1__2__Impl ;
+    // InternalCompleteOCL.g:8528:1: rule__TupleTypeCS__Group_1__2 : rule__TupleTypeCS__Group_1__2__Impl ;
     public final void rule__TupleTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8504:1: ( rule__TupleTypeCS__Group_1__2__Impl )
-            // InternalCompleteOCL.g:8505:2: rule__TupleTypeCS__Group_1__2__Impl
+            // InternalCompleteOCL.g:8532:1: ( rule__TupleTypeCS__Group_1__2__Impl )
+            // InternalCompleteOCL.g:8533:2: rule__TupleTypeCS__Group_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group_1__2__Impl();
@@ -26308,17 +26393,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__2__Impl"
-    // InternalCompleteOCL.g:8511:1: rule__TupleTypeCS__Group_1__2__Impl : ( ')' ) ;
+    // InternalCompleteOCL.g:8539:1: rule__TupleTypeCS__Group_1__2__Impl : ( ')' ) ;
     public final void rule__TupleTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8515:1: ( ( ')' ) )
-            // InternalCompleteOCL.g:8516:1: ( ')' )
+            // InternalCompleteOCL.g:8543:1: ( ( ')' ) )
+            // InternalCompleteOCL.g:8544:1: ( ')' )
             {
-            // InternalCompleteOCL.g:8516:1: ( ')' )
-            // InternalCompleteOCL.g:8517:1: ')'
+            // InternalCompleteOCL.g:8544:1: ( ')' )
+            // InternalCompleteOCL.g:8545:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
@@ -26349,16 +26434,16 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__0"
-    // InternalCompleteOCL.g:8536:1: rule__TupleTypeCS__Group_1_1__0 : rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 ;
+    // InternalCompleteOCL.g:8564:1: rule__TupleTypeCS__Group_1_1__0 : rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 ;
     public final void rule__TupleTypeCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8540:1: ( rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 )
-            // InternalCompleteOCL.g:8541:2: rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1
+            // InternalCompleteOCL.g:8568:1: ( rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 )
+            // InternalCompleteOCL.g:8569:2: rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_18);
+            pushFollow(FollowSets000.FOLLOW_19);
             rule__TupleTypeCS__Group_1_1__0__Impl();
 
             state._fsp--;
@@ -26387,23 +26472,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__0__Impl"
-    // InternalCompleteOCL.g:8548:1: rule__TupleTypeCS__Group_1_1__0__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) ;
+    // InternalCompleteOCL.g:8576:1: rule__TupleTypeCS__Group_1_1__0__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) ;
     public final void rule__TupleTypeCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8552:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) )
-            // InternalCompleteOCL.g:8553:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
+            // InternalCompleteOCL.g:8580:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) )
+            // InternalCompleteOCL.g:8581:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
             {
-            // InternalCompleteOCL.g:8553:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
-            // InternalCompleteOCL.g:8554:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
+            // InternalCompleteOCL.g:8581:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
+            // InternalCompleteOCL.g:8582:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0());
             }
-            // InternalCompleteOCL.g:8555:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
-            // InternalCompleteOCL.g:8555:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0
+            // InternalCompleteOCL.g:8583:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
+            // InternalCompleteOCL.g:8583:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__OwnedPartsAssignment_1_1_0();
@@ -26438,14 +26523,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__1"
-    // InternalCompleteOCL.g:8565:1: rule__TupleTypeCS__Group_1_1__1 : rule__TupleTypeCS__Group_1_1__1__Impl ;
+    // InternalCompleteOCL.g:8593:1: rule__TupleTypeCS__Group_1_1__1 : rule__TupleTypeCS__Group_1_1__1__Impl ;
     public final void rule__TupleTypeCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8569:1: ( rule__TupleTypeCS__Group_1_1__1__Impl )
-            // InternalCompleteOCL.g:8570:2: rule__TupleTypeCS__Group_1_1__1__Impl
+            // InternalCompleteOCL.g:8597:1: ( rule__TupleTypeCS__Group_1_1__1__Impl )
+            // InternalCompleteOCL.g:8598:2: rule__TupleTypeCS__Group_1_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group_1_1__1__Impl();
@@ -26471,22 +26556,22 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__1__Impl"
-    // InternalCompleteOCL.g:8576:1: rule__TupleTypeCS__Group_1_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) ;
+    // InternalCompleteOCL.g:8604:1: rule__TupleTypeCS__Group_1_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) ;
     public final void rule__TupleTypeCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8580:1: ( ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) )
-            // InternalCompleteOCL.g:8581:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
+            // InternalCompleteOCL.g:8608:1: ( ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) )
+            // InternalCompleteOCL.g:8609:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
             {
-            // InternalCompleteOCL.g:8581:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
-            // InternalCompleteOCL.g:8582:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
+            // InternalCompleteOCL.g:8609:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
+            // InternalCompleteOCL.g:8610:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1());
             }
-            // InternalCompleteOCL.g:8583:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
+            // InternalCompleteOCL.g:8611:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             loop83:
             do {
                 int alt83=2;
@@ -26499,9 +26584,9 @@
 
                 switch (alt83) {
             	case 1 :
-            	    // InternalCompleteOCL.g:8583:2: rule__TupleTypeCS__Group_1_1_1__0
+            	    // InternalCompleteOCL.g:8611:2: rule__TupleTypeCS__Group_1_1_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__TupleTypeCS__Group_1_1_1__0();
 
             	    state._fsp--;
@@ -26540,16 +26625,16 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__0"
-    // InternalCompleteOCL.g:8597:1: rule__TupleTypeCS__Group_1_1_1__0 : rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 ;
+    // InternalCompleteOCL.g:8625:1: rule__TupleTypeCS__Group_1_1_1__0 : rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 ;
     public final void rule__TupleTypeCS__Group_1_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8601:1: ( rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 )
-            // InternalCompleteOCL.g:8602:2: rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1
+            // InternalCompleteOCL.g:8629:1: ( rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 )
+            // InternalCompleteOCL.g:8630:2: rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__TupleTypeCS__Group_1_1_1__0__Impl();
 
             state._fsp--;
@@ -26578,17 +26663,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__0__Impl"
-    // InternalCompleteOCL.g:8609:1: rule__TupleTypeCS__Group_1_1_1__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:8637:1: rule__TupleTypeCS__Group_1_1_1__0__Impl : ( ',' ) ;
     public final void rule__TupleTypeCS__Group_1_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8613:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:8614:1: ( ',' )
+            // InternalCompleteOCL.g:8641:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:8642:1: ( ',' )
             {
-            // InternalCompleteOCL.g:8614:1: ( ',' )
-            // InternalCompleteOCL.g:8615:1: ','
+            // InternalCompleteOCL.g:8642:1: ( ',' )
+            // InternalCompleteOCL.g:8643:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
@@ -26619,14 +26704,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__1"
-    // InternalCompleteOCL.g:8628:1: rule__TupleTypeCS__Group_1_1_1__1 : rule__TupleTypeCS__Group_1_1_1__1__Impl ;
+    // InternalCompleteOCL.g:8656:1: rule__TupleTypeCS__Group_1_1_1__1 : rule__TupleTypeCS__Group_1_1_1__1__Impl ;
     public final void rule__TupleTypeCS__Group_1_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8632:1: ( rule__TupleTypeCS__Group_1_1_1__1__Impl )
-            // InternalCompleteOCL.g:8633:2: rule__TupleTypeCS__Group_1_1_1__1__Impl
+            // InternalCompleteOCL.g:8660:1: ( rule__TupleTypeCS__Group_1_1_1__1__Impl )
+            // InternalCompleteOCL.g:8661:2: rule__TupleTypeCS__Group_1_1_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group_1_1_1__1__Impl();
@@ -26652,23 +26737,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__1__Impl"
-    // InternalCompleteOCL.g:8639:1: rule__TupleTypeCS__Group_1_1_1__1__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) ;
+    // InternalCompleteOCL.g:8667:1: rule__TupleTypeCS__Group_1_1_1__1__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) ;
     public final void rule__TupleTypeCS__Group_1_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8643:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) )
-            // InternalCompleteOCL.g:8644:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
+            // InternalCompleteOCL.g:8671:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) )
+            // InternalCompleteOCL.g:8672:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
             {
-            // InternalCompleteOCL.g:8644:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
-            // InternalCompleteOCL.g:8645:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
+            // InternalCompleteOCL.g:8672:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
+            // InternalCompleteOCL.g:8673:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1());
             }
-            // InternalCompleteOCL.g:8646:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
-            // InternalCompleteOCL.g:8646:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1
+            // InternalCompleteOCL.g:8674:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
+            // InternalCompleteOCL.g:8674:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1();
@@ -26703,16 +26788,16 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__0"
-    // InternalCompleteOCL.g:8660:1: rule__TuplePartCS__Group__0 : rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 ;
+    // InternalCompleteOCL.g:8688:1: rule__TuplePartCS__Group__0 : rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 ;
     public final void rule__TuplePartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8664:1: ( rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 )
-            // InternalCompleteOCL.g:8665:2: rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1
+            // InternalCompleteOCL.g:8692:1: ( rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 )
+            // InternalCompleteOCL.g:8693:2: rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_16);
+            pushFollow(FollowSets000.FOLLOW_17);
             rule__TuplePartCS__Group__0__Impl();
 
             state._fsp--;
@@ -26741,23 +26826,23 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__0__Impl"
-    // InternalCompleteOCL.g:8672:1: rule__TuplePartCS__Group__0__Impl : ( ( rule__TuplePartCS__NameAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:8700:1: rule__TuplePartCS__Group__0__Impl : ( ( rule__TuplePartCS__NameAssignment_0 ) ) ;
     public final void rule__TuplePartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8676:1: ( ( ( rule__TuplePartCS__NameAssignment_0 ) ) )
-            // InternalCompleteOCL.g:8677:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:8704:1: ( ( ( rule__TuplePartCS__NameAssignment_0 ) ) )
+            // InternalCompleteOCL.g:8705:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:8677:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
-            // InternalCompleteOCL.g:8678:1: ( rule__TuplePartCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:8705:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:8706:1: ( rule__TuplePartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getNameAssignment_0());
             }
-            // InternalCompleteOCL.g:8679:1: ( rule__TuplePartCS__NameAssignment_0 )
-            // InternalCompleteOCL.g:8679:2: rule__TuplePartCS__NameAssignment_0
+            // InternalCompleteOCL.g:8707:1: ( rule__TuplePartCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:8707:2: rule__TuplePartCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TuplePartCS__NameAssignment_0();
@@ -26792,16 +26877,16 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__1"
-    // InternalCompleteOCL.g:8689:1: rule__TuplePartCS__Group__1 : rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 ;
+    // InternalCompleteOCL.g:8717:1: rule__TuplePartCS__Group__1 : rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 ;
     public final void rule__TuplePartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8693:1: ( rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 )
-            // InternalCompleteOCL.g:8694:2: rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2
+            // InternalCompleteOCL.g:8721:1: ( rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 )
+            // InternalCompleteOCL.g:8722:2: rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__TuplePartCS__Group__1__Impl();
 
             state._fsp--;
@@ -26830,17 +26915,17 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__1__Impl"
-    // InternalCompleteOCL.g:8701:1: rule__TuplePartCS__Group__1__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:8729:1: rule__TuplePartCS__Group__1__Impl : ( ':' ) ;
     public final void rule__TuplePartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8705:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:8706:1: ( ':' )
+            // InternalCompleteOCL.g:8733:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:8734:1: ( ':' )
             {
-            // InternalCompleteOCL.g:8706:1: ( ':' )
-            // InternalCompleteOCL.g:8707:1: ':'
+            // InternalCompleteOCL.g:8734:1: ( ':' )
+            // InternalCompleteOCL.g:8735:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
@@ -26871,14 +26956,14 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__2"
-    // InternalCompleteOCL.g:8720:1: rule__TuplePartCS__Group__2 : rule__TuplePartCS__Group__2__Impl ;
+    // InternalCompleteOCL.g:8748:1: rule__TuplePartCS__Group__2 : rule__TuplePartCS__Group__2__Impl ;
     public final void rule__TuplePartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8724:1: ( rule__TuplePartCS__Group__2__Impl )
-            // InternalCompleteOCL.g:8725:2: rule__TuplePartCS__Group__2__Impl
+            // InternalCompleteOCL.g:8752:1: ( rule__TuplePartCS__Group__2__Impl )
+            // InternalCompleteOCL.g:8753:2: rule__TuplePartCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TuplePartCS__Group__2__Impl();
@@ -26904,23 +26989,23 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__2__Impl"
-    // InternalCompleteOCL.g:8731:1: rule__TuplePartCS__Group__2__Impl : ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) ;
+    // InternalCompleteOCL.g:8759:1: rule__TuplePartCS__Group__2__Impl : ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) ;
     public final void rule__TuplePartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8735:1: ( ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) )
-            // InternalCompleteOCL.g:8736:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
+            // InternalCompleteOCL.g:8763:1: ( ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) )
+            // InternalCompleteOCL.g:8764:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
             {
-            // InternalCompleteOCL.g:8736:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
-            // InternalCompleteOCL.g:8737:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
+            // InternalCompleteOCL.g:8764:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
+            // InternalCompleteOCL.g:8765:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2());
             }
-            // InternalCompleteOCL.g:8738:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
-            // InternalCompleteOCL.g:8738:2: rule__TuplePartCS__OwnedTypeAssignment_2
+            // InternalCompleteOCL.g:8766:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
+            // InternalCompleteOCL.g:8766:2: rule__TuplePartCS__OwnedTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TuplePartCS__OwnedTypeAssignment_2();
@@ -26955,14 +27040,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__0"
-    // InternalCompleteOCL.g:8754:1: rule__CollectionLiteralExpCS__Group__0 : rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 ;
+    // InternalCompleteOCL.g:8782:1: rule__CollectionLiteralExpCS__Group__0 : rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 ;
     public final void rule__CollectionLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8758:1: ( rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 )
-            // InternalCompleteOCL.g:8759:2: rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1
+            // InternalCompleteOCL.g:8786:1: ( rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 )
+            // InternalCompleteOCL.g:8787:2: rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__CollectionLiteralExpCS__Group__0__Impl();
@@ -26993,23 +27078,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:8766:1: rule__CollectionLiteralExpCS__Group__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:8794:1: rule__CollectionLiteralExpCS__Group__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
     public final void rule__CollectionLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8770:1: ( ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) )
-            // InternalCompleteOCL.g:8771:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalCompleteOCL.g:8798:1: ( ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) )
+            // InternalCompleteOCL.g:8799:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:8771:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
-            // InternalCompleteOCL.g:8772:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalCompleteOCL.g:8799:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalCompleteOCL.g:8800:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
-            // InternalCompleteOCL.g:8773:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
-            // InternalCompleteOCL.g:8773:2: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0
+            // InternalCompleteOCL.g:8801:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalCompleteOCL.g:8801:2: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__OwnedTypeAssignment_0();
@@ -27044,14 +27129,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__1"
-    // InternalCompleteOCL.g:8783:1: rule__CollectionLiteralExpCS__Group__1 : rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 ;
+    // InternalCompleteOCL.g:8811:1: rule__CollectionLiteralExpCS__Group__1 : rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 ;
     public final void rule__CollectionLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8787:1: ( rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 )
-            // InternalCompleteOCL.g:8788:2: rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2
+            // InternalCompleteOCL.g:8815:1: ( rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 )
+            // InternalCompleteOCL.g:8816:2: rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__CollectionLiteralExpCS__Group__1__Impl();
@@ -27082,17 +27167,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:8795:1: rule__CollectionLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalCompleteOCL.g:8823:1: rule__CollectionLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__CollectionLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8799:1: ( ( '{' ) )
-            // InternalCompleteOCL.g:8800:1: ( '{' )
+            // InternalCompleteOCL.g:8827:1: ( ( '{' ) )
+            // InternalCompleteOCL.g:8828:1: ( '{' )
             {
-            // InternalCompleteOCL.g:8800:1: ( '{' )
-            // InternalCompleteOCL.g:8801:1: '{'
+            // InternalCompleteOCL.g:8828:1: ( '{' )
+            // InternalCompleteOCL.g:8829:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -27123,14 +27208,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__2"
-    // InternalCompleteOCL.g:8814:1: rule__CollectionLiteralExpCS__Group__2 : rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 ;
+    // InternalCompleteOCL.g:8842:1: rule__CollectionLiteralExpCS__Group__2 : rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 ;
     public final void rule__CollectionLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8818:1: ( rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 )
-            // InternalCompleteOCL.g:8819:2: rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3
+            // InternalCompleteOCL.g:8846:1: ( rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 )
+            // InternalCompleteOCL.g:8847:2: rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__CollectionLiteralExpCS__Group__2__Impl();
@@ -27161,22 +27246,22 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__2__Impl"
-    // InternalCompleteOCL.g:8826:1: rule__CollectionLiteralExpCS__Group__2__Impl : ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) ;
+    // InternalCompleteOCL.g:8854:1: rule__CollectionLiteralExpCS__Group__2__Impl : ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) ;
     public final void rule__CollectionLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8830:1: ( ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) )
-            // InternalCompleteOCL.g:8831:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:8858:1: ( ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) )
+            // InternalCompleteOCL.g:8859:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
             {
-            // InternalCompleteOCL.g:8831:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
-            // InternalCompleteOCL.g:8832:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
+            // InternalCompleteOCL.g:8859:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:8860:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2());
             }
-            // InternalCompleteOCL.g:8833:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
+            // InternalCompleteOCL.g:8861:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             int alt84=2;
             int LA84_0 = input.LA(1);
 
@@ -27185,7 +27270,7 @@
             }
             switch (alt84) {
                 case 1 :
-                    // InternalCompleteOCL.g:8833:2: rule__CollectionLiteralExpCS__Group_2__0
+                    // InternalCompleteOCL.g:8861:2: rule__CollectionLiteralExpCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralExpCS__Group_2__0();
@@ -27223,14 +27308,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__3"
-    // InternalCompleteOCL.g:8843:1: rule__CollectionLiteralExpCS__Group__3 : rule__CollectionLiteralExpCS__Group__3__Impl ;
+    // InternalCompleteOCL.g:8871:1: rule__CollectionLiteralExpCS__Group__3 : rule__CollectionLiteralExpCS__Group__3__Impl ;
     public final void rule__CollectionLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8847:1: ( rule__CollectionLiteralExpCS__Group__3__Impl )
-            // InternalCompleteOCL.g:8848:2: rule__CollectionLiteralExpCS__Group__3__Impl
+            // InternalCompleteOCL.g:8875:1: ( rule__CollectionLiteralExpCS__Group__3__Impl )
+            // InternalCompleteOCL.g:8876:2: rule__CollectionLiteralExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__Group__3__Impl();
@@ -27256,17 +27341,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__3__Impl"
-    // InternalCompleteOCL.g:8854:1: rule__CollectionLiteralExpCS__Group__3__Impl : ( '}' ) ;
+    // InternalCompleteOCL.g:8882:1: rule__CollectionLiteralExpCS__Group__3__Impl : ( '}' ) ;
     public final void rule__CollectionLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8858:1: ( ( '}' ) )
-            // InternalCompleteOCL.g:8859:1: ( '}' )
+            // InternalCompleteOCL.g:8886:1: ( ( '}' ) )
+            // InternalCompleteOCL.g:8887:1: ( '}' )
             {
-            // InternalCompleteOCL.g:8859:1: ( '}' )
-            // InternalCompleteOCL.g:8860:1: '}'
+            // InternalCompleteOCL.g:8887:1: ( '}' )
+            // InternalCompleteOCL.g:8888:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
@@ -27297,16 +27382,16 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__0"
-    // InternalCompleteOCL.g:8881:1: rule__CollectionLiteralExpCS__Group_2__0 : rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 ;
+    // InternalCompleteOCL.g:8909:1: rule__CollectionLiteralExpCS__Group_2__0 : rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 ;
     public final void rule__CollectionLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8885:1: ( rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 )
-            // InternalCompleteOCL.g:8886:2: rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1
+            // InternalCompleteOCL.g:8913:1: ( rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 )
+            // InternalCompleteOCL.g:8914:2: rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_18);
+            pushFollow(FollowSets000.FOLLOW_19);
             rule__CollectionLiteralExpCS__Group_2__0__Impl();
 
             state._fsp--;
@@ -27335,23 +27420,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__0__Impl"
-    // InternalCompleteOCL.g:8893:1: rule__CollectionLiteralExpCS__Group_2__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalCompleteOCL.g:8921:1: rule__CollectionLiteralExpCS__Group_2__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__CollectionLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8897:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalCompleteOCL.g:8898:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalCompleteOCL.g:8925:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalCompleteOCL.g:8926:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalCompleteOCL.g:8898:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
-            // InternalCompleteOCL.g:8899:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalCompleteOCL.g:8926:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalCompleteOCL.g:8927:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalCompleteOCL.g:8900:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
-            // InternalCompleteOCL.g:8900:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0
+            // InternalCompleteOCL.g:8928:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalCompleteOCL.g:8928:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0();
@@ -27386,14 +27471,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__1"
-    // InternalCompleteOCL.g:8910:1: rule__CollectionLiteralExpCS__Group_2__1 : rule__CollectionLiteralExpCS__Group_2__1__Impl ;
+    // InternalCompleteOCL.g:8938:1: rule__CollectionLiteralExpCS__Group_2__1 : rule__CollectionLiteralExpCS__Group_2__1__Impl ;
     public final void rule__CollectionLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8914:1: ( rule__CollectionLiteralExpCS__Group_2__1__Impl )
-            // InternalCompleteOCL.g:8915:2: rule__CollectionLiteralExpCS__Group_2__1__Impl
+            // InternalCompleteOCL.g:8942:1: ( rule__CollectionLiteralExpCS__Group_2__1__Impl )
+            // InternalCompleteOCL.g:8943:2: rule__CollectionLiteralExpCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__Group_2__1__Impl();
@@ -27419,22 +27504,22 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__1__Impl"
-    // InternalCompleteOCL.g:8921:1: rule__CollectionLiteralExpCS__Group_2__1__Impl : ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) ;
+    // InternalCompleteOCL.g:8949:1: rule__CollectionLiteralExpCS__Group_2__1__Impl : ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) ;
     public final void rule__CollectionLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8925:1: ( ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) )
-            // InternalCompleteOCL.g:8926:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
+            // InternalCompleteOCL.g:8953:1: ( ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) )
+            // InternalCompleteOCL.g:8954:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
             {
-            // InternalCompleteOCL.g:8926:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
-            // InternalCompleteOCL.g:8927:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
+            // InternalCompleteOCL.g:8954:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
+            // InternalCompleteOCL.g:8955:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1());
             }
-            // InternalCompleteOCL.g:8928:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
+            // InternalCompleteOCL.g:8956:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             loop85:
             do {
                 int alt85=2;
@@ -27447,9 +27532,9 @@
 
                 switch (alt85) {
             	case 1 :
-            	    // InternalCompleteOCL.g:8928:2: rule__CollectionLiteralExpCS__Group_2_1__0
+            	    // InternalCompleteOCL.g:8956:2: rule__CollectionLiteralExpCS__Group_2_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__CollectionLiteralExpCS__Group_2_1__0();
 
             	    state._fsp--;
@@ -27488,14 +27573,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__0"
-    // InternalCompleteOCL.g:8942:1: rule__CollectionLiteralExpCS__Group_2_1__0 : rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 ;
+    // InternalCompleteOCL.g:8970:1: rule__CollectionLiteralExpCS__Group_2_1__0 : rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8946:1: ( rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 )
-            // InternalCompleteOCL.g:8947:2: rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1
+            // InternalCompleteOCL.g:8974:1: ( rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 )
+            // InternalCompleteOCL.g:8975:2: rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_41);
             rule__CollectionLiteralExpCS__Group_2_1__0__Impl();
@@ -27526,17 +27611,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__0__Impl"
-    // InternalCompleteOCL.g:8954:1: rule__CollectionLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:8982:1: rule__CollectionLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8958:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:8959:1: ( ',' )
+            // InternalCompleteOCL.g:8986:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:8987:1: ( ',' )
             {
-            // InternalCompleteOCL.g:8959:1: ( ',' )
-            // InternalCompleteOCL.g:8960:1: ','
+            // InternalCompleteOCL.g:8987:1: ( ',' )
+            // InternalCompleteOCL.g:8988:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
@@ -27567,14 +27652,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__1"
-    // InternalCompleteOCL.g:8973:1: rule__CollectionLiteralExpCS__Group_2_1__1 : rule__CollectionLiteralExpCS__Group_2_1__1__Impl ;
+    // InternalCompleteOCL.g:9001:1: rule__CollectionLiteralExpCS__Group_2_1__1 : rule__CollectionLiteralExpCS__Group_2_1__1__Impl ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8977:1: ( rule__CollectionLiteralExpCS__Group_2_1__1__Impl )
-            // InternalCompleteOCL.g:8978:2: rule__CollectionLiteralExpCS__Group_2_1__1__Impl
+            // InternalCompleteOCL.g:9005:1: ( rule__CollectionLiteralExpCS__Group_2_1__1__Impl )
+            // InternalCompleteOCL.g:9006:2: rule__CollectionLiteralExpCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__Group_2_1__1__Impl();
@@ -27600,23 +27685,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__1__Impl"
-    // InternalCompleteOCL.g:8984:1: rule__CollectionLiteralExpCS__Group_2_1__1__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalCompleteOCL.g:9012:1: rule__CollectionLiteralExpCS__Group_2_1__1__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:8988:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalCompleteOCL.g:8989:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalCompleteOCL.g:9016:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalCompleteOCL.g:9017:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalCompleteOCL.g:8989:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalCompleteOCL.g:8990:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalCompleteOCL.g:9017:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalCompleteOCL.g:9018:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalCompleteOCL.g:8991:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
-            // InternalCompleteOCL.g:8991:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1
+            // InternalCompleteOCL.g:9019:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalCompleteOCL.g:9019:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1();
@@ -27651,14 +27736,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__0"
-    // InternalCompleteOCL.g:9005:1: rule__CollectionLiteralPartCS__Group_0__0 : rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 ;
+    // InternalCompleteOCL.g:9033:1: rule__CollectionLiteralPartCS__Group_0__0 : rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 ;
     public final void rule__CollectionLiteralPartCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9009:1: ( rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 )
-            // InternalCompleteOCL.g:9010:2: rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1
+            // InternalCompleteOCL.g:9037:1: ( rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 )
+            // InternalCompleteOCL.g:9038:2: rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_42);
             rule__CollectionLiteralPartCS__Group_0__0__Impl();
@@ -27689,23 +27774,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__0__Impl"
-    // InternalCompleteOCL.g:9017:1: rule__CollectionLiteralPartCS__Group_0__0__Impl : ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) ;
+    // InternalCompleteOCL.g:9045:1: rule__CollectionLiteralPartCS__Group_0__0__Impl : ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) ;
     public final void rule__CollectionLiteralPartCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9021:1: ( ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) )
-            // InternalCompleteOCL.g:9022:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
+            // InternalCompleteOCL.g:9049:1: ( ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) )
+            // InternalCompleteOCL.g:9050:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
             {
-            // InternalCompleteOCL.g:9022:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
-            // InternalCompleteOCL.g:9023:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
+            // InternalCompleteOCL.g:9050:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
+            // InternalCompleteOCL.g:9051:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0());
             }
-            // InternalCompleteOCL.g:9024:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
-            // InternalCompleteOCL.g:9024:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0
+            // InternalCompleteOCL.g:9052:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
+            // InternalCompleteOCL.g:9052:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0();
@@ -27740,14 +27825,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__1"
-    // InternalCompleteOCL.g:9034:1: rule__CollectionLiteralPartCS__Group_0__1 : rule__CollectionLiteralPartCS__Group_0__1__Impl ;
+    // InternalCompleteOCL.g:9062:1: rule__CollectionLiteralPartCS__Group_0__1 : rule__CollectionLiteralPartCS__Group_0__1__Impl ;
     public final void rule__CollectionLiteralPartCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9038:1: ( rule__CollectionLiteralPartCS__Group_0__1__Impl )
-            // InternalCompleteOCL.g:9039:2: rule__CollectionLiteralPartCS__Group_0__1__Impl
+            // InternalCompleteOCL.g:9066:1: ( rule__CollectionLiteralPartCS__Group_0__1__Impl )
+            // InternalCompleteOCL.g:9067:2: rule__CollectionLiteralPartCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__Group_0__1__Impl();
@@ -27773,22 +27858,22 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__1__Impl"
-    // InternalCompleteOCL.g:9045:1: rule__CollectionLiteralPartCS__Group_0__1__Impl : ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) ;
+    // InternalCompleteOCL.g:9073:1: rule__CollectionLiteralPartCS__Group_0__1__Impl : ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) ;
     public final void rule__CollectionLiteralPartCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9049:1: ( ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) )
-            // InternalCompleteOCL.g:9050:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
+            // InternalCompleteOCL.g:9077:1: ( ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) )
+            // InternalCompleteOCL.g:9078:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
             {
-            // InternalCompleteOCL.g:9050:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
-            // InternalCompleteOCL.g:9051:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
+            // InternalCompleteOCL.g:9078:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
+            // InternalCompleteOCL.g:9079:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1());
             }
-            // InternalCompleteOCL.g:9052:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
+            // InternalCompleteOCL.g:9080:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             int alt86=2;
             int LA86_0 = input.LA(1);
 
@@ -27797,7 +27882,7 @@
             }
             switch (alt86) {
                 case 1 :
-                    // InternalCompleteOCL.g:9052:2: rule__CollectionLiteralPartCS__Group_0_1__0
+                    // InternalCompleteOCL.g:9080:2: rule__CollectionLiteralPartCS__Group_0_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralPartCS__Group_0_1__0();
@@ -27835,14 +27920,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__0"
-    // InternalCompleteOCL.g:9066:1: rule__CollectionLiteralPartCS__Group_0_1__0 : rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 ;
+    // InternalCompleteOCL.g:9094:1: rule__CollectionLiteralPartCS__Group_0_1__0 : rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9070:1: ( rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 )
-            // InternalCompleteOCL.g:9071:2: rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1
+            // InternalCompleteOCL.g:9098:1: ( rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 )
+            // InternalCompleteOCL.g:9099:2: rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__CollectionLiteralPartCS__Group_0_1__0__Impl();
@@ -27873,17 +27958,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__0__Impl"
-    // InternalCompleteOCL.g:9078:1: rule__CollectionLiteralPartCS__Group_0_1__0__Impl : ( '..' ) ;
+    // InternalCompleteOCL.g:9106:1: rule__CollectionLiteralPartCS__Group_0_1__0__Impl : ( '..' ) ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9082:1: ( ( '..' ) )
-            // InternalCompleteOCL.g:9083:1: ( '..' )
+            // InternalCompleteOCL.g:9110:1: ( ( '..' ) )
+            // InternalCompleteOCL.g:9111:1: ( '..' )
             {
-            // InternalCompleteOCL.g:9083:1: ( '..' )
-            // InternalCompleteOCL.g:9084:1: '..'
+            // InternalCompleteOCL.g:9111:1: ( '..' )
+            // InternalCompleteOCL.g:9112:1: '..'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
@@ -27914,14 +27999,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__1"
-    // InternalCompleteOCL.g:9097:1: rule__CollectionLiteralPartCS__Group_0_1__1 : rule__CollectionLiteralPartCS__Group_0_1__1__Impl ;
+    // InternalCompleteOCL.g:9125:1: rule__CollectionLiteralPartCS__Group_0_1__1 : rule__CollectionLiteralPartCS__Group_0_1__1__Impl ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9101:1: ( rule__CollectionLiteralPartCS__Group_0_1__1__Impl )
-            // InternalCompleteOCL.g:9102:2: rule__CollectionLiteralPartCS__Group_0_1__1__Impl
+            // InternalCompleteOCL.g:9129:1: ( rule__CollectionLiteralPartCS__Group_0_1__1__Impl )
+            // InternalCompleteOCL.g:9130:2: rule__CollectionLiteralPartCS__Group_0_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__Group_0_1__1__Impl();
@@ -27947,23 +28032,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__1__Impl"
-    // InternalCompleteOCL.g:9108:1: rule__CollectionLiteralPartCS__Group_0_1__1__Impl : ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) ;
+    // InternalCompleteOCL.g:9136:1: rule__CollectionLiteralPartCS__Group_0_1__1__Impl : ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9112:1: ( ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) )
-            // InternalCompleteOCL.g:9113:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
+            // InternalCompleteOCL.g:9140:1: ( ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) )
+            // InternalCompleteOCL.g:9141:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
             {
-            // InternalCompleteOCL.g:9113:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
-            // InternalCompleteOCL.g:9114:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
+            // InternalCompleteOCL.g:9141:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
+            // InternalCompleteOCL.g:9142:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1());
             }
-            // InternalCompleteOCL.g:9115:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
-            // InternalCompleteOCL.g:9115:2: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1
+            // InternalCompleteOCL.g:9143:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
+            // InternalCompleteOCL.g:9143:2: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1();
@@ -27998,14 +28083,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__0"
-    // InternalCompleteOCL.g:9129:1: rule__CollectionPatternCS__Group__0 : rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 ;
+    // InternalCompleteOCL.g:9157:1: rule__CollectionPatternCS__Group__0 : rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 ;
     public final void rule__CollectionPatternCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9133:1: ( rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 )
-            // InternalCompleteOCL.g:9134:2: rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1
+            // InternalCompleteOCL.g:9161:1: ( rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 )
+            // InternalCompleteOCL.g:9162:2: rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__CollectionPatternCS__Group__0__Impl();
@@ -28036,23 +28121,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__0__Impl"
-    // InternalCompleteOCL.g:9141:1: rule__CollectionPatternCS__Group__0__Impl : ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:9169:1: rule__CollectionPatternCS__Group__0__Impl : ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) ;
     public final void rule__CollectionPatternCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9145:1: ( ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) )
-            // InternalCompleteOCL.g:9146:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
+            // InternalCompleteOCL.g:9173:1: ( ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) )
+            // InternalCompleteOCL.g:9174:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:9146:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
-            // InternalCompleteOCL.g:9147:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
+            // InternalCompleteOCL.g:9174:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
+            // InternalCompleteOCL.g:9175:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0());
             }
-            // InternalCompleteOCL.g:9148:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
-            // InternalCompleteOCL.g:9148:2: rule__CollectionPatternCS__OwnedTypeAssignment_0
+            // InternalCompleteOCL.g:9176:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
+            // InternalCompleteOCL.g:9176:2: rule__CollectionPatternCS__OwnedTypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__OwnedTypeAssignment_0();
@@ -28087,14 +28172,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__1"
-    // InternalCompleteOCL.g:9158:1: rule__CollectionPatternCS__Group__1 : rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 ;
+    // InternalCompleteOCL.g:9186:1: rule__CollectionPatternCS__Group__1 : rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 ;
     public final void rule__CollectionPatternCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9162:1: ( rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 )
-            // InternalCompleteOCL.g:9163:2: rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2
+            // InternalCompleteOCL.g:9190:1: ( rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 )
+            // InternalCompleteOCL.g:9191:2: rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__CollectionPatternCS__Group__1__Impl();
@@ -28125,17 +28210,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__1__Impl"
-    // InternalCompleteOCL.g:9170:1: rule__CollectionPatternCS__Group__1__Impl : ( '{' ) ;
+    // InternalCompleteOCL.g:9198:1: rule__CollectionPatternCS__Group__1__Impl : ( '{' ) ;
     public final void rule__CollectionPatternCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9174:1: ( ( '{' ) )
-            // InternalCompleteOCL.g:9175:1: ( '{' )
+            // InternalCompleteOCL.g:9202:1: ( ( '{' ) )
+            // InternalCompleteOCL.g:9203:1: ( '{' )
             {
-            // InternalCompleteOCL.g:9175:1: ( '{' )
-            // InternalCompleteOCL.g:9176:1: '{'
+            // InternalCompleteOCL.g:9203:1: ( '{' )
+            // InternalCompleteOCL.g:9204:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
@@ -28166,14 +28251,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__2"
-    // InternalCompleteOCL.g:9189:1: rule__CollectionPatternCS__Group__2 : rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 ;
+    // InternalCompleteOCL.g:9217:1: rule__CollectionPatternCS__Group__2 : rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 ;
     public final void rule__CollectionPatternCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9193:1: ( rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 )
-            // InternalCompleteOCL.g:9194:2: rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3
+            // InternalCompleteOCL.g:9221:1: ( rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 )
+            // InternalCompleteOCL.g:9222:2: rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__CollectionPatternCS__Group__2__Impl();
@@ -28204,22 +28289,22 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__2__Impl"
-    // InternalCompleteOCL.g:9201:1: rule__CollectionPatternCS__Group__2__Impl : ( ( rule__CollectionPatternCS__Group_2__0 )? ) ;
+    // InternalCompleteOCL.g:9229:1: rule__CollectionPatternCS__Group__2__Impl : ( ( rule__CollectionPatternCS__Group_2__0 )? ) ;
     public final void rule__CollectionPatternCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9205:1: ( ( ( rule__CollectionPatternCS__Group_2__0 )? ) )
-            // InternalCompleteOCL.g:9206:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:9233:1: ( ( ( rule__CollectionPatternCS__Group_2__0 )? ) )
+            // InternalCompleteOCL.g:9234:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
             {
-            // InternalCompleteOCL.g:9206:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
-            // InternalCompleteOCL.g:9207:1: ( rule__CollectionPatternCS__Group_2__0 )?
+            // InternalCompleteOCL.g:9234:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:9235:1: ( rule__CollectionPatternCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getGroup_2());
             }
-            // InternalCompleteOCL.g:9208:1: ( rule__CollectionPatternCS__Group_2__0 )?
+            // InternalCompleteOCL.g:9236:1: ( rule__CollectionPatternCS__Group_2__0 )?
             int alt87=2;
             int LA87_0 = input.LA(1);
 
@@ -28228,7 +28313,7 @@
             }
             switch (alt87) {
                 case 1 :
-                    // InternalCompleteOCL.g:9208:2: rule__CollectionPatternCS__Group_2__0
+                    // InternalCompleteOCL.g:9236:2: rule__CollectionPatternCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionPatternCS__Group_2__0();
@@ -28266,14 +28351,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__3"
-    // InternalCompleteOCL.g:9218:1: rule__CollectionPatternCS__Group__3 : rule__CollectionPatternCS__Group__3__Impl ;
+    // InternalCompleteOCL.g:9246:1: rule__CollectionPatternCS__Group__3 : rule__CollectionPatternCS__Group__3__Impl ;
     public final void rule__CollectionPatternCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9222:1: ( rule__CollectionPatternCS__Group__3__Impl )
-            // InternalCompleteOCL.g:9223:2: rule__CollectionPatternCS__Group__3__Impl
+            // InternalCompleteOCL.g:9250:1: ( rule__CollectionPatternCS__Group__3__Impl )
+            // InternalCompleteOCL.g:9251:2: rule__CollectionPatternCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group__3__Impl();
@@ -28299,17 +28384,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__3__Impl"
-    // InternalCompleteOCL.g:9229:1: rule__CollectionPatternCS__Group__3__Impl : ( '}' ) ;
+    // InternalCompleteOCL.g:9257:1: rule__CollectionPatternCS__Group__3__Impl : ( '}' ) ;
     public final void rule__CollectionPatternCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9233:1: ( ( '}' ) )
-            // InternalCompleteOCL.g:9234:1: ( '}' )
+            // InternalCompleteOCL.g:9261:1: ( ( '}' ) )
+            // InternalCompleteOCL.g:9262:1: ( '}' )
             {
-            // InternalCompleteOCL.g:9234:1: ( '}' )
-            // InternalCompleteOCL.g:9235:1: '}'
+            // InternalCompleteOCL.g:9262:1: ( '}' )
+            // InternalCompleteOCL.g:9263:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
@@ -28340,14 +28425,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__0"
-    // InternalCompleteOCL.g:9256:1: rule__CollectionPatternCS__Group_2__0 : rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 ;
+    // InternalCompleteOCL.g:9284:1: rule__CollectionPatternCS__Group_2__0 : rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 ;
     public final void rule__CollectionPatternCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9260:1: ( rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 )
-            // InternalCompleteOCL.g:9261:2: rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1
+            // InternalCompleteOCL.g:9288:1: ( rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 )
+            // InternalCompleteOCL.g:9289:2: rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_44);
             rule__CollectionPatternCS__Group_2__0__Impl();
@@ -28378,23 +28463,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__0__Impl"
-    // InternalCompleteOCL.g:9268:1: rule__CollectionPatternCS__Group_2__0__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalCompleteOCL.g:9296:1: rule__CollectionPatternCS__Group_2__0__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__CollectionPatternCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9272:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalCompleteOCL.g:9273:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
+            // InternalCompleteOCL.g:9300:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalCompleteOCL.g:9301:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalCompleteOCL.g:9273:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
-            // InternalCompleteOCL.g:9274:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
+            // InternalCompleteOCL.g:9301:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
+            // InternalCompleteOCL.g:9302:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalCompleteOCL.g:9275:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
-            // InternalCompleteOCL.g:9275:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_0
+            // InternalCompleteOCL.g:9303:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
+            // InternalCompleteOCL.g:9303:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__OwnedPartsAssignment_2_0();
@@ -28429,14 +28514,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__1"
-    // InternalCompleteOCL.g:9285:1: rule__CollectionPatternCS__Group_2__1 : rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 ;
+    // InternalCompleteOCL.g:9313:1: rule__CollectionPatternCS__Group_2__1 : rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 ;
     public final void rule__CollectionPatternCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9289:1: ( rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 )
-            // InternalCompleteOCL.g:9290:2: rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2
+            // InternalCompleteOCL.g:9317:1: ( rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 )
+            // InternalCompleteOCL.g:9318:2: rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_44);
             rule__CollectionPatternCS__Group_2__1__Impl();
@@ -28467,22 +28552,22 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__1__Impl"
-    // InternalCompleteOCL.g:9297:1: rule__CollectionPatternCS__Group_2__1__Impl : ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) ;
+    // InternalCompleteOCL.g:9325:1: rule__CollectionPatternCS__Group_2__1__Impl : ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) ;
     public final void rule__CollectionPatternCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9301:1: ( ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) )
-            // InternalCompleteOCL.g:9302:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
+            // InternalCompleteOCL.g:9329:1: ( ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) )
+            // InternalCompleteOCL.g:9330:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
             {
-            // InternalCompleteOCL.g:9302:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
-            // InternalCompleteOCL.g:9303:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
+            // InternalCompleteOCL.g:9330:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
+            // InternalCompleteOCL.g:9331:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1());
             }
-            // InternalCompleteOCL.g:9304:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
+            // InternalCompleteOCL.g:9332:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             loop88:
             do {
                 int alt88=2;
@@ -28495,9 +28580,9 @@
 
                 switch (alt88) {
             	case 1 :
-            	    // InternalCompleteOCL.g:9304:2: rule__CollectionPatternCS__Group_2_1__0
+            	    // InternalCompleteOCL.g:9332:2: rule__CollectionPatternCS__Group_2_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__CollectionPatternCS__Group_2_1__0();
 
             	    state._fsp--;
@@ -28536,14 +28621,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__2"
-    // InternalCompleteOCL.g:9314:1: rule__CollectionPatternCS__Group_2__2 : rule__CollectionPatternCS__Group_2__2__Impl ;
+    // InternalCompleteOCL.g:9342:1: rule__CollectionPatternCS__Group_2__2 : rule__CollectionPatternCS__Group_2__2__Impl ;
     public final void rule__CollectionPatternCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9318:1: ( rule__CollectionPatternCS__Group_2__2__Impl )
-            // InternalCompleteOCL.g:9319:2: rule__CollectionPatternCS__Group_2__2__Impl
+            // InternalCompleteOCL.g:9346:1: ( rule__CollectionPatternCS__Group_2__2__Impl )
+            // InternalCompleteOCL.g:9347:2: rule__CollectionPatternCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2__2__Impl();
@@ -28569,23 +28654,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__2__Impl"
-    // InternalCompleteOCL.g:9325:1: rule__CollectionPatternCS__Group_2__2__Impl : ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) ;
+    // InternalCompleteOCL.g:9353:1: rule__CollectionPatternCS__Group_2__2__Impl : ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) ;
     public final void rule__CollectionPatternCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9329:1: ( ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) )
-            // InternalCompleteOCL.g:9330:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
+            // InternalCompleteOCL.g:9357:1: ( ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) )
+            // InternalCompleteOCL.g:9358:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
             {
-            // InternalCompleteOCL.g:9330:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
-            // InternalCompleteOCL.g:9331:1: ( rule__CollectionPatternCS__Group_2_2__0 )
+            // InternalCompleteOCL.g:9358:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
+            // InternalCompleteOCL.g:9359:1: ( rule__CollectionPatternCS__Group_2_2__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2());
             }
-            // InternalCompleteOCL.g:9332:1: ( rule__CollectionPatternCS__Group_2_2__0 )
-            // InternalCompleteOCL.g:9332:2: rule__CollectionPatternCS__Group_2_2__0
+            // InternalCompleteOCL.g:9360:1: ( rule__CollectionPatternCS__Group_2_2__0 )
+            // InternalCompleteOCL.g:9360:2: rule__CollectionPatternCS__Group_2_2__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2_2__0();
@@ -28620,14 +28705,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__0"
-    // InternalCompleteOCL.g:9348:1: rule__CollectionPatternCS__Group_2_1__0 : rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 ;
+    // InternalCompleteOCL.g:9376:1: rule__CollectionPatternCS__Group_2_1__0 : rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 ;
     public final void rule__CollectionPatternCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9352:1: ( rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 )
-            // InternalCompleteOCL.g:9353:2: rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1
+            // InternalCompleteOCL.g:9380:1: ( rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 )
+            // InternalCompleteOCL.g:9381:2: rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_41);
             rule__CollectionPatternCS__Group_2_1__0__Impl();
@@ -28658,17 +28743,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__0__Impl"
-    // InternalCompleteOCL.g:9360:1: rule__CollectionPatternCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:9388:1: rule__CollectionPatternCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CollectionPatternCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9364:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:9365:1: ( ',' )
+            // InternalCompleteOCL.g:9392:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:9393:1: ( ',' )
             {
-            // InternalCompleteOCL.g:9365:1: ( ',' )
-            // InternalCompleteOCL.g:9366:1: ','
+            // InternalCompleteOCL.g:9393:1: ( ',' )
+            // InternalCompleteOCL.g:9394:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
@@ -28699,14 +28784,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__1"
-    // InternalCompleteOCL.g:9379:1: rule__CollectionPatternCS__Group_2_1__1 : rule__CollectionPatternCS__Group_2_1__1__Impl ;
+    // InternalCompleteOCL.g:9407:1: rule__CollectionPatternCS__Group_2_1__1 : rule__CollectionPatternCS__Group_2_1__1__Impl ;
     public final void rule__CollectionPatternCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9383:1: ( rule__CollectionPatternCS__Group_2_1__1__Impl )
-            // InternalCompleteOCL.g:9384:2: rule__CollectionPatternCS__Group_2_1__1__Impl
+            // InternalCompleteOCL.g:9411:1: ( rule__CollectionPatternCS__Group_2_1__1__Impl )
+            // InternalCompleteOCL.g:9412:2: rule__CollectionPatternCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2_1__1__Impl();
@@ -28732,23 +28817,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__1__Impl"
-    // InternalCompleteOCL.g:9390:1: rule__CollectionPatternCS__Group_2_1__1__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalCompleteOCL.g:9418:1: rule__CollectionPatternCS__Group_2_1__1__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__CollectionPatternCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9394:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalCompleteOCL.g:9395:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalCompleteOCL.g:9422:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalCompleteOCL.g:9423:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalCompleteOCL.g:9395:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalCompleteOCL.g:9396:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
+            // InternalCompleteOCL.g:9423:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalCompleteOCL.g:9424:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalCompleteOCL.g:9397:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
-            // InternalCompleteOCL.g:9397:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1
+            // InternalCompleteOCL.g:9425:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
+            // InternalCompleteOCL.g:9425:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1();
@@ -28783,14 +28868,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__0"
-    // InternalCompleteOCL.g:9411:1: rule__CollectionPatternCS__Group_2_2__0 : rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 ;
+    // InternalCompleteOCL.g:9439:1: rule__CollectionPatternCS__Group_2_2__0 : rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 ;
     public final void rule__CollectionPatternCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9415:1: ( rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 )
-            // InternalCompleteOCL.g:9416:2: rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1
+            // InternalCompleteOCL.g:9443:1: ( rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 )
+            // InternalCompleteOCL.g:9444:2: rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_45);
             rule__CollectionPatternCS__Group_2_2__0__Impl();
@@ -28821,17 +28906,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__0__Impl"
-    // InternalCompleteOCL.g:9423:1: rule__CollectionPatternCS__Group_2_2__0__Impl : ( '++' ) ;
+    // InternalCompleteOCL.g:9451:1: rule__CollectionPatternCS__Group_2_2__0__Impl : ( '++' ) ;
     public final void rule__CollectionPatternCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9427:1: ( ( '++' ) )
-            // InternalCompleteOCL.g:9428:1: ( '++' )
+            // InternalCompleteOCL.g:9455:1: ( ( '++' ) )
+            // InternalCompleteOCL.g:9456:1: ( '++' )
             {
-            // InternalCompleteOCL.g:9428:1: ( '++' )
-            // InternalCompleteOCL.g:9429:1: '++'
+            // InternalCompleteOCL.g:9456:1: ( '++' )
+            // InternalCompleteOCL.g:9457:1: '++'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
@@ -28862,14 +28947,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__1"
-    // InternalCompleteOCL.g:9442:1: rule__CollectionPatternCS__Group_2_2__1 : rule__CollectionPatternCS__Group_2_2__1__Impl ;
+    // InternalCompleteOCL.g:9470:1: rule__CollectionPatternCS__Group_2_2__1 : rule__CollectionPatternCS__Group_2_2__1__Impl ;
     public final void rule__CollectionPatternCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9446:1: ( rule__CollectionPatternCS__Group_2_2__1__Impl )
-            // InternalCompleteOCL.g:9447:2: rule__CollectionPatternCS__Group_2_2__1__Impl
+            // InternalCompleteOCL.g:9474:1: ( rule__CollectionPatternCS__Group_2_2__1__Impl )
+            // InternalCompleteOCL.g:9475:2: rule__CollectionPatternCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2_2__1__Impl();
@@ -28895,23 +28980,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__1__Impl"
-    // InternalCompleteOCL.g:9453:1: rule__CollectionPatternCS__Group_2_2__1__Impl : ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) ;
+    // InternalCompleteOCL.g:9481:1: rule__CollectionPatternCS__Group_2_2__1__Impl : ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) ;
     public final void rule__CollectionPatternCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9457:1: ( ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) )
-            // InternalCompleteOCL.g:9458:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
+            // InternalCompleteOCL.g:9485:1: ( ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) )
+            // InternalCompleteOCL.g:9486:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
             {
-            // InternalCompleteOCL.g:9458:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
-            // InternalCompleteOCL.g:9459:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
+            // InternalCompleteOCL.g:9486:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
+            // InternalCompleteOCL.g:9487:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1());
             }
-            // InternalCompleteOCL.g:9460:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
-            // InternalCompleteOCL.g:9460:2: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1
+            // InternalCompleteOCL.g:9488:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
+            // InternalCompleteOCL.g:9488:2: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1();
@@ -28946,16 +29031,16 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__0"
-    // InternalCompleteOCL.g:9474:1: rule__ShadowPartCS__Group_0__0 : rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 ;
+    // InternalCompleteOCL.g:9502:1: rule__ShadowPartCS__Group_0__0 : rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 ;
     public final void rule__ShadowPartCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9478:1: ( rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 )
-            // InternalCompleteOCL.g:9479:2: rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1
+            // InternalCompleteOCL.g:9506:1: ( rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 )
+            // InternalCompleteOCL.g:9507:2: rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1
             {
-            pushFollow(FollowSets000.FOLLOW_22);
+            pushFollow(FollowSets000.FOLLOW_23);
             rule__ShadowPartCS__Group_0__0__Impl();
 
             state._fsp--;
@@ -28984,23 +29069,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__0__Impl"
-    // InternalCompleteOCL.g:9486:1: rule__ShadowPartCS__Group_0__0__Impl : ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) ;
+    // InternalCompleteOCL.g:9514:1: rule__ShadowPartCS__Group_0__0__Impl : ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) ;
     public final void rule__ShadowPartCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9490:1: ( ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) )
-            // InternalCompleteOCL.g:9491:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
+            // InternalCompleteOCL.g:9518:1: ( ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) )
+            // InternalCompleteOCL.g:9519:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
             {
-            // InternalCompleteOCL.g:9491:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
-            // InternalCompleteOCL.g:9492:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
+            // InternalCompleteOCL.g:9519:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
+            // InternalCompleteOCL.g:9520:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0_0());
             }
-            // InternalCompleteOCL.g:9493:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
-            // InternalCompleteOCL.g:9493:2: rule__ShadowPartCS__ReferredPropertyAssignment_0_0
+            // InternalCompleteOCL.g:9521:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
+            // InternalCompleteOCL.g:9521:2: rule__ShadowPartCS__ReferredPropertyAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__ReferredPropertyAssignment_0_0();
@@ -29035,14 +29120,14 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__1"
-    // InternalCompleteOCL.g:9503:1: rule__ShadowPartCS__Group_0__1 : rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 ;
+    // InternalCompleteOCL.g:9531:1: rule__ShadowPartCS__Group_0__1 : rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 ;
     public final void rule__ShadowPartCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9507:1: ( rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 )
-            // InternalCompleteOCL.g:9508:2: rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2
+            // InternalCompleteOCL.g:9535:1: ( rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 )
+            // InternalCompleteOCL.g:9536:2: rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_41);
             rule__ShadowPartCS__Group_0__1__Impl();
@@ -29073,17 +29158,17 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__1__Impl"
-    // InternalCompleteOCL.g:9515:1: rule__ShadowPartCS__Group_0__1__Impl : ( '=' ) ;
+    // InternalCompleteOCL.g:9543:1: rule__ShadowPartCS__Group_0__1__Impl : ( '=' ) ;
     public final void rule__ShadowPartCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9519:1: ( ( '=' ) )
-            // InternalCompleteOCL.g:9520:1: ( '=' )
+            // InternalCompleteOCL.g:9547:1: ( ( '=' ) )
+            // InternalCompleteOCL.g:9548:1: ( '=' )
             {
-            // InternalCompleteOCL.g:9520:1: ( '=' )
-            // InternalCompleteOCL.g:9521:1: '='
+            // InternalCompleteOCL.g:9548:1: ( '=' )
+            // InternalCompleteOCL.g:9549:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_0_1());
@@ -29114,14 +29199,14 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__2"
-    // InternalCompleteOCL.g:9534:1: rule__ShadowPartCS__Group_0__2 : rule__ShadowPartCS__Group_0__2__Impl ;
+    // InternalCompleteOCL.g:9562:1: rule__ShadowPartCS__Group_0__2 : rule__ShadowPartCS__Group_0__2__Impl ;
     public final void rule__ShadowPartCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9538:1: ( rule__ShadowPartCS__Group_0__2__Impl )
-            // InternalCompleteOCL.g:9539:2: rule__ShadowPartCS__Group_0__2__Impl
+            // InternalCompleteOCL.g:9566:1: ( rule__ShadowPartCS__Group_0__2__Impl )
+            // InternalCompleteOCL.g:9567:2: rule__ShadowPartCS__Group_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__Group_0__2__Impl();
@@ -29147,23 +29232,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__2__Impl"
-    // InternalCompleteOCL.g:9545:1: rule__ShadowPartCS__Group_0__2__Impl : ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) ;
+    // InternalCompleteOCL.g:9573:1: rule__ShadowPartCS__Group_0__2__Impl : ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) ;
     public final void rule__ShadowPartCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9549:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) )
-            // InternalCompleteOCL.g:9550:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
+            // InternalCompleteOCL.g:9577:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) )
+            // InternalCompleteOCL.g:9578:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
             {
-            // InternalCompleteOCL.g:9550:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
-            // InternalCompleteOCL.g:9551:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
+            // InternalCompleteOCL.g:9578:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
+            // InternalCompleteOCL.g:9579:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_0_2());
             }
-            // InternalCompleteOCL.g:9552:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
-            // InternalCompleteOCL.g:9552:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2
+            // InternalCompleteOCL.g:9580:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
+            // InternalCompleteOCL.g:9580:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2();
@@ -29198,14 +29283,14 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__0"
-    // InternalCompleteOCL.g:9568:1: rule__PatternExpCS__Group__0 : rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 ;
+    // InternalCompleteOCL.g:9596:1: rule__PatternExpCS__Group__0 : rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 ;
     public final void rule__PatternExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9572:1: ( rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 )
-            // InternalCompleteOCL.g:9573:2: rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1
+            // InternalCompleteOCL.g:9600:1: ( rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 )
+            // InternalCompleteOCL.g:9601:2: rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_41);
             rule__PatternExpCS__Group__0__Impl();
@@ -29236,22 +29321,22 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:9580:1: rule__PatternExpCS__Group__0__Impl : ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) ;
+    // InternalCompleteOCL.g:9608:1: rule__PatternExpCS__Group__0__Impl : ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) ;
     public final void rule__PatternExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9584:1: ( ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) )
-            // InternalCompleteOCL.g:9585:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
+            // InternalCompleteOCL.g:9612:1: ( ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) )
+            // InternalCompleteOCL.g:9613:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
             {
-            // InternalCompleteOCL.g:9585:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
-            // InternalCompleteOCL.g:9586:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
+            // InternalCompleteOCL.g:9613:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
+            // InternalCompleteOCL.g:9614:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0());
             }
-            // InternalCompleteOCL.g:9587:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
+            // InternalCompleteOCL.g:9615:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             int alt89=2;
             int LA89_0 = input.LA(1);
 
@@ -29260,7 +29345,7 @@
             }
             switch (alt89) {
                 case 1 :
-                    // InternalCompleteOCL.g:9587:2: rule__PatternExpCS__PatternVariableNameAssignment_0
+                    // InternalCompleteOCL.g:9615:2: rule__PatternExpCS__PatternVariableNameAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PatternExpCS__PatternVariableNameAssignment_0();
@@ -29298,16 +29383,16 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__1"
-    // InternalCompleteOCL.g:9597:1: rule__PatternExpCS__Group__1 : rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 ;
+    // InternalCompleteOCL.g:9625:1: rule__PatternExpCS__Group__1 : rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 ;
     public final void rule__PatternExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9601:1: ( rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 )
-            // InternalCompleteOCL.g:9602:2: rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2
+            // InternalCompleteOCL.g:9629:1: ( rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 )
+            // InternalCompleteOCL.g:9630:2: rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__PatternExpCS__Group__1__Impl();
 
             state._fsp--;
@@ -29336,17 +29421,17 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:9609:1: rule__PatternExpCS__Group__1__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:9637:1: rule__PatternExpCS__Group__1__Impl : ( ':' ) ;
     public final void rule__PatternExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9613:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:9614:1: ( ':' )
+            // InternalCompleteOCL.g:9641:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:9642:1: ( ':' )
             {
-            // InternalCompleteOCL.g:9614:1: ( ':' )
-            // InternalCompleteOCL.g:9615:1: ':'
+            // InternalCompleteOCL.g:9642:1: ( ':' )
+            // InternalCompleteOCL.g:9643:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
@@ -29377,14 +29462,14 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__2"
-    // InternalCompleteOCL.g:9628:1: rule__PatternExpCS__Group__2 : rule__PatternExpCS__Group__2__Impl ;
+    // InternalCompleteOCL.g:9656:1: rule__PatternExpCS__Group__2 : rule__PatternExpCS__Group__2__Impl ;
     public final void rule__PatternExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9632:1: ( rule__PatternExpCS__Group__2__Impl )
-            // InternalCompleteOCL.g:9633:2: rule__PatternExpCS__Group__2__Impl
+            // InternalCompleteOCL.g:9660:1: ( rule__PatternExpCS__Group__2__Impl )
+            // InternalCompleteOCL.g:9661:2: rule__PatternExpCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PatternExpCS__Group__2__Impl();
@@ -29410,23 +29495,23 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__2__Impl"
-    // InternalCompleteOCL.g:9639:1: rule__PatternExpCS__Group__2__Impl : ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) ;
+    // InternalCompleteOCL.g:9667:1: rule__PatternExpCS__Group__2__Impl : ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) ;
     public final void rule__PatternExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9643:1: ( ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) )
-            // InternalCompleteOCL.g:9644:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
+            // InternalCompleteOCL.g:9671:1: ( ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) )
+            // InternalCompleteOCL.g:9672:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
             {
-            // InternalCompleteOCL.g:9644:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
-            // InternalCompleteOCL.g:9645:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
+            // InternalCompleteOCL.g:9672:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
+            // InternalCompleteOCL.g:9673:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2());
             }
-            // InternalCompleteOCL.g:9646:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
-            // InternalCompleteOCL.g:9646:2: rule__PatternExpCS__OwnedPatternTypeAssignment_2
+            // InternalCompleteOCL.g:9674:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
+            // InternalCompleteOCL.g:9674:2: rule__PatternExpCS__OwnedPatternTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PatternExpCS__OwnedPatternTypeAssignment_2();
@@ -29461,14 +29546,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__0"
-    // InternalCompleteOCL.g:9662:1: rule__LambdaLiteralExpCS__Group__0 : rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 ;
+    // InternalCompleteOCL.g:9690:1: rule__LambdaLiteralExpCS__Group__0 : rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 ;
     public final void rule__LambdaLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9666:1: ( rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 )
-            // InternalCompleteOCL.g:9667:2: rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1
+            // InternalCompleteOCL.g:9694:1: ( rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 )
+            // InternalCompleteOCL.g:9695:2: rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__LambdaLiteralExpCS__Group__0__Impl();
@@ -29499,17 +29584,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:9674:1: rule__LambdaLiteralExpCS__Group__0__Impl : ( 'Lambda' ) ;
+    // InternalCompleteOCL.g:9702:1: rule__LambdaLiteralExpCS__Group__0__Impl : ( 'Lambda' ) ;
     public final void rule__LambdaLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9678:1: ( ( 'Lambda' ) )
-            // InternalCompleteOCL.g:9679:1: ( 'Lambda' )
+            // InternalCompleteOCL.g:9706:1: ( ( 'Lambda' ) )
+            // InternalCompleteOCL.g:9707:1: ( 'Lambda' )
             {
-            // InternalCompleteOCL.g:9679:1: ( 'Lambda' )
-            // InternalCompleteOCL.g:9680:1: 'Lambda'
+            // InternalCompleteOCL.g:9707:1: ( 'Lambda' )
+            // InternalCompleteOCL.g:9708:1: 'Lambda'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
@@ -29540,14 +29625,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__1"
-    // InternalCompleteOCL.g:9693:1: rule__LambdaLiteralExpCS__Group__1 : rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 ;
+    // InternalCompleteOCL.g:9721:1: rule__LambdaLiteralExpCS__Group__1 : rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 ;
     public final void rule__LambdaLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9697:1: ( rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 )
-            // InternalCompleteOCL.g:9698:2: rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2
+            // InternalCompleteOCL.g:9725:1: ( rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 )
+            // InternalCompleteOCL.g:9726:2: rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__LambdaLiteralExpCS__Group__1__Impl();
@@ -29578,17 +29663,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:9705:1: rule__LambdaLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalCompleteOCL.g:9733:1: rule__LambdaLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__LambdaLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9709:1: ( ( '{' ) )
-            // InternalCompleteOCL.g:9710:1: ( '{' )
+            // InternalCompleteOCL.g:9737:1: ( ( '{' ) )
+            // InternalCompleteOCL.g:9738:1: ( '{' )
             {
-            // InternalCompleteOCL.g:9710:1: ( '{' )
-            // InternalCompleteOCL.g:9711:1: '{'
+            // InternalCompleteOCL.g:9738:1: ( '{' )
+            // InternalCompleteOCL.g:9739:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -29619,14 +29704,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__2"
-    // InternalCompleteOCL.g:9724:1: rule__LambdaLiteralExpCS__Group__2 : rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 ;
+    // InternalCompleteOCL.g:9752:1: rule__LambdaLiteralExpCS__Group__2 : rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 ;
     public final void rule__LambdaLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9728:1: ( rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 )
-            // InternalCompleteOCL.g:9729:2: rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3
+            // InternalCompleteOCL.g:9756:1: ( rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 )
+            // InternalCompleteOCL.g:9757:2: rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_46);
             rule__LambdaLiteralExpCS__Group__2__Impl();
@@ -29657,23 +29742,23 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__2__Impl"
-    // InternalCompleteOCL.g:9736:1: rule__LambdaLiteralExpCS__Group__2__Impl : ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) ;
+    // InternalCompleteOCL.g:9764:1: rule__LambdaLiteralExpCS__Group__2__Impl : ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) ;
     public final void rule__LambdaLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9740:1: ( ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) )
-            // InternalCompleteOCL.g:9741:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
+            // InternalCompleteOCL.g:9768:1: ( ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) )
+            // InternalCompleteOCL.g:9769:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
             {
-            // InternalCompleteOCL.g:9741:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
-            // InternalCompleteOCL.g:9742:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
+            // InternalCompleteOCL.g:9769:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
+            // InternalCompleteOCL.g:9770:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2());
             }
-            // InternalCompleteOCL.g:9743:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
-            // InternalCompleteOCL.g:9743:2: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2
+            // InternalCompleteOCL.g:9771:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
+            // InternalCompleteOCL.g:9771:2: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2();
@@ -29708,14 +29793,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__3"
-    // InternalCompleteOCL.g:9753:1: rule__LambdaLiteralExpCS__Group__3 : rule__LambdaLiteralExpCS__Group__3__Impl ;
+    // InternalCompleteOCL.g:9781:1: rule__LambdaLiteralExpCS__Group__3 : rule__LambdaLiteralExpCS__Group__3__Impl ;
     public final void rule__LambdaLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9757:1: ( rule__LambdaLiteralExpCS__Group__3__Impl )
-            // InternalCompleteOCL.g:9758:2: rule__LambdaLiteralExpCS__Group__3__Impl
+            // InternalCompleteOCL.g:9785:1: ( rule__LambdaLiteralExpCS__Group__3__Impl )
+            // InternalCompleteOCL.g:9786:2: rule__LambdaLiteralExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaLiteralExpCS__Group__3__Impl();
@@ -29741,17 +29826,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__3__Impl"
-    // InternalCompleteOCL.g:9764:1: rule__LambdaLiteralExpCS__Group__3__Impl : ( '}' ) ;
+    // InternalCompleteOCL.g:9792:1: rule__LambdaLiteralExpCS__Group__3__Impl : ( '}' ) ;
     public final void rule__LambdaLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9768:1: ( ( '}' ) )
-            // InternalCompleteOCL.g:9769:1: ( '}' )
+            // InternalCompleteOCL.g:9796:1: ( ( '}' ) )
+            // InternalCompleteOCL.g:9797:1: ( '}' )
             {
-            // InternalCompleteOCL.g:9769:1: ( '}' )
-            // InternalCompleteOCL.g:9770:1: '}'
+            // InternalCompleteOCL.g:9797:1: ( '}' )
+            // InternalCompleteOCL.g:9798:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
@@ -29782,14 +29867,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__0"
-    // InternalCompleteOCL.g:9791:1: rule__MapLiteralExpCS__Group__0 : rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 ;
+    // InternalCompleteOCL.g:9819:1: rule__MapLiteralExpCS__Group__0 : rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 ;
     public final void rule__MapLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9795:1: ( rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 )
-            // InternalCompleteOCL.g:9796:2: rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1
+            // InternalCompleteOCL.g:9823:1: ( rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 )
+            // InternalCompleteOCL.g:9824:2: rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__MapLiteralExpCS__Group__0__Impl();
@@ -29820,23 +29905,23 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:9803:1: rule__MapLiteralExpCS__Group__0__Impl : ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:9831:1: rule__MapLiteralExpCS__Group__0__Impl : ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
     public final void rule__MapLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9807:1: ( ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) )
-            // InternalCompleteOCL.g:9808:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalCompleteOCL.g:9835:1: ( ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) )
+            // InternalCompleteOCL.g:9836:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:9808:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
-            // InternalCompleteOCL.g:9809:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalCompleteOCL.g:9836:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalCompleteOCL.g:9837:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
-            // InternalCompleteOCL.g:9810:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
-            // InternalCompleteOCL.g:9810:2: rule__MapLiteralExpCS__OwnedTypeAssignment_0
+            // InternalCompleteOCL.g:9838:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalCompleteOCL.g:9838:2: rule__MapLiteralExpCS__OwnedTypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__OwnedTypeAssignment_0();
@@ -29871,14 +29956,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__1"
-    // InternalCompleteOCL.g:9820:1: rule__MapLiteralExpCS__Group__1 : rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 ;
+    // InternalCompleteOCL.g:9848:1: rule__MapLiteralExpCS__Group__1 : rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 ;
     public final void rule__MapLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9824:1: ( rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 )
-            // InternalCompleteOCL.g:9825:2: rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2
+            // InternalCompleteOCL.g:9852:1: ( rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 )
+            // InternalCompleteOCL.g:9853:2: rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_47);
             rule__MapLiteralExpCS__Group__1__Impl();
@@ -29909,17 +29994,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:9832:1: rule__MapLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalCompleteOCL.g:9860:1: rule__MapLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__MapLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9836:1: ( ( '{' ) )
-            // InternalCompleteOCL.g:9837:1: ( '{' )
+            // InternalCompleteOCL.g:9864:1: ( ( '{' ) )
+            // InternalCompleteOCL.g:9865:1: ( '{' )
             {
-            // InternalCompleteOCL.g:9837:1: ( '{' )
-            // InternalCompleteOCL.g:9838:1: '{'
+            // InternalCompleteOCL.g:9865:1: ( '{' )
+            // InternalCompleteOCL.g:9866:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -29950,14 +30035,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__2"
-    // InternalCompleteOCL.g:9851:1: rule__MapLiteralExpCS__Group__2 : rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 ;
+    // InternalCompleteOCL.g:9879:1: rule__MapLiteralExpCS__Group__2 : rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 ;
     public final void rule__MapLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9855:1: ( rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 )
-            // InternalCompleteOCL.g:9856:2: rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3
+            // InternalCompleteOCL.g:9883:1: ( rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 )
+            // InternalCompleteOCL.g:9884:2: rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_47);
             rule__MapLiteralExpCS__Group__2__Impl();
@@ -29988,22 +30073,22 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__2__Impl"
-    // InternalCompleteOCL.g:9863:1: rule__MapLiteralExpCS__Group__2__Impl : ( ( rule__MapLiteralExpCS__Group_2__0 )? ) ;
+    // InternalCompleteOCL.g:9891:1: rule__MapLiteralExpCS__Group__2__Impl : ( ( rule__MapLiteralExpCS__Group_2__0 )? ) ;
     public final void rule__MapLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9867:1: ( ( ( rule__MapLiteralExpCS__Group_2__0 )? ) )
-            // InternalCompleteOCL.g:9868:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:9895:1: ( ( ( rule__MapLiteralExpCS__Group_2__0 )? ) )
+            // InternalCompleteOCL.g:9896:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
             {
-            // InternalCompleteOCL.g:9868:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
-            // InternalCompleteOCL.g:9869:1: ( rule__MapLiteralExpCS__Group_2__0 )?
+            // InternalCompleteOCL.g:9896:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:9897:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2());
             }
-            // InternalCompleteOCL.g:9870:1: ( rule__MapLiteralExpCS__Group_2__0 )?
+            // InternalCompleteOCL.g:9898:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             int alt90=2;
             int LA90_0 = input.LA(1);
 
@@ -30012,7 +30097,7 @@
             }
             switch (alt90) {
                 case 1 :
-                    // InternalCompleteOCL.g:9870:2: rule__MapLiteralExpCS__Group_2__0
+                    // InternalCompleteOCL.g:9898:2: rule__MapLiteralExpCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MapLiteralExpCS__Group_2__0();
@@ -30050,14 +30135,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__3"
-    // InternalCompleteOCL.g:9880:1: rule__MapLiteralExpCS__Group__3 : rule__MapLiteralExpCS__Group__3__Impl ;
+    // InternalCompleteOCL.g:9908:1: rule__MapLiteralExpCS__Group__3 : rule__MapLiteralExpCS__Group__3__Impl ;
     public final void rule__MapLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9884:1: ( rule__MapLiteralExpCS__Group__3__Impl )
-            // InternalCompleteOCL.g:9885:2: rule__MapLiteralExpCS__Group__3__Impl
+            // InternalCompleteOCL.g:9912:1: ( rule__MapLiteralExpCS__Group__3__Impl )
+            // InternalCompleteOCL.g:9913:2: rule__MapLiteralExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__Group__3__Impl();
@@ -30083,17 +30168,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__3__Impl"
-    // InternalCompleteOCL.g:9891:1: rule__MapLiteralExpCS__Group__3__Impl : ( '}' ) ;
+    // InternalCompleteOCL.g:9919:1: rule__MapLiteralExpCS__Group__3__Impl : ( '}' ) ;
     public final void rule__MapLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9895:1: ( ( '}' ) )
-            // InternalCompleteOCL.g:9896:1: ( '}' )
+            // InternalCompleteOCL.g:9923:1: ( ( '}' ) )
+            // InternalCompleteOCL.g:9924:1: ( '}' )
             {
-            // InternalCompleteOCL.g:9896:1: ( '}' )
-            // InternalCompleteOCL.g:9897:1: '}'
+            // InternalCompleteOCL.g:9924:1: ( '}' )
+            // InternalCompleteOCL.g:9925:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
@@ -30124,16 +30209,16 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__0"
-    // InternalCompleteOCL.g:9918:1: rule__MapLiteralExpCS__Group_2__0 : rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 ;
+    // InternalCompleteOCL.g:9946:1: rule__MapLiteralExpCS__Group_2__0 : rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 ;
     public final void rule__MapLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9922:1: ( rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 )
-            // InternalCompleteOCL.g:9923:2: rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1
+            // InternalCompleteOCL.g:9950:1: ( rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 )
+            // InternalCompleteOCL.g:9951:2: rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_18);
+            pushFollow(FollowSets000.FOLLOW_19);
             rule__MapLiteralExpCS__Group_2__0__Impl();
 
             state._fsp--;
@@ -30162,23 +30247,23 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__0__Impl"
-    // InternalCompleteOCL.g:9930:1: rule__MapLiteralExpCS__Group_2__0__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalCompleteOCL.g:9958:1: rule__MapLiteralExpCS__Group_2__0__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__MapLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9934:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalCompleteOCL.g:9935:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalCompleteOCL.g:9962:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalCompleteOCL.g:9963:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalCompleteOCL.g:9935:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
-            // InternalCompleteOCL.g:9936:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalCompleteOCL.g:9963:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalCompleteOCL.g:9964:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalCompleteOCL.g:9937:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
-            // InternalCompleteOCL.g:9937:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0
+            // InternalCompleteOCL.g:9965:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalCompleteOCL.g:9965:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__OwnedPartsAssignment_2_0();
@@ -30213,14 +30298,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__1"
-    // InternalCompleteOCL.g:9947:1: rule__MapLiteralExpCS__Group_2__1 : rule__MapLiteralExpCS__Group_2__1__Impl ;
+    // InternalCompleteOCL.g:9975:1: rule__MapLiteralExpCS__Group_2__1 : rule__MapLiteralExpCS__Group_2__1__Impl ;
     public final void rule__MapLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9951:1: ( rule__MapLiteralExpCS__Group_2__1__Impl )
-            // InternalCompleteOCL.g:9952:2: rule__MapLiteralExpCS__Group_2__1__Impl
+            // InternalCompleteOCL.g:9979:1: ( rule__MapLiteralExpCS__Group_2__1__Impl )
+            // InternalCompleteOCL.g:9980:2: rule__MapLiteralExpCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__Group_2__1__Impl();
@@ -30246,22 +30331,22 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__1__Impl"
-    // InternalCompleteOCL.g:9958:1: rule__MapLiteralExpCS__Group_2__1__Impl : ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) ;
+    // InternalCompleteOCL.g:9986:1: rule__MapLiteralExpCS__Group_2__1__Impl : ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) ;
     public final void rule__MapLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9962:1: ( ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) )
-            // InternalCompleteOCL.g:9963:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
+            // InternalCompleteOCL.g:9990:1: ( ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) )
+            // InternalCompleteOCL.g:9991:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
             {
-            // InternalCompleteOCL.g:9963:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
-            // InternalCompleteOCL.g:9964:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
+            // InternalCompleteOCL.g:9991:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
+            // InternalCompleteOCL.g:9992:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1());
             }
-            // InternalCompleteOCL.g:9965:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
+            // InternalCompleteOCL.g:9993:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             loop91:
             do {
                 int alt91=2;
@@ -30274,9 +30359,9 @@
 
                 switch (alt91) {
             	case 1 :
-            	    // InternalCompleteOCL.g:9965:2: rule__MapLiteralExpCS__Group_2_1__0
+            	    // InternalCompleteOCL.g:9993:2: rule__MapLiteralExpCS__Group_2_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__MapLiteralExpCS__Group_2_1__0();
 
             	    state._fsp--;
@@ -30315,14 +30400,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__0"
-    // InternalCompleteOCL.g:9979:1: rule__MapLiteralExpCS__Group_2_1__0 : rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 ;
+    // InternalCompleteOCL.g:10007:1: rule__MapLiteralExpCS__Group_2_1__0 : rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 ;
     public final void rule__MapLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9983:1: ( rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 )
-            // InternalCompleteOCL.g:9984:2: rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1
+            // InternalCompleteOCL.g:10011:1: ( rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 )
+            // InternalCompleteOCL.g:10012:2: rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__MapLiteralExpCS__Group_2_1__0__Impl();
@@ -30353,17 +30438,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__0__Impl"
-    // InternalCompleteOCL.g:9991:1: rule__MapLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:10019:1: rule__MapLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__MapLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:9995:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:9996:1: ( ',' )
+            // InternalCompleteOCL.g:10023:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:10024:1: ( ',' )
             {
-            // InternalCompleteOCL.g:9996:1: ( ',' )
-            // InternalCompleteOCL.g:9997:1: ','
+            // InternalCompleteOCL.g:10024:1: ( ',' )
+            // InternalCompleteOCL.g:10025:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
@@ -30394,14 +30479,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__1"
-    // InternalCompleteOCL.g:10010:1: rule__MapLiteralExpCS__Group_2_1__1 : rule__MapLiteralExpCS__Group_2_1__1__Impl ;
+    // InternalCompleteOCL.g:10038:1: rule__MapLiteralExpCS__Group_2_1__1 : rule__MapLiteralExpCS__Group_2_1__1__Impl ;
     public final void rule__MapLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10014:1: ( rule__MapLiteralExpCS__Group_2_1__1__Impl )
-            // InternalCompleteOCL.g:10015:2: rule__MapLiteralExpCS__Group_2_1__1__Impl
+            // InternalCompleteOCL.g:10042:1: ( rule__MapLiteralExpCS__Group_2_1__1__Impl )
+            // InternalCompleteOCL.g:10043:2: rule__MapLiteralExpCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__Group_2_1__1__Impl();
@@ -30427,23 +30512,23 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__1__Impl"
-    // InternalCompleteOCL.g:10021:1: rule__MapLiteralExpCS__Group_2_1__1__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalCompleteOCL.g:10049:1: rule__MapLiteralExpCS__Group_2_1__1__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__MapLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10025:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalCompleteOCL.g:10026:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalCompleteOCL.g:10053:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalCompleteOCL.g:10054:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalCompleteOCL.g:10026:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalCompleteOCL.g:10027:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalCompleteOCL.g:10054:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalCompleteOCL.g:10055:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalCompleteOCL.g:10028:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
-            // InternalCompleteOCL.g:10028:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1
+            // InternalCompleteOCL.g:10056:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalCompleteOCL.g:10056:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1();
@@ -30478,14 +30563,14 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__0"
-    // InternalCompleteOCL.g:10042:1: rule__MapLiteralPartCS__Group__0 : rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 ;
+    // InternalCompleteOCL.g:10070:1: rule__MapLiteralPartCS__Group__0 : rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 ;
     public final void rule__MapLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10046:1: ( rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 )
-            // InternalCompleteOCL.g:10047:2: rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1
+            // InternalCompleteOCL.g:10074:1: ( rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 )
+            // InternalCompleteOCL.g:10075:2: rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_48);
             rule__MapLiteralPartCS__Group__0__Impl();
@@ -30516,23 +30601,23 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__0__Impl"
-    // InternalCompleteOCL.g:10054:1: rule__MapLiteralPartCS__Group__0__Impl : ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:10082:1: rule__MapLiteralPartCS__Group__0__Impl : ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) ;
     public final void rule__MapLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10058:1: ( ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) )
-            // InternalCompleteOCL.g:10059:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
+            // InternalCompleteOCL.g:10086:1: ( ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) )
+            // InternalCompleteOCL.g:10087:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:10059:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
-            // InternalCompleteOCL.g:10060:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
+            // InternalCompleteOCL.g:10087:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
+            // InternalCompleteOCL.g:10088:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0());
             }
-            // InternalCompleteOCL.g:10061:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
-            // InternalCompleteOCL.g:10061:2: rule__MapLiteralPartCS__OwnedKeyAssignment_0
+            // InternalCompleteOCL.g:10089:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
+            // InternalCompleteOCL.g:10089:2: rule__MapLiteralPartCS__OwnedKeyAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralPartCS__OwnedKeyAssignment_0();
@@ -30567,14 +30652,14 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__1"
-    // InternalCompleteOCL.g:10071:1: rule__MapLiteralPartCS__Group__1 : rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 ;
+    // InternalCompleteOCL.g:10099:1: rule__MapLiteralPartCS__Group__1 : rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 ;
     public final void rule__MapLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10075:1: ( rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 )
-            // InternalCompleteOCL.g:10076:2: rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2
+            // InternalCompleteOCL.g:10103:1: ( rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 )
+            // InternalCompleteOCL.g:10104:2: rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__MapLiteralPartCS__Group__1__Impl();
@@ -30605,17 +30690,17 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__1__Impl"
-    // InternalCompleteOCL.g:10083:1: rule__MapLiteralPartCS__Group__1__Impl : ( '<-' ) ;
+    // InternalCompleteOCL.g:10111:1: rule__MapLiteralPartCS__Group__1__Impl : ( '<-' ) ;
     public final void rule__MapLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10087:1: ( ( '<-' ) )
-            // InternalCompleteOCL.g:10088:1: ( '<-' )
+            // InternalCompleteOCL.g:10115:1: ( ( '<-' ) )
+            // InternalCompleteOCL.g:10116:1: ( '<-' )
             {
-            // InternalCompleteOCL.g:10088:1: ( '<-' )
-            // InternalCompleteOCL.g:10089:1: '<-'
+            // InternalCompleteOCL.g:10116:1: ( '<-' )
+            // InternalCompleteOCL.g:10117:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
@@ -30646,14 +30731,14 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__2"
-    // InternalCompleteOCL.g:10102:1: rule__MapLiteralPartCS__Group__2 : rule__MapLiteralPartCS__Group__2__Impl ;
+    // InternalCompleteOCL.g:10130:1: rule__MapLiteralPartCS__Group__2 : rule__MapLiteralPartCS__Group__2__Impl ;
     public final void rule__MapLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10106:1: ( rule__MapLiteralPartCS__Group__2__Impl )
-            // InternalCompleteOCL.g:10107:2: rule__MapLiteralPartCS__Group__2__Impl
+            // InternalCompleteOCL.g:10134:1: ( rule__MapLiteralPartCS__Group__2__Impl )
+            // InternalCompleteOCL.g:10135:2: rule__MapLiteralPartCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralPartCS__Group__2__Impl();
@@ -30679,23 +30764,23 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__2__Impl"
-    // InternalCompleteOCL.g:10113:1: rule__MapLiteralPartCS__Group__2__Impl : ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) ;
+    // InternalCompleteOCL.g:10141:1: rule__MapLiteralPartCS__Group__2__Impl : ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) ;
     public final void rule__MapLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10117:1: ( ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) )
-            // InternalCompleteOCL.g:10118:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
+            // InternalCompleteOCL.g:10145:1: ( ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) )
+            // InternalCompleteOCL.g:10146:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
             {
-            // InternalCompleteOCL.g:10118:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
-            // InternalCompleteOCL.g:10119:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
+            // InternalCompleteOCL.g:10146:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
+            // InternalCompleteOCL.g:10147:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2());
             }
-            // InternalCompleteOCL.g:10120:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
-            // InternalCompleteOCL.g:10120:2: rule__MapLiteralPartCS__OwnedValueAssignment_2
+            // InternalCompleteOCL.g:10148:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
+            // InternalCompleteOCL.g:10148:2: rule__MapLiteralPartCS__OwnedValueAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralPartCS__OwnedValueAssignment_2();
@@ -30730,14 +30815,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__0"
-    // InternalCompleteOCL.g:10136:1: rule__TupleLiteralExpCS__Group__0 : rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 ;
+    // InternalCompleteOCL.g:10164:1: rule__TupleLiteralExpCS__Group__0 : rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 ;
     public final void rule__TupleLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10140:1: ( rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 )
-            // InternalCompleteOCL.g:10141:2: rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1
+            // InternalCompleteOCL.g:10168:1: ( rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 )
+            // InternalCompleteOCL.g:10169:2: rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__TupleLiteralExpCS__Group__0__Impl();
@@ -30768,17 +30853,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:10148:1: rule__TupleLiteralExpCS__Group__0__Impl : ( 'Tuple' ) ;
+    // InternalCompleteOCL.g:10176:1: rule__TupleLiteralExpCS__Group__0__Impl : ( 'Tuple' ) ;
     public final void rule__TupleLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10152:1: ( ( 'Tuple' ) )
-            // InternalCompleteOCL.g:10153:1: ( 'Tuple' )
+            // InternalCompleteOCL.g:10180:1: ( ( 'Tuple' ) )
+            // InternalCompleteOCL.g:10181:1: ( 'Tuple' )
             {
-            // InternalCompleteOCL.g:10153:1: ( 'Tuple' )
-            // InternalCompleteOCL.g:10154:1: 'Tuple'
+            // InternalCompleteOCL.g:10181:1: ( 'Tuple' )
+            // InternalCompleteOCL.g:10182:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
@@ -30809,16 +30894,16 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__1"
-    // InternalCompleteOCL.g:10167:1: rule__TupleLiteralExpCS__Group__1 : rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 ;
+    // InternalCompleteOCL.g:10195:1: rule__TupleLiteralExpCS__Group__1 : rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 ;
     public final void rule__TupleLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10171:1: ( rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 )
-            // InternalCompleteOCL.g:10172:2: rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2
+            // InternalCompleteOCL.g:10199:1: ( rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 )
+            // InternalCompleteOCL.g:10200:2: rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__TupleLiteralExpCS__Group__1__Impl();
 
             state._fsp--;
@@ -30847,17 +30932,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:10179:1: rule__TupleLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalCompleteOCL.g:10207:1: rule__TupleLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__TupleLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10183:1: ( ( '{' ) )
-            // InternalCompleteOCL.g:10184:1: ( '{' )
+            // InternalCompleteOCL.g:10211:1: ( ( '{' ) )
+            // InternalCompleteOCL.g:10212:1: ( '{' )
             {
-            // InternalCompleteOCL.g:10184:1: ( '{' )
-            // InternalCompleteOCL.g:10185:1: '{'
+            // InternalCompleteOCL.g:10212:1: ( '{' )
+            // InternalCompleteOCL.g:10213:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -30888,14 +30973,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__2"
-    // InternalCompleteOCL.g:10198:1: rule__TupleLiteralExpCS__Group__2 : rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 ;
+    // InternalCompleteOCL.g:10226:1: rule__TupleLiteralExpCS__Group__2 : rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 ;
     public final void rule__TupleLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10202:1: ( rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 )
-            // InternalCompleteOCL.g:10203:2: rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3
+            // InternalCompleteOCL.g:10230:1: ( rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 )
+            // InternalCompleteOCL.g:10231:2: rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_49);
             rule__TupleLiteralExpCS__Group__2__Impl();
@@ -30926,23 +31011,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__2__Impl"
-    // InternalCompleteOCL.g:10210:1: rule__TupleLiteralExpCS__Group__2__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) ;
+    // InternalCompleteOCL.g:10238:1: rule__TupleLiteralExpCS__Group__2__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) ;
     public final void rule__TupleLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10214:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) )
-            // InternalCompleteOCL.g:10215:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
+            // InternalCompleteOCL.g:10242:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) )
+            // InternalCompleteOCL.g:10243:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
             {
-            // InternalCompleteOCL.g:10215:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
-            // InternalCompleteOCL.g:10216:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
+            // InternalCompleteOCL.g:10243:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
+            // InternalCompleteOCL.g:10244:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2());
             }
-            // InternalCompleteOCL.g:10217:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
-            // InternalCompleteOCL.g:10217:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_2
+            // InternalCompleteOCL.g:10245:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
+            // InternalCompleteOCL.g:10245:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__OwnedPartsAssignment_2();
@@ -30977,14 +31062,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__3"
-    // InternalCompleteOCL.g:10227:1: rule__TupleLiteralExpCS__Group__3 : rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 ;
+    // InternalCompleteOCL.g:10255:1: rule__TupleLiteralExpCS__Group__3 : rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 ;
     public final void rule__TupleLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10231:1: ( rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 )
-            // InternalCompleteOCL.g:10232:2: rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4
+            // InternalCompleteOCL.g:10259:1: ( rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 )
+            // InternalCompleteOCL.g:10260:2: rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_49);
             rule__TupleLiteralExpCS__Group__3__Impl();
@@ -31015,22 +31100,22 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__3__Impl"
-    // InternalCompleteOCL.g:10239:1: rule__TupleLiteralExpCS__Group__3__Impl : ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) ;
+    // InternalCompleteOCL.g:10267:1: rule__TupleLiteralExpCS__Group__3__Impl : ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) ;
     public final void rule__TupleLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10243:1: ( ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) )
-            // InternalCompleteOCL.g:10244:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
+            // InternalCompleteOCL.g:10271:1: ( ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) )
+            // InternalCompleteOCL.g:10272:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
             {
-            // InternalCompleteOCL.g:10244:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
-            // InternalCompleteOCL.g:10245:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
+            // InternalCompleteOCL.g:10272:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
+            // InternalCompleteOCL.g:10273:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3());
             }
-            // InternalCompleteOCL.g:10246:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
+            // InternalCompleteOCL.g:10274:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             loop92:
             do {
                 int alt92=2;
@@ -31043,9 +31128,9 @@
 
                 switch (alt92) {
             	case 1 :
-            	    // InternalCompleteOCL.g:10246:2: rule__TupleLiteralExpCS__Group_3__0
+            	    // InternalCompleteOCL.g:10274:2: rule__TupleLiteralExpCS__Group_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__TupleLiteralExpCS__Group_3__0();
 
             	    state._fsp--;
@@ -31084,14 +31169,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__4"
-    // InternalCompleteOCL.g:10256:1: rule__TupleLiteralExpCS__Group__4 : rule__TupleLiteralExpCS__Group__4__Impl ;
+    // InternalCompleteOCL.g:10284:1: rule__TupleLiteralExpCS__Group__4 : rule__TupleLiteralExpCS__Group__4__Impl ;
     public final void rule__TupleLiteralExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10260:1: ( rule__TupleLiteralExpCS__Group__4__Impl )
-            // InternalCompleteOCL.g:10261:2: rule__TupleLiteralExpCS__Group__4__Impl
+            // InternalCompleteOCL.g:10288:1: ( rule__TupleLiteralExpCS__Group__4__Impl )
+            // InternalCompleteOCL.g:10289:2: rule__TupleLiteralExpCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__Group__4__Impl();
@@ -31117,17 +31202,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__4__Impl"
-    // InternalCompleteOCL.g:10267:1: rule__TupleLiteralExpCS__Group__4__Impl : ( '}' ) ;
+    // InternalCompleteOCL.g:10295:1: rule__TupleLiteralExpCS__Group__4__Impl : ( '}' ) ;
     public final void rule__TupleLiteralExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10271:1: ( ( '}' ) )
-            // InternalCompleteOCL.g:10272:1: ( '}' )
+            // InternalCompleteOCL.g:10299:1: ( ( '}' ) )
+            // InternalCompleteOCL.g:10300:1: ( '}' )
             {
-            // InternalCompleteOCL.g:10272:1: ( '}' )
-            // InternalCompleteOCL.g:10273:1: '}'
+            // InternalCompleteOCL.g:10300:1: ( '}' )
+            // InternalCompleteOCL.g:10301:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
@@ -31158,16 +31243,16 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__0"
-    // InternalCompleteOCL.g:10296:1: rule__TupleLiteralExpCS__Group_3__0 : rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 ;
+    // InternalCompleteOCL.g:10324:1: rule__TupleLiteralExpCS__Group_3__0 : rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 ;
     public final void rule__TupleLiteralExpCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10300:1: ( rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 )
-            // InternalCompleteOCL.g:10301:2: rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1
+            // InternalCompleteOCL.g:10328:1: ( rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 )
+            // InternalCompleteOCL.g:10329:2: rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__TupleLiteralExpCS__Group_3__0__Impl();
 
             state._fsp--;
@@ -31196,17 +31281,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__0__Impl"
-    // InternalCompleteOCL.g:10308:1: rule__TupleLiteralExpCS__Group_3__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:10336:1: rule__TupleLiteralExpCS__Group_3__0__Impl : ( ',' ) ;
     public final void rule__TupleLiteralExpCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10312:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:10313:1: ( ',' )
+            // InternalCompleteOCL.g:10340:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:10341:1: ( ',' )
             {
-            // InternalCompleteOCL.g:10313:1: ( ',' )
-            // InternalCompleteOCL.g:10314:1: ','
+            // InternalCompleteOCL.g:10341:1: ( ',' )
+            // InternalCompleteOCL.g:10342:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
@@ -31237,14 +31322,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__1"
-    // InternalCompleteOCL.g:10327:1: rule__TupleLiteralExpCS__Group_3__1 : rule__TupleLiteralExpCS__Group_3__1__Impl ;
+    // InternalCompleteOCL.g:10355:1: rule__TupleLiteralExpCS__Group_3__1 : rule__TupleLiteralExpCS__Group_3__1__Impl ;
     public final void rule__TupleLiteralExpCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10331:1: ( rule__TupleLiteralExpCS__Group_3__1__Impl )
-            // InternalCompleteOCL.g:10332:2: rule__TupleLiteralExpCS__Group_3__1__Impl
+            // InternalCompleteOCL.g:10359:1: ( rule__TupleLiteralExpCS__Group_3__1__Impl )
+            // InternalCompleteOCL.g:10360:2: rule__TupleLiteralExpCS__Group_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__Group_3__1__Impl();
@@ -31270,23 +31355,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__1__Impl"
-    // InternalCompleteOCL.g:10338:1: rule__TupleLiteralExpCS__Group_3__1__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) ;
+    // InternalCompleteOCL.g:10366:1: rule__TupleLiteralExpCS__Group_3__1__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) ;
     public final void rule__TupleLiteralExpCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10342:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) )
-            // InternalCompleteOCL.g:10343:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
+            // InternalCompleteOCL.g:10370:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) )
+            // InternalCompleteOCL.g:10371:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
             {
-            // InternalCompleteOCL.g:10343:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
-            // InternalCompleteOCL.g:10344:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
+            // InternalCompleteOCL.g:10371:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
+            // InternalCompleteOCL.g:10372:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1());
             }
-            // InternalCompleteOCL.g:10345:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
-            // InternalCompleteOCL.g:10345:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1
+            // InternalCompleteOCL.g:10373:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
+            // InternalCompleteOCL.g:10373:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1();
@@ -31321,14 +31406,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__0"
-    // InternalCompleteOCL.g:10359:1: rule__TupleLiteralPartCS__Group__0 : rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 ;
+    // InternalCompleteOCL.g:10387:1: rule__TupleLiteralPartCS__Group__0 : rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 ;
     public final void rule__TupleLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10363:1: ( rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 )
-            // InternalCompleteOCL.g:10364:2: rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1
+            // InternalCompleteOCL.g:10391:1: ( rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 )
+            // InternalCompleteOCL.g:10392:2: rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_50);
             rule__TupleLiteralPartCS__Group__0__Impl();
@@ -31359,23 +31444,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__0__Impl"
-    // InternalCompleteOCL.g:10371:1: rule__TupleLiteralPartCS__Group__0__Impl : ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:10399:1: rule__TupleLiteralPartCS__Group__0__Impl : ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) ;
     public final void rule__TupleLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10375:1: ( ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) )
-            // InternalCompleteOCL.g:10376:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:10403:1: ( ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) )
+            // InternalCompleteOCL.g:10404:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:10376:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
-            // InternalCompleteOCL.g:10377:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:10404:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:10405:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0());
             }
-            // InternalCompleteOCL.g:10378:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
-            // InternalCompleteOCL.g:10378:2: rule__TupleLiteralPartCS__NameAssignment_0
+            // InternalCompleteOCL.g:10406:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:10406:2: rule__TupleLiteralPartCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__NameAssignment_0();
@@ -31410,14 +31495,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__1"
-    // InternalCompleteOCL.g:10388:1: rule__TupleLiteralPartCS__Group__1 : rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 ;
+    // InternalCompleteOCL.g:10416:1: rule__TupleLiteralPartCS__Group__1 : rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 ;
     public final void rule__TupleLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10392:1: ( rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 )
-            // InternalCompleteOCL.g:10393:2: rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2
+            // InternalCompleteOCL.g:10420:1: ( rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 )
+            // InternalCompleteOCL.g:10421:2: rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_50);
             rule__TupleLiteralPartCS__Group__1__Impl();
@@ -31448,22 +31533,22 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__1__Impl"
-    // InternalCompleteOCL.g:10400:1: rule__TupleLiteralPartCS__Group__1__Impl : ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) ;
+    // InternalCompleteOCL.g:10428:1: rule__TupleLiteralPartCS__Group__1__Impl : ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) ;
     public final void rule__TupleLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10404:1: ( ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) )
-            // InternalCompleteOCL.g:10405:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:10432:1: ( ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) )
+            // InternalCompleteOCL.g:10433:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
             {
-            // InternalCompleteOCL.g:10405:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
-            // InternalCompleteOCL.g:10406:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
+            // InternalCompleteOCL.g:10433:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:10434:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:10407:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
+            // InternalCompleteOCL.g:10435:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             int alt93=2;
             int LA93_0 = input.LA(1);
 
@@ -31472,7 +31557,7 @@
             }
             switch (alt93) {
                 case 1 :
-                    // InternalCompleteOCL.g:10407:2: rule__TupleLiteralPartCS__Group_1__0
+                    // InternalCompleteOCL.g:10435:2: rule__TupleLiteralPartCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TupleLiteralPartCS__Group_1__0();
@@ -31510,14 +31595,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__2"
-    // InternalCompleteOCL.g:10417:1: rule__TupleLiteralPartCS__Group__2 : rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 ;
+    // InternalCompleteOCL.g:10445:1: rule__TupleLiteralPartCS__Group__2 : rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 ;
     public final void rule__TupleLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10421:1: ( rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 )
-            // InternalCompleteOCL.g:10422:2: rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3
+            // InternalCompleteOCL.g:10449:1: ( rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 )
+            // InternalCompleteOCL.g:10450:2: rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__TupleLiteralPartCS__Group__2__Impl();
@@ -31548,17 +31633,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__2__Impl"
-    // InternalCompleteOCL.g:10429:1: rule__TupleLiteralPartCS__Group__2__Impl : ( '=' ) ;
+    // InternalCompleteOCL.g:10457:1: rule__TupleLiteralPartCS__Group__2__Impl : ( '=' ) ;
     public final void rule__TupleLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10433:1: ( ( '=' ) )
-            // InternalCompleteOCL.g:10434:1: ( '=' )
+            // InternalCompleteOCL.g:10461:1: ( ( '=' ) )
+            // InternalCompleteOCL.g:10462:1: ( '=' )
             {
-            // InternalCompleteOCL.g:10434:1: ( '=' )
-            // InternalCompleteOCL.g:10435:1: '='
+            // InternalCompleteOCL.g:10462:1: ( '=' )
+            // InternalCompleteOCL.g:10463:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
@@ -31589,14 +31674,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__3"
-    // InternalCompleteOCL.g:10448:1: rule__TupleLiteralPartCS__Group__3 : rule__TupleLiteralPartCS__Group__3__Impl ;
+    // InternalCompleteOCL.g:10476:1: rule__TupleLiteralPartCS__Group__3 : rule__TupleLiteralPartCS__Group__3__Impl ;
     public final void rule__TupleLiteralPartCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10452:1: ( rule__TupleLiteralPartCS__Group__3__Impl )
-            // InternalCompleteOCL.g:10453:2: rule__TupleLiteralPartCS__Group__3__Impl
+            // InternalCompleteOCL.g:10480:1: ( rule__TupleLiteralPartCS__Group__3__Impl )
+            // InternalCompleteOCL.g:10481:2: rule__TupleLiteralPartCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__Group__3__Impl();
@@ -31622,23 +31707,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__3__Impl"
-    // InternalCompleteOCL.g:10459:1: rule__TupleLiteralPartCS__Group__3__Impl : ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) ;
+    // InternalCompleteOCL.g:10487:1: rule__TupleLiteralPartCS__Group__3__Impl : ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) ;
     public final void rule__TupleLiteralPartCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10463:1: ( ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) )
-            // InternalCompleteOCL.g:10464:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
+            // InternalCompleteOCL.g:10491:1: ( ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) )
+            // InternalCompleteOCL.g:10492:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
             {
-            // InternalCompleteOCL.g:10464:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
-            // InternalCompleteOCL.g:10465:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
+            // InternalCompleteOCL.g:10492:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
+            // InternalCompleteOCL.g:10493:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3());
             }
-            // InternalCompleteOCL.g:10466:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
-            // InternalCompleteOCL.g:10466:2: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3
+            // InternalCompleteOCL.g:10494:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
+            // InternalCompleteOCL.g:10494:2: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3();
@@ -31673,16 +31758,16 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__0"
-    // InternalCompleteOCL.g:10484:1: rule__TupleLiteralPartCS__Group_1__0 : rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 ;
+    // InternalCompleteOCL.g:10512:1: rule__TupleLiteralPartCS__Group_1__0 : rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 ;
     public final void rule__TupleLiteralPartCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10488:1: ( rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 )
-            // InternalCompleteOCL.g:10489:2: rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1
+            // InternalCompleteOCL.g:10516:1: ( rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 )
+            // InternalCompleteOCL.g:10517:2: rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__TupleLiteralPartCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -31711,17 +31796,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:10496:1: rule__TupleLiteralPartCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:10524:1: rule__TupleLiteralPartCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__TupleLiteralPartCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10500:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:10501:1: ( ':' )
+            // InternalCompleteOCL.g:10528:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:10529:1: ( ':' )
             {
-            // InternalCompleteOCL.g:10501:1: ( ':' )
-            // InternalCompleteOCL.g:10502:1: ':'
+            // InternalCompleteOCL.g:10529:1: ( ':' )
+            // InternalCompleteOCL.g:10530:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
@@ -31752,14 +31837,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__1"
-    // InternalCompleteOCL.g:10515:1: rule__TupleLiteralPartCS__Group_1__1 : rule__TupleLiteralPartCS__Group_1__1__Impl ;
+    // InternalCompleteOCL.g:10543:1: rule__TupleLiteralPartCS__Group_1__1 : rule__TupleLiteralPartCS__Group_1__1__Impl ;
     public final void rule__TupleLiteralPartCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10519:1: ( rule__TupleLiteralPartCS__Group_1__1__Impl )
-            // InternalCompleteOCL.g:10520:2: rule__TupleLiteralPartCS__Group_1__1__Impl
+            // InternalCompleteOCL.g:10547:1: ( rule__TupleLiteralPartCS__Group_1__1__Impl )
+            // InternalCompleteOCL.g:10548:2: rule__TupleLiteralPartCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__Group_1__1__Impl();
@@ -31785,23 +31870,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:10526:1: rule__TupleLiteralPartCS__Group_1__1__Impl : ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:10554:1: rule__TupleLiteralPartCS__Group_1__1__Impl : ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__TupleLiteralPartCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10530:1: ( ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:10531:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
+            // InternalCompleteOCL.g:10558:1: ( ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:10559:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:10531:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
-            // InternalCompleteOCL.g:10532:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
+            // InternalCompleteOCL.g:10559:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
+            // InternalCompleteOCL.g:10560:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalCompleteOCL.g:10533:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
-            // InternalCompleteOCL.g:10533:2: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1
+            // InternalCompleteOCL.g:10561:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
+            // InternalCompleteOCL.g:10561:2: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1();
@@ -31836,14 +31921,14 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__0"
-    // InternalCompleteOCL.g:10547:1: rule__UnlimitedNaturalLiteralExpCS__Group__0 : rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 ;
+    // InternalCompleteOCL.g:10575:1: rule__UnlimitedNaturalLiteralExpCS__Group__0 : rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10551:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 )
-            // InternalCompleteOCL.g:10552:2: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1
+            // InternalCompleteOCL.g:10579:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 )
+            // InternalCompleteOCL.g:10580:2: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_51);
             rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl();
@@ -31874,23 +31959,23 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:10559:1: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl : ( () ) ;
+    // InternalCompleteOCL.g:10587:1: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl : ( () ) ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10563:1: ( ( () ) )
-            // InternalCompleteOCL.g:10564:1: ( () )
+            // InternalCompleteOCL.g:10591:1: ( ( () ) )
+            // InternalCompleteOCL.g:10592:1: ( () )
             {
-            // InternalCompleteOCL.g:10564:1: ( () )
-            // InternalCompleteOCL.g:10565:1: ()
+            // InternalCompleteOCL.g:10592:1: ( () )
+            // InternalCompleteOCL.g:10593:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0());
             }
-            // InternalCompleteOCL.g:10566:1: ()
-            // InternalCompleteOCL.g:10568:1:
+            // InternalCompleteOCL.g:10594:1: ()
+            // InternalCompleteOCL.g:10596:1:
             {
             }
 
@@ -31915,14 +32000,14 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__1"
-    // InternalCompleteOCL.g:10578:1: rule__UnlimitedNaturalLiteralExpCS__Group__1 : rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:10606:1: rule__UnlimitedNaturalLiteralExpCS__Group__1 : rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10582:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl )
-            // InternalCompleteOCL.g:10583:2: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl
+            // InternalCompleteOCL.g:10610:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl )
+            // InternalCompleteOCL.g:10611:2: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl();
@@ -31948,17 +32033,17 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:10589:1: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl : ( '*' ) ;
+    // InternalCompleteOCL.g:10617:1: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl : ( '*' ) ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10593:1: ( ( '*' ) )
-            // InternalCompleteOCL.g:10594:1: ( '*' )
+            // InternalCompleteOCL.g:10621:1: ( ( '*' ) )
+            // InternalCompleteOCL.g:10622:1: ( '*' )
             {
-            // InternalCompleteOCL.g:10594:1: ( '*' )
-            // InternalCompleteOCL.g:10595:1: '*'
+            // InternalCompleteOCL.g:10622:1: ( '*' )
+            // InternalCompleteOCL.g:10623:1: '*'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
@@ -31989,14 +32074,14 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__0"
-    // InternalCompleteOCL.g:10612:1: rule__InvalidLiteralExpCS__Group__0 : rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 ;
+    // InternalCompleteOCL.g:10640:1: rule__InvalidLiteralExpCS__Group__0 : rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 ;
     public final void rule__InvalidLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10616:1: ( rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 )
-            // InternalCompleteOCL.g:10617:2: rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1
+            // InternalCompleteOCL.g:10644:1: ( rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 )
+            // InternalCompleteOCL.g:10645:2: rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_52);
             rule__InvalidLiteralExpCS__Group__0__Impl();
@@ -32027,23 +32112,23 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:10624:1: rule__InvalidLiteralExpCS__Group__0__Impl : ( () ) ;
+    // InternalCompleteOCL.g:10652:1: rule__InvalidLiteralExpCS__Group__0__Impl : ( () ) ;
     public final void rule__InvalidLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10628:1: ( ( () ) )
-            // InternalCompleteOCL.g:10629:1: ( () )
+            // InternalCompleteOCL.g:10656:1: ( ( () ) )
+            // InternalCompleteOCL.g:10657:1: ( () )
             {
-            // InternalCompleteOCL.g:10629:1: ( () )
-            // InternalCompleteOCL.g:10630:1: ()
+            // InternalCompleteOCL.g:10657:1: ( () )
+            // InternalCompleteOCL.g:10658:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0());
             }
-            // InternalCompleteOCL.g:10631:1: ()
-            // InternalCompleteOCL.g:10633:1:
+            // InternalCompleteOCL.g:10659:1: ()
+            // InternalCompleteOCL.g:10661:1:
             {
             }
 
@@ -32068,14 +32153,14 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__1"
-    // InternalCompleteOCL.g:10643:1: rule__InvalidLiteralExpCS__Group__1 : rule__InvalidLiteralExpCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:10671:1: rule__InvalidLiteralExpCS__Group__1 : rule__InvalidLiteralExpCS__Group__1__Impl ;
     public final void rule__InvalidLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10647:1: ( rule__InvalidLiteralExpCS__Group__1__Impl )
-            // InternalCompleteOCL.g:10648:2: rule__InvalidLiteralExpCS__Group__1__Impl
+            // InternalCompleteOCL.g:10675:1: ( rule__InvalidLiteralExpCS__Group__1__Impl )
+            // InternalCompleteOCL.g:10676:2: rule__InvalidLiteralExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvalidLiteralExpCS__Group__1__Impl();
@@ -32101,17 +32186,17 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:10654:1: rule__InvalidLiteralExpCS__Group__1__Impl : ( 'invalid' ) ;
+    // InternalCompleteOCL.g:10682:1: rule__InvalidLiteralExpCS__Group__1__Impl : ( 'invalid' ) ;
     public final void rule__InvalidLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10658:1: ( ( 'invalid' ) )
-            // InternalCompleteOCL.g:10659:1: ( 'invalid' )
+            // InternalCompleteOCL.g:10686:1: ( ( 'invalid' ) )
+            // InternalCompleteOCL.g:10687:1: ( 'invalid' )
             {
-            // InternalCompleteOCL.g:10659:1: ( 'invalid' )
-            // InternalCompleteOCL.g:10660:1: 'invalid'
+            // InternalCompleteOCL.g:10687:1: ( 'invalid' )
+            // InternalCompleteOCL.g:10688:1: 'invalid'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
@@ -32142,14 +32227,14 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__0"
-    // InternalCompleteOCL.g:10677:1: rule__NullLiteralExpCS__Group__0 : rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 ;
+    // InternalCompleteOCL.g:10705:1: rule__NullLiteralExpCS__Group__0 : rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 ;
     public final void rule__NullLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10681:1: ( rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 )
-            // InternalCompleteOCL.g:10682:2: rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1
+            // InternalCompleteOCL.g:10709:1: ( rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 )
+            // InternalCompleteOCL.g:10710:2: rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_53);
             rule__NullLiteralExpCS__Group__0__Impl();
@@ -32180,23 +32265,23 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:10689:1: rule__NullLiteralExpCS__Group__0__Impl : ( () ) ;
+    // InternalCompleteOCL.g:10717:1: rule__NullLiteralExpCS__Group__0__Impl : ( () ) ;
     public final void rule__NullLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10693:1: ( ( () ) )
-            // InternalCompleteOCL.g:10694:1: ( () )
+            // InternalCompleteOCL.g:10721:1: ( ( () ) )
+            // InternalCompleteOCL.g:10722:1: ( () )
             {
-            // InternalCompleteOCL.g:10694:1: ( () )
-            // InternalCompleteOCL.g:10695:1: ()
+            // InternalCompleteOCL.g:10722:1: ( () )
+            // InternalCompleteOCL.g:10723:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0());
             }
-            // InternalCompleteOCL.g:10696:1: ()
-            // InternalCompleteOCL.g:10698:1:
+            // InternalCompleteOCL.g:10724:1: ()
+            // InternalCompleteOCL.g:10726:1:
             {
             }
 
@@ -32221,14 +32306,14 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__1"
-    // InternalCompleteOCL.g:10708:1: rule__NullLiteralExpCS__Group__1 : rule__NullLiteralExpCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:10736:1: rule__NullLiteralExpCS__Group__1 : rule__NullLiteralExpCS__Group__1__Impl ;
     public final void rule__NullLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10712:1: ( rule__NullLiteralExpCS__Group__1__Impl )
-            // InternalCompleteOCL.g:10713:2: rule__NullLiteralExpCS__Group__1__Impl
+            // InternalCompleteOCL.g:10740:1: ( rule__NullLiteralExpCS__Group__1__Impl )
+            // InternalCompleteOCL.g:10741:2: rule__NullLiteralExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NullLiteralExpCS__Group__1__Impl();
@@ -32254,17 +32339,17 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:10719:1: rule__NullLiteralExpCS__Group__1__Impl : ( 'null' ) ;
+    // InternalCompleteOCL.g:10747:1: rule__NullLiteralExpCS__Group__1__Impl : ( 'null' ) ;
     public final void rule__NullLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10723:1: ( ( 'null' ) )
-            // InternalCompleteOCL.g:10724:1: ( 'null' )
+            // InternalCompleteOCL.g:10751:1: ( ( 'null' ) )
+            // InternalCompleteOCL.g:10752:1: ( 'null' )
             {
-            // InternalCompleteOCL.g:10724:1: ( 'null' )
-            // InternalCompleteOCL.g:10725:1: 'null'
+            // InternalCompleteOCL.g:10752:1: ( 'null' )
+            // InternalCompleteOCL.g:10753:1: 'null'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
@@ -32295,14 +32380,14 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__0"
-    // InternalCompleteOCL.g:10742:1: rule__TypeLiteralWithMultiplicityCS__Group__0 : rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 ;
+    // InternalCompleteOCL.g:10770:1: rule__TypeLiteralWithMultiplicityCS__Group__0 : rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10746:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 )
-            // InternalCompleteOCL.g:10747:2: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1
+            // InternalCompleteOCL.g:10774:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 )
+            // InternalCompleteOCL.g:10775:2: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_54);
             rule__TypeLiteralWithMultiplicityCS__Group__0__Impl();
@@ -32333,17 +32418,17 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__0__Impl"
-    // InternalCompleteOCL.g:10754:1: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl : ( ruleTypeLiteralCS ) ;
+    // InternalCompleteOCL.g:10782:1: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl : ( ruleTypeLiteralCS ) ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10758:1: ( ( ruleTypeLiteralCS ) )
-            // InternalCompleteOCL.g:10759:1: ( ruleTypeLiteralCS )
+            // InternalCompleteOCL.g:10786:1: ( ( ruleTypeLiteralCS ) )
+            // InternalCompleteOCL.g:10787:1: ( ruleTypeLiteralCS )
             {
-            // InternalCompleteOCL.g:10759:1: ( ruleTypeLiteralCS )
-            // InternalCompleteOCL.g:10760:1: ruleTypeLiteralCS
+            // InternalCompleteOCL.g:10787:1: ( ruleTypeLiteralCS )
+            // InternalCompleteOCL.g:10788:1: ruleTypeLiteralCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
@@ -32378,14 +32463,14 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__1"
-    // InternalCompleteOCL.g:10771:1: rule__TypeLiteralWithMultiplicityCS__Group__1 : rule__TypeLiteralWithMultiplicityCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:10799:1: rule__TypeLiteralWithMultiplicityCS__Group__1 : rule__TypeLiteralWithMultiplicityCS__Group__1__Impl ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10775:1: ( rule__TypeLiteralWithMultiplicityCS__Group__1__Impl )
-            // InternalCompleteOCL.g:10776:2: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl
+            // InternalCompleteOCL.g:10803:1: ( rule__TypeLiteralWithMultiplicityCS__Group__1__Impl )
+            // InternalCompleteOCL.g:10804:2: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeLiteralWithMultiplicityCS__Group__1__Impl();
@@ -32411,22 +32496,22 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__1__Impl"
-    // InternalCompleteOCL.g:10782:1: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl : ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) ;
+    // InternalCompleteOCL.g:10810:1: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl : ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10786:1: ( ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) )
-            // InternalCompleteOCL.g:10787:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalCompleteOCL.g:10814:1: ( ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) )
+            // InternalCompleteOCL.g:10815:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
             {
-            // InternalCompleteOCL.g:10787:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
-            // InternalCompleteOCL.g:10788:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
+            // InternalCompleteOCL.g:10815:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalCompleteOCL.g:10816:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1());
             }
-            // InternalCompleteOCL.g:10789:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
+            // InternalCompleteOCL.g:10817:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             int alt94=2;
             int LA94_0 = input.LA(1);
 
@@ -32435,7 +32520,7 @@
             }
             switch (alt94) {
                 case 1 :
-                    // InternalCompleteOCL.g:10789:2: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1
+                    // InternalCompleteOCL.g:10817:2: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1();
@@ -32473,14 +32558,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__0"
-    // InternalCompleteOCL.g:10803:1: rule__TypeNameExpCS__Group__0 : rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 ;
+    // InternalCompleteOCL.g:10831:1: rule__TypeNameExpCS__Group__0 : rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 ;
     public final void rule__TypeNameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10807:1: ( rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 )
-            // InternalCompleteOCL.g:10808:2: rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1
+            // InternalCompleteOCL.g:10835:1: ( rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 )
+            // InternalCompleteOCL.g:10836:2: rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__TypeNameExpCS__Group__0__Impl();
@@ -32511,23 +32596,23 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:10815:1: rule__TypeNameExpCS__Group__0__Impl : ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:10843:1: rule__TypeNameExpCS__Group__0__Impl : ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) ;
     public final void rule__TypeNameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10819:1: ( ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) )
-            // InternalCompleteOCL.g:10820:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalCompleteOCL.g:10847:1: ( ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) )
+            // InternalCompleteOCL.g:10848:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:10820:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
-            // InternalCompleteOCL.g:10821:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
+            // InternalCompleteOCL.g:10848:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalCompleteOCL.g:10849:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
-            // InternalCompleteOCL.g:10822:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
-            // InternalCompleteOCL.g:10822:2: rule__TypeNameExpCS__OwnedPathNameAssignment_0
+            // InternalCompleteOCL.g:10850:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
+            // InternalCompleteOCL.g:10850:2: rule__TypeNameExpCS__OwnedPathNameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__OwnedPathNameAssignment_0();
@@ -32562,14 +32647,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__1"
-    // InternalCompleteOCL.g:10832:1: rule__TypeNameExpCS__Group__1 : rule__TypeNameExpCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:10860:1: rule__TypeNameExpCS__Group__1 : rule__TypeNameExpCS__Group__1__Impl ;
     public final void rule__TypeNameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10836:1: ( rule__TypeNameExpCS__Group__1__Impl )
-            // InternalCompleteOCL.g:10837:2: rule__TypeNameExpCS__Group__1__Impl
+            // InternalCompleteOCL.g:10864:1: ( rule__TypeNameExpCS__Group__1__Impl )
+            // InternalCompleteOCL.g:10865:2: rule__TypeNameExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__Group__1__Impl();
@@ -32595,22 +32680,22 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:10843:1: rule__TypeNameExpCS__Group__1__Impl : ( ( rule__TypeNameExpCS__Group_1__0 )? ) ;
+    // InternalCompleteOCL.g:10871:1: rule__TypeNameExpCS__Group__1__Impl : ( ( rule__TypeNameExpCS__Group_1__0 )? ) ;
     public final void rule__TypeNameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10847:1: ( ( ( rule__TypeNameExpCS__Group_1__0 )? ) )
-            // InternalCompleteOCL.g:10848:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:10875:1: ( ( ( rule__TypeNameExpCS__Group_1__0 )? ) )
+            // InternalCompleteOCL.g:10876:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
             {
-            // InternalCompleteOCL.g:10848:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
-            // InternalCompleteOCL.g:10849:1: ( rule__TypeNameExpCS__Group_1__0 )?
+            // InternalCompleteOCL.g:10876:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:10877:1: ( rule__TypeNameExpCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:10850:1: ( rule__TypeNameExpCS__Group_1__0 )?
+            // InternalCompleteOCL.g:10878:1: ( rule__TypeNameExpCS__Group_1__0 )?
             int alt95=2;
             int LA95_0 = input.LA(1);
 
@@ -32619,7 +32704,7 @@
             }
             switch (alt95) {
                 case 1 :
-                    // InternalCompleteOCL.g:10850:2: rule__TypeNameExpCS__Group_1__0
+                    // InternalCompleteOCL.g:10878:2: rule__TypeNameExpCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeNameExpCS__Group_1__0();
@@ -32657,14 +32742,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__0"
-    // InternalCompleteOCL.g:10864:1: rule__TypeNameExpCS__Group_1__0 : rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 ;
+    // InternalCompleteOCL.g:10892:1: rule__TypeNameExpCS__Group_1__0 : rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 ;
     public final void rule__TypeNameExpCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10868:1: ( rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 )
-            // InternalCompleteOCL.g:10869:2: rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1
+            // InternalCompleteOCL.g:10896:1: ( rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 )
+            // InternalCompleteOCL.g:10897:2: rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__TypeNameExpCS__Group_1__0__Impl();
@@ -32695,23 +32780,23 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:10876:1: rule__TypeNameExpCS__Group_1__0__Impl : ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) ;
+    // InternalCompleteOCL.g:10904:1: rule__TypeNameExpCS__Group_1__0__Impl : ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) ;
     public final void rule__TypeNameExpCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10880:1: ( ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) )
-            // InternalCompleteOCL.g:10881:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
+            // InternalCompleteOCL.g:10908:1: ( ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) )
+            // InternalCompleteOCL.g:10909:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
             {
-            // InternalCompleteOCL.g:10881:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
-            // InternalCompleteOCL.g:10882:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
+            // InternalCompleteOCL.g:10909:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
+            // InternalCompleteOCL.g:10910:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0());
             }
-            // InternalCompleteOCL.g:10883:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
-            // InternalCompleteOCL.g:10883:2: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0
+            // InternalCompleteOCL.g:10911:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
+            // InternalCompleteOCL.g:10911:2: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0();
@@ -32746,14 +32831,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__1"
-    // InternalCompleteOCL.g:10893:1: rule__TypeNameExpCS__Group_1__1 : rule__TypeNameExpCS__Group_1__1__Impl ;
+    // InternalCompleteOCL.g:10921:1: rule__TypeNameExpCS__Group_1__1 : rule__TypeNameExpCS__Group_1__1__Impl ;
     public final void rule__TypeNameExpCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10897:1: ( rule__TypeNameExpCS__Group_1__1__Impl )
-            // InternalCompleteOCL.g:10898:2: rule__TypeNameExpCS__Group_1__1__Impl
+            // InternalCompleteOCL.g:10925:1: ( rule__TypeNameExpCS__Group_1__1__Impl )
+            // InternalCompleteOCL.g:10926:2: rule__TypeNameExpCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__Group_1__1__Impl();
@@ -32779,22 +32864,22 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:10904:1: rule__TypeNameExpCS__Group_1__1__Impl : ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) ;
+    // InternalCompleteOCL.g:10932:1: rule__TypeNameExpCS__Group_1__1__Impl : ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) ;
     public final void rule__TypeNameExpCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10908:1: ( ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) )
-            // InternalCompleteOCL.g:10909:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
+            // InternalCompleteOCL.g:10936:1: ( ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) )
+            // InternalCompleteOCL.g:10937:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
             {
-            // InternalCompleteOCL.g:10909:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
-            // InternalCompleteOCL.g:10910:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
+            // InternalCompleteOCL.g:10937:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
+            // InternalCompleteOCL.g:10938:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1());
             }
-            // InternalCompleteOCL.g:10911:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
+            // InternalCompleteOCL.g:10939:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             int alt96=2;
             int LA96_0 = input.LA(1);
 
@@ -32803,7 +32888,7 @@
             }
             switch (alt96) {
                 case 1 :
-                    // InternalCompleteOCL.g:10911:2: rule__TypeNameExpCS__Group_1_1__0
+                    // InternalCompleteOCL.g:10939:2: rule__TypeNameExpCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeNameExpCS__Group_1_1__0();
@@ -32841,14 +32926,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__0"
-    // InternalCompleteOCL.g:10925:1: rule__TypeNameExpCS__Group_1_1__0 : rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 ;
+    // InternalCompleteOCL.g:10953:1: rule__TypeNameExpCS__Group_1_1__0 : rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 ;
     public final void rule__TypeNameExpCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10929:1: ( rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 )
-            // InternalCompleteOCL.g:10930:2: rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1
+            // InternalCompleteOCL.g:10957:1: ( rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 )
+            // InternalCompleteOCL.g:10958:2: rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__TypeNameExpCS__Group_1_1__0__Impl();
@@ -32879,17 +32964,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__0__Impl"
-    // InternalCompleteOCL.g:10937:1: rule__TypeNameExpCS__Group_1_1__0__Impl : ( '{' ) ;
+    // InternalCompleteOCL.g:10965:1: rule__TypeNameExpCS__Group_1_1__0__Impl : ( '{' ) ;
     public final void rule__TypeNameExpCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10941:1: ( ( '{' ) )
-            // InternalCompleteOCL.g:10942:1: ( '{' )
+            // InternalCompleteOCL.g:10969:1: ( ( '{' ) )
+            // InternalCompleteOCL.g:10970:1: ( '{' )
             {
-            // InternalCompleteOCL.g:10942:1: ( '{' )
-            // InternalCompleteOCL.g:10943:1: '{'
+            // InternalCompleteOCL.g:10970:1: ( '{' )
+            // InternalCompleteOCL.g:10971:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
@@ -32920,14 +33005,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__1"
-    // InternalCompleteOCL.g:10956:1: rule__TypeNameExpCS__Group_1_1__1 : rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 ;
+    // InternalCompleteOCL.g:10984:1: rule__TypeNameExpCS__Group_1_1__1 : rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 ;
     public final void rule__TypeNameExpCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10960:1: ( rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 )
-            // InternalCompleteOCL.g:10961:2: rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2
+            // InternalCompleteOCL.g:10988:1: ( rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 )
+            // InternalCompleteOCL.g:10989:2: rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_46);
             rule__TypeNameExpCS__Group_1_1__1__Impl();
@@ -32958,23 +33043,23 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__1__Impl"
-    // InternalCompleteOCL.g:10968:1: rule__TypeNameExpCS__Group_1_1__1__Impl : ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) ;
+    // InternalCompleteOCL.g:10996:1: rule__TypeNameExpCS__Group_1_1__1__Impl : ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) ;
     public final void rule__TypeNameExpCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10972:1: ( ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) )
-            // InternalCompleteOCL.g:10973:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
+            // InternalCompleteOCL.g:11000:1: ( ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) )
+            // InternalCompleteOCL.g:11001:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
             {
-            // InternalCompleteOCL.g:10973:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
-            // InternalCompleteOCL.g:10974:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
+            // InternalCompleteOCL.g:11001:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
+            // InternalCompleteOCL.g:11002:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1());
             }
-            // InternalCompleteOCL.g:10975:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
-            // InternalCompleteOCL.g:10975:2: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1
+            // InternalCompleteOCL.g:11003:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
+            // InternalCompleteOCL.g:11003:2: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1();
@@ -33009,14 +33094,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__2"
-    // InternalCompleteOCL.g:10985:1: rule__TypeNameExpCS__Group_1_1__2 : rule__TypeNameExpCS__Group_1_1__2__Impl ;
+    // InternalCompleteOCL.g:11013:1: rule__TypeNameExpCS__Group_1_1__2 : rule__TypeNameExpCS__Group_1_1__2__Impl ;
     public final void rule__TypeNameExpCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:10989:1: ( rule__TypeNameExpCS__Group_1_1__2__Impl )
-            // InternalCompleteOCL.g:10990:2: rule__TypeNameExpCS__Group_1_1__2__Impl
+            // InternalCompleteOCL.g:11017:1: ( rule__TypeNameExpCS__Group_1_1__2__Impl )
+            // InternalCompleteOCL.g:11018:2: rule__TypeNameExpCS__Group_1_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__Group_1_1__2__Impl();
@@ -33042,17 +33127,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__2__Impl"
-    // InternalCompleteOCL.g:10996:1: rule__TypeNameExpCS__Group_1_1__2__Impl : ( '}' ) ;
+    // InternalCompleteOCL.g:11024:1: rule__TypeNameExpCS__Group_1_1__2__Impl : ( '}' ) ;
     public final void rule__TypeNameExpCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11000:1: ( ( '}' ) )
-            // InternalCompleteOCL.g:11001:1: ( '}' )
+            // InternalCompleteOCL.g:11028:1: ( ( '}' ) )
+            // InternalCompleteOCL.g:11029:1: ( '}' )
             {
-            // InternalCompleteOCL.g:11001:1: ( '}' )
-            // InternalCompleteOCL.g:11002:1: '}'
+            // InternalCompleteOCL.g:11029:1: ( '}' )
+            // InternalCompleteOCL.g:11030:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
@@ -33083,14 +33168,14 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__0"
-    // InternalCompleteOCL.g:11021:1: rule__TypeExpCS__Group__0 : rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 ;
+    // InternalCompleteOCL.g:11049:1: rule__TypeExpCS__Group__0 : rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 ;
     public final void rule__TypeExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11025:1: ( rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 )
-            // InternalCompleteOCL.g:11026:2: rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1
+            // InternalCompleteOCL.g:11053:1: ( rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 )
+            // InternalCompleteOCL.g:11054:2: rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_54);
             rule__TypeExpCS__Group__0__Impl();
@@ -33121,17 +33206,17 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:11033:1: rule__TypeExpCS__Group__0__Impl : ( ruleTypeExpWithoutMultiplicityCS ) ;
+    // InternalCompleteOCL.g:11061:1: rule__TypeExpCS__Group__0__Impl : ( ruleTypeExpWithoutMultiplicityCS ) ;
     public final void rule__TypeExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11037:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
-            // InternalCompleteOCL.g:11038:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalCompleteOCL.g:11065:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
+            // InternalCompleteOCL.g:11066:1: ( ruleTypeExpWithoutMultiplicityCS )
             {
-            // InternalCompleteOCL.g:11038:1: ( ruleTypeExpWithoutMultiplicityCS )
-            // InternalCompleteOCL.g:11039:1: ruleTypeExpWithoutMultiplicityCS
+            // InternalCompleteOCL.g:11066:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalCompleteOCL.g:11067:1: ruleTypeExpWithoutMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeExpCSAccess().getTypeExpWithoutMultiplicityCSParserRuleCall_0());
@@ -33166,14 +33251,14 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__1"
-    // InternalCompleteOCL.g:11050:1: rule__TypeExpCS__Group__1 : rule__TypeExpCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:11078:1: rule__TypeExpCS__Group__1 : rule__TypeExpCS__Group__1__Impl ;
     public final void rule__TypeExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11054:1: ( rule__TypeExpCS__Group__1__Impl )
-            // InternalCompleteOCL.g:11055:2: rule__TypeExpCS__Group__1__Impl
+            // InternalCompleteOCL.g:11082:1: ( rule__TypeExpCS__Group__1__Impl )
+            // InternalCompleteOCL.g:11083:2: rule__TypeExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeExpCS__Group__1__Impl();
@@ -33199,22 +33284,22 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:11061:1: rule__TypeExpCS__Group__1__Impl : ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) ;
+    // InternalCompleteOCL.g:11089:1: rule__TypeExpCS__Group__1__Impl : ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) ;
     public final void rule__TypeExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11065:1: ( ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) )
-            // InternalCompleteOCL.g:11066:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalCompleteOCL.g:11093:1: ( ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) )
+            // InternalCompleteOCL.g:11094:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
             {
-            // InternalCompleteOCL.g:11066:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
-            // InternalCompleteOCL.g:11067:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
+            // InternalCompleteOCL.g:11094:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalCompleteOCL.g:11095:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1());
             }
-            // InternalCompleteOCL.g:11068:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
+            // InternalCompleteOCL.g:11096:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             int alt97=2;
             int LA97_0 = input.LA(1);
 
@@ -33223,7 +33308,7 @@
             }
             switch (alt97) {
                 case 1 :
-                    // InternalCompleteOCL.g:11068:2: rule__TypeExpCS__OwnedMultiplicityAssignment_1
+                    // InternalCompleteOCL.g:11096:2: rule__TypeExpCS__OwnedMultiplicityAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeExpCS__OwnedMultiplicityAssignment_1();
@@ -33261,14 +33346,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__0"
-    // InternalCompleteOCL.g:11082:1: rule__ExpCS__Group_0__0 : rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 ;
+    // InternalCompleteOCL.g:11110:1: rule__ExpCS__Group_0__0 : rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 ;
     public final void rule__ExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11086:1: ( rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 )
-            // InternalCompleteOCL.g:11087:2: rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1
+            // InternalCompleteOCL.g:11114:1: ( rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 )
+            // InternalCompleteOCL.g:11115:2: rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_55);
             rule__ExpCS__Group_0__0__Impl();
@@ -33299,17 +33384,17 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__0__Impl"
-    // InternalCompleteOCL.g:11094:1: rule__ExpCS__Group_0__0__Impl : ( rulePrefixedPrimaryExpCS ) ;
+    // InternalCompleteOCL.g:11122:1: rule__ExpCS__Group_0__0__Impl : ( rulePrefixedPrimaryExpCS ) ;
     public final void rule__ExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11098:1: ( ( rulePrefixedPrimaryExpCS ) )
-            // InternalCompleteOCL.g:11099:1: ( rulePrefixedPrimaryExpCS )
+            // InternalCompleteOCL.g:11126:1: ( ( rulePrefixedPrimaryExpCS ) )
+            // InternalCompleteOCL.g:11127:1: ( rulePrefixedPrimaryExpCS )
             {
-            // InternalCompleteOCL.g:11099:1: ( rulePrefixedPrimaryExpCS )
-            // InternalCompleteOCL.g:11100:1: rulePrefixedPrimaryExpCS
+            // InternalCompleteOCL.g:11127:1: ( rulePrefixedPrimaryExpCS )
+            // InternalCompleteOCL.g:11128:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
@@ -33344,14 +33429,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__1"
-    // InternalCompleteOCL.g:11111:1: rule__ExpCS__Group_0__1 : rule__ExpCS__Group_0__1__Impl ;
+    // InternalCompleteOCL.g:11139:1: rule__ExpCS__Group_0__1 : rule__ExpCS__Group_0__1__Impl ;
     public final void rule__ExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11115:1: ( rule__ExpCS__Group_0__1__Impl )
-            // InternalCompleteOCL.g:11116:2: rule__ExpCS__Group_0__1__Impl
+            // InternalCompleteOCL.g:11143:1: ( rule__ExpCS__Group_0__1__Impl )
+            // InternalCompleteOCL.g:11144:2: rule__ExpCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__Group_0__1__Impl();
@@ -33377,22 +33462,22 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__1__Impl"
-    // InternalCompleteOCL.g:11122:1: rule__ExpCS__Group_0__1__Impl : ( ( rule__ExpCS__Group_0_1__0 )? ) ;
+    // InternalCompleteOCL.g:11150:1: rule__ExpCS__Group_0__1__Impl : ( ( rule__ExpCS__Group_0_1__0 )? ) ;
     public final void rule__ExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11126:1: ( ( ( rule__ExpCS__Group_0_1__0 )? ) )
-            // InternalCompleteOCL.g:11127:1: ( ( rule__ExpCS__Group_0_1__0 )? )
+            // InternalCompleteOCL.g:11154:1: ( ( ( rule__ExpCS__Group_0_1__0 )? ) )
+            // InternalCompleteOCL.g:11155:1: ( ( rule__ExpCS__Group_0_1__0 )? )
             {
-            // InternalCompleteOCL.g:11127:1: ( ( rule__ExpCS__Group_0_1__0 )? )
-            // InternalCompleteOCL.g:11128:1: ( rule__ExpCS__Group_0_1__0 )?
+            // InternalCompleteOCL.g:11155:1: ( ( rule__ExpCS__Group_0_1__0 )? )
+            // InternalCompleteOCL.g:11156:1: ( rule__ExpCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getGroup_0_1());
             }
-            // InternalCompleteOCL.g:11129:1: ( rule__ExpCS__Group_0_1__0 )?
+            // InternalCompleteOCL.g:11157:1: ( rule__ExpCS__Group_0_1__0 )?
             int alt98=2;
             int LA98_0 = input.LA(1);
 
@@ -33401,7 +33486,7 @@
             }
             switch (alt98) {
                 case 1 :
-                    // InternalCompleteOCL.g:11129:2: rule__ExpCS__Group_0_1__0
+                    // InternalCompleteOCL.g:11157:2: rule__ExpCS__Group_0_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ExpCS__Group_0_1__0();
@@ -33439,14 +33524,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__0"
-    // InternalCompleteOCL.g:11143:1: rule__ExpCS__Group_0_1__0 : rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 ;
+    // InternalCompleteOCL.g:11171:1: rule__ExpCS__Group_0_1__0 : rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 ;
     public final void rule__ExpCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11147:1: ( rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 )
-            // InternalCompleteOCL.g:11148:2: rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1
+            // InternalCompleteOCL.g:11175:1: ( rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 )
+            // InternalCompleteOCL.g:11176:2: rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1
             {
             pushFollow(FollowSets000.FOLLOW_55);
             rule__ExpCS__Group_0_1__0__Impl();
@@ -33477,23 +33562,23 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__0__Impl"
-    // InternalCompleteOCL.g:11155:1: rule__ExpCS__Group_0_1__0__Impl : ( () ) ;
+    // InternalCompleteOCL.g:11183:1: rule__ExpCS__Group_0_1__0__Impl : ( () ) ;
     public final void rule__ExpCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11159:1: ( ( () ) )
-            // InternalCompleteOCL.g:11160:1: ( () )
+            // InternalCompleteOCL.g:11187:1: ( ( () ) )
+            // InternalCompleteOCL.g:11188:1: ( () )
             {
-            // InternalCompleteOCL.g:11160:1: ( () )
-            // InternalCompleteOCL.g:11161:1: ()
+            // InternalCompleteOCL.g:11188:1: ( () )
+            // InternalCompleteOCL.g:11189:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0());
             }
-            // InternalCompleteOCL.g:11162:1: ()
-            // InternalCompleteOCL.g:11164:1:
+            // InternalCompleteOCL.g:11190:1: ()
+            // InternalCompleteOCL.g:11192:1:
             {
             }
 
@@ -33518,14 +33603,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__1"
-    // InternalCompleteOCL.g:11174:1: rule__ExpCS__Group_0_1__1 : rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 ;
+    // InternalCompleteOCL.g:11202:1: rule__ExpCS__Group_0_1__1 : rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 ;
     public final void rule__ExpCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11178:1: ( rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 )
-            // InternalCompleteOCL.g:11179:2: rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2
+            // InternalCompleteOCL.g:11206:1: ( rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 )
+            // InternalCompleteOCL.g:11207:2: rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__ExpCS__Group_0_1__1__Impl();
@@ -33556,23 +33641,23 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__1__Impl"
-    // InternalCompleteOCL.g:11186:1: rule__ExpCS__Group_0_1__1__Impl : ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) ;
+    // InternalCompleteOCL.g:11214:1: rule__ExpCS__Group_0_1__1__Impl : ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) ;
     public final void rule__ExpCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11190:1: ( ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) )
-            // InternalCompleteOCL.g:11191:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
+            // InternalCompleteOCL.g:11218:1: ( ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) )
+            // InternalCompleteOCL.g:11219:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
             {
-            // InternalCompleteOCL.g:11191:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
-            // InternalCompleteOCL.g:11192:1: ( rule__ExpCS__NameAssignment_0_1_1 )
+            // InternalCompleteOCL.g:11219:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
+            // InternalCompleteOCL.g:11220:1: ( rule__ExpCS__NameAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1());
             }
-            // InternalCompleteOCL.g:11193:1: ( rule__ExpCS__NameAssignment_0_1_1 )
-            // InternalCompleteOCL.g:11193:2: rule__ExpCS__NameAssignment_0_1_1
+            // InternalCompleteOCL.g:11221:1: ( rule__ExpCS__NameAssignment_0_1_1 )
+            // InternalCompleteOCL.g:11221:2: rule__ExpCS__NameAssignment_0_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__NameAssignment_0_1_1();
@@ -33607,14 +33692,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__2"
-    // InternalCompleteOCL.g:11203:1: rule__ExpCS__Group_0_1__2 : rule__ExpCS__Group_0_1__2__Impl ;
+    // InternalCompleteOCL.g:11231:1: rule__ExpCS__Group_0_1__2 : rule__ExpCS__Group_0_1__2__Impl ;
     public final void rule__ExpCS__Group_0_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11207:1: ( rule__ExpCS__Group_0_1__2__Impl )
-            // InternalCompleteOCL.g:11208:2: rule__ExpCS__Group_0_1__2__Impl
+            // InternalCompleteOCL.g:11235:1: ( rule__ExpCS__Group_0_1__2__Impl )
+            // InternalCompleteOCL.g:11236:2: rule__ExpCS__Group_0_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__Group_0_1__2__Impl();
@@ -33640,23 +33725,23 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__2__Impl"
-    // InternalCompleteOCL.g:11214:1: rule__ExpCS__Group_0_1__2__Impl : ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) ;
+    // InternalCompleteOCL.g:11242:1: rule__ExpCS__Group_0_1__2__Impl : ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) ;
     public final void rule__ExpCS__Group_0_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11218:1: ( ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) )
-            // InternalCompleteOCL.g:11219:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
+            // InternalCompleteOCL.g:11246:1: ( ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) )
+            // InternalCompleteOCL.g:11247:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
             {
-            // InternalCompleteOCL.g:11219:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
-            // InternalCompleteOCL.g:11220:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
+            // InternalCompleteOCL.g:11247:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
+            // InternalCompleteOCL.g:11248:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2());
             }
-            // InternalCompleteOCL.g:11221:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
-            // InternalCompleteOCL.g:11221:2: rule__ExpCS__OwnedRightAssignment_0_1_2
+            // InternalCompleteOCL.g:11249:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
+            // InternalCompleteOCL.g:11249:2: rule__ExpCS__OwnedRightAssignment_0_1_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__OwnedRightAssignment_0_1_2();
@@ -33691,14 +33776,14 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__0"
-    // InternalCompleteOCL.g:11237:1: rule__PrefixedLetExpCS__Group_0__0 : rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 ;
+    // InternalCompleteOCL.g:11265:1: rule__PrefixedLetExpCS__Group_0__0 : rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 ;
     public final void rule__PrefixedLetExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11241:1: ( rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 )
-            // InternalCompleteOCL.g:11242:2: rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1
+            // InternalCompleteOCL.g:11269:1: ( rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 )
+            // InternalCompleteOCL.g:11270:2: rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_56);
             rule__PrefixedLetExpCS__Group_0__0__Impl();
@@ -33729,23 +33814,23 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__0__Impl"
-    // InternalCompleteOCL.g:11249:1: rule__PrefixedLetExpCS__Group_0__0__Impl : ( () ) ;
+    // InternalCompleteOCL.g:11277:1: rule__PrefixedLetExpCS__Group_0__0__Impl : ( () ) ;
     public final void rule__PrefixedLetExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11253:1: ( ( () ) )
-            // InternalCompleteOCL.g:11254:1: ( () )
+            // InternalCompleteOCL.g:11281:1: ( ( () ) )
+            // InternalCompleteOCL.g:11282:1: ( () )
             {
-            // InternalCompleteOCL.g:11254:1: ( () )
-            // InternalCompleteOCL.g:11255:1: ()
+            // InternalCompleteOCL.g:11282:1: ( () )
+            // InternalCompleteOCL.g:11283:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0());
             }
-            // InternalCompleteOCL.g:11256:1: ()
-            // InternalCompleteOCL.g:11258:1:
+            // InternalCompleteOCL.g:11284:1: ()
+            // InternalCompleteOCL.g:11286:1:
             {
             }
 
@@ -33770,14 +33855,14 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__1"
-    // InternalCompleteOCL.g:11268:1: rule__PrefixedLetExpCS__Group_0__1 : rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 ;
+    // InternalCompleteOCL.g:11296:1: rule__PrefixedLetExpCS__Group_0__1 : rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 ;
     public final void rule__PrefixedLetExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11272:1: ( rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 )
-            // InternalCompleteOCL.g:11273:2: rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2
+            // InternalCompleteOCL.g:11300:1: ( rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 )
+            // InternalCompleteOCL.g:11301:2: rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__PrefixedLetExpCS__Group_0__1__Impl();
@@ -33808,23 +33893,23 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__1__Impl"
-    // InternalCompleteOCL.g:11280:1: rule__PrefixedLetExpCS__Group_0__1__Impl : ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) ;
+    // InternalCompleteOCL.g:11308:1: rule__PrefixedLetExpCS__Group_0__1__Impl : ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) ;
     public final void rule__PrefixedLetExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11284:1: ( ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) )
-            // InternalCompleteOCL.g:11285:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
+            // InternalCompleteOCL.g:11312:1: ( ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) )
+            // InternalCompleteOCL.g:11313:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
             {
-            // InternalCompleteOCL.g:11285:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
-            // InternalCompleteOCL.g:11286:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
+            // InternalCompleteOCL.g:11313:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
+            // InternalCompleteOCL.g:11314:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1());
             }
-            // InternalCompleteOCL.g:11287:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
-            // InternalCompleteOCL.g:11287:2: rule__PrefixedLetExpCS__NameAssignment_0_1
+            // InternalCompleteOCL.g:11315:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
+            // InternalCompleteOCL.g:11315:2: rule__PrefixedLetExpCS__NameAssignment_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedLetExpCS__NameAssignment_0_1();
@@ -33859,14 +33944,14 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__2"
-    // InternalCompleteOCL.g:11297:1: rule__PrefixedLetExpCS__Group_0__2 : rule__PrefixedLetExpCS__Group_0__2__Impl ;
+    // InternalCompleteOCL.g:11325:1: rule__PrefixedLetExpCS__Group_0__2 : rule__PrefixedLetExpCS__Group_0__2__Impl ;
     public final void rule__PrefixedLetExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11301:1: ( rule__PrefixedLetExpCS__Group_0__2__Impl )
-            // InternalCompleteOCL.g:11302:2: rule__PrefixedLetExpCS__Group_0__2__Impl
+            // InternalCompleteOCL.g:11329:1: ( rule__PrefixedLetExpCS__Group_0__2__Impl )
+            // InternalCompleteOCL.g:11330:2: rule__PrefixedLetExpCS__Group_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedLetExpCS__Group_0__2__Impl();
@@ -33892,23 +33977,23 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__2__Impl"
-    // InternalCompleteOCL.g:11308:1: rule__PrefixedLetExpCS__Group_0__2__Impl : ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) ;
+    // InternalCompleteOCL.g:11336:1: rule__PrefixedLetExpCS__Group_0__2__Impl : ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) ;
     public final void rule__PrefixedLetExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11312:1: ( ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) )
-            // InternalCompleteOCL.g:11313:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalCompleteOCL.g:11340:1: ( ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) )
+            // InternalCompleteOCL.g:11341:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
             {
-            // InternalCompleteOCL.g:11313:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
-            // InternalCompleteOCL.g:11314:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
+            // InternalCompleteOCL.g:11341:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalCompleteOCL.g:11342:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2());
             }
-            // InternalCompleteOCL.g:11315:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
-            // InternalCompleteOCL.g:11315:2: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2
+            // InternalCompleteOCL.g:11343:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
+            // InternalCompleteOCL.g:11343:2: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedLetExpCS__OwnedRightAssignment_0_2();
@@ -33943,14 +34028,14 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__0"
-    // InternalCompleteOCL.g:11331:1: rule__PrefixedPrimaryExpCS__Group_0__0 : rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 ;
+    // InternalCompleteOCL.g:11359:1: rule__PrefixedPrimaryExpCS__Group_0__0 : rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11335:1: ( rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 )
-            // InternalCompleteOCL.g:11336:2: rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1
+            // InternalCompleteOCL.g:11363:1: ( rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 )
+            // InternalCompleteOCL.g:11364:2: rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_56);
             rule__PrefixedPrimaryExpCS__Group_0__0__Impl();
@@ -33981,23 +34066,23 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__0__Impl"
-    // InternalCompleteOCL.g:11343:1: rule__PrefixedPrimaryExpCS__Group_0__0__Impl : ( () ) ;
+    // InternalCompleteOCL.g:11371:1: rule__PrefixedPrimaryExpCS__Group_0__0__Impl : ( () ) ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11347:1: ( ( () ) )
-            // InternalCompleteOCL.g:11348:1: ( () )
+            // InternalCompleteOCL.g:11375:1: ( ( () ) )
+            // InternalCompleteOCL.g:11376:1: ( () )
             {
-            // InternalCompleteOCL.g:11348:1: ( () )
-            // InternalCompleteOCL.g:11349:1: ()
+            // InternalCompleteOCL.g:11376:1: ( () )
+            // InternalCompleteOCL.g:11377:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0());
             }
-            // InternalCompleteOCL.g:11350:1: ()
-            // InternalCompleteOCL.g:11352:1:
+            // InternalCompleteOCL.g:11378:1: ()
+            // InternalCompleteOCL.g:11380:1:
             {
             }
 
@@ -34022,16 +34107,16 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__1"
-    // InternalCompleteOCL.g:11362:1: rule__PrefixedPrimaryExpCS__Group_0__1 : rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 ;
+    // InternalCompleteOCL.g:11390:1: rule__PrefixedPrimaryExpCS__Group_0__1 : rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11366:1: ( rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 )
-            // InternalCompleteOCL.g:11367:2: rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2
+            // InternalCompleteOCL.g:11394:1: ( rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 )
+            // InternalCompleteOCL.g:11395:2: rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2
             {
-            pushFollow(FollowSets000.FOLLOW_57);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__PrefixedPrimaryExpCS__Group_0__1__Impl();
 
             state._fsp--;
@@ -34060,23 +34145,23 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__1__Impl"
-    // InternalCompleteOCL.g:11374:1: rule__PrefixedPrimaryExpCS__Group_0__1__Impl : ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) ;
+    // InternalCompleteOCL.g:11402:1: rule__PrefixedPrimaryExpCS__Group_0__1__Impl : ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11378:1: ( ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) )
-            // InternalCompleteOCL.g:11379:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
+            // InternalCompleteOCL.g:11406:1: ( ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) )
+            // InternalCompleteOCL.g:11407:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
             {
-            // InternalCompleteOCL.g:11379:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
-            // InternalCompleteOCL.g:11380:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
+            // InternalCompleteOCL.g:11407:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
+            // InternalCompleteOCL.g:11408:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1());
             }
-            // InternalCompleteOCL.g:11381:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
-            // InternalCompleteOCL.g:11381:2: rule__PrefixedPrimaryExpCS__NameAssignment_0_1
+            // InternalCompleteOCL.g:11409:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
+            // InternalCompleteOCL.g:11409:2: rule__PrefixedPrimaryExpCS__NameAssignment_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedPrimaryExpCS__NameAssignment_0_1();
@@ -34111,14 +34196,14 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__2"
-    // InternalCompleteOCL.g:11391:1: rule__PrefixedPrimaryExpCS__Group_0__2 : rule__PrefixedPrimaryExpCS__Group_0__2__Impl ;
+    // InternalCompleteOCL.g:11419:1: rule__PrefixedPrimaryExpCS__Group_0__2 : rule__PrefixedPrimaryExpCS__Group_0__2__Impl ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11395:1: ( rule__PrefixedPrimaryExpCS__Group_0__2__Impl )
-            // InternalCompleteOCL.g:11396:2: rule__PrefixedPrimaryExpCS__Group_0__2__Impl
+            // InternalCompleteOCL.g:11423:1: ( rule__PrefixedPrimaryExpCS__Group_0__2__Impl )
+            // InternalCompleteOCL.g:11424:2: rule__PrefixedPrimaryExpCS__Group_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedPrimaryExpCS__Group_0__2__Impl();
@@ -34144,23 +34229,23 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__2__Impl"
-    // InternalCompleteOCL.g:11402:1: rule__PrefixedPrimaryExpCS__Group_0__2__Impl : ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) ;
+    // InternalCompleteOCL.g:11430:1: rule__PrefixedPrimaryExpCS__Group_0__2__Impl : ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11406:1: ( ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) )
-            // InternalCompleteOCL.g:11407:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalCompleteOCL.g:11434:1: ( ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) )
+            // InternalCompleteOCL.g:11435:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
             {
-            // InternalCompleteOCL.g:11407:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
-            // InternalCompleteOCL.g:11408:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
+            // InternalCompleteOCL.g:11435:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalCompleteOCL.g:11436:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2());
             }
-            // InternalCompleteOCL.g:11409:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
-            // InternalCompleteOCL.g:11409:2: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2
+            // InternalCompleteOCL.g:11437:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
+            // InternalCompleteOCL.g:11437:2: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2();
@@ -34195,16 +34280,16 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__0"
-    // InternalCompleteOCL.g:11425:1: rule__NameExpCS__Group__0 : rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 ;
+    // InternalCompleteOCL.g:11453:1: rule__NameExpCS__Group__0 : rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 ;
     public final void rule__NameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11429:1: ( rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 )
-            // InternalCompleteOCL.g:11430:2: rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1
+            // InternalCompleteOCL.g:11457:1: ( rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 )
+            // InternalCompleteOCL.g:11458:2: rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_58);
+            pushFollow(FollowSets000.FOLLOW_57);
             rule__NameExpCS__Group__0__Impl();
 
             state._fsp--;
@@ -34233,23 +34318,23 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:11437:1: rule__NameExpCS__Group__0__Impl : ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:11465:1: rule__NameExpCS__Group__0__Impl : ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) ;
     public final void rule__NameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11441:1: ( ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) )
-            // InternalCompleteOCL.g:11442:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalCompleteOCL.g:11469:1: ( ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) )
+            // InternalCompleteOCL.g:11470:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:11442:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
-            // InternalCompleteOCL.g:11443:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
+            // InternalCompleteOCL.g:11470:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalCompleteOCL.g:11471:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
-            // InternalCompleteOCL.g:11444:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
-            // InternalCompleteOCL.g:11444:2: rule__NameExpCS__OwnedPathNameAssignment_0
+            // InternalCompleteOCL.g:11472:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
+            // InternalCompleteOCL.g:11472:2: rule__NameExpCS__OwnedPathNameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__OwnedPathNameAssignment_0();
@@ -34284,16 +34369,16 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__1"
-    // InternalCompleteOCL.g:11454:1: rule__NameExpCS__Group__1 : rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 ;
+    // InternalCompleteOCL.g:11482:1: rule__NameExpCS__Group__1 : rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 ;
     public final void rule__NameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11458:1: ( rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 )
-            // InternalCompleteOCL.g:11459:2: rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2
+            // InternalCompleteOCL.g:11486:1: ( rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 )
+            // InternalCompleteOCL.g:11487:2: rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_58);
+            pushFollow(FollowSets000.FOLLOW_57);
             rule__NameExpCS__Group__1__Impl();
 
             state._fsp--;
@@ -34322,22 +34407,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:11466:1: rule__NameExpCS__Group__1__Impl : ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) ;
+    // InternalCompleteOCL.g:11494:1: rule__NameExpCS__Group__1__Impl : ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) ;
     public final void rule__NameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11470:1: ( ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) )
-            // InternalCompleteOCL.g:11471:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
+            // InternalCompleteOCL.g:11498:1: ( ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) )
+            // InternalCompleteOCL.g:11499:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
             {
-            // InternalCompleteOCL.g:11471:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
-            // InternalCompleteOCL.g:11472:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
+            // InternalCompleteOCL.g:11499:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
+            // InternalCompleteOCL.g:11500:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1());
             }
-            // InternalCompleteOCL.g:11473:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
+            // InternalCompleteOCL.g:11501:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             loop99:
             do {
                 int alt99=2;
@@ -34350,9 +34435,9 @@
 
                 switch (alt99) {
             	case 1 :
-            	    // InternalCompleteOCL.g:11473:2: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1
+            	    // InternalCompleteOCL.g:11501:2: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_59);
+            	    pushFollow(FollowSets000.FOLLOW_58);
             	    rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1();
 
             	    state._fsp--;
@@ -34391,16 +34476,16 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__2"
-    // InternalCompleteOCL.g:11483:1: rule__NameExpCS__Group__2 : rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 ;
+    // InternalCompleteOCL.g:11511:1: rule__NameExpCS__Group__2 : rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 ;
     public final void rule__NameExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11487:1: ( rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 )
-            // InternalCompleteOCL.g:11488:2: rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3
+            // InternalCompleteOCL.g:11515:1: ( rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 )
+            // InternalCompleteOCL.g:11516:2: rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_58);
+            pushFollow(FollowSets000.FOLLOW_57);
             rule__NameExpCS__Group__2__Impl();
 
             state._fsp--;
@@ -34429,22 +34514,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__2__Impl"
-    // InternalCompleteOCL.g:11495:1: rule__NameExpCS__Group__2__Impl : ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) ;
+    // InternalCompleteOCL.g:11523:1: rule__NameExpCS__Group__2__Impl : ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) ;
     public final void rule__NameExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11499:1: ( ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) )
-            // InternalCompleteOCL.g:11500:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
+            // InternalCompleteOCL.g:11527:1: ( ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) )
+            // InternalCompleteOCL.g:11528:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
             {
-            // InternalCompleteOCL.g:11500:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
-            // InternalCompleteOCL.g:11501:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
+            // InternalCompleteOCL.g:11528:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
+            // InternalCompleteOCL.g:11529:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2());
             }
-            // InternalCompleteOCL.g:11502:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
+            // InternalCompleteOCL.g:11530:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             int alt100=2;
             int LA100_0 = input.LA(1);
 
@@ -34453,7 +34538,7 @@
             }
             switch (alt100) {
                 case 1 :
-                    // InternalCompleteOCL.g:11502:2: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2
+                    // InternalCompleteOCL.g:11530:2: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2();
@@ -34491,16 +34576,16 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__3"
-    // InternalCompleteOCL.g:11512:1: rule__NameExpCS__Group__3 : rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 ;
+    // InternalCompleteOCL.g:11540:1: rule__NameExpCS__Group__3 : rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 ;
     public final void rule__NameExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11516:1: ( rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 )
-            // InternalCompleteOCL.g:11517:2: rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4
+            // InternalCompleteOCL.g:11544:1: ( rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 )
+            // InternalCompleteOCL.g:11545:2: rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_58);
+            pushFollow(FollowSets000.FOLLOW_57);
             rule__NameExpCS__Group__3__Impl();
 
             state._fsp--;
@@ -34529,22 +34614,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__3__Impl"
-    // InternalCompleteOCL.g:11524:1: rule__NameExpCS__Group__3__Impl : ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) ;
+    // InternalCompleteOCL.g:11552:1: rule__NameExpCS__Group__3__Impl : ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) ;
     public final void rule__NameExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11528:1: ( ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) )
-            // InternalCompleteOCL.g:11529:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
+            // InternalCompleteOCL.g:11556:1: ( ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) )
+            // InternalCompleteOCL.g:11557:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
             {
-            // InternalCompleteOCL.g:11529:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
-            // InternalCompleteOCL.g:11530:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
+            // InternalCompleteOCL.g:11557:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
+            // InternalCompleteOCL.g:11558:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3());
             }
-            // InternalCompleteOCL.g:11531:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
+            // InternalCompleteOCL.g:11559:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             int alt101=2;
             int LA101_0 = input.LA(1);
 
@@ -34553,7 +34638,7 @@
             }
             switch (alt101) {
                 case 1 :
-                    // InternalCompleteOCL.g:11531:2: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3
+                    // InternalCompleteOCL.g:11559:2: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3();
@@ -34591,14 +34676,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__4"
-    // InternalCompleteOCL.g:11541:1: rule__NameExpCS__Group__4 : rule__NameExpCS__Group__4__Impl ;
+    // InternalCompleteOCL.g:11569:1: rule__NameExpCS__Group__4 : rule__NameExpCS__Group__4__Impl ;
     public final void rule__NameExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11545:1: ( rule__NameExpCS__Group__4__Impl )
-            // InternalCompleteOCL.g:11546:2: rule__NameExpCS__Group__4__Impl
+            // InternalCompleteOCL.g:11573:1: ( rule__NameExpCS__Group__4__Impl )
+            // InternalCompleteOCL.g:11574:2: rule__NameExpCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__Group__4__Impl();
@@ -34624,22 +34709,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__4__Impl"
-    // InternalCompleteOCL.g:11552:1: rule__NameExpCS__Group__4__Impl : ( ( rule__NameExpCS__Group_4__0 )? ) ;
+    // InternalCompleteOCL.g:11580:1: rule__NameExpCS__Group__4__Impl : ( ( rule__NameExpCS__Group_4__0 )? ) ;
     public final void rule__NameExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11556:1: ( ( ( rule__NameExpCS__Group_4__0 )? ) )
-            // InternalCompleteOCL.g:11557:1: ( ( rule__NameExpCS__Group_4__0 )? )
+            // InternalCompleteOCL.g:11584:1: ( ( ( rule__NameExpCS__Group_4__0 )? ) )
+            // InternalCompleteOCL.g:11585:1: ( ( rule__NameExpCS__Group_4__0 )? )
             {
-            // InternalCompleteOCL.g:11557:1: ( ( rule__NameExpCS__Group_4__0 )? )
-            // InternalCompleteOCL.g:11558:1: ( rule__NameExpCS__Group_4__0 )?
+            // InternalCompleteOCL.g:11585:1: ( ( rule__NameExpCS__Group_4__0 )? )
+            // InternalCompleteOCL.g:11586:1: ( rule__NameExpCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getGroup_4());
             }
-            // InternalCompleteOCL.g:11559:1: ( rule__NameExpCS__Group_4__0 )?
+            // InternalCompleteOCL.g:11587:1: ( rule__NameExpCS__Group_4__0 )?
             int alt102=2;
             int LA102_0 = input.LA(1);
 
@@ -34648,7 +34733,7 @@
             }
             switch (alt102) {
                 case 1 :
-                    // InternalCompleteOCL.g:11559:2: rule__NameExpCS__Group_4__0
+                    // InternalCompleteOCL.g:11587:2: rule__NameExpCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NameExpCS__Group_4__0();
@@ -34686,16 +34771,16 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__0"
-    // InternalCompleteOCL.g:11579:1: rule__NameExpCS__Group_4__0 : rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 ;
+    // InternalCompleteOCL.g:11607:1: rule__NameExpCS__Group_4__0 : rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 ;
     public final void rule__NameExpCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11583:1: ( rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 )
-            // InternalCompleteOCL.g:11584:2: rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1
+            // InternalCompleteOCL.g:11611:1: ( rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 )
+            // InternalCompleteOCL.g:11612:2: rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1
             {
-            pushFollow(FollowSets000.FOLLOW_60);
+            pushFollow(FollowSets000.FOLLOW_59);
             rule__NameExpCS__Group_4__0__Impl();
 
             state._fsp--;
@@ -34724,23 +34809,23 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__0__Impl"
-    // InternalCompleteOCL.g:11591:1: rule__NameExpCS__Group_4__0__Impl : ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) ;
+    // InternalCompleteOCL.g:11619:1: rule__NameExpCS__Group_4__0__Impl : ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) ;
     public final void rule__NameExpCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11595:1: ( ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) )
-            // InternalCompleteOCL.g:11596:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
+            // InternalCompleteOCL.g:11623:1: ( ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) )
+            // InternalCompleteOCL.g:11624:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
             {
-            // InternalCompleteOCL.g:11596:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
-            // InternalCompleteOCL.g:11597:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
+            // InternalCompleteOCL.g:11624:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
+            // InternalCompleteOCL.g:11625:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0());
             }
-            // InternalCompleteOCL.g:11598:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
-            // InternalCompleteOCL.g:11598:2: rule__NameExpCS__IsPreAssignment_4_0
+            // InternalCompleteOCL.g:11626:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
+            // InternalCompleteOCL.g:11626:2: rule__NameExpCS__IsPreAssignment_4_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__IsPreAssignment_4_0();
@@ -34775,14 +34860,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__1"
-    // InternalCompleteOCL.g:11608:1: rule__NameExpCS__Group_4__1 : rule__NameExpCS__Group_4__1__Impl ;
+    // InternalCompleteOCL.g:11636:1: rule__NameExpCS__Group_4__1 : rule__NameExpCS__Group_4__1__Impl ;
     public final void rule__NameExpCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11612:1: ( rule__NameExpCS__Group_4__1__Impl )
-            // InternalCompleteOCL.g:11613:2: rule__NameExpCS__Group_4__1__Impl
+            // InternalCompleteOCL.g:11640:1: ( rule__NameExpCS__Group_4__1__Impl )
+            // InternalCompleteOCL.g:11641:2: rule__NameExpCS__Group_4__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__Group_4__1__Impl();
@@ -34808,17 +34893,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__1__Impl"
-    // InternalCompleteOCL.g:11619:1: rule__NameExpCS__Group_4__1__Impl : ( 'pre' ) ;
+    // InternalCompleteOCL.g:11647:1: rule__NameExpCS__Group_4__1__Impl : ( 'pre' ) ;
     public final void rule__NameExpCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11623:1: ( ( 'pre' ) )
-            // InternalCompleteOCL.g:11624:1: ( 'pre' )
+            // InternalCompleteOCL.g:11651:1: ( ( 'pre' ) )
+            // InternalCompleteOCL.g:11652:1: ( 'pre' )
             {
-            // InternalCompleteOCL.g:11624:1: ( 'pre' )
-            // InternalCompleteOCL.g:11625:1: 'pre'
+            // InternalCompleteOCL.g:11652:1: ( 'pre' )
+            // InternalCompleteOCL.g:11653:1: 'pre'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
@@ -34849,14 +34934,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__0"
-    // InternalCompleteOCL.g:11642:1: rule__CurlyBracketedClauseCS__Group__0 : rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 ;
+    // InternalCompleteOCL.g:11670:1: rule__CurlyBracketedClauseCS__Group__0 : rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 ;
     public final void rule__CurlyBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11646:1: ( rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 )
-            // InternalCompleteOCL.g:11647:2: rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1
+            // InternalCompleteOCL.g:11674:1: ( rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 )
+            // InternalCompleteOCL.g:11675:2: rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__CurlyBracketedClauseCS__Group__0__Impl();
@@ -34887,23 +34972,23 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__0__Impl"
-    // InternalCompleteOCL.g:11654:1: rule__CurlyBracketedClauseCS__Group__0__Impl : ( () ) ;
+    // InternalCompleteOCL.g:11682:1: rule__CurlyBracketedClauseCS__Group__0__Impl : ( () ) ;
     public final void rule__CurlyBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11658:1: ( ( () ) )
-            // InternalCompleteOCL.g:11659:1: ( () )
+            // InternalCompleteOCL.g:11686:1: ( ( () ) )
+            // InternalCompleteOCL.g:11687:1: ( () )
             {
-            // InternalCompleteOCL.g:11659:1: ( () )
-            // InternalCompleteOCL.g:11660:1: ()
+            // InternalCompleteOCL.g:11687:1: ( () )
+            // InternalCompleteOCL.g:11688:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0());
             }
-            // InternalCompleteOCL.g:11661:1: ()
-            // InternalCompleteOCL.g:11663:1:
+            // InternalCompleteOCL.g:11689:1: ()
+            // InternalCompleteOCL.g:11691:1:
             {
             }
 
@@ -34928,16 +35013,16 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__1"
-    // InternalCompleteOCL.g:11673:1: rule__CurlyBracketedClauseCS__Group__1 : rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 ;
+    // InternalCompleteOCL.g:11701:1: rule__CurlyBracketedClauseCS__Group__1 : rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 ;
     public final void rule__CurlyBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11677:1: ( rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 )
-            // InternalCompleteOCL.g:11678:2: rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2
+            // InternalCompleteOCL.g:11705:1: ( rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 )
+            // InternalCompleteOCL.g:11706:2: rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_61);
+            pushFollow(FollowSets000.FOLLOW_60);
             rule__CurlyBracketedClauseCS__Group__1__Impl();
 
             state._fsp--;
@@ -34966,17 +35051,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__1__Impl"
-    // InternalCompleteOCL.g:11685:1: rule__CurlyBracketedClauseCS__Group__1__Impl : ( '{' ) ;
+    // InternalCompleteOCL.g:11713:1: rule__CurlyBracketedClauseCS__Group__1__Impl : ( '{' ) ;
     public final void rule__CurlyBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11689:1: ( ( '{' ) )
-            // InternalCompleteOCL.g:11690:1: ( '{' )
+            // InternalCompleteOCL.g:11717:1: ( ( '{' ) )
+            // InternalCompleteOCL.g:11718:1: ( '{' )
             {
-            // InternalCompleteOCL.g:11690:1: ( '{' )
-            // InternalCompleteOCL.g:11691:1: '{'
+            // InternalCompleteOCL.g:11718:1: ( '{' )
+            // InternalCompleteOCL.g:11719:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
@@ -35007,16 +35092,16 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__2"
-    // InternalCompleteOCL.g:11704:1: rule__CurlyBracketedClauseCS__Group__2 : rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 ;
+    // InternalCompleteOCL.g:11732:1: rule__CurlyBracketedClauseCS__Group__2 : rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 ;
     public final void rule__CurlyBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11708:1: ( rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 )
-            // InternalCompleteOCL.g:11709:2: rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3
+            // InternalCompleteOCL.g:11736:1: ( rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 )
+            // InternalCompleteOCL.g:11737:2: rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_61);
+            pushFollow(FollowSets000.FOLLOW_60);
             rule__CurlyBracketedClauseCS__Group__2__Impl();
 
             state._fsp--;
@@ -35045,22 +35130,22 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__2__Impl"
-    // InternalCompleteOCL.g:11716:1: rule__CurlyBracketedClauseCS__Group__2__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) ;
+    // InternalCompleteOCL.g:11744:1: rule__CurlyBracketedClauseCS__Group__2__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) ;
     public final void rule__CurlyBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11720:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) )
-            // InternalCompleteOCL.g:11721:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:11748:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) )
+            // InternalCompleteOCL.g:11749:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
             {
-            // InternalCompleteOCL.g:11721:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
-            // InternalCompleteOCL.g:11722:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
+            // InternalCompleteOCL.g:11749:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:11750:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2());
             }
-            // InternalCompleteOCL.g:11723:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
+            // InternalCompleteOCL.g:11751:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
             int alt103=2;
             int LA103_0 = input.LA(1);
 
@@ -35069,7 +35154,7 @@
             }
             switch (alt103) {
                 case 1 :
-                    // InternalCompleteOCL.g:11723:2: rule__CurlyBracketedClauseCS__Group_2__0
+                    // InternalCompleteOCL.g:11751:2: rule__CurlyBracketedClauseCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CurlyBracketedClauseCS__Group_2__0();
@@ -35107,14 +35192,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__3"
-    // InternalCompleteOCL.g:11733:1: rule__CurlyBracketedClauseCS__Group__3 : rule__CurlyBracketedClauseCS__Group__3__Impl ;
+    // InternalCompleteOCL.g:11761:1: rule__CurlyBracketedClauseCS__Group__3 : rule__CurlyBracketedClauseCS__Group__3__Impl ;
     public final void rule__CurlyBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11737:1: ( rule__CurlyBracketedClauseCS__Group__3__Impl )
-            // InternalCompleteOCL.g:11738:2: rule__CurlyBracketedClauseCS__Group__3__Impl
+            // InternalCompleteOCL.g:11765:1: ( rule__CurlyBracketedClauseCS__Group__3__Impl )
+            // InternalCompleteOCL.g:11766:2: rule__CurlyBracketedClauseCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__Group__3__Impl();
@@ -35140,17 +35225,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__3__Impl"
-    // InternalCompleteOCL.g:11744:1: rule__CurlyBracketedClauseCS__Group__3__Impl : ( '}' ) ;
+    // InternalCompleteOCL.g:11772:1: rule__CurlyBracketedClauseCS__Group__3__Impl : ( '}' ) ;
     public final void rule__CurlyBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11748:1: ( ( '}' ) )
-            // InternalCompleteOCL.g:11749:1: ( '}' )
+            // InternalCompleteOCL.g:11776:1: ( ( '}' ) )
+            // InternalCompleteOCL.g:11777:1: ( '}' )
             {
-            // InternalCompleteOCL.g:11749:1: ( '}' )
-            // InternalCompleteOCL.g:11750:1: '}'
+            // InternalCompleteOCL.g:11777:1: ( '}' )
+            // InternalCompleteOCL.g:11778:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
@@ -35181,16 +35266,16 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__0"
-    // InternalCompleteOCL.g:11771:1: rule__CurlyBracketedClauseCS__Group_2__0 : rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 ;
+    // InternalCompleteOCL.g:11799:1: rule__CurlyBracketedClauseCS__Group_2__0 : rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 ;
     public final void rule__CurlyBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11775:1: ( rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 )
-            // InternalCompleteOCL.g:11776:2: rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1
+            // InternalCompleteOCL.g:11803:1: ( rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 )
+            // InternalCompleteOCL.g:11804:2: rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_18);
+            pushFollow(FollowSets000.FOLLOW_19);
             rule__CurlyBracketedClauseCS__Group_2__0__Impl();
 
             state._fsp--;
@@ -35219,23 +35304,23 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__0__Impl"
-    // InternalCompleteOCL.g:11783:1: rule__CurlyBracketedClauseCS__Group_2__0__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalCompleteOCL.g:11811:1: rule__CurlyBracketedClauseCS__Group_2__0__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11787:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalCompleteOCL.g:11788:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
+            // InternalCompleteOCL.g:11815:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalCompleteOCL.g:11816:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalCompleteOCL.g:11788:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
-            // InternalCompleteOCL.g:11789:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
+            // InternalCompleteOCL.g:11816:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
+            // InternalCompleteOCL.g:11817:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalCompleteOCL.g:11790:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
-            // InternalCompleteOCL.g:11790:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0
+            // InternalCompleteOCL.g:11818:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
+            // InternalCompleteOCL.g:11818:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0();
@@ -35270,14 +35355,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__1"
-    // InternalCompleteOCL.g:11800:1: rule__CurlyBracketedClauseCS__Group_2__1 : rule__CurlyBracketedClauseCS__Group_2__1__Impl ;
+    // InternalCompleteOCL.g:11828:1: rule__CurlyBracketedClauseCS__Group_2__1 : rule__CurlyBracketedClauseCS__Group_2__1__Impl ;
     public final void rule__CurlyBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11804:1: ( rule__CurlyBracketedClauseCS__Group_2__1__Impl )
-            // InternalCompleteOCL.g:11805:2: rule__CurlyBracketedClauseCS__Group_2__1__Impl
+            // InternalCompleteOCL.g:11832:1: ( rule__CurlyBracketedClauseCS__Group_2__1__Impl )
+            // InternalCompleteOCL.g:11833:2: rule__CurlyBracketedClauseCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__Group_2__1__Impl();
@@ -35303,22 +35388,22 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__1__Impl"
-    // InternalCompleteOCL.g:11811:1: rule__CurlyBracketedClauseCS__Group_2__1__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) ;
+    // InternalCompleteOCL.g:11839:1: rule__CurlyBracketedClauseCS__Group_2__1__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11815:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) )
-            // InternalCompleteOCL.g:11816:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
+            // InternalCompleteOCL.g:11843:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) )
+            // InternalCompleteOCL.g:11844:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
             {
-            // InternalCompleteOCL.g:11816:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
-            // InternalCompleteOCL.g:11817:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
+            // InternalCompleteOCL.g:11844:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
+            // InternalCompleteOCL.g:11845:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_1());
             }
-            // InternalCompleteOCL.g:11818:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
+            // InternalCompleteOCL.g:11846:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
             loop104:
             do {
                 int alt104=2;
@@ -35331,9 +35416,9 @@
 
                 switch (alt104) {
             	case 1 :
-            	    // InternalCompleteOCL.g:11818:2: rule__CurlyBracketedClauseCS__Group_2_1__0
+            	    // InternalCompleteOCL.g:11846:2: rule__CurlyBracketedClauseCS__Group_2_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__CurlyBracketedClauseCS__Group_2_1__0();
 
             	    state._fsp--;
@@ -35372,16 +35457,16 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__0"
-    // InternalCompleteOCL.g:11832:1: rule__CurlyBracketedClauseCS__Group_2_1__0 : rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 ;
+    // InternalCompleteOCL.g:11860:1: rule__CurlyBracketedClauseCS__Group_2_1__0 : rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11836:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 )
-            // InternalCompleteOCL.g:11837:2: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1
+            // InternalCompleteOCL.g:11864:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 )
+            // InternalCompleteOCL.g:11865:2: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_23);
+            pushFollow(FollowSets000.FOLLOW_24);
             rule__CurlyBracketedClauseCS__Group_2_1__0__Impl();
 
             state._fsp--;
@@ -35410,17 +35495,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__0__Impl"
-    // InternalCompleteOCL.g:11844:1: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:11872:1: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11848:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:11849:1: ( ',' )
+            // InternalCompleteOCL.g:11876:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:11877:1: ( ',' )
             {
-            // InternalCompleteOCL.g:11849:1: ( ',' )
-            // InternalCompleteOCL.g:11850:1: ','
+            // InternalCompleteOCL.g:11877:1: ( ',' )
+            // InternalCompleteOCL.g:11878:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_1_0());
@@ -35451,14 +35536,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__1"
-    // InternalCompleteOCL.g:11863:1: rule__CurlyBracketedClauseCS__Group_2_1__1 : rule__CurlyBracketedClauseCS__Group_2_1__1__Impl ;
+    // InternalCompleteOCL.g:11891:1: rule__CurlyBracketedClauseCS__Group_2_1__1 : rule__CurlyBracketedClauseCS__Group_2_1__1__Impl ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11867:1: ( rule__CurlyBracketedClauseCS__Group_2_1__1__Impl )
-            // InternalCompleteOCL.g:11868:2: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl
+            // InternalCompleteOCL.g:11895:1: ( rule__CurlyBracketedClauseCS__Group_2_1__1__Impl )
+            // InternalCompleteOCL.g:11896:2: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__Group_2_1__1__Impl();
@@ -35484,23 +35569,23 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__1__Impl"
-    // InternalCompleteOCL.g:11874:1: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalCompleteOCL.g:11902:1: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11878:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalCompleteOCL.g:11879:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalCompleteOCL.g:11906:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalCompleteOCL.g:11907:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalCompleteOCL.g:11879:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalCompleteOCL.g:11880:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
+            // InternalCompleteOCL.g:11907:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalCompleteOCL.g:11908:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalCompleteOCL.g:11881:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
-            // InternalCompleteOCL.g:11881:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1
+            // InternalCompleteOCL.g:11909:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
+            // InternalCompleteOCL.g:11909:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1();
@@ -35535,14 +35620,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__0"
-    // InternalCompleteOCL.g:11895:1: rule__RoundBracketedClauseCS__Group__0 : rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 ;
+    // InternalCompleteOCL.g:11923:1: rule__RoundBracketedClauseCS__Group__0 : rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 ;
     public final void rule__RoundBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11899:1: ( rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 )
-            // InternalCompleteOCL.g:11900:2: rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1
+            // InternalCompleteOCL.g:11927:1: ( rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 )
+            // InternalCompleteOCL.g:11928:2: rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__RoundBracketedClauseCS__Group__0__Impl();
@@ -35573,23 +35658,23 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__0__Impl"
-    // InternalCompleteOCL.g:11907:1: rule__RoundBracketedClauseCS__Group__0__Impl : ( () ) ;
+    // InternalCompleteOCL.g:11935:1: rule__RoundBracketedClauseCS__Group__0__Impl : ( () ) ;
     public final void rule__RoundBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11911:1: ( ( () ) )
-            // InternalCompleteOCL.g:11912:1: ( () )
+            // InternalCompleteOCL.g:11939:1: ( ( () ) )
+            // InternalCompleteOCL.g:11940:1: ( () )
             {
-            // InternalCompleteOCL.g:11912:1: ( () )
-            // InternalCompleteOCL.g:11913:1: ()
+            // InternalCompleteOCL.g:11940:1: ( () )
+            // InternalCompleteOCL.g:11941:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0());
             }
-            // InternalCompleteOCL.g:11914:1: ()
-            // InternalCompleteOCL.g:11916:1:
+            // InternalCompleteOCL.g:11942:1: ()
+            // InternalCompleteOCL.g:11944:1:
             {
             }
 
@@ -35614,16 +35699,16 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__1"
-    // InternalCompleteOCL.g:11926:1: rule__RoundBracketedClauseCS__Group__1 : rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 ;
+    // InternalCompleteOCL.g:11954:1: rule__RoundBracketedClauseCS__Group__1 : rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 ;
     public final void rule__RoundBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11930:1: ( rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 )
-            // InternalCompleteOCL.g:11931:2: rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2
+            // InternalCompleteOCL.g:11958:1: ( rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 )
+            // InternalCompleteOCL.g:11959:2: rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_62);
+            pushFollow(FollowSets000.FOLLOW_61);
             rule__RoundBracketedClauseCS__Group__1__Impl();
 
             state._fsp--;
@@ -35652,17 +35737,17 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__1__Impl"
-    // InternalCompleteOCL.g:11938:1: rule__RoundBracketedClauseCS__Group__1__Impl : ( '(' ) ;
+    // InternalCompleteOCL.g:11966:1: rule__RoundBracketedClauseCS__Group__1__Impl : ( '(' ) ;
     public final void rule__RoundBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11942:1: ( ( '(' ) )
-            // InternalCompleteOCL.g:11943:1: ( '(' )
+            // InternalCompleteOCL.g:11970:1: ( ( '(' ) )
+            // InternalCompleteOCL.g:11971:1: ( '(' )
             {
-            // InternalCompleteOCL.g:11943:1: ( '(' )
-            // InternalCompleteOCL.g:11944:1: '('
+            // InternalCompleteOCL.g:11971:1: ( '(' )
+            // InternalCompleteOCL.g:11972:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
@@ -35693,16 +35778,16 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__2"
-    // InternalCompleteOCL.g:11957:1: rule__RoundBracketedClauseCS__Group__2 : rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 ;
+    // InternalCompleteOCL.g:11985:1: rule__RoundBracketedClauseCS__Group__2 : rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 ;
     public final void rule__RoundBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11961:1: ( rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 )
-            // InternalCompleteOCL.g:11962:2: rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3
+            // InternalCompleteOCL.g:11989:1: ( rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 )
+            // InternalCompleteOCL.g:11990:2: rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_62);
+            pushFollow(FollowSets000.FOLLOW_61);
             rule__RoundBracketedClauseCS__Group__2__Impl();
 
             state._fsp--;
@@ -35731,22 +35816,22 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__2__Impl"
-    // InternalCompleteOCL.g:11969:1: rule__RoundBracketedClauseCS__Group__2__Impl : ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) ;
+    // InternalCompleteOCL.g:11997:1: rule__RoundBracketedClauseCS__Group__2__Impl : ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) ;
     public final void rule__RoundBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11973:1: ( ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) )
-            // InternalCompleteOCL.g:11974:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:12001:1: ( ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) )
+            // InternalCompleteOCL.g:12002:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
             {
-            // InternalCompleteOCL.g:11974:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
-            // InternalCompleteOCL.g:11975:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
+            // InternalCompleteOCL.g:12002:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:12003:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2());
             }
-            // InternalCompleteOCL.g:11976:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
+            // InternalCompleteOCL.g:12004:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             int alt105=2;
             int LA105_0 = input.LA(1);
 
@@ -35755,7 +35840,7 @@
             }
             switch (alt105) {
                 case 1 :
-                    // InternalCompleteOCL.g:11976:2: rule__RoundBracketedClauseCS__Group_2__0
+                    // InternalCompleteOCL.g:12004:2: rule__RoundBracketedClauseCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__RoundBracketedClauseCS__Group_2__0();
@@ -35793,14 +35878,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__3"
-    // InternalCompleteOCL.g:11986:1: rule__RoundBracketedClauseCS__Group__3 : rule__RoundBracketedClauseCS__Group__3__Impl ;
+    // InternalCompleteOCL.g:12014:1: rule__RoundBracketedClauseCS__Group__3 : rule__RoundBracketedClauseCS__Group__3__Impl ;
     public final void rule__RoundBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:11990:1: ( rule__RoundBracketedClauseCS__Group__3__Impl )
-            // InternalCompleteOCL.g:11991:2: rule__RoundBracketedClauseCS__Group__3__Impl
+            // InternalCompleteOCL.g:12018:1: ( rule__RoundBracketedClauseCS__Group__3__Impl )
+            // InternalCompleteOCL.g:12019:2: rule__RoundBracketedClauseCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__Group__3__Impl();
@@ -35826,17 +35911,17 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__3__Impl"
-    // InternalCompleteOCL.g:11997:1: rule__RoundBracketedClauseCS__Group__3__Impl : ( ')' ) ;
+    // InternalCompleteOCL.g:12025:1: rule__RoundBracketedClauseCS__Group__3__Impl : ( ')' ) ;
     public final void rule__RoundBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12001:1: ( ( ')' ) )
-            // InternalCompleteOCL.g:12002:1: ( ')' )
+            // InternalCompleteOCL.g:12029:1: ( ( ')' ) )
+            // InternalCompleteOCL.g:12030:1: ( ')' )
             {
-            // InternalCompleteOCL.g:12002:1: ( ')' )
-            // InternalCompleteOCL.g:12003:1: ')'
+            // InternalCompleteOCL.g:12030:1: ( ')' )
+            // InternalCompleteOCL.g:12031:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
@@ -35867,16 +35952,16 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__0"
-    // InternalCompleteOCL.g:12024:1: rule__RoundBracketedClauseCS__Group_2__0 : rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 ;
+    // InternalCompleteOCL.g:12052:1: rule__RoundBracketedClauseCS__Group_2__0 : rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 ;
     public final void rule__RoundBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12028:1: ( rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 )
-            // InternalCompleteOCL.g:12029:2: rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1
+            // InternalCompleteOCL.g:12056:1: ( rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 )
+            // InternalCompleteOCL.g:12057:2: rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_63);
+            pushFollow(FollowSets000.FOLLOW_62);
             rule__RoundBracketedClauseCS__Group_2__0__Impl();
 
             state._fsp--;
@@ -35905,23 +35990,23 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__0__Impl"
-    // InternalCompleteOCL.g:12036:1: rule__RoundBracketedClauseCS__Group_2__0__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) ;
+    // InternalCompleteOCL.g:12064:1: rule__RoundBracketedClauseCS__Group_2__0__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) ;
     public final void rule__RoundBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12040:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) )
-            // InternalCompleteOCL.g:12041:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
+            // InternalCompleteOCL.g:12068:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) )
+            // InternalCompleteOCL.g:12069:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
             {
-            // InternalCompleteOCL.g:12041:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
-            // InternalCompleteOCL.g:12042:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
+            // InternalCompleteOCL.g:12069:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
+            // InternalCompleteOCL.g:12070:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0());
             }
-            // InternalCompleteOCL.g:12043:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
-            // InternalCompleteOCL.g:12043:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0
+            // InternalCompleteOCL.g:12071:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
+            // InternalCompleteOCL.g:12071:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0();
@@ -35956,14 +36041,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__1"
-    // InternalCompleteOCL.g:12053:1: rule__RoundBracketedClauseCS__Group_2__1 : rule__RoundBracketedClauseCS__Group_2__1__Impl ;
+    // InternalCompleteOCL.g:12081:1: rule__RoundBracketedClauseCS__Group_2__1 : rule__RoundBracketedClauseCS__Group_2__1__Impl ;
     public final void rule__RoundBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12057:1: ( rule__RoundBracketedClauseCS__Group_2__1__Impl )
-            // InternalCompleteOCL.g:12058:2: rule__RoundBracketedClauseCS__Group_2__1__Impl
+            // InternalCompleteOCL.g:12085:1: ( rule__RoundBracketedClauseCS__Group_2__1__Impl )
+            // InternalCompleteOCL.g:12086:2: rule__RoundBracketedClauseCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__Group_2__1__Impl();
@@ -35989,22 +36074,22 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__1__Impl"
-    // InternalCompleteOCL.g:12064:1: rule__RoundBracketedClauseCS__Group_2__1__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) ;
+    // InternalCompleteOCL.g:12092:1: rule__RoundBracketedClauseCS__Group_2__1__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) ;
     public final void rule__RoundBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12068:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) )
-            // InternalCompleteOCL.g:12069:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
+            // InternalCompleteOCL.g:12096:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) )
+            // InternalCompleteOCL.g:12097:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
             {
-            // InternalCompleteOCL.g:12069:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
-            // InternalCompleteOCL.g:12070:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
+            // InternalCompleteOCL.g:12097:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
+            // InternalCompleteOCL.g:12098:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1());
             }
-            // InternalCompleteOCL.g:12071:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
+            // InternalCompleteOCL.g:12099:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             loop106:
             do {
                 int alt106=2;
@@ -36017,9 +36102,9 @@
 
                 switch (alt106) {
             	case 1 :
-            	    // InternalCompleteOCL.g:12071:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1
+            	    // InternalCompleteOCL.g:12099:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_64);
+            	    pushFollow(FollowSets000.FOLLOW_63);
             	    rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1();
 
             	    state._fsp--;
@@ -36058,14 +36143,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__0"
-    // InternalCompleteOCL.g:12085:1: rule__SquareBracketedClauseCS__Group__0 : rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 ;
+    // InternalCompleteOCL.g:12113:1: rule__SquareBracketedClauseCS__Group__0 : rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 ;
     public final void rule__SquareBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12089:1: ( rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 )
-            // InternalCompleteOCL.g:12090:2: rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1
+            // InternalCompleteOCL.g:12117:1: ( rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 )
+            // InternalCompleteOCL.g:12118:2: rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__SquareBracketedClauseCS__Group__0__Impl();
@@ -36096,17 +36181,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__0__Impl"
-    // InternalCompleteOCL.g:12097:1: rule__SquareBracketedClauseCS__Group__0__Impl : ( '[' ) ;
+    // InternalCompleteOCL.g:12125:1: rule__SquareBracketedClauseCS__Group__0__Impl : ( '[' ) ;
     public final void rule__SquareBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12101:1: ( ( '[' ) )
-            // InternalCompleteOCL.g:12102:1: ( '[' )
+            // InternalCompleteOCL.g:12129:1: ( ( '[' ) )
+            // InternalCompleteOCL.g:12130:1: ( '[' )
             {
-            // InternalCompleteOCL.g:12102:1: ( '[' )
-            // InternalCompleteOCL.g:12103:1: '['
+            // InternalCompleteOCL.g:12130:1: ( '[' )
+            // InternalCompleteOCL.g:12131:1: '['
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
@@ -36137,16 +36222,16 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__1"
-    // InternalCompleteOCL.g:12116:1: rule__SquareBracketedClauseCS__Group__1 : rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 ;
+    // InternalCompleteOCL.g:12144:1: rule__SquareBracketedClauseCS__Group__1 : rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 ;
     public final void rule__SquareBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12120:1: ( rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 )
-            // InternalCompleteOCL.g:12121:2: rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2
+            // InternalCompleteOCL.g:12148:1: ( rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 )
+            // InternalCompleteOCL.g:12149:2: rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_65);
+            pushFollow(FollowSets000.FOLLOW_64);
             rule__SquareBracketedClauseCS__Group__1__Impl();
 
             state._fsp--;
@@ -36175,23 +36260,23 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__1__Impl"
-    // InternalCompleteOCL.g:12128:1: rule__SquareBracketedClauseCS__Group__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) ;
+    // InternalCompleteOCL.g:12156:1: rule__SquareBracketedClauseCS__Group__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) ;
     public final void rule__SquareBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12132:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) )
-            // InternalCompleteOCL.g:12133:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
+            // InternalCompleteOCL.g:12160:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) )
+            // InternalCompleteOCL.g:12161:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
             {
-            // InternalCompleteOCL.g:12133:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
-            // InternalCompleteOCL.g:12134:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
+            // InternalCompleteOCL.g:12161:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
+            // InternalCompleteOCL.g:12162:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1());
             }
-            // InternalCompleteOCL.g:12135:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
-            // InternalCompleteOCL.g:12135:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1
+            // InternalCompleteOCL.g:12163:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
+            // InternalCompleteOCL.g:12163:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__OwnedTermsAssignment_1();
@@ -36226,16 +36311,16 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__2"
-    // InternalCompleteOCL.g:12145:1: rule__SquareBracketedClauseCS__Group__2 : rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 ;
+    // InternalCompleteOCL.g:12173:1: rule__SquareBracketedClauseCS__Group__2 : rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 ;
     public final void rule__SquareBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12149:1: ( rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 )
-            // InternalCompleteOCL.g:12150:2: rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3
+            // InternalCompleteOCL.g:12177:1: ( rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 )
+            // InternalCompleteOCL.g:12178:2: rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_65);
+            pushFollow(FollowSets000.FOLLOW_64);
             rule__SquareBracketedClauseCS__Group__2__Impl();
 
             state._fsp--;
@@ -36264,22 +36349,22 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__2__Impl"
-    // InternalCompleteOCL.g:12157:1: rule__SquareBracketedClauseCS__Group__2__Impl : ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) ;
+    // InternalCompleteOCL.g:12185:1: rule__SquareBracketedClauseCS__Group__2__Impl : ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) ;
     public final void rule__SquareBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12161:1: ( ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) )
-            // InternalCompleteOCL.g:12162:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
+            // InternalCompleteOCL.g:12189:1: ( ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) )
+            // InternalCompleteOCL.g:12190:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
             {
-            // InternalCompleteOCL.g:12162:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
-            // InternalCompleteOCL.g:12163:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
+            // InternalCompleteOCL.g:12190:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
+            // InternalCompleteOCL.g:12191:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2());
             }
-            // InternalCompleteOCL.g:12164:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
+            // InternalCompleteOCL.g:12192:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             loop107:
             do {
                 int alt107=2;
@@ -36292,9 +36377,9 @@
 
                 switch (alt107) {
             	case 1 :
-            	    // InternalCompleteOCL.g:12164:2: rule__SquareBracketedClauseCS__Group_2__0
+            	    // InternalCompleteOCL.g:12192:2: rule__SquareBracketedClauseCS__Group_2__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__SquareBracketedClauseCS__Group_2__0();
 
             	    state._fsp--;
@@ -36333,14 +36418,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__3"
-    // InternalCompleteOCL.g:12174:1: rule__SquareBracketedClauseCS__Group__3 : rule__SquareBracketedClauseCS__Group__3__Impl ;
+    // InternalCompleteOCL.g:12202:1: rule__SquareBracketedClauseCS__Group__3 : rule__SquareBracketedClauseCS__Group__3__Impl ;
     public final void rule__SquareBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12178:1: ( rule__SquareBracketedClauseCS__Group__3__Impl )
-            // InternalCompleteOCL.g:12179:2: rule__SquareBracketedClauseCS__Group__3__Impl
+            // InternalCompleteOCL.g:12206:1: ( rule__SquareBracketedClauseCS__Group__3__Impl )
+            // InternalCompleteOCL.g:12207:2: rule__SquareBracketedClauseCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__Group__3__Impl();
@@ -36366,17 +36451,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__3__Impl"
-    // InternalCompleteOCL.g:12185:1: rule__SquareBracketedClauseCS__Group__3__Impl : ( ']' ) ;
+    // InternalCompleteOCL.g:12213:1: rule__SquareBracketedClauseCS__Group__3__Impl : ( ']' ) ;
     public final void rule__SquareBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12189:1: ( ( ']' ) )
-            // InternalCompleteOCL.g:12190:1: ( ']' )
+            // InternalCompleteOCL.g:12217:1: ( ( ']' ) )
+            // InternalCompleteOCL.g:12218:1: ( ']' )
             {
-            // InternalCompleteOCL.g:12190:1: ( ']' )
-            // InternalCompleteOCL.g:12191:1: ']'
+            // InternalCompleteOCL.g:12218:1: ( ']' )
+            // InternalCompleteOCL.g:12219:1: ']'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
@@ -36407,14 +36492,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__0"
-    // InternalCompleteOCL.g:12212:1: rule__SquareBracketedClauseCS__Group_2__0 : rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 ;
+    // InternalCompleteOCL.g:12240:1: rule__SquareBracketedClauseCS__Group_2__0 : rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 ;
     public final void rule__SquareBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12216:1: ( rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 )
-            // InternalCompleteOCL.g:12217:2: rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1
+            // InternalCompleteOCL.g:12244:1: ( rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 )
+            // InternalCompleteOCL.g:12245:2: rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__SquareBracketedClauseCS__Group_2__0__Impl();
@@ -36445,17 +36530,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__0__Impl"
-    // InternalCompleteOCL.g:12224:1: rule__SquareBracketedClauseCS__Group_2__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:12252:1: rule__SquareBracketedClauseCS__Group_2__0__Impl : ( ',' ) ;
     public final void rule__SquareBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12228:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:12229:1: ( ',' )
+            // InternalCompleteOCL.g:12256:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:12257:1: ( ',' )
             {
-            // InternalCompleteOCL.g:12229:1: ( ',' )
-            // InternalCompleteOCL.g:12230:1: ','
+            // InternalCompleteOCL.g:12257:1: ( ',' )
+            // InternalCompleteOCL.g:12258:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
@@ -36486,14 +36571,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__1"
-    // InternalCompleteOCL.g:12243:1: rule__SquareBracketedClauseCS__Group_2__1 : rule__SquareBracketedClauseCS__Group_2__1__Impl ;
+    // InternalCompleteOCL.g:12271:1: rule__SquareBracketedClauseCS__Group_2__1 : rule__SquareBracketedClauseCS__Group_2__1__Impl ;
     public final void rule__SquareBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12247:1: ( rule__SquareBracketedClauseCS__Group_2__1__Impl )
-            // InternalCompleteOCL.g:12248:2: rule__SquareBracketedClauseCS__Group_2__1__Impl
+            // InternalCompleteOCL.g:12275:1: ( rule__SquareBracketedClauseCS__Group_2__1__Impl )
+            // InternalCompleteOCL.g:12276:2: rule__SquareBracketedClauseCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__Group_2__1__Impl();
@@ -36519,23 +36604,23 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__1__Impl"
-    // InternalCompleteOCL.g:12254:1: rule__SquareBracketedClauseCS__Group_2__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) ;
+    // InternalCompleteOCL.g:12282:1: rule__SquareBracketedClauseCS__Group_2__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) ;
     public final void rule__SquareBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12258:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) )
-            // InternalCompleteOCL.g:12259:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
+            // InternalCompleteOCL.g:12286:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) )
+            // InternalCompleteOCL.g:12287:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
             {
-            // InternalCompleteOCL.g:12259:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
-            // InternalCompleteOCL.g:12260:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
+            // InternalCompleteOCL.g:12287:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
+            // InternalCompleteOCL.g:12288:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1());
             }
-            // InternalCompleteOCL.g:12261:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
-            // InternalCompleteOCL.g:12261:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1
+            // InternalCompleteOCL.g:12289:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
+            // InternalCompleteOCL.g:12289:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1();
@@ -36570,16 +36655,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__0"
-    // InternalCompleteOCL.g:12275:1: rule__NavigatingArgCS__Group_0__0 : rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 ;
+    // InternalCompleteOCL.g:12303:1: rule__NavigatingArgCS__Group_0__0 : rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 ;
     public final void rule__NavigatingArgCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12279:1: ( rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 )
-            // InternalCompleteOCL.g:12280:2: rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1
+            // InternalCompleteOCL.g:12307:1: ( rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 )
+            // InternalCompleteOCL.g:12308:2: rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1
             {
-            pushFollow(FollowSets000.FOLLOW_66);
+            pushFollow(FollowSets000.FOLLOW_65);
             rule__NavigatingArgCS__Group_0__0__Impl();
 
             state._fsp--;
@@ -36608,23 +36693,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__0__Impl"
-    // InternalCompleteOCL.g:12287:1: rule__NavigatingArgCS__Group_0__0__Impl : ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) ;
+    // InternalCompleteOCL.g:12315:1: rule__NavigatingArgCS__Group_0__0__Impl : ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) ;
     public final void rule__NavigatingArgCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12291:1: ( ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) )
-            // InternalCompleteOCL.g:12292:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
+            // InternalCompleteOCL.g:12319:1: ( ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) )
+            // InternalCompleteOCL.g:12320:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
             {
-            // InternalCompleteOCL.g:12292:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
-            // InternalCompleteOCL.g:12293:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
+            // InternalCompleteOCL.g:12320:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
+            // InternalCompleteOCL.g:12321:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0());
             }
-            // InternalCompleteOCL.g:12294:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
-            // InternalCompleteOCL.g:12294:2: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0
+            // InternalCompleteOCL.g:12322:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
+            // InternalCompleteOCL.g:12322:2: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0();
@@ -36659,14 +36744,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__1"
-    // InternalCompleteOCL.g:12304:1: rule__NavigatingArgCS__Group_0__1 : rule__NavigatingArgCS__Group_0__1__Impl ;
+    // InternalCompleteOCL.g:12332:1: rule__NavigatingArgCS__Group_0__1 : rule__NavigatingArgCS__Group_0__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12308:1: ( rule__NavigatingArgCS__Group_0__1__Impl )
-            // InternalCompleteOCL.g:12309:2: rule__NavigatingArgCS__Group_0__1__Impl
+            // InternalCompleteOCL.g:12336:1: ( rule__NavigatingArgCS__Group_0__1__Impl )
+            // InternalCompleteOCL.g:12337:2: rule__NavigatingArgCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0__1__Impl();
@@ -36692,22 +36777,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__1__Impl"
-    // InternalCompleteOCL.g:12315:1: rule__NavigatingArgCS__Group_0__1__Impl : ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) ;
+    // InternalCompleteOCL.g:12343:1: rule__NavigatingArgCS__Group_0__1__Impl : ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) ;
     public final void rule__NavigatingArgCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12319:1: ( ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) )
-            // InternalCompleteOCL.g:12320:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
+            // InternalCompleteOCL.g:12347:1: ( ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) )
+            // InternalCompleteOCL.g:12348:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
             {
-            // InternalCompleteOCL.g:12320:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
-            // InternalCompleteOCL.g:12321:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
+            // InternalCompleteOCL.g:12348:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
+            // InternalCompleteOCL.g:12349:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1());
             }
-            // InternalCompleteOCL.g:12322:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
+            // InternalCompleteOCL.g:12350:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             int alt108=2;
             int LA108_0 = input.LA(1);
 
@@ -36716,7 +36801,7 @@
             }
             switch (alt108) {
                 case 1 :
-                    // InternalCompleteOCL.g:12322:2: rule__NavigatingArgCS__Alternatives_0_1
+                    // InternalCompleteOCL.g:12350:2: rule__NavigatingArgCS__Alternatives_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Alternatives_0_1();
@@ -36754,16 +36839,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__0"
-    // InternalCompleteOCL.g:12336:1: rule__NavigatingArgCS__Group_0_1_0__0 : rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 ;
+    // InternalCompleteOCL.g:12364:1: rule__NavigatingArgCS__Group_0_1_0__0 : rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12340:1: ( rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 )
-            // InternalCompleteOCL.g:12341:2: rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1
+            // InternalCompleteOCL.g:12368:1: ( rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 )
+            // InternalCompleteOCL.g:12369:2: rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__NavigatingArgCS__Group_0_1_0__0__Impl();
 
             state._fsp--;
@@ -36792,17 +36877,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__0__Impl"
-    // InternalCompleteOCL.g:12348:1: rule__NavigatingArgCS__Group_0_1_0__0__Impl : ( '<-' ) ;
+    // InternalCompleteOCL.g:12376:1: rule__NavigatingArgCS__Group_0_1_0__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12352:1: ( ( '<-' ) )
-            // InternalCompleteOCL.g:12353:1: ( '<-' )
+            // InternalCompleteOCL.g:12380:1: ( ( '<-' ) )
+            // InternalCompleteOCL.g:12381:1: ( '<-' )
             {
-            // InternalCompleteOCL.g:12353:1: ( '<-' )
-            // InternalCompleteOCL.g:12354:1: '<-'
+            // InternalCompleteOCL.g:12381:1: ( '<-' )
+            // InternalCompleteOCL.g:12382:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_0_0());
@@ -36833,16 +36918,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__1"
-    // InternalCompleteOCL.g:12367:1: rule__NavigatingArgCS__Group_0_1_0__1 : rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 ;
+    // InternalCompleteOCL.g:12395:1: rule__NavigatingArgCS__Group_0_1_0__1 : rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 ;
     public final void rule__NavigatingArgCS__Group_0_1_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12371:1: ( rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 )
-            // InternalCompleteOCL.g:12372:2: rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2
+            // InternalCompleteOCL.g:12399:1: ( rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 )
+            // InternalCompleteOCL.g:12400:2: rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2
             {
-            pushFollow(FollowSets000.FOLLOW_22);
+            pushFollow(FollowSets000.FOLLOW_23);
             rule__NavigatingArgCS__Group_0_1_0__1__Impl();
 
             state._fsp--;
@@ -36871,23 +36956,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__1__Impl"
-    // InternalCompleteOCL.g:12379:1: rule__NavigatingArgCS__Group_0_1_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) ;
+    // InternalCompleteOCL.g:12407:1: rule__NavigatingArgCS__Group_0_1_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12383:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) )
-            // InternalCompleteOCL.g:12384:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
+            // InternalCompleteOCL.g:12411:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) )
+            // InternalCompleteOCL.g:12412:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
             {
-            // InternalCompleteOCL.g:12384:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
-            // InternalCompleteOCL.g:12385:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
+            // InternalCompleteOCL.g:12412:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
+            // InternalCompleteOCL.g:12413:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorAssignment_0_1_0_1());
             }
-            // InternalCompleteOCL.g:12386:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
-            // InternalCompleteOCL.g:12386:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1
+            // InternalCompleteOCL.g:12414:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
+            // InternalCompleteOCL.g:12414:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1();
@@ -36922,14 +37007,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__2"
-    // InternalCompleteOCL.g:12396:1: rule__NavigatingArgCS__Group_0_1_0__2 : rule__NavigatingArgCS__Group_0_1_0__2__Impl ;
+    // InternalCompleteOCL.g:12424:1: rule__NavigatingArgCS__Group_0_1_0__2 : rule__NavigatingArgCS__Group_0_1_0__2__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12400:1: ( rule__NavigatingArgCS__Group_0_1_0__2__Impl )
-            // InternalCompleteOCL.g:12401:2: rule__NavigatingArgCS__Group_0_1_0__2__Impl
+            // InternalCompleteOCL.g:12428:1: ( rule__NavigatingArgCS__Group_0_1_0__2__Impl )
+            // InternalCompleteOCL.g:12429:2: rule__NavigatingArgCS__Group_0_1_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_0__2__Impl();
@@ -36955,22 +37040,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__2__Impl"
-    // InternalCompleteOCL.g:12407:1: rule__NavigatingArgCS__Group_0_1_0__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) ;
+    // InternalCompleteOCL.g:12435:1: rule__NavigatingArgCS__Group_0_1_0__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12411:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) )
-            // InternalCompleteOCL.g:12412:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
+            // InternalCompleteOCL.g:12439:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) )
+            // InternalCompleteOCL.g:12440:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
             {
-            // InternalCompleteOCL.g:12412:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
-            // InternalCompleteOCL.g:12413:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
+            // InternalCompleteOCL.g:12440:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
+            // InternalCompleteOCL.g:12441:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2());
             }
-            // InternalCompleteOCL.g:12414:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
+            // InternalCompleteOCL.g:12442:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             int alt109=2;
             int LA109_0 = input.LA(1);
 
@@ -36979,7 +37064,7 @@
             }
             switch (alt109) {
                 case 1 :
-                    // InternalCompleteOCL.g:12414:2: rule__NavigatingArgCS__Group_0_1_0_2__0
+                    // InternalCompleteOCL.g:12442:2: rule__NavigatingArgCS__Group_0_1_0_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_0_2__0();
@@ -37017,14 +37102,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__0"
-    // InternalCompleteOCL.g:12430:1: rule__NavigatingArgCS__Group_0_1_0_2__0 : rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 ;
+    // InternalCompleteOCL.g:12458:1: rule__NavigatingArgCS__Group_0_1_0_2__0 : rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12434:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 )
-            // InternalCompleteOCL.g:12435:2: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1
+            // InternalCompleteOCL.g:12462:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 )
+            // InternalCompleteOCL.g:12463:2: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NavigatingArgCS__Group_0_1_0_2__0__Impl();
@@ -37055,17 +37140,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__0__Impl"
-    // InternalCompleteOCL.g:12442:1: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl : ( '=' ) ;
+    // InternalCompleteOCL.g:12470:1: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12446:1: ( ( '=' ) )
-            // InternalCompleteOCL.g:12447:1: ( '=' )
+            // InternalCompleteOCL.g:12474:1: ( ( '=' ) )
+            // InternalCompleteOCL.g:12475:1: ( '=' )
             {
-            // InternalCompleteOCL.g:12447:1: ( '=' )
-            // InternalCompleteOCL.g:12448:1: '='
+            // InternalCompleteOCL.g:12475:1: ( '=' )
+            // InternalCompleteOCL.g:12476:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
@@ -37096,14 +37181,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__1"
-    // InternalCompleteOCL.g:12461:1: rule__NavigatingArgCS__Group_0_1_0_2__1 : rule__NavigatingArgCS__Group_0_1_0_2__1__Impl ;
+    // InternalCompleteOCL.g:12489:1: rule__NavigatingArgCS__Group_0_1_0_2__1 : rule__NavigatingArgCS__Group_0_1_0_2__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12465:1: ( rule__NavigatingArgCS__Group_0_1_0_2__1__Impl )
-            // InternalCompleteOCL.g:12466:2: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl
+            // InternalCompleteOCL.g:12493:1: ( rule__NavigatingArgCS__Group_0_1_0_2__1__Impl )
+            // InternalCompleteOCL.g:12494:2: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_0_2__1__Impl();
@@ -37129,23 +37214,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__1__Impl"
-    // InternalCompleteOCL.g:12472:1: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) ;
+    // InternalCompleteOCL.g:12500:1: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12476:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) )
-            // InternalCompleteOCL.g:12477:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
+            // InternalCompleteOCL.g:12504:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) )
+            // InternalCompleteOCL.g:12505:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
             {
-            // InternalCompleteOCL.g:12477:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
-            // InternalCompleteOCL.g:12478:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
+            // InternalCompleteOCL.g:12505:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
+            // InternalCompleteOCL.g:12506:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1());
             }
-            // InternalCompleteOCL.g:12479:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
-            // InternalCompleteOCL.g:12479:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1
+            // InternalCompleteOCL.g:12507:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
+            // InternalCompleteOCL.g:12507:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1();
@@ -37180,16 +37265,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__0"
-    // InternalCompleteOCL.g:12493:1: rule__NavigatingArgCS__Group_0_1_1__0 : rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 ;
+    // InternalCompleteOCL.g:12521:1: rule__NavigatingArgCS__Group_0_1_1__0 : rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12497:1: ( rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 )
-            // InternalCompleteOCL.g:12498:2: rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1
+            // InternalCompleteOCL.g:12525:1: ( rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 )
+            // InternalCompleteOCL.g:12526:2: rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__NavigatingArgCS__Group_0_1_1__0__Impl();
 
             state._fsp--;
@@ -37218,17 +37303,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__0__Impl"
-    // InternalCompleteOCL.g:12505:1: rule__NavigatingArgCS__Group_0_1_1__0__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:12533:1: rule__NavigatingArgCS__Group_0_1_1__0__Impl : ( ':' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12509:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:12510:1: ( ':' )
+            // InternalCompleteOCL.g:12537:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:12538:1: ( ':' )
             {
-            // InternalCompleteOCL.g:12510:1: ( ':' )
-            // InternalCompleteOCL.g:12511:1: ':'
+            // InternalCompleteOCL.g:12538:1: ( ':' )
+            // InternalCompleteOCL.g:12539:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_1_0());
@@ -37259,16 +37344,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__1"
-    // InternalCompleteOCL.g:12524:1: rule__NavigatingArgCS__Group_0_1_1__1 : rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 ;
+    // InternalCompleteOCL.g:12552:1: rule__NavigatingArgCS__Group_0_1_1__1 : rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 ;
     public final void rule__NavigatingArgCS__Group_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12528:1: ( rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 )
-            // InternalCompleteOCL.g:12529:2: rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2
+            // InternalCompleteOCL.g:12556:1: ( rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 )
+            // InternalCompleteOCL.g:12557:2: rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2
             {
-            pushFollow(FollowSets000.FOLLOW_67);
+            pushFollow(FollowSets000.FOLLOW_66);
             rule__NavigatingArgCS__Group_0_1_1__1__Impl();
 
             state._fsp--;
@@ -37297,23 +37382,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__1__Impl"
-    // InternalCompleteOCL.g:12536:1: rule__NavigatingArgCS__Group_0_1_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) ;
+    // InternalCompleteOCL.g:12564:1: rule__NavigatingArgCS__Group_0_1_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12540:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) )
-            // InternalCompleteOCL.g:12541:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
+            // InternalCompleteOCL.g:12568:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) )
+            // InternalCompleteOCL.g:12569:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
             {
-            // InternalCompleteOCL.g:12541:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
-            // InternalCompleteOCL.g:12542:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
+            // InternalCompleteOCL.g:12569:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
+            // InternalCompleteOCL.g:12570:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_1_1());
             }
-            // InternalCompleteOCL.g:12543:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
-            // InternalCompleteOCL.g:12543:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1
+            // InternalCompleteOCL.g:12571:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
+            // InternalCompleteOCL.g:12571:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1();
@@ -37348,16 +37433,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__2"
-    // InternalCompleteOCL.g:12553:1: rule__NavigatingArgCS__Group_0_1_1__2 : rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 ;
+    // InternalCompleteOCL.g:12581:1: rule__NavigatingArgCS__Group_0_1_1__2 : rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 ;
     public final void rule__NavigatingArgCS__Group_0_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12557:1: ( rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 )
-            // InternalCompleteOCL.g:12558:2: rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3
+            // InternalCompleteOCL.g:12585:1: ( rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 )
+            // InternalCompleteOCL.g:12586:2: rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3
             {
-            pushFollow(FollowSets000.FOLLOW_67);
+            pushFollow(FollowSets000.FOLLOW_66);
             rule__NavigatingArgCS__Group_0_1_1__2__Impl();
 
             state._fsp--;
@@ -37386,22 +37471,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__2__Impl"
-    // InternalCompleteOCL.g:12565:1: rule__NavigatingArgCS__Group_0_1_1__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) ;
+    // InternalCompleteOCL.g:12593:1: rule__NavigatingArgCS__Group_0_1_1__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12569:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) )
-            // InternalCompleteOCL.g:12570:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
+            // InternalCompleteOCL.g:12597:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) )
+            // InternalCompleteOCL.g:12598:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
             {
-            // InternalCompleteOCL.g:12570:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
-            // InternalCompleteOCL.g:12571:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
+            // InternalCompleteOCL.g:12598:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
+            // InternalCompleteOCL.g:12599:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1_2());
             }
-            // InternalCompleteOCL.g:12572:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
+            // InternalCompleteOCL.g:12600:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
             int alt110=2;
             int LA110_0 = input.LA(1);
 
@@ -37410,7 +37495,7 @@
             }
             switch (alt110) {
                 case 1 :
-                    // InternalCompleteOCL.g:12572:2: rule__NavigatingArgCS__Group_0_1_1_2__0
+                    // InternalCompleteOCL.g:12600:2: rule__NavigatingArgCS__Group_0_1_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_1_2__0();
@@ -37448,14 +37533,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__3"
-    // InternalCompleteOCL.g:12582:1: rule__NavigatingArgCS__Group_0_1_1__3 : rule__NavigatingArgCS__Group_0_1_1__3__Impl ;
+    // InternalCompleteOCL.g:12610:1: rule__NavigatingArgCS__Group_0_1_1__3 : rule__NavigatingArgCS__Group_0_1_1__3__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12586:1: ( rule__NavigatingArgCS__Group_0_1_1__3__Impl )
-            // InternalCompleteOCL.g:12587:2: rule__NavigatingArgCS__Group_0_1_1__3__Impl
+            // InternalCompleteOCL.g:12614:1: ( rule__NavigatingArgCS__Group_0_1_1__3__Impl )
+            // InternalCompleteOCL.g:12615:2: rule__NavigatingArgCS__Group_0_1_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_1__3__Impl();
@@ -37481,22 +37566,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__3__Impl"
-    // InternalCompleteOCL.g:12593:1: rule__NavigatingArgCS__Group_0_1_1__3__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) ;
+    // InternalCompleteOCL.g:12621:1: rule__NavigatingArgCS__Group_0_1_1__3__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12597:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) )
-            // InternalCompleteOCL.g:12598:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
+            // InternalCompleteOCL.g:12625:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) )
+            // InternalCompleteOCL.g:12626:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
             {
-            // InternalCompleteOCL.g:12598:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
-            // InternalCompleteOCL.g:12599:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
+            // InternalCompleteOCL.g:12626:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
+            // InternalCompleteOCL.g:12627:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1_3());
             }
-            // InternalCompleteOCL.g:12600:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
+            // InternalCompleteOCL.g:12628:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
             int alt111=2;
             int LA111_0 = input.LA(1);
 
@@ -37505,7 +37590,7 @@
             }
             switch (alt111) {
                 case 1 :
-                    // InternalCompleteOCL.g:12600:2: rule__NavigatingArgCS__Group_0_1_1_3__0
+                    // InternalCompleteOCL.g:12628:2: rule__NavigatingArgCS__Group_0_1_1_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_1_3__0();
@@ -37543,16 +37628,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__0"
-    // InternalCompleteOCL.g:12618:1: rule__NavigatingArgCS__Group_0_1_1_2__0 : rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 ;
+    // InternalCompleteOCL.g:12646:1: rule__NavigatingArgCS__Group_0_1_1_2__0 : rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12622:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 )
-            // InternalCompleteOCL.g:12623:2: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1
+            // InternalCompleteOCL.g:12650:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 )
+            // InternalCompleteOCL.g:12651:2: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__NavigatingArgCS__Group_0_1_1_2__0__Impl();
 
             state._fsp--;
@@ -37581,17 +37666,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__0__Impl"
-    // InternalCompleteOCL.g:12630:1: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl : ( '<-' ) ;
+    // InternalCompleteOCL.g:12658:1: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12634:1: ( ( '<-' ) )
-            // InternalCompleteOCL.g:12635:1: ( '<-' )
+            // InternalCompleteOCL.g:12662:1: ( ( '<-' ) )
+            // InternalCompleteOCL.g:12663:1: ( '<-' )
             {
-            // InternalCompleteOCL.g:12635:1: ( '<-' )
-            // InternalCompleteOCL.g:12636:1: '<-'
+            // InternalCompleteOCL.g:12663:1: ( '<-' )
+            // InternalCompleteOCL.g:12664:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_1_2_0());
@@ -37622,14 +37707,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__1"
-    // InternalCompleteOCL.g:12649:1: rule__NavigatingArgCS__Group_0_1_1_2__1 : rule__NavigatingArgCS__Group_0_1_1_2__1__Impl ;
+    // InternalCompleteOCL.g:12677:1: rule__NavigatingArgCS__Group_0_1_1_2__1 : rule__NavigatingArgCS__Group_0_1_1_2__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12653:1: ( rule__NavigatingArgCS__Group_0_1_1_2__1__Impl )
-            // InternalCompleteOCL.g:12654:2: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl
+            // InternalCompleteOCL.g:12681:1: ( rule__NavigatingArgCS__Group_0_1_1_2__1__Impl )
+            // InternalCompleteOCL.g:12682:2: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_1_2__1__Impl();
@@ -37655,23 +37740,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__1__Impl"
-    // InternalCompleteOCL.g:12660:1: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) ;
+    // InternalCompleteOCL.g:12688:1: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12664:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) )
-            // InternalCompleteOCL.g:12665:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
+            // InternalCompleteOCL.g:12692:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) )
+            // InternalCompleteOCL.g:12693:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
             {
-            // InternalCompleteOCL.g:12665:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
-            // InternalCompleteOCL.g:12666:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
+            // InternalCompleteOCL.g:12693:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
+            // InternalCompleteOCL.g:12694:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorAssignment_0_1_1_2_1());
             }
-            // InternalCompleteOCL.g:12667:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
-            // InternalCompleteOCL.g:12667:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1
+            // InternalCompleteOCL.g:12695:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
+            // InternalCompleteOCL.g:12695:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1();
@@ -37706,14 +37791,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__0"
-    // InternalCompleteOCL.g:12681:1: rule__NavigatingArgCS__Group_0_1_1_3__0 : rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 ;
+    // InternalCompleteOCL.g:12709:1: rule__NavigatingArgCS__Group_0_1_1_3__0 : rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12685:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 )
-            // InternalCompleteOCL.g:12686:2: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1
+            // InternalCompleteOCL.g:12713:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 )
+            // InternalCompleteOCL.g:12714:2: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NavigatingArgCS__Group_0_1_1_3__0__Impl();
@@ -37744,17 +37829,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__0__Impl"
-    // InternalCompleteOCL.g:12693:1: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl : ( '=' ) ;
+    // InternalCompleteOCL.g:12721:1: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl : ( '=' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12697:1: ( ( '=' ) )
-            // InternalCompleteOCL.g:12698:1: ( '=' )
+            // InternalCompleteOCL.g:12725:1: ( ( '=' ) )
+            // InternalCompleteOCL.g:12726:1: ( '=' )
             {
-            // InternalCompleteOCL.g:12698:1: ( '=' )
-            // InternalCompleteOCL.g:12699:1: '='
+            // InternalCompleteOCL.g:12726:1: ( '=' )
+            // InternalCompleteOCL.g:12727:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_1_3_0());
@@ -37785,14 +37870,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__1"
-    // InternalCompleteOCL.g:12712:1: rule__NavigatingArgCS__Group_0_1_1_3__1 : rule__NavigatingArgCS__Group_0_1_1_3__1__Impl ;
+    // InternalCompleteOCL.g:12740:1: rule__NavigatingArgCS__Group_0_1_1_3__1 : rule__NavigatingArgCS__Group_0_1_1_3__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12716:1: ( rule__NavigatingArgCS__Group_0_1_1_3__1__Impl )
-            // InternalCompleteOCL.g:12717:2: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl
+            // InternalCompleteOCL.g:12744:1: ( rule__NavigatingArgCS__Group_0_1_1_3__1__Impl )
+            // InternalCompleteOCL.g:12745:2: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_1_3__1__Impl();
@@ -37818,23 +37903,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__1__Impl"
-    // InternalCompleteOCL.g:12723:1: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) ;
+    // InternalCompleteOCL.g:12751:1: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12727:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) )
-            // InternalCompleteOCL.g:12728:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
+            // InternalCompleteOCL.g:12755:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) )
+            // InternalCompleteOCL.g:12756:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
             {
-            // InternalCompleteOCL.g:12728:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
-            // InternalCompleteOCL.g:12729:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
+            // InternalCompleteOCL.g:12756:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
+            // InternalCompleteOCL.g:12757:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_3_1());
             }
-            // InternalCompleteOCL.g:12730:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
-            // InternalCompleteOCL.g:12730:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1
+            // InternalCompleteOCL.g:12758:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
+            // InternalCompleteOCL.g:12758:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1();
@@ -37869,16 +37954,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__0"
-    // InternalCompleteOCL.g:12744:1: rule__NavigatingArgCS__Group_0_1_2__0 : rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 ;
+    // InternalCompleteOCL.g:12772:1: rule__NavigatingArgCS__Group_0_1_2__0 : rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12748:1: ( rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 )
-            // InternalCompleteOCL.g:12749:2: rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1
+            // InternalCompleteOCL.g:12776:1: ( rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 )
+            // InternalCompleteOCL.g:12777:2: rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_66);
+            pushFollow(FollowSets000.FOLLOW_65);
             rule__NavigatingArgCS__Group_0_1_2__0__Impl();
 
             state._fsp--;
@@ -37907,22 +37992,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__0__Impl"
-    // InternalCompleteOCL.g:12756:1: rule__NavigatingArgCS__Group_0_1_2__0__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) ;
+    // InternalCompleteOCL.g:12784:1: rule__NavigatingArgCS__Group_0_1_2__0__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12760:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) )
-            // InternalCompleteOCL.g:12761:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
+            // InternalCompleteOCL.g:12788:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) )
+            // InternalCompleteOCL.g:12789:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
             {
-            // InternalCompleteOCL.g:12761:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
-            // InternalCompleteOCL.g:12762:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
+            // InternalCompleteOCL.g:12789:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
+            // InternalCompleteOCL.g:12790:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_2_0());
             }
-            // InternalCompleteOCL.g:12763:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
+            // InternalCompleteOCL.g:12791:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
             int alt112=2;
             int LA112_0 = input.LA(1);
 
@@ -37931,7 +38016,7 @@
             }
             switch (alt112) {
                 case 1 :
-                    // InternalCompleteOCL.g:12763:2: rule__NavigatingArgCS__Group_0_1_2_0__0
+                    // InternalCompleteOCL.g:12791:2: rule__NavigatingArgCS__Group_0_1_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_2_0__0();
@@ -37969,16 +38054,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__1"
-    // InternalCompleteOCL.g:12773:1: rule__NavigatingArgCS__Group_0_1_2__1 : rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 ;
+    // InternalCompleteOCL.g:12801:1: rule__NavigatingArgCS__Group_0_1_2__1 : rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 ;
     public final void rule__NavigatingArgCS__Group_0_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12777:1: ( rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 )
-            // InternalCompleteOCL.g:12778:2: rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2
+            // InternalCompleteOCL.g:12805:1: ( rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 )
+            // InternalCompleteOCL.g:12806:2: rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2
             {
-            pushFollow(FollowSets000.FOLLOW_66);
+            pushFollow(FollowSets000.FOLLOW_65);
             rule__NavigatingArgCS__Group_0_1_2__1__Impl();
 
             state._fsp--;
@@ -38007,22 +38092,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__1__Impl"
-    // InternalCompleteOCL.g:12785:1: rule__NavigatingArgCS__Group_0_1_2__1__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) ;
+    // InternalCompleteOCL.g:12813:1: rule__NavigatingArgCS__Group_0_1_2__1__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12789:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) )
-            // InternalCompleteOCL.g:12790:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
+            // InternalCompleteOCL.g:12817:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) )
+            // InternalCompleteOCL.g:12818:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
             {
-            // InternalCompleteOCL.g:12790:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
-            // InternalCompleteOCL.g:12791:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
+            // InternalCompleteOCL.g:12818:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
+            // InternalCompleteOCL.g:12819:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_2_1());
             }
-            // InternalCompleteOCL.g:12792:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
+            // InternalCompleteOCL.g:12820:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
             int alt113=2;
             int LA113_0 = input.LA(1);
 
@@ -38031,7 +38116,7 @@
             }
             switch (alt113) {
                 case 1 :
-                    // InternalCompleteOCL.g:12792:2: rule__NavigatingArgCS__Group_0_1_2_1__0
+                    // InternalCompleteOCL.g:12820:2: rule__NavigatingArgCS__Group_0_1_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_2_1__0();
@@ -38069,14 +38154,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__2"
-    // InternalCompleteOCL.g:12802:1: rule__NavigatingArgCS__Group_0_1_2__2 : rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 ;
+    // InternalCompleteOCL.g:12830:1: rule__NavigatingArgCS__Group_0_1_2__2 : rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 ;
     public final void rule__NavigatingArgCS__Group_0_1_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12806:1: ( rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 )
-            // InternalCompleteOCL.g:12807:2: rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3
+            // InternalCompleteOCL.g:12834:1: ( rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 )
+            // InternalCompleteOCL.g:12835:2: rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NavigatingArgCS__Group_0_1_2__2__Impl();
@@ -38107,17 +38192,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__2__Impl"
-    // InternalCompleteOCL.g:12814:1: rule__NavigatingArgCS__Group_0_1_2__2__Impl : ( 'in' ) ;
+    // InternalCompleteOCL.g:12842:1: rule__NavigatingArgCS__Group_0_1_2__2__Impl : ( 'in' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12818:1: ( ( 'in' ) )
-            // InternalCompleteOCL.g:12819:1: ( 'in' )
+            // InternalCompleteOCL.g:12846:1: ( ( 'in' ) )
+            // InternalCompleteOCL.g:12847:1: ( 'in' )
             {
-            // InternalCompleteOCL.g:12819:1: ( 'in' )
-            // InternalCompleteOCL.g:12820:1: 'in'
+            // InternalCompleteOCL.g:12847:1: ( 'in' )
+            // InternalCompleteOCL.g:12848:1: 'in'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_2_2());
@@ -38148,14 +38233,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__3"
-    // InternalCompleteOCL.g:12833:1: rule__NavigatingArgCS__Group_0_1_2__3 : rule__NavigatingArgCS__Group_0_1_2__3__Impl ;
+    // InternalCompleteOCL.g:12861:1: rule__NavigatingArgCS__Group_0_1_2__3 : rule__NavigatingArgCS__Group_0_1_2__3__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12837:1: ( rule__NavigatingArgCS__Group_0_1_2__3__Impl )
-            // InternalCompleteOCL.g:12838:2: rule__NavigatingArgCS__Group_0_1_2__3__Impl
+            // InternalCompleteOCL.g:12865:1: ( rule__NavigatingArgCS__Group_0_1_2__3__Impl )
+            // InternalCompleteOCL.g:12866:2: rule__NavigatingArgCS__Group_0_1_2__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_2__3__Impl();
@@ -38181,23 +38266,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__3__Impl"
-    // InternalCompleteOCL.g:12844:1: rule__NavigatingArgCS__Group_0_1_2__3__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) ;
+    // InternalCompleteOCL.g:12872:1: rule__NavigatingArgCS__Group_0_1_2__3__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12848:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) )
-            // InternalCompleteOCL.g:12849:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
+            // InternalCompleteOCL.g:12876:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) )
+            // InternalCompleteOCL.g:12877:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
             {
-            // InternalCompleteOCL.g:12849:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
-            // InternalCompleteOCL.g:12850:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
+            // InternalCompleteOCL.g:12877:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
+            // InternalCompleteOCL.g:12878:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_2_3());
             }
-            // InternalCompleteOCL.g:12851:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
-            // InternalCompleteOCL.g:12851:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3
+            // InternalCompleteOCL.g:12879:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
+            // InternalCompleteOCL.g:12879:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3();
@@ -38232,16 +38317,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__0"
-    // InternalCompleteOCL.g:12869:1: rule__NavigatingArgCS__Group_0_1_2_0__0 : rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 ;
+    // InternalCompleteOCL.g:12897:1: rule__NavigatingArgCS__Group_0_1_2_0__0 : rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12873:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 )
-            // InternalCompleteOCL.g:12874:2: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1
+            // InternalCompleteOCL.g:12901:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 )
+            // InternalCompleteOCL.g:12902:2: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__NavigatingArgCS__Group_0_1_2_0__0__Impl();
 
             state._fsp--;
@@ -38270,17 +38355,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__0__Impl"
-    // InternalCompleteOCL.g:12881:1: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:12909:1: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl : ( ':' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12885:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:12886:1: ( ':' )
+            // InternalCompleteOCL.g:12913:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:12914:1: ( ':' )
             {
-            // InternalCompleteOCL.g:12886:1: ( ':' )
-            // InternalCompleteOCL.g:12887:1: ':'
+            // InternalCompleteOCL.g:12914:1: ( ':' )
+            // InternalCompleteOCL.g:12915:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_2_0_0());
@@ -38311,14 +38396,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__1"
-    // InternalCompleteOCL.g:12900:1: rule__NavigatingArgCS__Group_0_1_2_0__1 : rule__NavigatingArgCS__Group_0_1_2_0__1__Impl ;
+    // InternalCompleteOCL.g:12928:1: rule__NavigatingArgCS__Group_0_1_2_0__1 : rule__NavigatingArgCS__Group_0_1_2_0__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12904:1: ( rule__NavigatingArgCS__Group_0_1_2_0__1__Impl )
-            // InternalCompleteOCL.g:12905:2: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl
+            // InternalCompleteOCL.g:12932:1: ( rule__NavigatingArgCS__Group_0_1_2_0__1__Impl )
+            // InternalCompleteOCL.g:12933:2: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_2_0__1__Impl();
@@ -38344,23 +38429,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__1__Impl"
-    // InternalCompleteOCL.g:12911:1: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) ;
+    // InternalCompleteOCL.g:12939:1: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12915:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) )
-            // InternalCompleteOCL.g:12916:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
+            // InternalCompleteOCL.g:12943:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) )
+            // InternalCompleteOCL.g:12944:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
             {
-            // InternalCompleteOCL.g:12916:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
-            // InternalCompleteOCL.g:12917:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
+            // InternalCompleteOCL.g:12944:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
+            // InternalCompleteOCL.g:12945:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_2_0_1());
             }
-            // InternalCompleteOCL.g:12918:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
-            // InternalCompleteOCL.g:12918:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1
+            // InternalCompleteOCL.g:12946:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
+            // InternalCompleteOCL.g:12946:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1();
@@ -38395,16 +38480,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__0"
-    // InternalCompleteOCL.g:12932:1: rule__NavigatingArgCS__Group_0_1_2_1__0 : rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 ;
+    // InternalCompleteOCL.g:12960:1: rule__NavigatingArgCS__Group_0_1_2_1__0 : rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12936:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 )
-            // InternalCompleteOCL.g:12937:2: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1
+            // InternalCompleteOCL.g:12964:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 )
+            // InternalCompleteOCL.g:12965:2: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__NavigatingArgCS__Group_0_1_2_1__0__Impl();
 
             state._fsp--;
@@ -38433,17 +38518,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__0__Impl"
-    // InternalCompleteOCL.g:12944:1: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl : ( '<-' ) ;
+    // InternalCompleteOCL.g:12972:1: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12948:1: ( ( '<-' ) )
-            // InternalCompleteOCL.g:12949:1: ( '<-' )
+            // InternalCompleteOCL.g:12976:1: ( ( '<-' ) )
+            // InternalCompleteOCL.g:12977:1: ( '<-' )
             {
-            // InternalCompleteOCL.g:12949:1: ( '<-' )
-            // InternalCompleteOCL.g:12950:1: '<-'
+            // InternalCompleteOCL.g:12977:1: ( '<-' )
+            // InternalCompleteOCL.g:12978:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_2_1_0());
@@ -38474,14 +38559,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__1"
-    // InternalCompleteOCL.g:12963:1: rule__NavigatingArgCS__Group_0_1_2_1__1 : rule__NavigatingArgCS__Group_0_1_2_1__1__Impl ;
+    // InternalCompleteOCL.g:12991:1: rule__NavigatingArgCS__Group_0_1_2_1__1 : rule__NavigatingArgCS__Group_0_1_2_1__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12967:1: ( rule__NavigatingArgCS__Group_0_1_2_1__1__Impl )
-            // InternalCompleteOCL.g:12968:2: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl
+            // InternalCompleteOCL.g:12995:1: ( rule__NavigatingArgCS__Group_0_1_2_1__1__Impl )
+            // InternalCompleteOCL.g:12996:2: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_2_1__1__Impl();
@@ -38507,23 +38592,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__1__Impl"
-    // InternalCompleteOCL.g:12974:1: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) ;
+    // InternalCompleteOCL.g:13002:1: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12978:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) )
-            // InternalCompleteOCL.g:12979:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
+            // InternalCompleteOCL.g:13006:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) )
+            // InternalCompleteOCL.g:13007:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
             {
-            // InternalCompleteOCL.g:12979:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
-            // InternalCompleteOCL.g:12980:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
+            // InternalCompleteOCL.g:13007:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
+            // InternalCompleteOCL.g:13008:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorAssignment_0_1_2_1_1());
             }
-            // InternalCompleteOCL.g:12981:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
-            // InternalCompleteOCL.g:12981:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1
+            // InternalCompleteOCL.g:13009:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
+            // InternalCompleteOCL.g:13009:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1();
@@ -38558,16 +38643,16 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__0"
-    // InternalCompleteOCL.g:12995:1: rule__NavigatingArgCS__Group_1__0 : rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 ;
+    // InternalCompleteOCL.g:13023:1: rule__NavigatingArgCS__Group_1__0 : rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 ;
     public final void rule__NavigatingArgCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:12999:1: ( rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 )
-            // InternalCompleteOCL.g:13000:2: rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1
+            // InternalCompleteOCL.g:13027:1: ( rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 )
+            // InternalCompleteOCL.g:13028:2: rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__NavigatingArgCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -38596,17 +38681,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:13007:1: rule__NavigatingArgCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:13035:1: rule__NavigatingArgCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__NavigatingArgCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13011:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:13012:1: ( ':' )
+            // InternalCompleteOCL.g:13039:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:13040:1: ( ':' )
             {
-            // InternalCompleteOCL.g:13012:1: ( ':' )
-            // InternalCompleteOCL.g:13013:1: ':'
+            // InternalCompleteOCL.g:13040:1: ( ':' )
+            // InternalCompleteOCL.g:13041:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
@@ -38637,14 +38722,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__1"
-    // InternalCompleteOCL.g:13026:1: rule__NavigatingArgCS__Group_1__1 : rule__NavigatingArgCS__Group_1__1__Impl ;
+    // InternalCompleteOCL.g:13054:1: rule__NavigatingArgCS__Group_1__1 : rule__NavigatingArgCS__Group_1__1__Impl ;
     public final void rule__NavigatingArgCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13030:1: ( rule__NavigatingArgCS__Group_1__1__Impl )
-            // InternalCompleteOCL.g:13031:2: rule__NavigatingArgCS__Group_1__1__Impl
+            // InternalCompleteOCL.g:13058:1: ( rule__NavigatingArgCS__Group_1__1__Impl )
+            // InternalCompleteOCL.g:13059:2: rule__NavigatingArgCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_1__1__Impl();
@@ -38670,23 +38755,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:13037:1: rule__NavigatingArgCS__Group_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:13065:1: rule__NavigatingArgCS__Group_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13041:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:13042:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
+            // InternalCompleteOCL.g:13069:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:13070:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:13042:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
-            // InternalCompleteOCL.g:13043:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
+            // InternalCompleteOCL.g:13070:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
+            // InternalCompleteOCL.g:13071:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalCompleteOCL.g:13044:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
-            // InternalCompleteOCL.g:13044:2: rule__NavigatingArgCS__OwnedTypeAssignment_1_1
+            // InternalCompleteOCL.g:13072:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
+            // InternalCompleteOCL.g:13072:2: rule__NavigatingArgCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedTypeAssignment_1_1();
@@ -38721,16 +38806,16 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__0"
-    // InternalCompleteOCL.g:13058:1: rule__NavigatingBarArgCS__Group__0 : rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 ;
+    // InternalCompleteOCL.g:13086:1: rule__NavigatingBarArgCS__Group__0 : rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 ;
     public final void rule__NavigatingBarArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13062:1: ( rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 )
-            // InternalCompleteOCL.g:13063:2: rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1
+            // InternalCompleteOCL.g:13090:1: ( rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 )
+            // InternalCompleteOCL.g:13091:2: rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_68);
+            pushFollow(FollowSets000.FOLLOW_67);
             rule__NavigatingBarArgCS__Group__0__Impl();
 
             state._fsp--;
@@ -38759,23 +38844,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__0__Impl"
-    // InternalCompleteOCL.g:13070:1: rule__NavigatingBarArgCS__Group__0__Impl : ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:13098:1: rule__NavigatingBarArgCS__Group__0__Impl : ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) ;
     public final void rule__NavigatingBarArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13074:1: ( ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) )
-            // InternalCompleteOCL.g:13075:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
+            // InternalCompleteOCL.g:13102:1: ( ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) )
+            // InternalCompleteOCL.g:13103:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:13075:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
-            // InternalCompleteOCL.g:13076:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
+            // InternalCompleteOCL.g:13103:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
+            // InternalCompleteOCL.g:13104:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0());
             }
-            // InternalCompleteOCL.g:13077:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
-            // InternalCompleteOCL.g:13077:2: rule__NavigatingBarArgCS__PrefixAssignment_0
+            // InternalCompleteOCL.g:13105:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
+            // InternalCompleteOCL.g:13105:2: rule__NavigatingBarArgCS__PrefixAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__PrefixAssignment_0();
@@ -38810,16 +38895,16 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__1"
-    // InternalCompleteOCL.g:13087:1: rule__NavigatingBarArgCS__Group__1 : rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 ;
+    // InternalCompleteOCL.g:13115:1: rule__NavigatingBarArgCS__Group__1 : rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 ;
     public final void rule__NavigatingBarArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13091:1: ( rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 )
-            // InternalCompleteOCL.g:13092:2: rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2
+            // InternalCompleteOCL.g:13119:1: ( rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 )
+            // InternalCompleteOCL.g:13120:2: rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_16);
+            pushFollow(FollowSets000.FOLLOW_17);
             rule__NavigatingBarArgCS__Group__1__Impl();
 
             state._fsp--;
@@ -38848,23 +38933,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__1__Impl"
-    // InternalCompleteOCL.g:13099:1: rule__NavigatingBarArgCS__Group__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) ;
+    // InternalCompleteOCL.g:13127:1: rule__NavigatingBarArgCS__Group__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) ;
     public final void rule__NavigatingBarArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13103:1: ( ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) )
-            // InternalCompleteOCL.g:13104:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalCompleteOCL.g:13131:1: ( ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) )
+            // InternalCompleteOCL.g:13132:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
             {
-            // InternalCompleteOCL.g:13104:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
-            // InternalCompleteOCL.g:13105:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalCompleteOCL.g:13132:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalCompleteOCL.g:13133:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
-            // InternalCompleteOCL.g:13106:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
-            // InternalCompleteOCL.g:13106:2: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1
+            // InternalCompleteOCL.g:13134:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalCompleteOCL.g:13134:2: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1();
@@ -38899,14 +38984,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__2"
-    // InternalCompleteOCL.g:13116:1: rule__NavigatingBarArgCS__Group__2 : rule__NavigatingBarArgCS__Group__2__Impl ;
+    // InternalCompleteOCL.g:13144:1: rule__NavigatingBarArgCS__Group__2 : rule__NavigatingBarArgCS__Group__2__Impl ;
     public final void rule__NavigatingBarArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13120:1: ( rule__NavigatingBarArgCS__Group__2__Impl )
-            // InternalCompleteOCL.g:13121:2: rule__NavigatingBarArgCS__Group__2__Impl
+            // InternalCompleteOCL.g:13148:1: ( rule__NavigatingBarArgCS__Group__2__Impl )
+            // InternalCompleteOCL.g:13149:2: rule__NavigatingBarArgCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__Group__2__Impl();
@@ -38932,22 +39017,22 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__2__Impl"
-    // InternalCompleteOCL.g:13127:1: rule__NavigatingBarArgCS__Group__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) ;
+    // InternalCompleteOCL.g:13155:1: rule__NavigatingBarArgCS__Group__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) ;
     public final void rule__NavigatingBarArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13131:1: ( ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) )
-            // InternalCompleteOCL.g:13132:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:13159:1: ( ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) )
+            // InternalCompleteOCL.g:13160:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
             {
-            // InternalCompleteOCL.g:13132:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
-            // InternalCompleteOCL.g:13133:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
+            // InternalCompleteOCL.g:13160:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:13161:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2());
             }
-            // InternalCompleteOCL.g:13134:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
+            // InternalCompleteOCL.g:13162:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             int alt114=2;
             int LA114_0 = input.LA(1);
 
@@ -38956,7 +39041,7 @@
             }
             switch (alt114) {
                 case 1 :
-                    // InternalCompleteOCL.g:13134:2: rule__NavigatingBarArgCS__Group_2__0
+                    // InternalCompleteOCL.g:13162:2: rule__NavigatingBarArgCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingBarArgCS__Group_2__0();
@@ -38994,16 +39079,16 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__0"
-    // InternalCompleteOCL.g:13150:1: rule__NavigatingBarArgCS__Group_2__0 : rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 ;
+    // InternalCompleteOCL.g:13178:1: rule__NavigatingBarArgCS__Group_2__0 : rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 ;
     public final void rule__NavigatingBarArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13154:1: ( rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 )
-            // InternalCompleteOCL.g:13155:2: rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1
+            // InternalCompleteOCL.g:13182:1: ( rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 )
+            // InternalCompleteOCL.g:13183:2: rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__NavigatingBarArgCS__Group_2__0__Impl();
 
             state._fsp--;
@@ -39032,17 +39117,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__0__Impl"
-    // InternalCompleteOCL.g:13162:1: rule__NavigatingBarArgCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:13190:1: rule__NavigatingBarArgCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__NavigatingBarArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13166:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:13167:1: ( ':' )
+            // InternalCompleteOCL.g:13194:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:13195:1: ( ':' )
             {
-            // InternalCompleteOCL.g:13167:1: ( ':' )
-            // InternalCompleteOCL.g:13168:1: ':'
+            // InternalCompleteOCL.g:13195:1: ( ':' )
+            // InternalCompleteOCL.g:13196:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
@@ -39073,16 +39158,16 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__1"
-    // InternalCompleteOCL.g:13181:1: rule__NavigatingBarArgCS__Group_2__1 : rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 ;
+    // InternalCompleteOCL.g:13209:1: rule__NavigatingBarArgCS__Group_2__1 : rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 ;
     public final void rule__NavigatingBarArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13185:1: ( rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 )
-            // InternalCompleteOCL.g:13186:2: rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2
+            // InternalCompleteOCL.g:13213:1: ( rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 )
+            // InternalCompleteOCL.g:13214:2: rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2
             {
-            pushFollow(FollowSets000.FOLLOW_22);
+            pushFollow(FollowSets000.FOLLOW_23);
             rule__NavigatingBarArgCS__Group_2__1__Impl();
 
             state._fsp--;
@@ -39111,23 +39196,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__1__Impl"
-    // InternalCompleteOCL.g:13193:1: rule__NavigatingBarArgCS__Group_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) ;
+    // InternalCompleteOCL.g:13221:1: rule__NavigatingBarArgCS__Group_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) ;
     public final void rule__NavigatingBarArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13197:1: ( ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) )
-            // InternalCompleteOCL.g:13198:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalCompleteOCL.g:13225:1: ( ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) )
+            // InternalCompleteOCL.g:13226:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
             {
-            // InternalCompleteOCL.g:13198:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
-            // InternalCompleteOCL.g:13199:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
+            // InternalCompleteOCL.g:13226:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalCompleteOCL.g:13227:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1());
             }
-            // InternalCompleteOCL.g:13200:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
-            // InternalCompleteOCL.g:13200:2: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1
+            // InternalCompleteOCL.g:13228:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
+            // InternalCompleteOCL.g:13228:2: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1();
@@ -39162,14 +39247,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__2"
-    // InternalCompleteOCL.g:13210:1: rule__NavigatingBarArgCS__Group_2__2 : rule__NavigatingBarArgCS__Group_2__2__Impl ;
+    // InternalCompleteOCL.g:13238:1: rule__NavigatingBarArgCS__Group_2__2 : rule__NavigatingBarArgCS__Group_2__2__Impl ;
     public final void rule__NavigatingBarArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13214:1: ( rule__NavigatingBarArgCS__Group_2__2__Impl )
-            // InternalCompleteOCL.g:13215:2: rule__NavigatingBarArgCS__Group_2__2__Impl
+            // InternalCompleteOCL.g:13242:1: ( rule__NavigatingBarArgCS__Group_2__2__Impl )
+            // InternalCompleteOCL.g:13243:2: rule__NavigatingBarArgCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__Group_2__2__Impl();
@@ -39195,22 +39280,22 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__2__Impl"
-    // InternalCompleteOCL.g:13221:1: rule__NavigatingBarArgCS__Group_2__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) ;
+    // InternalCompleteOCL.g:13249:1: rule__NavigatingBarArgCS__Group_2__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) ;
     public final void rule__NavigatingBarArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13225:1: ( ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) )
-            // InternalCompleteOCL.g:13226:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
+            // InternalCompleteOCL.g:13253:1: ( ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) )
+            // InternalCompleteOCL.g:13254:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
             {
-            // InternalCompleteOCL.g:13226:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
-            // InternalCompleteOCL.g:13227:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
+            // InternalCompleteOCL.g:13254:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
+            // InternalCompleteOCL.g:13255:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2());
             }
-            // InternalCompleteOCL.g:13228:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
+            // InternalCompleteOCL.g:13256:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             int alt115=2;
             int LA115_0 = input.LA(1);
 
@@ -39219,7 +39304,7 @@
             }
             switch (alt115) {
                 case 1 :
-                    // InternalCompleteOCL.g:13228:2: rule__NavigatingBarArgCS__Group_2_2__0
+                    // InternalCompleteOCL.g:13256:2: rule__NavigatingBarArgCS__Group_2_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingBarArgCS__Group_2_2__0();
@@ -39257,14 +39342,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__0"
-    // InternalCompleteOCL.g:13244:1: rule__NavigatingBarArgCS__Group_2_2__0 : rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 ;
+    // InternalCompleteOCL.g:13272:1: rule__NavigatingBarArgCS__Group_2_2__0 : rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 ;
     public final void rule__NavigatingBarArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13248:1: ( rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 )
-            // InternalCompleteOCL.g:13249:2: rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1
+            // InternalCompleteOCL.g:13276:1: ( rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 )
+            // InternalCompleteOCL.g:13277:2: rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NavigatingBarArgCS__Group_2_2__0__Impl();
@@ -39295,17 +39380,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__0__Impl"
-    // InternalCompleteOCL.g:13256:1: rule__NavigatingBarArgCS__Group_2_2__0__Impl : ( '=' ) ;
+    // InternalCompleteOCL.g:13284:1: rule__NavigatingBarArgCS__Group_2_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingBarArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13260:1: ( ( '=' ) )
-            // InternalCompleteOCL.g:13261:1: ( '=' )
+            // InternalCompleteOCL.g:13288:1: ( ( '=' ) )
+            // InternalCompleteOCL.g:13289:1: ( '=' )
             {
-            // InternalCompleteOCL.g:13261:1: ( '=' )
-            // InternalCompleteOCL.g:13262:1: '='
+            // InternalCompleteOCL.g:13289:1: ( '=' )
+            // InternalCompleteOCL.g:13290:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
@@ -39336,14 +39421,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__1"
-    // InternalCompleteOCL.g:13275:1: rule__NavigatingBarArgCS__Group_2_2__1 : rule__NavigatingBarArgCS__Group_2_2__1__Impl ;
+    // InternalCompleteOCL.g:13303:1: rule__NavigatingBarArgCS__Group_2_2__1 : rule__NavigatingBarArgCS__Group_2_2__1__Impl ;
     public final void rule__NavigatingBarArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13279:1: ( rule__NavigatingBarArgCS__Group_2_2__1__Impl )
-            // InternalCompleteOCL.g:13280:2: rule__NavigatingBarArgCS__Group_2_2__1__Impl
+            // InternalCompleteOCL.g:13307:1: ( rule__NavigatingBarArgCS__Group_2_2__1__Impl )
+            // InternalCompleteOCL.g:13308:2: rule__NavigatingBarArgCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__Group_2_2__1__Impl();
@@ -39369,23 +39454,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__1__Impl"
-    // InternalCompleteOCL.g:13286:1: rule__NavigatingBarArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
+    // InternalCompleteOCL.g:13314:1: rule__NavigatingBarArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
     public final void rule__NavigatingBarArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13290:1: ( ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
-            // InternalCompleteOCL.g:13291:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalCompleteOCL.g:13318:1: ( ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
+            // InternalCompleteOCL.g:13319:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
             {
-            // InternalCompleteOCL.g:13291:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
-            // InternalCompleteOCL.g:13292:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalCompleteOCL.g:13319:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalCompleteOCL.g:13320:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
-            // InternalCompleteOCL.g:13293:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
-            // InternalCompleteOCL.g:13293:2: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1
+            // InternalCompleteOCL.g:13321:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalCompleteOCL.g:13321:2: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1();
@@ -39420,16 +39505,16 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__0"
-    // InternalCompleteOCL.g:13307:1: rule__NavigatingCommaArgCS__Group__0 : rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 ;
+    // InternalCompleteOCL.g:13335:1: rule__NavigatingCommaArgCS__Group__0 : rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 ;
     public final void rule__NavigatingCommaArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13311:1: ( rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 )
-            // InternalCompleteOCL.g:13312:2: rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1
+            // InternalCompleteOCL.g:13339:1: ( rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 )
+            // InternalCompleteOCL.g:13340:2: rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_68);
+            pushFollow(FollowSets000.FOLLOW_67);
             rule__NavigatingCommaArgCS__Group__0__Impl();
 
             state._fsp--;
@@ -39458,23 +39543,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__0__Impl"
-    // InternalCompleteOCL.g:13319:1: rule__NavigatingCommaArgCS__Group__0__Impl : ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:13347:1: rule__NavigatingCommaArgCS__Group__0__Impl : ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13323:1: ( ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) )
-            // InternalCompleteOCL.g:13324:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
+            // InternalCompleteOCL.g:13351:1: ( ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) )
+            // InternalCompleteOCL.g:13352:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:13324:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
-            // InternalCompleteOCL.g:13325:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
+            // InternalCompleteOCL.g:13352:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
+            // InternalCompleteOCL.g:13353:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0());
             }
-            // InternalCompleteOCL.g:13326:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
-            // InternalCompleteOCL.g:13326:2: rule__NavigatingCommaArgCS__PrefixAssignment_0
+            // InternalCompleteOCL.g:13354:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
+            // InternalCompleteOCL.g:13354:2: rule__NavigatingCommaArgCS__PrefixAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__PrefixAssignment_0();
@@ -39509,16 +39594,16 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__1"
-    // InternalCompleteOCL.g:13336:1: rule__NavigatingCommaArgCS__Group__1 : rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 ;
+    // InternalCompleteOCL.g:13364:1: rule__NavigatingCommaArgCS__Group__1 : rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 ;
     public final void rule__NavigatingCommaArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13340:1: ( rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 )
-            // InternalCompleteOCL.g:13341:2: rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2
+            // InternalCompleteOCL.g:13368:1: ( rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 )
+            // InternalCompleteOCL.g:13369:2: rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_66);
+            pushFollow(FollowSets000.FOLLOW_65);
             rule__NavigatingCommaArgCS__Group__1__Impl();
 
             state._fsp--;
@@ -39547,23 +39632,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__1__Impl"
-    // InternalCompleteOCL.g:13348:1: rule__NavigatingCommaArgCS__Group__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) ;
+    // InternalCompleteOCL.g:13376:1: rule__NavigatingCommaArgCS__Group__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13352:1: ( ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) )
-            // InternalCompleteOCL.g:13353:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalCompleteOCL.g:13380:1: ( ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) )
+            // InternalCompleteOCL.g:13381:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
             {
-            // InternalCompleteOCL.g:13353:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
-            // InternalCompleteOCL.g:13354:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalCompleteOCL.g:13381:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalCompleteOCL.g:13382:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
-            // InternalCompleteOCL.g:13355:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
-            // InternalCompleteOCL.g:13355:2: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1
+            // InternalCompleteOCL.g:13383:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalCompleteOCL.g:13383:2: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1();
@@ -39598,14 +39683,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__2"
-    // InternalCompleteOCL.g:13365:1: rule__NavigatingCommaArgCS__Group__2 : rule__NavigatingCommaArgCS__Group__2__Impl ;
+    // InternalCompleteOCL.g:13393:1: rule__NavigatingCommaArgCS__Group__2 : rule__NavigatingCommaArgCS__Group__2__Impl ;
     public final void rule__NavigatingCommaArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13369:1: ( rule__NavigatingCommaArgCS__Group__2__Impl )
-            // InternalCompleteOCL.g:13370:2: rule__NavigatingCommaArgCS__Group__2__Impl
+            // InternalCompleteOCL.g:13397:1: ( rule__NavigatingCommaArgCS__Group__2__Impl )
+            // InternalCompleteOCL.g:13398:2: rule__NavigatingCommaArgCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group__2__Impl();
@@ -39631,22 +39716,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__2__Impl"
-    // InternalCompleteOCL.g:13376:1: rule__NavigatingCommaArgCS__Group__2__Impl : ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) ;
+    // InternalCompleteOCL.g:13404:1: rule__NavigatingCommaArgCS__Group__2__Impl : ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13380:1: ( ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) )
-            // InternalCompleteOCL.g:13381:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
+            // InternalCompleteOCL.g:13408:1: ( ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) )
+            // InternalCompleteOCL.g:13409:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
             {
-            // InternalCompleteOCL.g:13381:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
-            // InternalCompleteOCL.g:13382:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
+            // InternalCompleteOCL.g:13409:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
+            // InternalCompleteOCL.g:13410:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2());
             }
-            // InternalCompleteOCL.g:13383:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
+            // InternalCompleteOCL.g:13411:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             int alt116=2;
             int LA116_0 = input.LA(1);
 
@@ -39655,7 +39740,7 @@
             }
             switch (alt116) {
                 case 1 :
-                    // InternalCompleteOCL.g:13383:2: rule__NavigatingCommaArgCS__Alternatives_2
+                    // InternalCompleteOCL.g:13411:2: rule__NavigatingCommaArgCS__Alternatives_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Alternatives_2();
@@ -39693,16 +39778,16 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__0"
-    // InternalCompleteOCL.g:13399:1: rule__NavigatingCommaArgCS__Group_2_0__0 : rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 ;
+    // InternalCompleteOCL.g:13427:1: rule__NavigatingCommaArgCS__Group_2_0__0 : rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13403:1: ( rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 )
-            // InternalCompleteOCL.g:13404:2: rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1
+            // InternalCompleteOCL.g:13431:1: ( rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 )
+            // InternalCompleteOCL.g:13432:2: rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__NavigatingCommaArgCS__Group_2_0__0__Impl();
 
             state._fsp--;
@@ -39731,17 +39816,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__0__Impl"
-    // InternalCompleteOCL.g:13411:1: rule__NavigatingCommaArgCS__Group_2_0__0__Impl : ( '<-' ) ;
+    // InternalCompleteOCL.g:13439:1: rule__NavigatingCommaArgCS__Group_2_0__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13415:1: ( ( '<-' ) )
-            // InternalCompleteOCL.g:13416:1: ( '<-' )
+            // InternalCompleteOCL.g:13443:1: ( ( '<-' ) )
+            // InternalCompleteOCL.g:13444:1: ( '<-' )
             {
-            // InternalCompleteOCL.g:13416:1: ( '<-' )
-            // InternalCompleteOCL.g:13417:1: '<-'
+            // InternalCompleteOCL.g:13444:1: ( '<-' )
+            // InternalCompleteOCL.g:13445:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_0_0());
@@ -39772,16 +39857,16 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__1"
-    // InternalCompleteOCL.g:13430:1: rule__NavigatingCommaArgCS__Group_2_0__1 : rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 ;
+    // InternalCompleteOCL.g:13458:1: rule__NavigatingCommaArgCS__Group_2_0__1 : rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13434:1: ( rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 )
-            // InternalCompleteOCL.g:13435:2: rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2
+            // InternalCompleteOCL.g:13462:1: ( rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 )
+            // InternalCompleteOCL.g:13463:2: rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2
             {
-            pushFollow(FollowSets000.FOLLOW_22);
+            pushFollow(FollowSets000.FOLLOW_23);
             rule__NavigatingCommaArgCS__Group_2_0__1__Impl();
 
             state._fsp--;
@@ -39810,23 +39895,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__1__Impl"
-    // InternalCompleteOCL.g:13442:1: rule__NavigatingCommaArgCS__Group_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) ;
+    // InternalCompleteOCL.g:13470:1: rule__NavigatingCommaArgCS__Group_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13446:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) )
-            // InternalCompleteOCL.g:13447:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
+            // InternalCompleteOCL.g:13474:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) )
+            // InternalCompleteOCL.g:13475:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
             {
-            // InternalCompleteOCL.g:13447:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
-            // InternalCompleteOCL.g:13448:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
+            // InternalCompleteOCL.g:13475:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
+            // InternalCompleteOCL.g:13476:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorAssignment_2_0_1());
             }
-            // InternalCompleteOCL.g:13449:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
-            // InternalCompleteOCL.g:13449:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1
+            // InternalCompleteOCL.g:13477:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
+            // InternalCompleteOCL.g:13477:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1();
@@ -39861,14 +39946,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__2"
-    // InternalCompleteOCL.g:13459:1: rule__NavigatingCommaArgCS__Group_2_0__2 : rule__NavigatingCommaArgCS__Group_2_0__2__Impl ;
+    // InternalCompleteOCL.g:13487:1: rule__NavigatingCommaArgCS__Group_2_0__2 : rule__NavigatingCommaArgCS__Group_2_0__2__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13463:1: ( rule__NavigatingCommaArgCS__Group_2_0__2__Impl )
-            // InternalCompleteOCL.g:13464:2: rule__NavigatingCommaArgCS__Group_2_0__2__Impl
+            // InternalCompleteOCL.g:13491:1: ( rule__NavigatingCommaArgCS__Group_2_0__2__Impl )
+            // InternalCompleteOCL.g:13492:2: rule__NavigatingCommaArgCS__Group_2_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_0__2__Impl();
@@ -39894,22 +39979,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__2__Impl"
-    // InternalCompleteOCL.g:13470:1: rule__NavigatingCommaArgCS__Group_2_0__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) ;
+    // InternalCompleteOCL.g:13498:1: rule__NavigatingCommaArgCS__Group_2_0__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13474:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) )
-            // InternalCompleteOCL.g:13475:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
+            // InternalCompleteOCL.g:13502:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) )
+            // InternalCompleteOCL.g:13503:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
             {
-            // InternalCompleteOCL.g:13475:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
-            // InternalCompleteOCL.g:13476:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
+            // InternalCompleteOCL.g:13503:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
+            // InternalCompleteOCL.g:13504:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2());
             }
-            // InternalCompleteOCL.g:13477:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
+            // InternalCompleteOCL.g:13505:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             int alt117=2;
             int LA117_0 = input.LA(1);
 
@@ -39918,7 +40003,7 @@
             }
             switch (alt117) {
                 case 1 :
-                    // InternalCompleteOCL.g:13477:2: rule__NavigatingCommaArgCS__Group_2_0_2__0
+                    // InternalCompleteOCL.g:13505:2: rule__NavigatingCommaArgCS__Group_2_0_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_0_2__0();
@@ -39956,14 +40041,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__0"
-    // InternalCompleteOCL.g:13493:1: rule__NavigatingCommaArgCS__Group_2_0_2__0 : rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 ;
+    // InternalCompleteOCL.g:13521:1: rule__NavigatingCommaArgCS__Group_2_0_2__0 : rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13497:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 )
-            // InternalCompleteOCL.g:13498:2: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1
+            // InternalCompleteOCL.g:13525:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 )
+            // InternalCompleteOCL.g:13526:2: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl();
@@ -39994,17 +40079,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl"
-    // InternalCompleteOCL.g:13505:1: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl : ( '=' ) ;
+    // InternalCompleteOCL.g:13533:1: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13509:1: ( ( '=' ) )
-            // InternalCompleteOCL.g:13510:1: ( '=' )
+            // InternalCompleteOCL.g:13537:1: ( ( '=' ) )
+            // InternalCompleteOCL.g:13538:1: ( '=' )
             {
-            // InternalCompleteOCL.g:13510:1: ( '=' )
-            // InternalCompleteOCL.g:13511:1: '='
+            // InternalCompleteOCL.g:13538:1: ( '=' )
+            // InternalCompleteOCL.g:13539:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
@@ -40035,14 +40120,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__1"
-    // InternalCompleteOCL.g:13524:1: rule__NavigatingCommaArgCS__Group_2_0_2__1 : rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl ;
+    // InternalCompleteOCL.g:13552:1: rule__NavigatingCommaArgCS__Group_2_0_2__1 : rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13528:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl )
-            // InternalCompleteOCL.g:13529:2: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl
+            // InternalCompleteOCL.g:13556:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl )
+            // InternalCompleteOCL.g:13557:2: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl();
@@ -40068,23 +40153,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl"
-    // InternalCompleteOCL.g:13535:1: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) ;
+    // InternalCompleteOCL.g:13563:1: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13539:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) )
-            // InternalCompleteOCL.g:13540:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
+            // InternalCompleteOCL.g:13567:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) )
+            // InternalCompleteOCL.g:13568:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
             {
-            // InternalCompleteOCL.g:13540:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
-            // InternalCompleteOCL.g:13541:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
+            // InternalCompleteOCL.g:13568:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
+            // InternalCompleteOCL.g:13569:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1());
             }
-            // InternalCompleteOCL.g:13542:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
-            // InternalCompleteOCL.g:13542:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1
+            // InternalCompleteOCL.g:13570:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
+            // InternalCompleteOCL.g:13570:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1();
@@ -40119,16 +40204,16 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__0"
-    // InternalCompleteOCL.g:13556:1: rule__NavigatingCommaArgCS__Group_2_1__0 : rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 ;
+    // InternalCompleteOCL.g:13584:1: rule__NavigatingCommaArgCS__Group_2_1__0 : rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13560:1: ( rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 )
-            // InternalCompleteOCL.g:13561:2: rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1
+            // InternalCompleteOCL.g:13588:1: ( rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 )
+            // InternalCompleteOCL.g:13589:2: rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__NavigatingCommaArgCS__Group_2_1__0__Impl();
 
             state._fsp--;
@@ -40157,17 +40242,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__0__Impl"
-    // InternalCompleteOCL.g:13568:1: rule__NavigatingCommaArgCS__Group_2_1__0__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:13596:1: rule__NavigatingCommaArgCS__Group_2_1__0__Impl : ( ':' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13572:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:13573:1: ( ':' )
+            // InternalCompleteOCL.g:13600:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:13601:1: ( ':' )
             {
-            // InternalCompleteOCL.g:13573:1: ( ':' )
-            // InternalCompleteOCL.g:13574:1: ':'
+            // InternalCompleteOCL.g:13601:1: ( ':' )
+            // InternalCompleteOCL.g:13602:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_1_0());
@@ -40198,16 +40283,16 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__1"
-    // InternalCompleteOCL.g:13587:1: rule__NavigatingCommaArgCS__Group_2_1__1 : rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 ;
+    // InternalCompleteOCL.g:13615:1: rule__NavigatingCommaArgCS__Group_2_1__1 : rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13591:1: ( rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 )
-            // InternalCompleteOCL.g:13592:2: rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2
+            // InternalCompleteOCL.g:13619:1: ( rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 )
+            // InternalCompleteOCL.g:13620:2: rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2
             {
-            pushFollow(FollowSets000.FOLLOW_67);
+            pushFollow(FollowSets000.FOLLOW_66);
             rule__NavigatingCommaArgCS__Group_2_1__1__Impl();
 
             state._fsp--;
@@ -40236,23 +40321,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__1__Impl"
-    // InternalCompleteOCL.g:13599:1: rule__NavigatingCommaArgCS__Group_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) ;
+    // InternalCompleteOCL.g:13627:1: rule__NavigatingCommaArgCS__Group_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13603:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) )
-            // InternalCompleteOCL.g:13604:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
+            // InternalCompleteOCL.g:13631:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) )
+            // InternalCompleteOCL.g:13632:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
             {
-            // InternalCompleteOCL.g:13604:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
-            // InternalCompleteOCL.g:13605:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
+            // InternalCompleteOCL.g:13632:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
+            // InternalCompleteOCL.g:13633:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_1_1());
             }
-            // InternalCompleteOCL.g:13606:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
-            // InternalCompleteOCL.g:13606:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1
+            // InternalCompleteOCL.g:13634:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
+            // InternalCompleteOCL.g:13634:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1();
@@ -40287,16 +40372,16 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__2"
-    // InternalCompleteOCL.g:13616:1: rule__NavigatingCommaArgCS__Group_2_1__2 : rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 ;
+    // InternalCompleteOCL.g:13644:1: rule__NavigatingCommaArgCS__Group_2_1__2 : rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13620:1: ( rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 )
-            // InternalCompleteOCL.g:13621:2: rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3
+            // InternalCompleteOCL.g:13648:1: ( rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 )
+            // InternalCompleteOCL.g:13649:2: rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3
             {
-            pushFollow(FollowSets000.FOLLOW_67);
+            pushFollow(FollowSets000.FOLLOW_66);
             rule__NavigatingCommaArgCS__Group_2_1__2__Impl();
 
             state._fsp--;
@@ -40325,22 +40410,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__2__Impl"
-    // InternalCompleteOCL.g:13628:1: rule__NavigatingCommaArgCS__Group_2_1__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) ;
+    // InternalCompleteOCL.g:13656:1: rule__NavigatingCommaArgCS__Group_2_1__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13632:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) )
-            // InternalCompleteOCL.g:13633:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
+            // InternalCompleteOCL.g:13660:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) )
+            // InternalCompleteOCL.g:13661:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
             {
-            // InternalCompleteOCL.g:13633:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
-            // InternalCompleteOCL.g:13634:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
+            // InternalCompleteOCL.g:13661:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
+            // InternalCompleteOCL.g:13662:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1_2());
             }
-            // InternalCompleteOCL.g:13635:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
+            // InternalCompleteOCL.g:13663:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
             int alt118=2;
             int LA118_0 = input.LA(1);
 
@@ -40349,7 +40434,7 @@
             }
             switch (alt118) {
                 case 1 :
-                    // InternalCompleteOCL.g:13635:2: rule__NavigatingCommaArgCS__Group_2_1_2__0
+                    // InternalCompleteOCL.g:13663:2: rule__NavigatingCommaArgCS__Group_2_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_1_2__0();
@@ -40387,14 +40472,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__3"
-    // InternalCompleteOCL.g:13645:1: rule__NavigatingCommaArgCS__Group_2_1__3 : rule__NavigatingCommaArgCS__Group_2_1__3__Impl ;
+    // InternalCompleteOCL.g:13673:1: rule__NavigatingCommaArgCS__Group_2_1__3 : rule__NavigatingCommaArgCS__Group_2_1__3__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13649:1: ( rule__NavigatingCommaArgCS__Group_2_1__3__Impl )
-            // InternalCompleteOCL.g:13650:2: rule__NavigatingCommaArgCS__Group_2_1__3__Impl
+            // InternalCompleteOCL.g:13677:1: ( rule__NavigatingCommaArgCS__Group_2_1__3__Impl )
+            // InternalCompleteOCL.g:13678:2: rule__NavigatingCommaArgCS__Group_2_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_1__3__Impl();
@@ -40420,22 +40505,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__3__Impl"
-    // InternalCompleteOCL.g:13656:1: rule__NavigatingCommaArgCS__Group_2_1__3__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) ;
+    // InternalCompleteOCL.g:13684:1: rule__NavigatingCommaArgCS__Group_2_1__3__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13660:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) )
-            // InternalCompleteOCL.g:13661:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
+            // InternalCompleteOCL.g:13688:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) )
+            // InternalCompleteOCL.g:13689:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
             {
-            // InternalCompleteOCL.g:13661:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
-            // InternalCompleteOCL.g:13662:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
+            // InternalCompleteOCL.g:13689:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
+            // InternalCompleteOCL.g:13690:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1_3());
             }
-            // InternalCompleteOCL.g:13663:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
+            // InternalCompleteOCL.g:13691:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
             int alt119=2;
             int LA119_0 = input.LA(1);
 
@@ -40444,7 +40529,7 @@
             }
             switch (alt119) {
                 case 1 :
-                    // InternalCompleteOCL.g:13663:2: rule__NavigatingCommaArgCS__Group_2_1_3__0
+                    // InternalCompleteOCL.g:13691:2: rule__NavigatingCommaArgCS__Group_2_1_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_1_3__0();
@@ -40482,16 +40567,16 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__0"
-    // InternalCompleteOCL.g:13681:1: rule__NavigatingCommaArgCS__Group_2_1_2__0 : rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 ;
+    // InternalCompleteOCL.g:13709:1: rule__NavigatingCommaArgCS__Group_2_1_2__0 : rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13685:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 )
-            // InternalCompleteOCL.g:13686:2: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1
+            // InternalCompleteOCL.g:13713:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 )
+            // InternalCompleteOCL.g:13714:2: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl();
 
             state._fsp--;
@@ -40520,17 +40605,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl"
-    // InternalCompleteOCL.g:13693:1: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl : ( '<-' ) ;
+    // InternalCompleteOCL.g:13721:1: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13697:1: ( ( '<-' ) )
-            // InternalCompleteOCL.g:13698:1: ( '<-' )
+            // InternalCompleteOCL.g:13725:1: ( ( '<-' ) )
+            // InternalCompleteOCL.g:13726:1: ( '<-' )
             {
-            // InternalCompleteOCL.g:13698:1: ( '<-' )
-            // InternalCompleteOCL.g:13699:1: '<-'
+            // InternalCompleteOCL.g:13726:1: ( '<-' )
+            // InternalCompleteOCL.g:13727:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_1_2_0());
@@ -40561,14 +40646,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__1"
-    // InternalCompleteOCL.g:13712:1: rule__NavigatingCommaArgCS__Group_2_1_2__1 : rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl ;
+    // InternalCompleteOCL.g:13740:1: rule__NavigatingCommaArgCS__Group_2_1_2__1 : rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13716:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl )
-            // InternalCompleteOCL.g:13717:2: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl
+            // InternalCompleteOCL.g:13744:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl )
+            // InternalCompleteOCL.g:13745:2: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl();
@@ -40594,23 +40679,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl"
-    // InternalCompleteOCL.g:13723:1: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) ;
+    // InternalCompleteOCL.g:13751:1: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13727:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) )
-            // InternalCompleteOCL.g:13728:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
+            // InternalCompleteOCL.g:13755:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) )
+            // InternalCompleteOCL.g:13756:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
             {
-            // InternalCompleteOCL.g:13728:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
-            // InternalCompleteOCL.g:13729:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
+            // InternalCompleteOCL.g:13756:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
+            // InternalCompleteOCL.g:13757:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorAssignment_2_1_2_1());
             }
-            // InternalCompleteOCL.g:13730:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
-            // InternalCompleteOCL.g:13730:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1
+            // InternalCompleteOCL.g:13758:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
+            // InternalCompleteOCL.g:13758:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1();
@@ -40645,14 +40730,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__0"
-    // InternalCompleteOCL.g:13744:1: rule__NavigatingCommaArgCS__Group_2_1_3__0 : rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 ;
+    // InternalCompleteOCL.g:13772:1: rule__NavigatingCommaArgCS__Group_2_1_3__0 : rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13748:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 )
-            // InternalCompleteOCL.g:13749:2: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1
+            // InternalCompleteOCL.g:13776:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 )
+            // InternalCompleteOCL.g:13777:2: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl();
@@ -40683,17 +40768,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl"
-    // InternalCompleteOCL.g:13756:1: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl : ( '=' ) ;
+    // InternalCompleteOCL.g:13784:1: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl : ( '=' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13760:1: ( ( '=' ) )
-            // InternalCompleteOCL.g:13761:1: ( '=' )
+            // InternalCompleteOCL.g:13788:1: ( ( '=' ) )
+            // InternalCompleteOCL.g:13789:1: ( '=' )
             {
-            // InternalCompleteOCL.g:13761:1: ( '=' )
-            // InternalCompleteOCL.g:13762:1: '='
+            // InternalCompleteOCL.g:13789:1: ( '=' )
+            // InternalCompleteOCL.g:13790:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_1_3_0());
@@ -40724,14 +40809,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__1"
-    // InternalCompleteOCL.g:13775:1: rule__NavigatingCommaArgCS__Group_2_1_3__1 : rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl ;
+    // InternalCompleteOCL.g:13803:1: rule__NavigatingCommaArgCS__Group_2_1_3__1 : rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13779:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl )
-            // InternalCompleteOCL.g:13780:2: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl
+            // InternalCompleteOCL.g:13807:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl )
+            // InternalCompleteOCL.g:13808:2: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl();
@@ -40757,23 +40842,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl"
-    // InternalCompleteOCL.g:13786:1: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) ;
+    // InternalCompleteOCL.g:13814:1: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13790:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) )
-            // InternalCompleteOCL.g:13791:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
+            // InternalCompleteOCL.g:13818:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) )
+            // InternalCompleteOCL.g:13819:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
             {
-            // InternalCompleteOCL.g:13791:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
-            // InternalCompleteOCL.g:13792:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
+            // InternalCompleteOCL.g:13819:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
+            // InternalCompleteOCL.g:13820:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_3_1());
             }
-            // InternalCompleteOCL.g:13793:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
-            // InternalCompleteOCL.g:13793:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1
+            // InternalCompleteOCL.g:13821:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
+            // InternalCompleteOCL.g:13821:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1();
@@ -40808,16 +40893,16 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__0"
-    // InternalCompleteOCL.g:13807:1: rule__NavigatingCommaArgCS__Group_2_2__0 : rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 ;
+    // InternalCompleteOCL.g:13835:1: rule__NavigatingCommaArgCS__Group_2_2__0 : rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13811:1: ( rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 )
-            // InternalCompleteOCL.g:13812:2: rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1
+            // InternalCompleteOCL.g:13839:1: ( rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 )
+            // InternalCompleteOCL.g:13840:2: rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_66);
+            pushFollow(FollowSets000.FOLLOW_65);
             rule__NavigatingCommaArgCS__Group_2_2__0__Impl();
 
             state._fsp--;
@@ -40846,22 +40931,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__0__Impl"
-    // InternalCompleteOCL.g:13819:1: rule__NavigatingCommaArgCS__Group_2_2__0__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) ;
+    // InternalCompleteOCL.g:13847:1: rule__NavigatingCommaArgCS__Group_2_2__0__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13823:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) )
-            // InternalCompleteOCL.g:13824:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
+            // InternalCompleteOCL.g:13851:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) )
+            // InternalCompleteOCL.g:13852:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
             {
-            // InternalCompleteOCL.g:13824:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
-            // InternalCompleteOCL.g:13825:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
+            // InternalCompleteOCL.g:13852:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
+            // InternalCompleteOCL.g:13853:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_2_0());
             }
-            // InternalCompleteOCL.g:13826:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
+            // InternalCompleteOCL.g:13854:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
             int alt120=2;
             int LA120_0 = input.LA(1);
 
@@ -40870,7 +40955,7 @@
             }
             switch (alt120) {
                 case 1 :
-                    // InternalCompleteOCL.g:13826:2: rule__NavigatingCommaArgCS__Group_2_2_0__0
+                    // InternalCompleteOCL.g:13854:2: rule__NavigatingCommaArgCS__Group_2_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_2_0__0();
@@ -40908,16 +40993,16 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__1"
-    // InternalCompleteOCL.g:13836:1: rule__NavigatingCommaArgCS__Group_2_2__1 : rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 ;
+    // InternalCompleteOCL.g:13864:1: rule__NavigatingCommaArgCS__Group_2_2__1 : rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13840:1: ( rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 )
-            // InternalCompleteOCL.g:13841:2: rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2
+            // InternalCompleteOCL.g:13868:1: ( rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 )
+            // InternalCompleteOCL.g:13869:2: rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2
             {
-            pushFollow(FollowSets000.FOLLOW_66);
+            pushFollow(FollowSets000.FOLLOW_65);
             rule__NavigatingCommaArgCS__Group_2_2__1__Impl();
 
             state._fsp--;
@@ -40946,22 +41031,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__1__Impl"
-    // InternalCompleteOCL.g:13848:1: rule__NavigatingCommaArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) ;
+    // InternalCompleteOCL.g:13876:1: rule__NavigatingCommaArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13852:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) )
-            // InternalCompleteOCL.g:13853:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
+            // InternalCompleteOCL.g:13880:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) )
+            // InternalCompleteOCL.g:13881:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
             {
-            // InternalCompleteOCL.g:13853:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
-            // InternalCompleteOCL.g:13854:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
+            // InternalCompleteOCL.g:13881:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
+            // InternalCompleteOCL.g:13882:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_2_1());
             }
-            // InternalCompleteOCL.g:13855:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
+            // InternalCompleteOCL.g:13883:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
             int alt121=2;
             int LA121_0 = input.LA(1);
 
@@ -40970,7 +41055,7 @@
             }
             switch (alt121) {
                 case 1 :
-                    // InternalCompleteOCL.g:13855:2: rule__NavigatingCommaArgCS__Group_2_2_1__0
+                    // InternalCompleteOCL.g:13883:2: rule__NavigatingCommaArgCS__Group_2_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_2_1__0();
@@ -41008,14 +41093,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__2"
-    // InternalCompleteOCL.g:13865:1: rule__NavigatingCommaArgCS__Group_2_2__2 : rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 ;
+    // InternalCompleteOCL.g:13893:1: rule__NavigatingCommaArgCS__Group_2_2__2 : rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13869:1: ( rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 )
-            // InternalCompleteOCL.g:13870:2: rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3
+            // InternalCompleteOCL.g:13897:1: ( rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 )
+            // InternalCompleteOCL.g:13898:2: rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NavigatingCommaArgCS__Group_2_2__2__Impl();
@@ -41046,17 +41131,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__2__Impl"
-    // InternalCompleteOCL.g:13877:1: rule__NavigatingCommaArgCS__Group_2_2__2__Impl : ( 'in' ) ;
+    // InternalCompleteOCL.g:13905:1: rule__NavigatingCommaArgCS__Group_2_2__2__Impl : ( 'in' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13881:1: ( ( 'in' ) )
-            // InternalCompleteOCL.g:13882:1: ( 'in' )
+            // InternalCompleteOCL.g:13909:1: ( ( 'in' ) )
+            // InternalCompleteOCL.g:13910:1: ( 'in' )
             {
-            // InternalCompleteOCL.g:13882:1: ( 'in' )
-            // InternalCompleteOCL.g:13883:1: 'in'
+            // InternalCompleteOCL.g:13910:1: ( 'in' )
+            // InternalCompleteOCL.g:13911:1: 'in'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_2_2());
@@ -41087,14 +41172,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__3"
-    // InternalCompleteOCL.g:13896:1: rule__NavigatingCommaArgCS__Group_2_2__3 : rule__NavigatingCommaArgCS__Group_2_2__3__Impl ;
+    // InternalCompleteOCL.g:13924:1: rule__NavigatingCommaArgCS__Group_2_2__3 : rule__NavigatingCommaArgCS__Group_2_2__3__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13900:1: ( rule__NavigatingCommaArgCS__Group_2_2__3__Impl )
-            // InternalCompleteOCL.g:13901:2: rule__NavigatingCommaArgCS__Group_2_2__3__Impl
+            // InternalCompleteOCL.g:13928:1: ( rule__NavigatingCommaArgCS__Group_2_2__3__Impl )
+            // InternalCompleteOCL.g:13929:2: rule__NavigatingCommaArgCS__Group_2_2__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_2__3__Impl();
@@ -41120,23 +41205,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__3__Impl"
-    // InternalCompleteOCL.g:13907:1: rule__NavigatingCommaArgCS__Group_2_2__3__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) ;
+    // InternalCompleteOCL.g:13935:1: rule__NavigatingCommaArgCS__Group_2_2__3__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13911:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) )
-            // InternalCompleteOCL.g:13912:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
+            // InternalCompleteOCL.g:13939:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) )
+            // InternalCompleteOCL.g:13940:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
             {
-            // InternalCompleteOCL.g:13912:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
-            // InternalCompleteOCL.g:13913:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
+            // InternalCompleteOCL.g:13940:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
+            // InternalCompleteOCL.g:13941:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_2_3());
             }
-            // InternalCompleteOCL.g:13914:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
-            // InternalCompleteOCL.g:13914:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3
+            // InternalCompleteOCL.g:13942:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
+            // InternalCompleteOCL.g:13942:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3();
@@ -41171,16 +41256,16 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__0"
-    // InternalCompleteOCL.g:13932:1: rule__NavigatingCommaArgCS__Group_2_2_0__0 : rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 ;
+    // InternalCompleteOCL.g:13960:1: rule__NavigatingCommaArgCS__Group_2_2_0__0 : rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13936:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 )
-            // InternalCompleteOCL.g:13937:2: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1
+            // InternalCompleteOCL.g:13964:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 )
+            // InternalCompleteOCL.g:13965:2: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl();
 
             state._fsp--;
@@ -41209,17 +41294,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl"
-    // InternalCompleteOCL.g:13944:1: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:13972:1: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl : ( ':' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13948:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:13949:1: ( ':' )
+            // InternalCompleteOCL.g:13976:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:13977:1: ( ':' )
             {
-            // InternalCompleteOCL.g:13949:1: ( ':' )
-            // InternalCompleteOCL.g:13950:1: ':'
+            // InternalCompleteOCL.g:13977:1: ( ':' )
+            // InternalCompleteOCL.g:13978:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_2_0_0());
@@ -41250,14 +41335,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__1"
-    // InternalCompleteOCL.g:13963:1: rule__NavigatingCommaArgCS__Group_2_2_0__1 : rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl ;
+    // InternalCompleteOCL.g:13991:1: rule__NavigatingCommaArgCS__Group_2_2_0__1 : rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13967:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl )
-            // InternalCompleteOCL.g:13968:2: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl
+            // InternalCompleteOCL.g:13995:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl )
+            // InternalCompleteOCL.g:13996:2: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl();
@@ -41283,23 +41368,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl"
-    // InternalCompleteOCL.g:13974:1: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) ;
+    // InternalCompleteOCL.g:14002:1: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13978:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) )
-            // InternalCompleteOCL.g:13979:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
+            // InternalCompleteOCL.g:14006:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) )
+            // InternalCompleteOCL.g:14007:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
             {
-            // InternalCompleteOCL.g:13979:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
-            // InternalCompleteOCL.g:13980:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
+            // InternalCompleteOCL.g:14007:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
+            // InternalCompleteOCL.g:14008:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_2_0_1());
             }
-            // InternalCompleteOCL.g:13981:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
-            // InternalCompleteOCL.g:13981:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1
+            // InternalCompleteOCL.g:14009:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
+            // InternalCompleteOCL.g:14009:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1();
@@ -41334,16 +41419,16 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__0"
-    // InternalCompleteOCL.g:13995:1: rule__NavigatingCommaArgCS__Group_2_2_1__0 : rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 ;
+    // InternalCompleteOCL.g:14023:1: rule__NavigatingCommaArgCS__Group_2_2_1__0 : rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:13999:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 )
-            // InternalCompleteOCL.g:14000:2: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1
+            // InternalCompleteOCL.g:14027:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 )
+            // InternalCompleteOCL.g:14028:2: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl();
 
             state._fsp--;
@@ -41372,17 +41457,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl"
-    // InternalCompleteOCL.g:14007:1: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl : ( '<-' ) ;
+    // InternalCompleteOCL.g:14035:1: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14011:1: ( ( '<-' ) )
-            // InternalCompleteOCL.g:14012:1: ( '<-' )
+            // InternalCompleteOCL.g:14039:1: ( ( '<-' ) )
+            // InternalCompleteOCL.g:14040:1: ( '<-' )
             {
-            // InternalCompleteOCL.g:14012:1: ( '<-' )
-            // InternalCompleteOCL.g:14013:1: '<-'
+            // InternalCompleteOCL.g:14040:1: ( '<-' )
+            // InternalCompleteOCL.g:14041:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_2_1_0());
@@ -41413,14 +41498,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__1"
-    // InternalCompleteOCL.g:14026:1: rule__NavigatingCommaArgCS__Group_2_2_1__1 : rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl ;
+    // InternalCompleteOCL.g:14054:1: rule__NavigatingCommaArgCS__Group_2_2_1__1 : rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14030:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl )
-            // InternalCompleteOCL.g:14031:2: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl
+            // InternalCompleteOCL.g:14058:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl )
+            // InternalCompleteOCL.g:14059:2: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl();
@@ -41446,23 +41531,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl"
-    // InternalCompleteOCL.g:14037:1: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) ;
+    // InternalCompleteOCL.g:14065:1: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14041:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) )
-            // InternalCompleteOCL.g:14042:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
+            // InternalCompleteOCL.g:14069:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) )
+            // InternalCompleteOCL.g:14070:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
             {
-            // InternalCompleteOCL.g:14042:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
-            // InternalCompleteOCL.g:14043:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
+            // InternalCompleteOCL.g:14070:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
+            // InternalCompleteOCL.g:14071:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorAssignment_2_2_1_1());
             }
-            // InternalCompleteOCL.g:14044:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
-            // InternalCompleteOCL.g:14044:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1
+            // InternalCompleteOCL.g:14072:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
+            // InternalCompleteOCL.g:14072:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1();
@@ -41497,16 +41582,16 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__0"
-    // InternalCompleteOCL.g:14058:1: rule__NavigatingSemiArgCS__Group__0 : rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 ;
+    // InternalCompleteOCL.g:14086:1: rule__NavigatingSemiArgCS__Group__0 : rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 ;
     public final void rule__NavigatingSemiArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14062:1: ( rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 )
-            // InternalCompleteOCL.g:14063:2: rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1
+            // InternalCompleteOCL.g:14090:1: ( rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 )
+            // InternalCompleteOCL.g:14091:2: rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_68);
+            pushFollow(FollowSets000.FOLLOW_67);
             rule__NavigatingSemiArgCS__Group__0__Impl();
 
             state._fsp--;
@@ -41535,23 +41620,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__0__Impl"
-    // InternalCompleteOCL.g:14070:1: rule__NavigatingSemiArgCS__Group__0__Impl : ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:14098:1: rule__NavigatingSemiArgCS__Group__0__Impl : ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14074:1: ( ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) )
-            // InternalCompleteOCL.g:14075:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
+            // InternalCompleteOCL.g:14102:1: ( ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) )
+            // InternalCompleteOCL.g:14103:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:14075:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
-            // InternalCompleteOCL.g:14076:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
+            // InternalCompleteOCL.g:14103:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
+            // InternalCompleteOCL.g:14104:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0());
             }
-            // InternalCompleteOCL.g:14077:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
-            // InternalCompleteOCL.g:14077:2: rule__NavigatingSemiArgCS__PrefixAssignment_0
+            // InternalCompleteOCL.g:14105:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
+            // InternalCompleteOCL.g:14105:2: rule__NavigatingSemiArgCS__PrefixAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__PrefixAssignment_0();
@@ -41586,16 +41671,16 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__1"
-    // InternalCompleteOCL.g:14087:1: rule__NavigatingSemiArgCS__Group__1 : rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 ;
+    // InternalCompleteOCL.g:14115:1: rule__NavigatingSemiArgCS__Group__1 : rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 ;
     public final void rule__NavigatingSemiArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14091:1: ( rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 )
-            // InternalCompleteOCL.g:14092:2: rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2
+            // InternalCompleteOCL.g:14119:1: ( rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 )
+            // InternalCompleteOCL.g:14120:2: rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_16);
+            pushFollow(FollowSets000.FOLLOW_17);
             rule__NavigatingSemiArgCS__Group__1__Impl();
 
             state._fsp--;
@@ -41624,23 +41709,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__1__Impl"
-    // InternalCompleteOCL.g:14099:1: rule__NavigatingSemiArgCS__Group__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) ;
+    // InternalCompleteOCL.g:14127:1: rule__NavigatingSemiArgCS__Group__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14103:1: ( ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) )
-            // InternalCompleteOCL.g:14104:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalCompleteOCL.g:14131:1: ( ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) )
+            // InternalCompleteOCL.g:14132:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
             {
-            // InternalCompleteOCL.g:14104:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
-            // InternalCompleteOCL.g:14105:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalCompleteOCL.g:14132:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalCompleteOCL.g:14133:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
-            // InternalCompleteOCL.g:14106:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
-            // InternalCompleteOCL.g:14106:2: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1
+            // InternalCompleteOCL.g:14134:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalCompleteOCL.g:14134:2: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1();
@@ -41675,14 +41760,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__2"
-    // InternalCompleteOCL.g:14116:1: rule__NavigatingSemiArgCS__Group__2 : rule__NavigatingSemiArgCS__Group__2__Impl ;
+    // InternalCompleteOCL.g:14144:1: rule__NavigatingSemiArgCS__Group__2 : rule__NavigatingSemiArgCS__Group__2__Impl ;
     public final void rule__NavigatingSemiArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14120:1: ( rule__NavigatingSemiArgCS__Group__2__Impl )
-            // InternalCompleteOCL.g:14121:2: rule__NavigatingSemiArgCS__Group__2__Impl
+            // InternalCompleteOCL.g:14148:1: ( rule__NavigatingSemiArgCS__Group__2__Impl )
+            // InternalCompleteOCL.g:14149:2: rule__NavigatingSemiArgCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__Group__2__Impl();
@@ -41708,22 +41793,22 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__2__Impl"
-    // InternalCompleteOCL.g:14127:1: rule__NavigatingSemiArgCS__Group__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) ;
+    // InternalCompleteOCL.g:14155:1: rule__NavigatingSemiArgCS__Group__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) ;
     public final void rule__NavigatingSemiArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14131:1: ( ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) )
-            // InternalCompleteOCL.g:14132:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:14159:1: ( ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) )
+            // InternalCompleteOCL.g:14160:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
             {
-            // InternalCompleteOCL.g:14132:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
-            // InternalCompleteOCL.g:14133:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
+            // InternalCompleteOCL.g:14160:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:14161:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2());
             }
-            // InternalCompleteOCL.g:14134:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
+            // InternalCompleteOCL.g:14162:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             int alt122=2;
             int LA122_0 = input.LA(1);
 
@@ -41732,7 +41817,7 @@
             }
             switch (alt122) {
                 case 1 :
-                    // InternalCompleteOCL.g:14134:2: rule__NavigatingSemiArgCS__Group_2__0
+                    // InternalCompleteOCL.g:14162:2: rule__NavigatingSemiArgCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingSemiArgCS__Group_2__0();
@@ -41770,16 +41855,16 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__0"
-    // InternalCompleteOCL.g:14150:1: rule__NavigatingSemiArgCS__Group_2__0 : rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 ;
+    // InternalCompleteOCL.g:14178:1: rule__NavigatingSemiArgCS__Group_2__0 : rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 ;
     public final void rule__NavigatingSemiArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14154:1: ( rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 )
-            // InternalCompleteOCL.g:14155:2: rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1
+            // InternalCompleteOCL.g:14182:1: ( rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 )
+            // InternalCompleteOCL.g:14183:2: rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__NavigatingSemiArgCS__Group_2__0__Impl();
 
             state._fsp--;
@@ -41808,17 +41893,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__0__Impl"
-    // InternalCompleteOCL.g:14162:1: rule__NavigatingSemiArgCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:14190:1: rule__NavigatingSemiArgCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__NavigatingSemiArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14166:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:14167:1: ( ':' )
+            // InternalCompleteOCL.g:14194:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:14195:1: ( ':' )
             {
-            // InternalCompleteOCL.g:14167:1: ( ':' )
-            // InternalCompleteOCL.g:14168:1: ':'
+            // InternalCompleteOCL.g:14195:1: ( ':' )
+            // InternalCompleteOCL.g:14196:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
@@ -41849,16 +41934,16 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__1"
-    // InternalCompleteOCL.g:14181:1: rule__NavigatingSemiArgCS__Group_2__1 : rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 ;
+    // InternalCompleteOCL.g:14209:1: rule__NavigatingSemiArgCS__Group_2__1 : rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 ;
     public final void rule__NavigatingSemiArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14185:1: ( rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 )
-            // InternalCompleteOCL.g:14186:2: rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2
+            // InternalCompleteOCL.g:14213:1: ( rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 )
+            // InternalCompleteOCL.g:14214:2: rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2
             {
-            pushFollow(FollowSets000.FOLLOW_22);
+            pushFollow(FollowSets000.FOLLOW_23);
             rule__NavigatingSemiArgCS__Group_2__1__Impl();
 
             state._fsp--;
@@ -41887,23 +41972,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__1__Impl"
-    // InternalCompleteOCL.g:14193:1: rule__NavigatingSemiArgCS__Group_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) ;
+    // InternalCompleteOCL.g:14221:1: rule__NavigatingSemiArgCS__Group_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14197:1: ( ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) )
-            // InternalCompleteOCL.g:14198:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalCompleteOCL.g:14225:1: ( ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) )
+            // InternalCompleteOCL.g:14226:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
             {
-            // InternalCompleteOCL.g:14198:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
-            // InternalCompleteOCL.g:14199:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
+            // InternalCompleteOCL.g:14226:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalCompleteOCL.g:14227:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1());
             }
-            // InternalCompleteOCL.g:14200:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
-            // InternalCompleteOCL.g:14200:2: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1
+            // InternalCompleteOCL.g:14228:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
+            // InternalCompleteOCL.g:14228:2: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1();
@@ -41938,14 +42023,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__2"
-    // InternalCompleteOCL.g:14210:1: rule__NavigatingSemiArgCS__Group_2__2 : rule__NavigatingSemiArgCS__Group_2__2__Impl ;
+    // InternalCompleteOCL.g:14238:1: rule__NavigatingSemiArgCS__Group_2__2 : rule__NavigatingSemiArgCS__Group_2__2__Impl ;
     public final void rule__NavigatingSemiArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14214:1: ( rule__NavigatingSemiArgCS__Group_2__2__Impl )
-            // InternalCompleteOCL.g:14215:2: rule__NavigatingSemiArgCS__Group_2__2__Impl
+            // InternalCompleteOCL.g:14242:1: ( rule__NavigatingSemiArgCS__Group_2__2__Impl )
+            // InternalCompleteOCL.g:14243:2: rule__NavigatingSemiArgCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__Group_2__2__Impl();
@@ -41971,22 +42056,22 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__2__Impl"
-    // InternalCompleteOCL.g:14221:1: rule__NavigatingSemiArgCS__Group_2__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) ;
+    // InternalCompleteOCL.g:14249:1: rule__NavigatingSemiArgCS__Group_2__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) ;
     public final void rule__NavigatingSemiArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14225:1: ( ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) )
-            // InternalCompleteOCL.g:14226:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
+            // InternalCompleteOCL.g:14253:1: ( ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) )
+            // InternalCompleteOCL.g:14254:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
             {
-            // InternalCompleteOCL.g:14226:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
-            // InternalCompleteOCL.g:14227:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
+            // InternalCompleteOCL.g:14254:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
+            // InternalCompleteOCL.g:14255:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2());
             }
-            // InternalCompleteOCL.g:14228:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
+            // InternalCompleteOCL.g:14256:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             int alt123=2;
             int LA123_0 = input.LA(1);
 
@@ -41995,7 +42080,7 @@
             }
             switch (alt123) {
                 case 1 :
-                    // InternalCompleteOCL.g:14228:2: rule__NavigatingSemiArgCS__Group_2_2__0
+                    // InternalCompleteOCL.g:14256:2: rule__NavigatingSemiArgCS__Group_2_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingSemiArgCS__Group_2_2__0();
@@ -42033,14 +42118,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__0"
-    // InternalCompleteOCL.g:14244:1: rule__NavigatingSemiArgCS__Group_2_2__0 : rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 ;
+    // InternalCompleteOCL.g:14272:1: rule__NavigatingSemiArgCS__Group_2_2__0 : rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14248:1: ( rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 )
-            // InternalCompleteOCL.g:14249:2: rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1
+            // InternalCompleteOCL.g:14276:1: ( rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 )
+            // InternalCompleteOCL.g:14277:2: rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NavigatingSemiArgCS__Group_2_2__0__Impl();
@@ -42071,17 +42156,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__0__Impl"
-    // InternalCompleteOCL.g:14256:1: rule__NavigatingSemiArgCS__Group_2_2__0__Impl : ( '=' ) ;
+    // InternalCompleteOCL.g:14284:1: rule__NavigatingSemiArgCS__Group_2_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14260:1: ( ( '=' ) )
-            // InternalCompleteOCL.g:14261:1: ( '=' )
+            // InternalCompleteOCL.g:14288:1: ( ( '=' ) )
+            // InternalCompleteOCL.g:14289:1: ( '=' )
             {
-            // InternalCompleteOCL.g:14261:1: ( '=' )
-            // InternalCompleteOCL.g:14262:1: '='
+            // InternalCompleteOCL.g:14289:1: ( '=' )
+            // InternalCompleteOCL.g:14290:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
@@ -42112,14 +42197,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__1"
-    // InternalCompleteOCL.g:14275:1: rule__NavigatingSemiArgCS__Group_2_2__1 : rule__NavigatingSemiArgCS__Group_2_2__1__Impl ;
+    // InternalCompleteOCL.g:14303:1: rule__NavigatingSemiArgCS__Group_2_2__1 : rule__NavigatingSemiArgCS__Group_2_2__1__Impl ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14279:1: ( rule__NavigatingSemiArgCS__Group_2_2__1__Impl )
-            // InternalCompleteOCL.g:14280:2: rule__NavigatingSemiArgCS__Group_2_2__1__Impl
+            // InternalCompleteOCL.g:14307:1: ( rule__NavigatingSemiArgCS__Group_2_2__1__Impl )
+            // InternalCompleteOCL.g:14308:2: rule__NavigatingSemiArgCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__Group_2_2__1__Impl();
@@ -42145,23 +42230,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__1__Impl"
-    // InternalCompleteOCL.g:14286:1: rule__NavigatingSemiArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
+    // InternalCompleteOCL.g:14314:1: rule__NavigatingSemiArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14290:1: ( ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
-            // InternalCompleteOCL.g:14291:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalCompleteOCL.g:14318:1: ( ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
+            // InternalCompleteOCL.g:14319:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
             {
-            // InternalCompleteOCL.g:14291:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
-            // InternalCompleteOCL.g:14292:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalCompleteOCL.g:14319:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalCompleteOCL.g:14320:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
-            // InternalCompleteOCL.g:14293:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
-            // InternalCompleteOCL.g:14293:2: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1
+            // InternalCompleteOCL.g:14321:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalCompleteOCL.g:14321:2: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1();
@@ -42196,16 +42281,16 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__0"
-    // InternalCompleteOCL.g:14307:1: rule__CoIteratorVariableCS__Group__0 : rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 ;
+    // InternalCompleteOCL.g:14335:1: rule__CoIteratorVariableCS__Group__0 : rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 ;
     public final void rule__CoIteratorVariableCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14311:1: ( rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 )
-            // InternalCompleteOCL.g:14312:2: rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1
+            // InternalCompleteOCL.g:14339:1: ( rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 )
+            // InternalCompleteOCL.g:14340:2: rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_16);
+            pushFollow(FollowSets000.FOLLOW_17);
             rule__CoIteratorVariableCS__Group__0__Impl();
 
             state._fsp--;
@@ -42234,23 +42319,23 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__0__Impl"
-    // InternalCompleteOCL.g:14319:1: rule__CoIteratorVariableCS__Group__0__Impl : ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:14347:1: rule__CoIteratorVariableCS__Group__0__Impl : ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) ;
     public final void rule__CoIteratorVariableCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14323:1: ( ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) )
-            // InternalCompleteOCL.g:14324:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:14351:1: ( ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) )
+            // InternalCompleteOCL.g:14352:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:14324:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
-            // InternalCompleteOCL.g:14325:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:14352:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:14353:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getNameAssignment_0());
             }
-            // InternalCompleteOCL.g:14326:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
-            // InternalCompleteOCL.g:14326:2: rule__CoIteratorVariableCS__NameAssignment_0
+            // InternalCompleteOCL.g:14354:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:14354:2: rule__CoIteratorVariableCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__NameAssignment_0();
@@ -42285,14 +42370,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__1"
-    // InternalCompleteOCL.g:14336:1: rule__CoIteratorVariableCS__Group__1 : rule__CoIteratorVariableCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:14364:1: rule__CoIteratorVariableCS__Group__1 : rule__CoIteratorVariableCS__Group__1__Impl ;
     public final void rule__CoIteratorVariableCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14340:1: ( rule__CoIteratorVariableCS__Group__1__Impl )
-            // InternalCompleteOCL.g:14341:2: rule__CoIteratorVariableCS__Group__1__Impl
+            // InternalCompleteOCL.g:14368:1: ( rule__CoIteratorVariableCS__Group__1__Impl )
+            // InternalCompleteOCL.g:14369:2: rule__CoIteratorVariableCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__Group__1__Impl();
@@ -42318,22 +42403,22 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__1__Impl"
-    // InternalCompleteOCL.g:14347:1: rule__CoIteratorVariableCS__Group__1__Impl : ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) ;
+    // InternalCompleteOCL.g:14375:1: rule__CoIteratorVariableCS__Group__1__Impl : ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) ;
     public final void rule__CoIteratorVariableCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14351:1: ( ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) )
-            // InternalCompleteOCL.g:14352:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:14379:1: ( ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) )
+            // InternalCompleteOCL.g:14380:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
             {
-            // InternalCompleteOCL.g:14352:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
-            // InternalCompleteOCL.g:14353:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
+            // InternalCompleteOCL.g:14380:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:14381:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:14354:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
+            // InternalCompleteOCL.g:14382:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
             int alt124=2;
             int LA124_0 = input.LA(1);
 
@@ -42342,7 +42427,7 @@
             }
             switch (alt124) {
                 case 1 :
-                    // InternalCompleteOCL.g:14354:2: rule__CoIteratorVariableCS__Group_1__0
+                    // InternalCompleteOCL.g:14382:2: rule__CoIteratorVariableCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CoIteratorVariableCS__Group_1__0();
@@ -42380,16 +42465,16 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__0"
-    // InternalCompleteOCL.g:14368:1: rule__CoIteratorVariableCS__Group_1__0 : rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 ;
+    // InternalCompleteOCL.g:14396:1: rule__CoIteratorVariableCS__Group_1__0 : rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 ;
     public final void rule__CoIteratorVariableCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14372:1: ( rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 )
-            // InternalCompleteOCL.g:14373:2: rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1
+            // InternalCompleteOCL.g:14400:1: ( rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 )
+            // InternalCompleteOCL.g:14401:2: rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__CoIteratorVariableCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -42418,17 +42503,17 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:14380:1: rule__CoIteratorVariableCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:14408:1: rule__CoIteratorVariableCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__CoIteratorVariableCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14384:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:14385:1: ( ':' )
+            // InternalCompleteOCL.g:14412:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:14413:1: ( ':' )
             {
-            // InternalCompleteOCL.g:14385:1: ( ':' )
-            // InternalCompleteOCL.g:14386:1: ':'
+            // InternalCompleteOCL.g:14413:1: ( ':' )
+            // InternalCompleteOCL.g:14414:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getColonKeyword_1_0());
@@ -42459,14 +42544,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__1"
-    // InternalCompleteOCL.g:14399:1: rule__CoIteratorVariableCS__Group_1__1 : rule__CoIteratorVariableCS__Group_1__1__Impl ;
+    // InternalCompleteOCL.g:14427:1: rule__CoIteratorVariableCS__Group_1__1 : rule__CoIteratorVariableCS__Group_1__1__Impl ;
     public final void rule__CoIteratorVariableCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14403:1: ( rule__CoIteratorVariableCS__Group_1__1__Impl )
-            // InternalCompleteOCL.g:14404:2: rule__CoIteratorVariableCS__Group_1__1__Impl
+            // InternalCompleteOCL.g:14431:1: ( rule__CoIteratorVariableCS__Group_1__1__Impl )
+            // InternalCompleteOCL.g:14432:2: rule__CoIteratorVariableCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__Group_1__1__Impl();
@@ -42492,23 +42577,23 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:14410:1: rule__CoIteratorVariableCS__Group_1__1__Impl : ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:14438:1: rule__CoIteratorVariableCS__Group_1__1__Impl : ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__CoIteratorVariableCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14414:1: ( ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:14415:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
+            // InternalCompleteOCL.g:14442:1: ( ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:14443:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:14415:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
-            // InternalCompleteOCL.g:14416:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
+            // InternalCompleteOCL.g:14443:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
+            // InternalCompleteOCL.g:14444:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalCompleteOCL.g:14417:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
-            // InternalCompleteOCL.g:14417:2: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1
+            // InternalCompleteOCL.g:14445:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
+            // InternalCompleteOCL.g:14445:2: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1();
@@ -42543,14 +42628,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__0"
-    // InternalCompleteOCL.g:14431:1: rule__IfExpCS__Group__0 : rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 ;
+    // InternalCompleteOCL.g:14459:1: rule__IfExpCS__Group__0 : rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 ;
     public final void rule__IfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14435:1: ( rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 )
-            // InternalCompleteOCL.g:14436:2: rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1
+            // InternalCompleteOCL.g:14463:1: ( rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 )
+            // InternalCompleteOCL.g:14464:2: rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_41);
             rule__IfExpCS__Group__0__Impl();
@@ -42581,17 +42666,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:14443:1: rule__IfExpCS__Group__0__Impl : ( 'if' ) ;
+    // InternalCompleteOCL.g:14471:1: rule__IfExpCS__Group__0__Impl : ( 'if' ) ;
     public final void rule__IfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14447:1: ( ( 'if' ) )
-            // InternalCompleteOCL.g:14448:1: ( 'if' )
+            // InternalCompleteOCL.g:14475:1: ( ( 'if' ) )
+            // InternalCompleteOCL.g:14476:1: ( 'if' )
             {
-            // InternalCompleteOCL.g:14448:1: ( 'if' )
-            // InternalCompleteOCL.g:14449:1: 'if'
+            // InternalCompleteOCL.g:14476:1: ( 'if' )
+            // InternalCompleteOCL.g:14477:1: 'if'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getIfKeyword_0());
@@ -42622,16 +42707,16 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__1"
-    // InternalCompleteOCL.g:14462:1: rule__IfExpCS__Group__1 : rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 ;
+    // InternalCompleteOCL.g:14490:1: rule__IfExpCS__Group__1 : rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 ;
     public final void rule__IfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14466:1: ( rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 )
-            // InternalCompleteOCL.g:14467:2: rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2
+            // InternalCompleteOCL.g:14494:1: ( rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 )
+            // InternalCompleteOCL.g:14495:2: rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_69);
+            pushFollow(FollowSets000.FOLLOW_68);
             rule__IfExpCS__Group__1__Impl();
 
             state._fsp--;
@@ -42660,23 +42745,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:14474:1: rule__IfExpCS__Group__1__Impl : ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) ;
+    // InternalCompleteOCL.g:14502:1: rule__IfExpCS__Group__1__Impl : ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) ;
     public final void rule__IfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14478:1: ( ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) )
-            // InternalCompleteOCL.g:14479:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
+            // InternalCompleteOCL.g:14506:1: ( ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) )
+            // InternalCompleteOCL.g:14507:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
             {
-            // InternalCompleteOCL.g:14479:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
-            // InternalCompleteOCL.g:14480:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
+            // InternalCompleteOCL.g:14507:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
+            // InternalCompleteOCL.g:14508:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1());
             }
-            // InternalCompleteOCL.g:14481:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
-            // InternalCompleteOCL.g:14481:2: rule__IfExpCS__OwnedConditionAssignment_1
+            // InternalCompleteOCL.g:14509:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
+            // InternalCompleteOCL.g:14509:2: rule__IfExpCS__OwnedConditionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedConditionAssignment_1();
@@ -42711,14 +42796,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__2"
-    // InternalCompleteOCL.g:14491:1: rule__IfExpCS__Group__2 : rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 ;
+    // InternalCompleteOCL.g:14519:1: rule__IfExpCS__Group__2 : rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 ;
     public final void rule__IfExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14495:1: ( rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 )
-            // InternalCompleteOCL.g:14496:2: rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3
+            // InternalCompleteOCL.g:14523:1: ( rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 )
+            // InternalCompleteOCL.g:14524:2: rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__IfExpCS__Group__2__Impl();
@@ -42749,17 +42834,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__2__Impl"
-    // InternalCompleteOCL.g:14503:1: rule__IfExpCS__Group__2__Impl : ( 'then' ) ;
+    // InternalCompleteOCL.g:14531:1: rule__IfExpCS__Group__2__Impl : ( 'then' ) ;
     public final void rule__IfExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14507:1: ( ( 'then' ) )
-            // InternalCompleteOCL.g:14508:1: ( 'then' )
+            // InternalCompleteOCL.g:14535:1: ( ( 'then' ) )
+            // InternalCompleteOCL.g:14536:1: ( 'then' )
             {
-            // InternalCompleteOCL.g:14508:1: ( 'then' )
-            // InternalCompleteOCL.g:14509:1: 'then'
+            // InternalCompleteOCL.g:14536:1: ( 'then' )
+            // InternalCompleteOCL.g:14537:1: 'then'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getThenKeyword_2());
@@ -42790,16 +42875,16 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__3"
-    // InternalCompleteOCL.g:14522:1: rule__IfExpCS__Group__3 : rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 ;
+    // InternalCompleteOCL.g:14550:1: rule__IfExpCS__Group__3 : rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 ;
     public final void rule__IfExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14526:1: ( rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 )
-            // InternalCompleteOCL.g:14527:2: rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4
+            // InternalCompleteOCL.g:14554:1: ( rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 )
+            // InternalCompleteOCL.g:14555:2: rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_70);
+            pushFollow(FollowSets000.FOLLOW_69);
             rule__IfExpCS__Group__3__Impl();
 
             state._fsp--;
@@ -42828,23 +42913,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__3__Impl"
-    // InternalCompleteOCL.g:14534:1: rule__IfExpCS__Group__3__Impl : ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) ;
+    // InternalCompleteOCL.g:14562:1: rule__IfExpCS__Group__3__Impl : ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) ;
     public final void rule__IfExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14538:1: ( ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) )
-            // InternalCompleteOCL.g:14539:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalCompleteOCL.g:14566:1: ( ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) )
+            // InternalCompleteOCL.g:14567:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
             {
-            // InternalCompleteOCL.g:14539:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
-            // InternalCompleteOCL.g:14540:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalCompleteOCL.g:14567:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalCompleteOCL.g:14568:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
-            // InternalCompleteOCL.g:14541:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
-            // InternalCompleteOCL.g:14541:2: rule__IfExpCS__OwnedThenExpressionAssignment_3
+            // InternalCompleteOCL.g:14569:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalCompleteOCL.g:14569:2: rule__IfExpCS__OwnedThenExpressionAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedThenExpressionAssignment_3();
@@ -42879,16 +42964,16 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__4"
-    // InternalCompleteOCL.g:14551:1: rule__IfExpCS__Group__4 : rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 ;
+    // InternalCompleteOCL.g:14579:1: rule__IfExpCS__Group__4 : rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 ;
     public final void rule__IfExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14555:1: ( rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 )
-            // InternalCompleteOCL.g:14556:2: rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5
+            // InternalCompleteOCL.g:14583:1: ( rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 )
+            // InternalCompleteOCL.g:14584:2: rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_70);
+            pushFollow(FollowSets000.FOLLOW_69);
             rule__IfExpCS__Group__4__Impl();
 
             state._fsp--;
@@ -42917,22 +43002,22 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__4__Impl"
-    // InternalCompleteOCL.g:14563:1: rule__IfExpCS__Group__4__Impl : ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) ;
+    // InternalCompleteOCL.g:14591:1: rule__IfExpCS__Group__4__Impl : ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) ;
     public final void rule__IfExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14567:1: ( ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) )
-            // InternalCompleteOCL.g:14568:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
+            // InternalCompleteOCL.g:14595:1: ( ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) )
+            // InternalCompleteOCL.g:14596:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
             {
-            // InternalCompleteOCL.g:14568:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
-            // InternalCompleteOCL.g:14569:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
+            // InternalCompleteOCL.g:14596:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
+            // InternalCompleteOCL.g:14597:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4());
             }
-            // InternalCompleteOCL.g:14570:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
+            // InternalCompleteOCL.g:14598:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             loop125:
             do {
                 int alt125=2;
@@ -42945,9 +43030,9 @@
 
                 switch (alt125) {
             	case 1 :
-            	    // InternalCompleteOCL.g:14570:2: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4
+            	    // InternalCompleteOCL.g:14598:2: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_71);
+            	    pushFollow(FollowSets000.FOLLOW_70);
             	    rule__IfExpCS__OwnedIfThenExpressionsAssignment_4();
 
             	    state._fsp--;
@@ -42986,14 +43071,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__5"
-    // InternalCompleteOCL.g:14580:1: rule__IfExpCS__Group__5 : rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 ;
+    // InternalCompleteOCL.g:14608:1: rule__IfExpCS__Group__5 : rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 ;
     public final void rule__IfExpCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14584:1: ( rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 )
-            // InternalCompleteOCL.g:14585:2: rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6
+            // InternalCompleteOCL.g:14612:1: ( rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 )
+            // InternalCompleteOCL.g:14613:2: rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__IfExpCS__Group__5__Impl();
@@ -43024,17 +43109,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__5__Impl"
-    // InternalCompleteOCL.g:14592:1: rule__IfExpCS__Group__5__Impl : ( 'else' ) ;
+    // InternalCompleteOCL.g:14620:1: rule__IfExpCS__Group__5__Impl : ( 'else' ) ;
     public final void rule__IfExpCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14596:1: ( ( 'else' ) )
-            // InternalCompleteOCL.g:14597:1: ( 'else' )
+            // InternalCompleteOCL.g:14624:1: ( ( 'else' ) )
+            // InternalCompleteOCL.g:14625:1: ( 'else' )
             {
-            // InternalCompleteOCL.g:14597:1: ( 'else' )
-            // InternalCompleteOCL.g:14598:1: 'else'
+            // InternalCompleteOCL.g:14625:1: ( 'else' )
+            // InternalCompleteOCL.g:14626:1: 'else'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getElseKeyword_5());
@@ -43065,16 +43150,16 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__6"
-    // InternalCompleteOCL.g:14611:1: rule__IfExpCS__Group__6 : rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 ;
+    // InternalCompleteOCL.g:14639:1: rule__IfExpCS__Group__6 : rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 ;
     public final void rule__IfExpCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14615:1: ( rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 )
-            // InternalCompleteOCL.g:14616:2: rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7
+            // InternalCompleteOCL.g:14643:1: ( rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 )
+            // InternalCompleteOCL.g:14644:2: rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7
             {
-            pushFollow(FollowSets000.FOLLOW_72);
+            pushFollow(FollowSets000.FOLLOW_71);
             rule__IfExpCS__Group__6__Impl();
 
             state._fsp--;
@@ -43103,23 +43188,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__6__Impl"
-    // InternalCompleteOCL.g:14623:1: rule__IfExpCS__Group__6__Impl : ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) ;
+    // InternalCompleteOCL.g:14651:1: rule__IfExpCS__Group__6__Impl : ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) ;
     public final void rule__IfExpCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14627:1: ( ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) )
-            // InternalCompleteOCL.g:14628:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
+            // InternalCompleteOCL.g:14655:1: ( ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) )
+            // InternalCompleteOCL.g:14656:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
             {
-            // InternalCompleteOCL.g:14628:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
-            // InternalCompleteOCL.g:14629:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
+            // InternalCompleteOCL.g:14656:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
+            // InternalCompleteOCL.g:14657:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6());
             }
-            // InternalCompleteOCL.g:14630:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
-            // InternalCompleteOCL.g:14630:2: rule__IfExpCS__OwnedElseExpressionAssignment_6
+            // InternalCompleteOCL.g:14658:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
+            // InternalCompleteOCL.g:14658:2: rule__IfExpCS__OwnedElseExpressionAssignment_6
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedElseExpressionAssignment_6();
@@ -43154,14 +43239,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__7"
-    // InternalCompleteOCL.g:14640:1: rule__IfExpCS__Group__7 : rule__IfExpCS__Group__7__Impl ;
+    // InternalCompleteOCL.g:14668:1: rule__IfExpCS__Group__7 : rule__IfExpCS__Group__7__Impl ;
     public final void rule__IfExpCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14644:1: ( rule__IfExpCS__Group__7__Impl )
-            // InternalCompleteOCL.g:14645:2: rule__IfExpCS__Group__7__Impl
+            // InternalCompleteOCL.g:14672:1: ( rule__IfExpCS__Group__7__Impl )
+            // InternalCompleteOCL.g:14673:2: rule__IfExpCS__Group__7__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__Group__7__Impl();
@@ -43187,17 +43272,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__7__Impl"
-    // InternalCompleteOCL.g:14651:1: rule__IfExpCS__Group__7__Impl : ( 'endif' ) ;
+    // InternalCompleteOCL.g:14679:1: rule__IfExpCS__Group__7__Impl : ( 'endif' ) ;
     public final void rule__IfExpCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14655:1: ( ( 'endif' ) )
-            // InternalCompleteOCL.g:14656:1: ( 'endif' )
+            // InternalCompleteOCL.g:14683:1: ( ( 'endif' ) )
+            // InternalCompleteOCL.g:14684:1: ( 'endif' )
             {
-            // InternalCompleteOCL.g:14656:1: ( 'endif' )
-            // InternalCompleteOCL.g:14657:1: 'endif'
+            // InternalCompleteOCL.g:14684:1: ( 'endif' )
+            // InternalCompleteOCL.g:14685:1: 'endif'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
@@ -43228,14 +43313,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__0"
-    // InternalCompleteOCL.g:14686:1: rule__ElseIfThenExpCS__Group__0 : rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 ;
+    // InternalCompleteOCL.g:14714:1: rule__ElseIfThenExpCS__Group__0 : rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 ;
     public final void rule__ElseIfThenExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14690:1: ( rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 )
-            // InternalCompleteOCL.g:14691:2: rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1
+            // InternalCompleteOCL.g:14718:1: ( rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 )
+            // InternalCompleteOCL.g:14719:2: rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__ElseIfThenExpCS__Group__0__Impl();
@@ -43266,17 +43351,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:14698:1: rule__ElseIfThenExpCS__Group__0__Impl : ( 'elseif' ) ;
+    // InternalCompleteOCL.g:14726:1: rule__ElseIfThenExpCS__Group__0__Impl : ( 'elseif' ) ;
     public final void rule__ElseIfThenExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14702:1: ( ( 'elseif' ) )
-            // InternalCompleteOCL.g:14703:1: ( 'elseif' )
+            // InternalCompleteOCL.g:14730:1: ( ( 'elseif' ) )
+            // InternalCompleteOCL.g:14731:1: ( 'elseif' )
             {
-            // InternalCompleteOCL.g:14703:1: ( 'elseif' )
-            // InternalCompleteOCL.g:14704:1: 'elseif'
+            // InternalCompleteOCL.g:14731:1: ( 'elseif' )
+            // InternalCompleteOCL.g:14732:1: 'elseif'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
@@ -43307,16 +43392,16 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__1"
-    // InternalCompleteOCL.g:14717:1: rule__ElseIfThenExpCS__Group__1 : rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 ;
+    // InternalCompleteOCL.g:14745:1: rule__ElseIfThenExpCS__Group__1 : rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 ;
     public final void rule__ElseIfThenExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14721:1: ( rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 )
-            // InternalCompleteOCL.g:14722:2: rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2
+            // InternalCompleteOCL.g:14749:1: ( rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 )
+            // InternalCompleteOCL.g:14750:2: rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_69);
+            pushFollow(FollowSets000.FOLLOW_68);
             rule__ElseIfThenExpCS__Group__1__Impl();
 
             state._fsp--;
@@ -43345,23 +43430,23 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:14729:1: rule__ElseIfThenExpCS__Group__1__Impl : ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) ;
+    // InternalCompleteOCL.g:14757:1: rule__ElseIfThenExpCS__Group__1__Impl : ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) ;
     public final void rule__ElseIfThenExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14733:1: ( ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) )
-            // InternalCompleteOCL.g:14734:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
+            // InternalCompleteOCL.g:14761:1: ( ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) )
+            // InternalCompleteOCL.g:14762:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
             {
-            // InternalCompleteOCL.g:14734:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
-            // InternalCompleteOCL.g:14735:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
+            // InternalCompleteOCL.g:14762:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
+            // InternalCompleteOCL.g:14763:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1());
             }
-            // InternalCompleteOCL.g:14736:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
-            // InternalCompleteOCL.g:14736:2: rule__ElseIfThenExpCS__OwnedConditionAssignment_1
+            // InternalCompleteOCL.g:14764:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
+            // InternalCompleteOCL.g:14764:2: rule__ElseIfThenExpCS__OwnedConditionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ElseIfThenExpCS__OwnedConditionAssignment_1();
@@ -43396,14 +43481,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__2"
-    // InternalCompleteOCL.g:14746:1: rule__ElseIfThenExpCS__Group__2 : rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 ;
+    // InternalCompleteOCL.g:14774:1: rule__ElseIfThenExpCS__Group__2 : rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 ;
     public final void rule__ElseIfThenExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14750:1: ( rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 )
-            // InternalCompleteOCL.g:14751:2: rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3
+            // InternalCompleteOCL.g:14778:1: ( rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 )
+            // InternalCompleteOCL.g:14779:2: rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__ElseIfThenExpCS__Group__2__Impl();
@@ -43434,17 +43519,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__2__Impl"
-    // InternalCompleteOCL.g:14758:1: rule__ElseIfThenExpCS__Group__2__Impl : ( 'then' ) ;
+    // InternalCompleteOCL.g:14786:1: rule__ElseIfThenExpCS__Group__2__Impl : ( 'then' ) ;
     public final void rule__ElseIfThenExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14762:1: ( ( 'then' ) )
-            // InternalCompleteOCL.g:14763:1: ( 'then' )
+            // InternalCompleteOCL.g:14790:1: ( ( 'then' ) )
+            // InternalCompleteOCL.g:14791:1: ( 'then' )
             {
-            // InternalCompleteOCL.g:14763:1: ( 'then' )
-            // InternalCompleteOCL.g:14764:1: 'then'
+            // InternalCompleteOCL.g:14791:1: ( 'then' )
+            // InternalCompleteOCL.g:14792:1: 'then'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
@@ -43475,14 +43560,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__3"
-    // InternalCompleteOCL.g:14777:1: rule__ElseIfThenExpCS__Group__3 : rule__ElseIfThenExpCS__Group__3__Impl ;
+    // InternalCompleteOCL.g:14805:1: rule__ElseIfThenExpCS__Group__3 : rule__ElseIfThenExpCS__Group__3__Impl ;
     public final void rule__ElseIfThenExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14781:1: ( rule__ElseIfThenExpCS__Group__3__Impl )
-            // InternalCompleteOCL.g:14782:2: rule__ElseIfThenExpCS__Group__3__Impl
+            // InternalCompleteOCL.g:14809:1: ( rule__ElseIfThenExpCS__Group__3__Impl )
+            // InternalCompleteOCL.g:14810:2: rule__ElseIfThenExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ElseIfThenExpCS__Group__3__Impl();
@@ -43508,23 +43593,23 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__3__Impl"
-    // InternalCompleteOCL.g:14788:1: rule__ElseIfThenExpCS__Group__3__Impl : ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) ;
+    // InternalCompleteOCL.g:14816:1: rule__ElseIfThenExpCS__Group__3__Impl : ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) ;
     public final void rule__ElseIfThenExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14792:1: ( ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) )
-            // InternalCompleteOCL.g:14793:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalCompleteOCL.g:14820:1: ( ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) )
+            // InternalCompleteOCL.g:14821:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
             {
-            // InternalCompleteOCL.g:14793:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
-            // InternalCompleteOCL.g:14794:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalCompleteOCL.g:14821:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalCompleteOCL.g:14822:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
-            // InternalCompleteOCL.g:14795:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
-            // InternalCompleteOCL.g:14795:2: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3
+            // InternalCompleteOCL.g:14823:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalCompleteOCL.g:14823:2: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3();
@@ -43559,16 +43644,16 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__0"
-    // InternalCompleteOCL.g:14813:1: rule__LetExpCS__Group__0 : rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 ;
+    // InternalCompleteOCL.g:14841:1: rule__LetExpCS__Group__0 : rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 ;
     public final void rule__LetExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14817:1: ( rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 )
-            // InternalCompleteOCL.g:14818:2: rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1
+            // InternalCompleteOCL.g:14845:1: ( rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 )
+            // InternalCompleteOCL.g:14846:2: rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__LetExpCS__Group__0__Impl();
 
             state._fsp--;
@@ -43597,17 +43682,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:14825:1: rule__LetExpCS__Group__0__Impl : ( 'let' ) ;
+    // InternalCompleteOCL.g:14853:1: rule__LetExpCS__Group__0__Impl : ( 'let' ) ;
     public final void rule__LetExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14829:1: ( ( 'let' ) )
-            // InternalCompleteOCL.g:14830:1: ( 'let' )
+            // InternalCompleteOCL.g:14857:1: ( ( 'let' ) )
+            // InternalCompleteOCL.g:14858:1: ( 'let' )
             {
-            // InternalCompleteOCL.g:14830:1: ( 'let' )
-            // InternalCompleteOCL.g:14831:1: 'let'
+            // InternalCompleteOCL.g:14858:1: ( 'let' )
+            // InternalCompleteOCL.g:14859:1: 'let'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getLetKeyword_0());
@@ -43638,16 +43723,16 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__1"
-    // InternalCompleteOCL.g:14844:1: rule__LetExpCS__Group__1 : rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 ;
+    // InternalCompleteOCL.g:14872:1: rule__LetExpCS__Group__1 : rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 ;
     public final void rule__LetExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14848:1: ( rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 )
-            // InternalCompleteOCL.g:14849:2: rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2
+            // InternalCompleteOCL.g:14876:1: ( rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 )
+            // InternalCompleteOCL.g:14877:2: rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_73);
+            pushFollow(FollowSets000.FOLLOW_72);
             rule__LetExpCS__Group__1__Impl();
 
             state._fsp--;
@@ -43676,23 +43761,23 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:14856:1: rule__LetExpCS__Group__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) ;
+    // InternalCompleteOCL.g:14884:1: rule__LetExpCS__Group__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) ;
     public final void rule__LetExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14860:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) )
-            // InternalCompleteOCL.g:14861:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
+            // InternalCompleteOCL.g:14888:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) )
+            // InternalCompleteOCL.g:14889:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
             {
-            // InternalCompleteOCL.g:14861:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
-            // InternalCompleteOCL.g:14862:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
+            // InternalCompleteOCL.g:14889:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
+            // InternalCompleteOCL.g:14890:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1());
             }
-            // InternalCompleteOCL.g:14863:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
-            // InternalCompleteOCL.g:14863:2: rule__LetExpCS__OwnedVariablesAssignment_1
+            // InternalCompleteOCL.g:14891:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
+            // InternalCompleteOCL.g:14891:2: rule__LetExpCS__OwnedVariablesAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__OwnedVariablesAssignment_1();
@@ -43727,16 +43812,16 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__2"
-    // InternalCompleteOCL.g:14873:1: rule__LetExpCS__Group__2 : rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 ;
+    // InternalCompleteOCL.g:14901:1: rule__LetExpCS__Group__2 : rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 ;
     public final void rule__LetExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14877:1: ( rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 )
-            // InternalCompleteOCL.g:14878:2: rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3
+            // InternalCompleteOCL.g:14905:1: ( rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 )
+            // InternalCompleteOCL.g:14906:2: rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_73);
+            pushFollow(FollowSets000.FOLLOW_72);
             rule__LetExpCS__Group__2__Impl();
 
             state._fsp--;
@@ -43765,22 +43850,22 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__2__Impl"
-    // InternalCompleteOCL.g:14885:1: rule__LetExpCS__Group__2__Impl : ( ( rule__LetExpCS__Group_2__0 )* ) ;
+    // InternalCompleteOCL.g:14913:1: rule__LetExpCS__Group__2__Impl : ( ( rule__LetExpCS__Group_2__0 )* ) ;
     public final void rule__LetExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14889:1: ( ( ( rule__LetExpCS__Group_2__0 )* ) )
-            // InternalCompleteOCL.g:14890:1: ( ( rule__LetExpCS__Group_2__0 )* )
+            // InternalCompleteOCL.g:14917:1: ( ( ( rule__LetExpCS__Group_2__0 )* ) )
+            // InternalCompleteOCL.g:14918:1: ( ( rule__LetExpCS__Group_2__0 )* )
             {
-            // InternalCompleteOCL.g:14890:1: ( ( rule__LetExpCS__Group_2__0 )* )
-            // InternalCompleteOCL.g:14891:1: ( rule__LetExpCS__Group_2__0 )*
+            // InternalCompleteOCL.g:14918:1: ( ( rule__LetExpCS__Group_2__0 )* )
+            // InternalCompleteOCL.g:14919:1: ( rule__LetExpCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getGroup_2());
             }
-            // InternalCompleteOCL.g:14892:1: ( rule__LetExpCS__Group_2__0 )*
+            // InternalCompleteOCL.g:14920:1: ( rule__LetExpCS__Group_2__0 )*
             loop126:
             do {
                 int alt126=2;
@@ -43793,9 +43878,9 @@
 
                 switch (alt126) {
             	case 1 :
-            	    // InternalCompleteOCL.g:14892:2: rule__LetExpCS__Group_2__0
+            	    // InternalCompleteOCL.g:14920:2: rule__LetExpCS__Group_2__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__LetExpCS__Group_2__0();
 
             	    state._fsp--;
@@ -43834,14 +43919,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__3"
-    // InternalCompleteOCL.g:14902:1: rule__LetExpCS__Group__3 : rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 ;
+    // InternalCompleteOCL.g:14930:1: rule__LetExpCS__Group__3 : rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 ;
     public final void rule__LetExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14906:1: ( rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 )
-            // InternalCompleteOCL.g:14907:2: rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4
+            // InternalCompleteOCL.g:14934:1: ( rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 )
+            // InternalCompleteOCL.g:14935:2: rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__LetExpCS__Group__3__Impl();
@@ -43872,17 +43957,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__3__Impl"
-    // InternalCompleteOCL.g:14914:1: rule__LetExpCS__Group__3__Impl : ( 'in' ) ;
+    // InternalCompleteOCL.g:14942:1: rule__LetExpCS__Group__3__Impl : ( 'in' ) ;
     public final void rule__LetExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14918:1: ( ( 'in' ) )
-            // InternalCompleteOCL.g:14919:1: ( 'in' )
+            // InternalCompleteOCL.g:14946:1: ( ( 'in' ) )
+            // InternalCompleteOCL.g:14947:1: ( 'in' )
             {
-            // InternalCompleteOCL.g:14919:1: ( 'in' )
-            // InternalCompleteOCL.g:14920:1: 'in'
+            // InternalCompleteOCL.g:14947:1: ( 'in' )
+            // InternalCompleteOCL.g:14948:1: 'in'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getInKeyword_3());
@@ -43913,14 +43998,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__4"
-    // InternalCompleteOCL.g:14933:1: rule__LetExpCS__Group__4 : rule__LetExpCS__Group__4__Impl ;
+    // InternalCompleteOCL.g:14961:1: rule__LetExpCS__Group__4 : rule__LetExpCS__Group__4__Impl ;
     public final void rule__LetExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14937:1: ( rule__LetExpCS__Group__4__Impl )
-            // InternalCompleteOCL.g:14938:2: rule__LetExpCS__Group__4__Impl
+            // InternalCompleteOCL.g:14965:1: ( rule__LetExpCS__Group__4__Impl )
+            // InternalCompleteOCL.g:14966:2: rule__LetExpCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__Group__4__Impl();
@@ -43946,23 +44031,23 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__4__Impl"
-    // InternalCompleteOCL.g:14944:1: rule__LetExpCS__Group__4__Impl : ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) ;
+    // InternalCompleteOCL.g:14972:1: rule__LetExpCS__Group__4__Impl : ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) ;
     public final void rule__LetExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14948:1: ( ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) )
-            // InternalCompleteOCL.g:14949:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
+            // InternalCompleteOCL.g:14976:1: ( ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) )
+            // InternalCompleteOCL.g:14977:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
             {
-            // InternalCompleteOCL.g:14949:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
-            // InternalCompleteOCL.g:14950:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
+            // InternalCompleteOCL.g:14977:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
+            // InternalCompleteOCL.g:14978:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4());
             }
-            // InternalCompleteOCL.g:14951:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
-            // InternalCompleteOCL.g:14951:2: rule__LetExpCS__OwnedInExpressionAssignment_4
+            // InternalCompleteOCL.g:14979:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
+            // InternalCompleteOCL.g:14979:2: rule__LetExpCS__OwnedInExpressionAssignment_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__OwnedInExpressionAssignment_4();
@@ -43997,16 +44082,16 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__0"
-    // InternalCompleteOCL.g:14971:1: rule__LetExpCS__Group_2__0 : rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 ;
+    // InternalCompleteOCL.g:14999:1: rule__LetExpCS__Group_2__0 : rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 ;
     public final void rule__LetExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14975:1: ( rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 )
-            // InternalCompleteOCL.g:14976:2: rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1
+            // InternalCompleteOCL.g:15003:1: ( rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 )
+            // InternalCompleteOCL.g:15004:2: rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_20);
+            pushFollow(FollowSets000.FOLLOW_21);
             rule__LetExpCS__Group_2__0__Impl();
 
             state._fsp--;
@@ -44035,17 +44120,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__0__Impl"
-    // InternalCompleteOCL.g:14983:1: rule__LetExpCS__Group_2__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:15011:1: rule__LetExpCS__Group_2__0__Impl : ( ',' ) ;
     public final void rule__LetExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:14987:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:14988:1: ( ',' )
+            // InternalCompleteOCL.g:15015:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:15016:1: ( ',' )
             {
-            // InternalCompleteOCL.g:14988:1: ( ',' )
-            // InternalCompleteOCL.g:14989:1: ','
+            // InternalCompleteOCL.g:15016:1: ( ',' )
+            // InternalCompleteOCL.g:15017:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
@@ -44076,14 +44161,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__1"
-    // InternalCompleteOCL.g:15002:1: rule__LetExpCS__Group_2__1 : rule__LetExpCS__Group_2__1__Impl ;
+    // InternalCompleteOCL.g:15030:1: rule__LetExpCS__Group_2__1 : rule__LetExpCS__Group_2__1__Impl ;
     public final void rule__LetExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15006:1: ( rule__LetExpCS__Group_2__1__Impl )
-            // InternalCompleteOCL.g:15007:2: rule__LetExpCS__Group_2__1__Impl
+            // InternalCompleteOCL.g:15034:1: ( rule__LetExpCS__Group_2__1__Impl )
+            // InternalCompleteOCL.g:15035:2: rule__LetExpCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__Group_2__1__Impl();
@@ -44109,23 +44194,23 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__1__Impl"
-    // InternalCompleteOCL.g:15013:1: rule__LetExpCS__Group_2__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) ;
+    // InternalCompleteOCL.g:15041:1: rule__LetExpCS__Group_2__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) ;
     public final void rule__LetExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15017:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) )
-            // InternalCompleteOCL.g:15018:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
+            // InternalCompleteOCL.g:15045:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) )
+            // InternalCompleteOCL.g:15046:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
             {
-            // InternalCompleteOCL.g:15018:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
-            // InternalCompleteOCL.g:15019:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
+            // InternalCompleteOCL.g:15046:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
+            // InternalCompleteOCL.g:15047:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1());
             }
-            // InternalCompleteOCL.g:15020:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
-            // InternalCompleteOCL.g:15020:2: rule__LetExpCS__OwnedVariablesAssignment_2_1
+            // InternalCompleteOCL.g:15048:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
+            // InternalCompleteOCL.g:15048:2: rule__LetExpCS__OwnedVariablesAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__OwnedVariablesAssignment_2_1();
@@ -44160,16 +44245,16 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__0"
-    // InternalCompleteOCL.g:15034:1: rule__LetVariableCS__Group__0 : rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 ;
+    // InternalCompleteOCL.g:15062:1: rule__LetVariableCS__Group__0 : rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 ;
     public final void rule__LetVariableCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15038:1: ( rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 )
-            // InternalCompleteOCL.g:15039:2: rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1
+            // InternalCompleteOCL.g:15066:1: ( rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 )
+            // InternalCompleteOCL.g:15067:2: rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_74);
+            pushFollow(FollowSets000.FOLLOW_73);
             rule__LetVariableCS__Group__0__Impl();
 
             state._fsp--;
@@ -44198,23 +44283,23 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__0__Impl"
-    // InternalCompleteOCL.g:15046:1: rule__LetVariableCS__Group__0__Impl : ( ( rule__LetVariableCS__NameAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:15074:1: rule__LetVariableCS__Group__0__Impl : ( ( rule__LetVariableCS__NameAssignment_0 ) ) ;
     public final void rule__LetVariableCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15050:1: ( ( ( rule__LetVariableCS__NameAssignment_0 ) ) )
-            // InternalCompleteOCL.g:15051:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:15078:1: ( ( ( rule__LetVariableCS__NameAssignment_0 ) ) )
+            // InternalCompleteOCL.g:15079:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:15051:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
-            // InternalCompleteOCL.g:15052:1: ( rule__LetVariableCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:15079:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:15080:1: ( rule__LetVariableCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getNameAssignment_0());
             }
-            // InternalCompleteOCL.g:15053:1: ( rule__LetVariableCS__NameAssignment_0 )
-            // InternalCompleteOCL.g:15053:2: rule__LetVariableCS__NameAssignment_0
+            // InternalCompleteOCL.g:15081:1: ( rule__LetVariableCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:15081:2: rule__LetVariableCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__NameAssignment_0();
@@ -44249,16 +44334,16 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__1"
-    // InternalCompleteOCL.g:15063:1: rule__LetVariableCS__Group__1 : rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 ;
+    // InternalCompleteOCL.g:15091:1: rule__LetVariableCS__Group__1 : rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 ;
     public final void rule__LetVariableCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15067:1: ( rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 )
-            // InternalCompleteOCL.g:15068:2: rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2
+            // InternalCompleteOCL.g:15095:1: ( rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 )
+            // InternalCompleteOCL.g:15096:2: rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_74);
+            pushFollow(FollowSets000.FOLLOW_73);
             rule__LetVariableCS__Group__1__Impl();
 
             state._fsp--;
@@ -44287,22 +44372,22 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__1__Impl"
-    // InternalCompleteOCL.g:15075:1: rule__LetVariableCS__Group__1__Impl : ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) ;
+    // InternalCompleteOCL.g:15103:1: rule__LetVariableCS__Group__1__Impl : ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) ;
     public final void rule__LetVariableCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15079:1: ( ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) )
-            // InternalCompleteOCL.g:15080:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
+            // InternalCompleteOCL.g:15107:1: ( ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) )
+            // InternalCompleteOCL.g:15108:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
             {
-            // InternalCompleteOCL.g:15080:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
-            // InternalCompleteOCL.g:15081:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
+            // InternalCompleteOCL.g:15108:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
+            // InternalCompleteOCL.g:15109:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1());
             }
-            // InternalCompleteOCL.g:15082:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
+            // InternalCompleteOCL.g:15110:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             int alt127=2;
             int LA127_0 = input.LA(1);
 
@@ -44311,7 +44396,7 @@
             }
             switch (alt127) {
                 case 1 :
-                    // InternalCompleteOCL.g:15082:2: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1
+                    // InternalCompleteOCL.g:15110:2: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1();
@@ -44349,16 +44434,16 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__2"
-    // InternalCompleteOCL.g:15092:1: rule__LetVariableCS__Group__2 : rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 ;
+    // InternalCompleteOCL.g:15120:1: rule__LetVariableCS__Group__2 : rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 ;
     public final void rule__LetVariableCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15096:1: ( rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 )
-            // InternalCompleteOCL.g:15097:2: rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3
+            // InternalCompleteOCL.g:15124:1: ( rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 )
+            // InternalCompleteOCL.g:15125:2: rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_74);
+            pushFollow(FollowSets000.FOLLOW_73);
             rule__LetVariableCS__Group__2__Impl();
 
             state._fsp--;
@@ -44387,22 +44472,22 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__2__Impl"
-    // InternalCompleteOCL.g:15104:1: rule__LetVariableCS__Group__2__Impl : ( ( rule__LetVariableCS__Group_2__0 )? ) ;
+    // InternalCompleteOCL.g:15132:1: rule__LetVariableCS__Group__2__Impl : ( ( rule__LetVariableCS__Group_2__0 )? ) ;
     public final void rule__LetVariableCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15108:1: ( ( ( rule__LetVariableCS__Group_2__0 )? ) )
-            // InternalCompleteOCL.g:15109:1: ( ( rule__LetVariableCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:15136:1: ( ( ( rule__LetVariableCS__Group_2__0 )? ) )
+            // InternalCompleteOCL.g:15137:1: ( ( rule__LetVariableCS__Group_2__0 )? )
             {
-            // InternalCompleteOCL.g:15109:1: ( ( rule__LetVariableCS__Group_2__0 )? )
-            // InternalCompleteOCL.g:15110:1: ( rule__LetVariableCS__Group_2__0 )?
+            // InternalCompleteOCL.g:15137:1: ( ( rule__LetVariableCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:15138:1: ( rule__LetVariableCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getGroup_2());
             }
-            // InternalCompleteOCL.g:15111:1: ( rule__LetVariableCS__Group_2__0 )?
+            // InternalCompleteOCL.g:15139:1: ( rule__LetVariableCS__Group_2__0 )?
             int alt128=2;
             int LA128_0 = input.LA(1);
 
@@ -44411,7 +44496,7 @@
             }
             switch (alt128) {
                 case 1 :
-                    // InternalCompleteOCL.g:15111:2: rule__LetVariableCS__Group_2__0
+                    // InternalCompleteOCL.g:15139:2: rule__LetVariableCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LetVariableCS__Group_2__0();
@@ -44449,14 +44534,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__3"
-    // InternalCompleteOCL.g:15121:1: rule__LetVariableCS__Group__3 : rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 ;
+    // InternalCompleteOCL.g:15149:1: rule__LetVariableCS__Group__3 : rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 ;
     public final void rule__LetVariableCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15125:1: ( rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 )
-            // InternalCompleteOCL.g:15126:2: rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4
+            // InternalCompleteOCL.g:15153:1: ( rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 )
+            // InternalCompleteOCL.g:15154:2: rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__LetVariableCS__Group__3__Impl();
@@ -44487,17 +44572,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__3__Impl"
-    // InternalCompleteOCL.g:15133:1: rule__LetVariableCS__Group__3__Impl : ( '=' ) ;
+    // InternalCompleteOCL.g:15161:1: rule__LetVariableCS__Group__3__Impl : ( '=' ) ;
     public final void rule__LetVariableCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15137:1: ( ( '=' ) )
-            // InternalCompleteOCL.g:15138:1: ( '=' )
+            // InternalCompleteOCL.g:15165:1: ( ( '=' ) )
+            // InternalCompleteOCL.g:15166:1: ( '=' )
             {
-            // InternalCompleteOCL.g:15138:1: ( '=' )
-            // InternalCompleteOCL.g:15139:1: '='
+            // InternalCompleteOCL.g:15166:1: ( '=' )
+            // InternalCompleteOCL.g:15167:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
@@ -44528,14 +44613,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__4"
-    // InternalCompleteOCL.g:15152:1: rule__LetVariableCS__Group__4 : rule__LetVariableCS__Group__4__Impl ;
+    // InternalCompleteOCL.g:15180:1: rule__LetVariableCS__Group__4 : rule__LetVariableCS__Group__4__Impl ;
     public final void rule__LetVariableCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15156:1: ( rule__LetVariableCS__Group__4__Impl )
-            // InternalCompleteOCL.g:15157:2: rule__LetVariableCS__Group__4__Impl
+            // InternalCompleteOCL.g:15184:1: ( rule__LetVariableCS__Group__4__Impl )
+            // InternalCompleteOCL.g:15185:2: rule__LetVariableCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__Group__4__Impl();
@@ -44561,23 +44646,23 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__4__Impl"
-    // InternalCompleteOCL.g:15163:1: rule__LetVariableCS__Group__4__Impl : ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) ;
+    // InternalCompleteOCL.g:15191:1: rule__LetVariableCS__Group__4__Impl : ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) ;
     public final void rule__LetVariableCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15167:1: ( ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) )
-            // InternalCompleteOCL.g:15168:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
+            // InternalCompleteOCL.g:15195:1: ( ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) )
+            // InternalCompleteOCL.g:15196:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
             {
-            // InternalCompleteOCL.g:15168:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
-            // InternalCompleteOCL.g:15169:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
+            // InternalCompleteOCL.g:15196:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
+            // InternalCompleteOCL.g:15197:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4());
             }
-            // InternalCompleteOCL.g:15170:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
-            // InternalCompleteOCL.g:15170:2: rule__LetVariableCS__OwnedInitExpressionAssignment_4
+            // InternalCompleteOCL.g:15198:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
+            // InternalCompleteOCL.g:15198:2: rule__LetVariableCS__OwnedInitExpressionAssignment_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__OwnedInitExpressionAssignment_4();
@@ -44612,16 +44697,16 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__0"
-    // InternalCompleteOCL.g:15190:1: rule__LetVariableCS__Group_2__0 : rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 ;
+    // InternalCompleteOCL.g:15218:1: rule__LetVariableCS__Group_2__0 : rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 ;
     public final void rule__LetVariableCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15194:1: ( rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 )
-            // InternalCompleteOCL.g:15195:2: rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1
+            // InternalCompleteOCL.g:15222:1: ( rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 )
+            // InternalCompleteOCL.g:15223:2: rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__LetVariableCS__Group_2__0__Impl();
 
             state._fsp--;
@@ -44650,17 +44735,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__0__Impl"
-    // InternalCompleteOCL.g:15202:1: rule__LetVariableCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalCompleteOCL.g:15230:1: rule__LetVariableCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__LetVariableCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15206:1: ( ( ':' ) )
-            // InternalCompleteOCL.g:15207:1: ( ':' )
+            // InternalCompleteOCL.g:15234:1: ( ( ':' ) )
+            // InternalCompleteOCL.g:15235:1: ( ':' )
             {
-            // InternalCompleteOCL.g:15207:1: ( ':' )
-            // InternalCompleteOCL.g:15208:1: ':'
+            // InternalCompleteOCL.g:15235:1: ( ':' )
+            // InternalCompleteOCL.g:15236:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
@@ -44691,14 +44776,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__1"
-    // InternalCompleteOCL.g:15221:1: rule__LetVariableCS__Group_2__1 : rule__LetVariableCS__Group_2__1__Impl ;
+    // InternalCompleteOCL.g:15249:1: rule__LetVariableCS__Group_2__1 : rule__LetVariableCS__Group_2__1__Impl ;
     public final void rule__LetVariableCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15225:1: ( rule__LetVariableCS__Group_2__1__Impl )
-            // InternalCompleteOCL.g:15226:2: rule__LetVariableCS__Group_2__1__Impl
+            // InternalCompleteOCL.g:15253:1: ( rule__LetVariableCS__Group_2__1__Impl )
+            // InternalCompleteOCL.g:15254:2: rule__LetVariableCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__Group_2__1__Impl();
@@ -44724,23 +44809,23 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__1__Impl"
-    // InternalCompleteOCL.g:15232:1: rule__LetVariableCS__Group_2__1__Impl : ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) ;
+    // InternalCompleteOCL.g:15260:1: rule__LetVariableCS__Group_2__1__Impl : ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) ;
     public final void rule__LetVariableCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15236:1: ( ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) )
-            // InternalCompleteOCL.g:15237:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
+            // InternalCompleteOCL.g:15264:1: ( ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) )
+            // InternalCompleteOCL.g:15265:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
             {
-            // InternalCompleteOCL.g:15237:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
-            // InternalCompleteOCL.g:15238:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
+            // InternalCompleteOCL.g:15265:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
+            // InternalCompleteOCL.g:15266:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1());
             }
-            // InternalCompleteOCL.g:15239:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
-            // InternalCompleteOCL.g:15239:2: rule__LetVariableCS__OwnedTypeAssignment_2_1
+            // InternalCompleteOCL.g:15267:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
+            // InternalCompleteOCL.g:15267:2: rule__LetVariableCS__OwnedTypeAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__OwnedTypeAssignment_2_1();
@@ -44775,14 +44860,14 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__0"
-    // InternalCompleteOCL.g:15253:1: rule__NestedExpCS__Group__0 : rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 ;
+    // InternalCompleteOCL.g:15281:1: rule__NestedExpCS__Group__0 : rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 ;
     public final void rule__NestedExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15257:1: ( rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 )
-            // InternalCompleteOCL.g:15258:2: rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1
+            // InternalCompleteOCL.g:15285:1: ( rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 )
+            // InternalCompleteOCL.g:15286:2: rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NestedExpCS__Group__0__Impl();
@@ -44813,17 +44898,17 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:15265:1: rule__NestedExpCS__Group__0__Impl : ( '(' ) ;
+    // InternalCompleteOCL.g:15293:1: rule__NestedExpCS__Group__0__Impl : ( '(' ) ;
     public final void rule__NestedExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15269:1: ( ( '(' ) )
-            // InternalCompleteOCL.g:15270:1: ( '(' )
+            // InternalCompleteOCL.g:15297:1: ( ( '(' ) )
+            // InternalCompleteOCL.g:15298:1: ( '(' )
             {
-            // InternalCompleteOCL.g:15270:1: ( '(' )
-            // InternalCompleteOCL.g:15271:1: '('
+            // InternalCompleteOCL.g:15298:1: ( '(' )
+            // InternalCompleteOCL.g:15299:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
@@ -44854,14 +44939,14 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__1"
-    // InternalCompleteOCL.g:15284:1: rule__NestedExpCS__Group__1 : rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 ;
+    // InternalCompleteOCL.g:15312:1: rule__NestedExpCS__Group__1 : rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 ;
     public final void rule__NestedExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15288:1: ( rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 )
-            // InternalCompleteOCL.g:15289:2: rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2
+            // InternalCompleteOCL.g:15316:1: ( rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 )
+            // InternalCompleteOCL.g:15317:2: rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__NestedExpCS__Group__1__Impl();
@@ -44892,23 +44977,23 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:15296:1: rule__NestedExpCS__Group__1__Impl : ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) ;
+    // InternalCompleteOCL.g:15324:1: rule__NestedExpCS__Group__1__Impl : ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) ;
     public final void rule__NestedExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15300:1: ( ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) )
-            // InternalCompleteOCL.g:15301:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
+            // InternalCompleteOCL.g:15328:1: ( ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) )
+            // InternalCompleteOCL.g:15329:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
             {
-            // InternalCompleteOCL.g:15301:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
-            // InternalCompleteOCL.g:15302:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
+            // InternalCompleteOCL.g:15329:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
+            // InternalCompleteOCL.g:15330:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1());
             }
-            // InternalCompleteOCL.g:15303:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
-            // InternalCompleteOCL.g:15303:2: rule__NestedExpCS__OwnedExpressionAssignment_1
+            // InternalCompleteOCL.g:15331:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
+            // InternalCompleteOCL.g:15331:2: rule__NestedExpCS__OwnedExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NestedExpCS__OwnedExpressionAssignment_1();
@@ -44943,14 +45028,14 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__2"
-    // InternalCompleteOCL.g:15313:1: rule__NestedExpCS__Group__2 : rule__NestedExpCS__Group__2__Impl ;
+    // InternalCompleteOCL.g:15341:1: rule__NestedExpCS__Group__2 : rule__NestedExpCS__Group__2__Impl ;
     public final void rule__NestedExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15317:1: ( rule__NestedExpCS__Group__2__Impl )
-            // InternalCompleteOCL.g:15318:2: rule__NestedExpCS__Group__2__Impl
+            // InternalCompleteOCL.g:15345:1: ( rule__NestedExpCS__Group__2__Impl )
+            // InternalCompleteOCL.g:15346:2: rule__NestedExpCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NestedExpCS__Group__2__Impl();
@@ -44976,17 +45061,17 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__2__Impl"
-    // InternalCompleteOCL.g:15324:1: rule__NestedExpCS__Group__2__Impl : ( ')' ) ;
+    // InternalCompleteOCL.g:15352:1: rule__NestedExpCS__Group__2__Impl : ( ')' ) ;
     public final void rule__NestedExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15328:1: ( ( ')' ) )
-            // InternalCompleteOCL.g:15329:1: ( ')' )
+            // InternalCompleteOCL.g:15356:1: ( ( ')' ) )
+            // InternalCompleteOCL.g:15357:1: ( ')' )
             {
-            // InternalCompleteOCL.g:15329:1: ( ')' )
-            // InternalCompleteOCL.g:15330:1: ')'
+            // InternalCompleteOCL.g:15357:1: ( ')' )
+            // InternalCompleteOCL.g:15358:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
@@ -45017,16 +45102,16 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__0"
-    // InternalCompleteOCL.g:15349:1: rule__SelfExpCS__Group__0 : rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 ;
+    // InternalCompleteOCL.g:15377:1: rule__SelfExpCS__Group__0 : rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 ;
     public final void rule__SelfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15353:1: ( rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 )
-            // InternalCompleteOCL.g:15354:2: rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1
+            // InternalCompleteOCL.g:15381:1: ( rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 )
+            // InternalCompleteOCL.g:15382:2: rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_75);
+            pushFollow(FollowSets000.FOLLOW_74);
             rule__SelfExpCS__Group__0__Impl();
 
             state._fsp--;
@@ -45055,23 +45140,23 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__0__Impl"
-    // InternalCompleteOCL.g:15361:1: rule__SelfExpCS__Group__0__Impl : ( () ) ;
+    // InternalCompleteOCL.g:15389:1: rule__SelfExpCS__Group__0__Impl : ( () ) ;
     public final void rule__SelfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15365:1: ( ( () ) )
-            // InternalCompleteOCL.g:15366:1: ( () )
+            // InternalCompleteOCL.g:15393:1: ( ( () ) )
+            // InternalCompleteOCL.g:15394:1: ( () )
             {
-            // InternalCompleteOCL.g:15366:1: ( () )
-            // InternalCompleteOCL.g:15367:1: ()
+            // InternalCompleteOCL.g:15394:1: ( () )
+            // InternalCompleteOCL.g:15395:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0());
             }
-            // InternalCompleteOCL.g:15368:1: ()
-            // InternalCompleteOCL.g:15370:1:
+            // InternalCompleteOCL.g:15396:1: ()
+            // InternalCompleteOCL.g:15398:1:
             {
             }
 
@@ -45096,14 +45181,14 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__1"
-    // InternalCompleteOCL.g:15380:1: rule__SelfExpCS__Group__1 : rule__SelfExpCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:15408:1: rule__SelfExpCS__Group__1 : rule__SelfExpCS__Group__1__Impl ;
     public final void rule__SelfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15384:1: ( rule__SelfExpCS__Group__1__Impl )
-            // InternalCompleteOCL.g:15385:2: rule__SelfExpCS__Group__1__Impl
+            // InternalCompleteOCL.g:15412:1: ( rule__SelfExpCS__Group__1__Impl )
+            // InternalCompleteOCL.g:15413:2: rule__SelfExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SelfExpCS__Group__1__Impl();
@@ -45129,17 +45214,17 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__1__Impl"
-    // InternalCompleteOCL.g:15391:1: rule__SelfExpCS__Group__1__Impl : ( 'self' ) ;
+    // InternalCompleteOCL.g:15419:1: rule__SelfExpCS__Group__1__Impl : ( 'self' ) ;
     public final void rule__SelfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15395:1: ( ( 'self' ) )
-            // InternalCompleteOCL.g:15396:1: ( 'self' )
+            // InternalCompleteOCL.g:15423:1: ( ( 'self' ) )
+            // InternalCompleteOCL.g:15424:1: ( 'self' )
             {
-            // InternalCompleteOCL.g:15396:1: ( 'self' )
-            // InternalCompleteOCL.g:15397:1: 'self'
+            // InternalCompleteOCL.g:15424:1: ( 'self' )
+            // InternalCompleteOCL.g:15425:1: 'self'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
@@ -45170,14 +45255,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__0"
-    // InternalCompleteOCL.g:15414:1: rule__MultiplicityBoundsCS__Group__0 : rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 ;
+    // InternalCompleteOCL.g:15442:1: rule__MultiplicityBoundsCS__Group__0 : rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 ;
     public final void rule__MultiplicityBoundsCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15418:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
-            // InternalCompleteOCL.g:15419:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
+            // InternalCompleteOCL.g:15446:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
+            // InternalCompleteOCL.g:15447:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_42);
             rule__MultiplicityBoundsCS__Group__0__Impl();
@@ -45208,23 +45293,23 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__0__Impl"
-    // InternalCompleteOCL.g:15426:1: rule__MultiplicityBoundsCS__Group__0__Impl : ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:15454:1: rule__MultiplicityBoundsCS__Group__0__Impl : ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) ;
     public final void rule__MultiplicityBoundsCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15430:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
-            // InternalCompleteOCL.g:15431:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
+            // InternalCompleteOCL.g:15458:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
+            // InternalCompleteOCL.g:15459:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:15431:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
-            // InternalCompleteOCL.g:15432:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
+            // InternalCompleteOCL.g:15459:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
+            // InternalCompleteOCL.g:15460:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
-            // InternalCompleteOCL.g:15433:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
-            // InternalCompleteOCL.g:15433:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
+            // InternalCompleteOCL.g:15461:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
+            // InternalCompleteOCL.g:15461:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__LowerBoundAssignment_0();
@@ -45259,14 +45344,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__1"
-    // InternalCompleteOCL.g:15443:1: rule__MultiplicityBoundsCS__Group__1 : rule__MultiplicityBoundsCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:15471:1: rule__MultiplicityBoundsCS__Group__1 : rule__MultiplicityBoundsCS__Group__1__Impl ;
     public final void rule__MultiplicityBoundsCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15447:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
-            // InternalCompleteOCL.g:15448:2: rule__MultiplicityBoundsCS__Group__1__Impl
+            // InternalCompleteOCL.g:15475:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
+            // InternalCompleteOCL.g:15476:2: rule__MultiplicityBoundsCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__Group__1__Impl();
@@ -45292,22 +45377,22 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__1__Impl"
-    // InternalCompleteOCL.g:15454:1: rule__MultiplicityBoundsCS__Group__1__Impl : ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) ;
+    // InternalCompleteOCL.g:15482:1: rule__MultiplicityBoundsCS__Group__1__Impl : ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) ;
     public final void rule__MultiplicityBoundsCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15458:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
-            // InternalCompleteOCL.g:15459:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:15486:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
+            // InternalCompleteOCL.g:15487:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
             {
-            // InternalCompleteOCL.g:15459:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
-            // InternalCompleteOCL.g:15460:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
+            // InternalCompleteOCL.g:15487:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:15488:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:15461:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
+            // InternalCompleteOCL.g:15489:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             int alt129=2;
             int LA129_0 = input.LA(1);
 
@@ -45316,7 +45401,7 @@
             }
             switch (alt129) {
                 case 1 :
-                    // InternalCompleteOCL.g:15461:2: rule__MultiplicityBoundsCS__Group_1__0
+                    // InternalCompleteOCL.g:15489:2: rule__MultiplicityBoundsCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityBoundsCS__Group_1__0();
@@ -45354,16 +45439,16 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__0"
-    // InternalCompleteOCL.g:15475:1: rule__MultiplicityBoundsCS__Group_1__0 : rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 ;
+    // InternalCompleteOCL.g:15503:1: rule__MultiplicityBoundsCS__Group_1__0 : rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 ;
     public final void rule__MultiplicityBoundsCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15479:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
-            // InternalCompleteOCL.g:15480:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
+            // InternalCompleteOCL.g:15507:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
+            // InternalCompleteOCL.g:15508:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_76);
+            pushFollow(FollowSets000.FOLLOW_75);
             rule__MultiplicityBoundsCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -45392,17 +45477,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:15487:1: rule__MultiplicityBoundsCS__Group_1__0__Impl : ( '..' ) ;
+    // InternalCompleteOCL.g:15515:1: rule__MultiplicityBoundsCS__Group_1__0__Impl : ( '..' ) ;
     public final void rule__MultiplicityBoundsCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15491:1: ( ( '..' ) )
-            // InternalCompleteOCL.g:15492:1: ( '..' )
+            // InternalCompleteOCL.g:15519:1: ( ( '..' ) )
+            // InternalCompleteOCL.g:15520:1: ( '..' )
             {
-            // InternalCompleteOCL.g:15492:1: ( '..' )
-            // InternalCompleteOCL.g:15493:1: '..'
+            // InternalCompleteOCL.g:15520:1: ( '..' )
+            // InternalCompleteOCL.g:15521:1: '..'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
@@ -45433,14 +45518,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__1"
-    // InternalCompleteOCL.g:15506:1: rule__MultiplicityBoundsCS__Group_1__1 : rule__MultiplicityBoundsCS__Group_1__1__Impl ;
+    // InternalCompleteOCL.g:15534:1: rule__MultiplicityBoundsCS__Group_1__1 : rule__MultiplicityBoundsCS__Group_1__1__Impl ;
     public final void rule__MultiplicityBoundsCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15510:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
-            // InternalCompleteOCL.g:15511:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
+            // InternalCompleteOCL.g:15538:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
+            // InternalCompleteOCL.g:15539:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__Group_1__1__Impl();
@@ -45466,23 +45551,23 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:15517:1: rule__MultiplicityBoundsCS__Group_1__1__Impl : ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:15545:1: rule__MultiplicityBoundsCS__Group_1__1__Impl : ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) ;
     public final void rule__MultiplicityBoundsCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15521:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:15522:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
+            // InternalCompleteOCL.g:15549:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:15550:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:15522:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
-            // InternalCompleteOCL.g:15523:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
+            // InternalCompleteOCL.g:15550:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
+            // InternalCompleteOCL.g:15551:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
-            // InternalCompleteOCL.g:15524:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
-            // InternalCompleteOCL.g:15524:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
+            // InternalCompleteOCL.g:15552:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
+            // InternalCompleteOCL.g:15552:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1();
@@ -45517,16 +45602,16 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__0"
-    // InternalCompleteOCL.g:15538:1: rule__MultiplicityCS__Group__0 : rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 ;
+    // InternalCompleteOCL.g:15566:1: rule__MultiplicityCS__Group__0 : rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 ;
     public final void rule__MultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15542:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
-            // InternalCompleteOCL.g:15543:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
+            // InternalCompleteOCL.g:15570:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
+            // InternalCompleteOCL.g:15571:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_77);
+            pushFollow(FollowSets000.FOLLOW_76);
             rule__MultiplicityCS__Group__0__Impl();
 
             state._fsp--;
@@ -45555,17 +45640,17 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__0__Impl"
-    // InternalCompleteOCL.g:15550:1: rule__MultiplicityCS__Group__0__Impl : ( '[' ) ;
+    // InternalCompleteOCL.g:15578:1: rule__MultiplicityCS__Group__0__Impl : ( '[' ) ;
     public final void rule__MultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15554:1: ( ( '[' ) )
-            // InternalCompleteOCL.g:15555:1: ( '[' )
+            // InternalCompleteOCL.g:15582:1: ( ( '[' ) )
+            // InternalCompleteOCL.g:15583:1: ( '[' )
             {
-            // InternalCompleteOCL.g:15555:1: ( '[' )
-            // InternalCompleteOCL.g:15556:1: '['
+            // InternalCompleteOCL.g:15583:1: ( '[' )
+            // InternalCompleteOCL.g:15584:1: '['
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
@@ -45596,16 +45681,16 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__1"
-    // InternalCompleteOCL.g:15569:1: rule__MultiplicityCS__Group__1 : rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 ;
+    // InternalCompleteOCL.g:15597:1: rule__MultiplicityCS__Group__1 : rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 ;
     public final void rule__MultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15573:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
-            // InternalCompleteOCL.g:15574:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
+            // InternalCompleteOCL.g:15601:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
+            // InternalCompleteOCL.g:15602:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_78);
+            pushFollow(FollowSets000.FOLLOW_77);
             rule__MultiplicityCS__Group__1__Impl();
 
             state._fsp--;
@@ -45634,23 +45719,23 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__1__Impl"
-    // InternalCompleteOCL.g:15581:1: rule__MultiplicityCS__Group__1__Impl : ( ( rule__MultiplicityCS__Alternatives_1 ) ) ;
+    // InternalCompleteOCL.g:15609:1: rule__MultiplicityCS__Group__1__Impl : ( ( rule__MultiplicityCS__Alternatives_1 ) ) ;
     public final void rule__MultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15585:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
-            // InternalCompleteOCL.g:15586:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
+            // InternalCompleteOCL.g:15613:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
+            // InternalCompleteOCL.g:15614:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
             {
-            // InternalCompleteOCL.g:15586:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
-            // InternalCompleteOCL.g:15587:1: ( rule__MultiplicityCS__Alternatives_1 )
+            // InternalCompleteOCL.g:15614:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
+            // InternalCompleteOCL.g:15615:1: ( rule__MultiplicityCS__Alternatives_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
-            // InternalCompleteOCL.g:15588:1: ( rule__MultiplicityCS__Alternatives_1 )
-            // InternalCompleteOCL.g:15588:2: rule__MultiplicityCS__Alternatives_1
+            // InternalCompleteOCL.g:15616:1: ( rule__MultiplicityCS__Alternatives_1 )
+            // InternalCompleteOCL.g:15616:2: rule__MultiplicityCS__Alternatives_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityCS__Alternatives_1();
@@ -45685,16 +45770,16 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__2"
-    // InternalCompleteOCL.g:15598:1: rule__MultiplicityCS__Group__2 : rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 ;
+    // InternalCompleteOCL.g:15626:1: rule__MultiplicityCS__Group__2 : rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 ;
     public final void rule__MultiplicityCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15602:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
-            // InternalCompleteOCL.g:15603:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
+            // InternalCompleteOCL.g:15630:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
+            // InternalCompleteOCL.g:15631:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_78);
+            pushFollow(FollowSets000.FOLLOW_77);
             rule__MultiplicityCS__Group__2__Impl();
 
             state._fsp--;
@@ -45723,22 +45808,22 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__2__Impl"
-    // InternalCompleteOCL.g:15610:1: rule__MultiplicityCS__Group__2__Impl : ( ( rule__MultiplicityCS__Alternatives_2 )? ) ;
+    // InternalCompleteOCL.g:15638:1: rule__MultiplicityCS__Group__2__Impl : ( ( rule__MultiplicityCS__Alternatives_2 )? ) ;
     public final void rule__MultiplicityCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15614:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
-            // InternalCompleteOCL.g:15615:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
+            // InternalCompleteOCL.g:15642:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
+            // InternalCompleteOCL.g:15643:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
             {
-            // InternalCompleteOCL.g:15615:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
-            // InternalCompleteOCL.g:15616:1: ( rule__MultiplicityCS__Alternatives_2 )?
+            // InternalCompleteOCL.g:15643:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
+            // InternalCompleteOCL.g:15644:1: ( rule__MultiplicityCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
-            // InternalCompleteOCL.g:15617:1: ( rule__MultiplicityCS__Alternatives_2 )?
+            // InternalCompleteOCL.g:15645:1: ( rule__MultiplicityCS__Alternatives_2 )?
             int alt130=2;
             int LA130_0 = input.LA(1);
 
@@ -45747,7 +45832,7 @@
             }
             switch (alt130) {
                 case 1 :
-                    // InternalCompleteOCL.g:15617:2: rule__MultiplicityCS__Alternatives_2
+                    // InternalCompleteOCL.g:15645:2: rule__MultiplicityCS__Alternatives_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityCS__Alternatives_2();
@@ -45785,14 +45870,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__3"
-    // InternalCompleteOCL.g:15627:1: rule__MultiplicityCS__Group__3 : rule__MultiplicityCS__Group__3__Impl ;
+    // InternalCompleteOCL.g:15655:1: rule__MultiplicityCS__Group__3 : rule__MultiplicityCS__Group__3__Impl ;
     public final void rule__MultiplicityCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15631:1: ( rule__MultiplicityCS__Group__3__Impl )
-            // InternalCompleteOCL.g:15632:2: rule__MultiplicityCS__Group__3__Impl
+            // InternalCompleteOCL.g:15659:1: ( rule__MultiplicityCS__Group__3__Impl )
+            // InternalCompleteOCL.g:15660:2: rule__MultiplicityCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityCS__Group__3__Impl();
@@ -45818,17 +45903,17 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__3__Impl"
-    // InternalCompleteOCL.g:15638:1: rule__MultiplicityCS__Group__3__Impl : ( ']' ) ;
+    // InternalCompleteOCL.g:15666:1: rule__MultiplicityCS__Group__3__Impl : ( ']' ) ;
     public final void rule__MultiplicityCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15642:1: ( ( ']' ) )
-            // InternalCompleteOCL.g:15643:1: ( ']' )
+            // InternalCompleteOCL.g:15670:1: ( ( ']' ) )
+            // InternalCompleteOCL.g:15671:1: ( ']' )
             {
-            // InternalCompleteOCL.g:15643:1: ( ']' )
-            // InternalCompleteOCL.g:15644:1: ']'
+            // InternalCompleteOCL.g:15671:1: ( ']' )
+            // InternalCompleteOCL.g:15672:1: ']'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
@@ -45859,16 +45944,16 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__0"
-    // InternalCompleteOCL.g:15665:1: rule__PathNameCS__Group__0 : rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 ;
+    // InternalCompleteOCL.g:15693:1: rule__PathNameCS__Group__0 : rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 ;
     public final void rule__PathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15669:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
-            // InternalCompleteOCL.g:15670:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
+            // InternalCompleteOCL.g:15697:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
+            // InternalCompleteOCL.g:15698:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_35);
+            pushFollow(FollowSets000.FOLLOW_36);
             rule__PathNameCS__Group__0__Impl();
 
             state._fsp--;
@@ -45897,23 +45982,23 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__0__Impl"
-    // InternalCompleteOCL.g:15677:1: rule__PathNameCS__Group__0__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:15705:1: rule__PathNameCS__Group__0__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) ;
     public final void rule__PathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15681:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
-            // InternalCompleteOCL.g:15682:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalCompleteOCL.g:15709:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
+            // InternalCompleteOCL.g:15710:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:15682:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
-            // InternalCompleteOCL.g:15683:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalCompleteOCL.g:15710:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalCompleteOCL.g:15711:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
-            // InternalCompleteOCL.g:15684:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
-            // InternalCompleteOCL.g:15684:2: rule__PathNameCS__OwnedPathElementsAssignment_0
+            // InternalCompleteOCL.g:15712:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalCompleteOCL.g:15712:2: rule__PathNameCS__OwnedPathElementsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__OwnedPathElementsAssignment_0();
@@ -45948,14 +46033,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__1"
-    // InternalCompleteOCL.g:15694:1: rule__PathNameCS__Group__1 : rule__PathNameCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:15722:1: rule__PathNameCS__Group__1 : rule__PathNameCS__Group__1__Impl ;
     public final void rule__PathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15698:1: ( rule__PathNameCS__Group__1__Impl )
-            // InternalCompleteOCL.g:15699:2: rule__PathNameCS__Group__1__Impl
+            // InternalCompleteOCL.g:15726:1: ( rule__PathNameCS__Group__1__Impl )
+            // InternalCompleteOCL.g:15727:2: rule__PathNameCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__Group__1__Impl();
@@ -45981,22 +46066,22 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__1__Impl"
-    // InternalCompleteOCL.g:15705:1: rule__PathNameCS__Group__1__Impl : ( ( rule__PathNameCS__Group_1__0 )* ) ;
+    // InternalCompleteOCL.g:15733:1: rule__PathNameCS__Group__1__Impl : ( ( rule__PathNameCS__Group_1__0 )* ) ;
     public final void rule__PathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15709:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
-            // InternalCompleteOCL.g:15710:1: ( ( rule__PathNameCS__Group_1__0 )* )
+            // InternalCompleteOCL.g:15737:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
+            // InternalCompleteOCL.g:15738:1: ( ( rule__PathNameCS__Group_1__0 )* )
             {
-            // InternalCompleteOCL.g:15710:1: ( ( rule__PathNameCS__Group_1__0 )* )
-            // InternalCompleteOCL.g:15711:1: ( rule__PathNameCS__Group_1__0 )*
+            // InternalCompleteOCL.g:15738:1: ( ( rule__PathNameCS__Group_1__0 )* )
+            // InternalCompleteOCL.g:15739:1: ( rule__PathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:15712:1: ( rule__PathNameCS__Group_1__0 )*
+            // InternalCompleteOCL.g:15740:1: ( rule__PathNameCS__Group_1__0 )*
             loop131:
             do {
                 int alt131=2;
@@ -46009,9 +46094,9 @@
 
                 switch (alt131) {
             	case 1 :
-            	    // InternalCompleteOCL.g:15712:2: rule__PathNameCS__Group_1__0
+            	    // InternalCompleteOCL.g:15740:2: rule__PathNameCS__Group_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_36);
+            	    pushFollow(FollowSets000.FOLLOW_37);
             	    rule__PathNameCS__Group_1__0();
 
             	    state._fsp--;
@@ -46050,16 +46135,16 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__0"
-    // InternalCompleteOCL.g:15726:1: rule__PathNameCS__Group_1__0 : rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 ;
+    // InternalCompleteOCL.g:15754:1: rule__PathNameCS__Group_1__0 : rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 ;
     public final void rule__PathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15730:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
-            // InternalCompleteOCL.g:15731:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
+            // InternalCompleteOCL.g:15758:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
+            // InternalCompleteOCL.g:15759:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_37);
+            pushFollow(FollowSets000.FOLLOW_7);
             rule__PathNameCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -46088,17 +46173,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:15738:1: rule__PathNameCS__Group_1__0__Impl : ( '::' ) ;
+    // InternalCompleteOCL.g:15766:1: rule__PathNameCS__Group_1__0__Impl : ( '::' ) ;
     public final void rule__PathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15742:1: ( ( '::' ) )
-            // InternalCompleteOCL.g:15743:1: ( '::' )
+            // InternalCompleteOCL.g:15770:1: ( ( '::' ) )
+            // InternalCompleteOCL.g:15771:1: ( '::' )
             {
-            // InternalCompleteOCL.g:15743:1: ( '::' )
-            // InternalCompleteOCL.g:15744:1: '::'
+            // InternalCompleteOCL.g:15771:1: ( '::' )
+            // InternalCompleteOCL.g:15772:1: '::'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
@@ -46129,14 +46214,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__1"
-    // InternalCompleteOCL.g:15757:1: rule__PathNameCS__Group_1__1 : rule__PathNameCS__Group_1__1__Impl ;
+    // InternalCompleteOCL.g:15785:1: rule__PathNameCS__Group_1__1 : rule__PathNameCS__Group_1__1__Impl ;
     public final void rule__PathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15761:1: ( rule__PathNameCS__Group_1__1__Impl )
-            // InternalCompleteOCL.g:15762:2: rule__PathNameCS__Group_1__1__Impl
+            // InternalCompleteOCL.g:15789:1: ( rule__PathNameCS__Group_1__1__Impl )
+            // InternalCompleteOCL.g:15790:2: rule__PathNameCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__Group_1__1__Impl();
@@ -46162,23 +46247,23 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:15768:1: rule__PathNameCS__Group_1__1__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:15796:1: rule__PathNameCS__Group_1__1__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
     public final void rule__PathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15772:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:15773:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalCompleteOCL.g:15800:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:15801:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:15773:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
-            // InternalCompleteOCL.g:15774:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalCompleteOCL.g:15801:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalCompleteOCL.g:15802:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
-            // InternalCompleteOCL.g:15775:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
-            // InternalCompleteOCL.g:15775:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
+            // InternalCompleteOCL.g:15803:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalCompleteOCL.g:15803:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__OwnedPathElementsAssignment_1_1();
@@ -46212,17 +46297,371 @@
     // $ANTLR end "rule__PathNameCS__Group_1__1__Impl"
 
 
+    // $ANTLR start "rule__UnreservedPathNameCS__Group__0"
+    // InternalCompleteOCL.g:15817:1: rule__UnreservedPathNameCS__Group__0 : rule__UnreservedPathNameCS__Group__0__Impl rule__UnreservedPathNameCS__Group__1 ;
+    public final void rule__UnreservedPathNameCS__Group__0() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+
+        try {
+            // InternalCompleteOCL.g:15821:1: ( rule__UnreservedPathNameCS__Group__0__Impl rule__UnreservedPathNameCS__Group__1 )
+            // InternalCompleteOCL.g:15822:2: rule__UnreservedPathNameCS__Group__0__Impl rule__UnreservedPathNameCS__Group__1
+            {
+            pushFollow(FollowSets000.FOLLOW_36);
+            rule__UnreservedPathNameCS__Group__0__Impl();
+
+            state._fsp--;
+            if (state.failed) return ;
+            pushFollow(FollowSets000.FOLLOW_2);
+            rule__UnreservedPathNameCS__Group__1();
+
+            state._fsp--;
+            if (state.failed) return ;
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end "rule__UnreservedPathNameCS__Group__0"
+
+
+    // $ANTLR start "rule__UnreservedPathNameCS__Group__0__Impl"
+    // InternalCompleteOCL.g:15829:1: rule__UnreservedPathNameCS__Group__0__Impl : ( ( rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0 ) ) ;
+    public final void rule__UnreservedPathNameCS__Group__0__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+
+        try {
+            // InternalCompleteOCL.g:15833:1: ( ( ( rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0 ) ) )
+            // InternalCompleteOCL.g:15834:1: ( ( rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0 ) )
+            {
+            // InternalCompleteOCL.g:15834:1: ( ( rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalCompleteOCL.g:15835:1: ( rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0 )
+            {
+            if ( state.backtracking==0 ) {
+               before(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_0());
+            }
+            // InternalCompleteOCL.g:15836:1: ( rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalCompleteOCL.g:15836:2: rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0
+            {
+            pushFollow(FollowSets000.FOLLOW_2);
+            rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0();
+
+            state._fsp--;
+            if (state.failed) return ;
+
+            }
+
+            if ( state.backtracking==0 ) {
+               after(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_0());
+            }
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end "rule__UnreservedPathNameCS__Group__0__Impl"
+
+
+    // $ANTLR start "rule__UnreservedPathNameCS__Group__1"
+    // InternalCompleteOCL.g:15846:1: rule__UnreservedPathNameCS__Group__1 : rule__UnreservedPathNameCS__Group__1__Impl ;
+    public final void rule__UnreservedPathNameCS__Group__1() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+
+        try {
+            // InternalCompleteOCL.g:15850:1: ( rule__UnreservedPathNameCS__Group__1__Impl )
+            // InternalCompleteOCL.g:15851:2: rule__UnreservedPathNameCS__Group__1__Impl
+            {
+            pushFollow(FollowSets000.FOLLOW_2);
+            rule__UnreservedPathNameCS__Group__1__Impl();
+
+            state._fsp--;
+            if (state.failed) return ;
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end "rule__UnreservedPathNameCS__Group__1"
+
+
+    // $ANTLR start "rule__UnreservedPathNameCS__Group__1__Impl"
+    // InternalCompleteOCL.g:15857:1: rule__UnreservedPathNameCS__Group__1__Impl : ( ( rule__UnreservedPathNameCS__Group_1__0 )* ) ;
+    public final void rule__UnreservedPathNameCS__Group__1__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+
+        try {
+            // InternalCompleteOCL.g:15861:1: ( ( ( rule__UnreservedPathNameCS__Group_1__0 )* ) )
+            // InternalCompleteOCL.g:15862:1: ( ( rule__UnreservedPathNameCS__Group_1__0 )* )
+            {
+            // InternalCompleteOCL.g:15862:1: ( ( rule__UnreservedPathNameCS__Group_1__0 )* )
+            // InternalCompleteOCL.g:15863:1: ( rule__UnreservedPathNameCS__Group_1__0 )*
+            {
+            if ( state.backtracking==0 ) {
+               before(grammarAccess.getUnreservedPathNameCSAccess().getGroup_1());
+            }
+            // InternalCompleteOCL.g:15864:1: ( rule__UnreservedPathNameCS__Group_1__0 )*
+            loop132:
+            do {
+                int alt132=2;
+                int LA132_0 = input.LA(1);
+
+                if ( (LA132_0==79) ) {
+                    alt132=1;
+                }
+
+
+                switch (alt132) {
+            	case 1 :
+            	    // InternalCompleteOCL.g:15864:2: rule__UnreservedPathNameCS__Group_1__0
+            	    {
+            	    pushFollow(FollowSets000.FOLLOW_37);
+            	    rule__UnreservedPathNameCS__Group_1__0();
+
+            	    state._fsp--;
+            	    if (state.failed) return ;
+
+            	    }
+            	    break;
+
+            	default :
+            	    break loop132;
+                }
+            } while (true);
+
+            if ( state.backtracking==0 ) {
+               after(grammarAccess.getUnreservedPathNameCSAccess().getGroup_1());
+            }
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end "rule__UnreservedPathNameCS__Group__1__Impl"
+
+
+    // $ANTLR start "rule__UnreservedPathNameCS__Group_1__0"
+    // InternalCompleteOCL.g:15878:1: rule__UnreservedPathNameCS__Group_1__0 : rule__UnreservedPathNameCS__Group_1__0__Impl rule__UnreservedPathNameCS__Group_1__1 ;
+    public final void rule__UnreservedPathNameCS__Group_1__0() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+
+        try {
+            // InternalCompleteOCL.g:15882:1: ( rule__UnreservedPathNameCS__Group_1__0__Impl rule__UnreservedPathNameCS__Group_1__1 )
+            // InternalCompleteOCL.g:15883:2: rule__UnreservedPathNameCS__Group_1__0__Impl rule__UnreservedPathNameCS__Group_1__1
+            {
+            pushFollow(FollowSets000.FOLLOW_7);
+            rule__UnreservedPathNameCS__Group_1__0__Impl();
+
+            state._fsp--;
+            if (state.failed) return ;
+            pushFollow(FollowSets000.FOLLOW_2);
+            rule__UnreservedPathNameCS__Group_1__1();
+
+            state._fsp--;
+            if (state.failed) return ;
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end "rule__UnreservedPathNameCS__Group_1__0"
+
+
+    // $ANTLR start "rule__UnreservedPathNameCS__Group_1__0__Impl"
+    // InternalCompleteOCL.g:15890:1: rule__UnreservedPathNameCS__Group_1__0__Impl : ( '::' ) ;
+    public final void rule__UnreservedPathNameCS__Group_1__0__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+
+        try {
+            // InternalCompleteOCL.g:15894:1: ( ( '::' ) )
+            // InternalCompleteOCL.g:15895:1: ( '::' )
+            {
+            // InternalCompleteOCL.g:15895:1: ( '::' )
+            // InternalCompleteOCL.g:15896:1: '::'
+            {
+            if ( state.backtracking==0 ) {
+               before(grammarAccess.getUnreservedPathNameCSAccess().getColonColonKeyword_1_0());
+            }
+            match(input,79,FollowSets000.FOLLOW_2); if (state.failed) return ;
+            if ( state.backtracking==0 ) {
+               after(grammarAccess.getUnreservedPathNameCSAccess().getColonColonKeyword_1_0());
+            }
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end "rule__UnreservedPathNameCS__Group_1__0__Impl"
+
+
+    // $ANTLR start "rule__UnreservedPathNameCS__Group_1__1"
+    // InternalCompleteOCL.g:15909:1: rule__UnreservedPathNameCS__Group_1__1 : rule__UnreservedPathNameCS__Group_1__1__Impl ;
+    public final void rule__UnreservedPathNameCS__Group_1__1() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+
+        try {
+            // InternalCompleteOCL.g:15913:1: ( rule__UnreservedPathNameCS__Group_1__1__Impl )
+            // InternalCompleteOCL.g:15914:2: rule__UnreservedPathNameCS__Group_1__1__Impl
+            {
+            pushFollow(FollowSets000.FOLLOW_2);
+            rule__UnreservedPathNameCS__Group_1__1__Impl();
+
+            state._fsp--;
+            if (state.failed) return ;
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end "rule__UnreservedPathNameCS__Group_1__1"
+
+
+    // $ANTLR start "rule__UnreservedPathNameCS__Group_1__1__Impl"
+    // InternalCompleteOCL.g:15920:1: rule__UnreservedPathNameCS__Group_1__1__Impl : ( ( rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
+    public final void rule__UnreservedPathNameCS__Group_1__1__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+
+        try {
+            // InternalCompleteOCL.g:15924:1: ( ( ( rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:15925:1: ( ( rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            {
+            // InternalCompleteOCL.g:15925:1: ( ( rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalCompleteOCL.g:15926:1: ( rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1 )
+            {
+            if ( state.backtracking==0 ) {
+               before(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
+            }
+            // InternalCompleteOCL.g:15927:1: ( rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalCompleteOCL.g:15927:2: rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1
+            {
+            pushFollow(FollowSets000.FOLLOW_2);
+            rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1();
+
+            state._fsp--;
+            if (state.failed) return ;
+
+            }
+
+            if ( state.backtracking==0 ) {
+               after(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
+            }
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end "rule__UnreservedPathNameCS__Group_1__1__Impl"
+
+
     // $ANTLR start "rule__TemplateBindingCS__Group__0"
-    // InternalCompleteOCL.g:15789:1: rule__TemplateBindingCS__Group__0 : rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 ;
+    // InternalCompleteOCL.g:15941:1: rule__TemplateBindingCS__Group__0 : rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 ;
     public final void rule__TemplateBindingCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15793:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
-            // InternalCompleteOCL.g:15794:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
+            // InternalCompleteOCL.g:15945:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
+            // InternalCompleteOCL.g:15946:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_79);
+            pushFollow(FollowSets000.FOLLOW_78);
             rule__TemplateBindingCS__Group__0__Impl();
 
             state._fsp--;
@@ -46251,23 +46690,23 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__0__Impl"
-    // InternalCompleteOCL.g:15801:1: rule__TemplateBindingCS__Group__0__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:15953:1: rule__TemplateBindingCS__Group__0__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) ;
     public final void rule__TemplateBindingCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15805:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
-            // InternalCompleteOCL.g:15806:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
+            // InternalCompleteOCL.g:15957:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
+            // InternalCompleteOCL.g:15958:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:15806:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
-            // InternalCompleteOCL.g:15807:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
+            // InternalCompleteOCL.g:15958:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
+            // InternalCompleteOCL.g:15959:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
-            // InternalCompleteOCL.g:15808:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
-            // InternalCompleteOCL.g:15808:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
+            // InternalCompleteOCL.g:15960:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
+            // InternalCompleteOCL.g:15960:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0();
@@ -46302,16 +46741,16 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__1"
-    // InternalCompleteOCL.g:15818:1: rule__TemplateBindingCS__Group__1 : rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 ;
+    // InternalCompleteOCL.g:15970:1: rule__TemplateBindingCS__Group__1 : rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 ;
     public final void rule__TemplateBindingCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15822:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
-            // InternalCompleteOCL.g:15823:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
+            // InternalCompleteOCL.g:15974:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
+            // InternalCompleteOCL.g:15975:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_79);
+            pushFollow(FollowSets000.FOLLOW_78);
             rule__TemplateBindingCS__Group__1__Impl();
 
             state._fsp--;
@@ -46340,37 +46779,37 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__1__Impl"
-    // InternalCompleteOCL.g:15830:1: rule__TemplateBindingCS__Group__1__Impl : ( ( rule__TemplateBindingCS__Group_1__0 )* ) ;
+    // InternalCompleteOCL.g:15982:1: rule__TemplateBindingCS__Group__1__Impl : ( ( rule__TemplateBindingCS__Group_1__0 )* ) ;
     public final void rule__TemplateBindingCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15834:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
-            // InternalCompleteOCL.g:15835:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
+            // InternalCompleteOCL.g:15986:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
+            // InternalCompleteOCL.g:15987:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
             {
-            // InternalCompleteOCL.g:15835:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
-            // InternalCompleteOCL.g:15836:1: ( rule__TemplateBindingCS__Group_1__0 )*
+            // InternalCompleteOCL.g:15987:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
+            // InternalCompleteOCL.g:15988:1: ( rule__TemplateBindingCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:15837:1: ( rule__TemplateBindingCS__Group_1__0 )*
-            loop132:
+            // InternalCompleteOCL.g:15989:1: ( rule__TemplateBindingCS__Group_1__0 )*
+            loop133:
             do {
-                int alt132=2;
-                int LA132_0 = input.LA(1);
+                int alt133=2;
+                int LA133_0 = input.LA(1);
 
-                if ( (LA132_0==71) ) {
-                    alt132=1;
+                if ( (LA133_0==71) ) {
+                    alt133=1;
                 }
 
 
-                switch (alt132) {
+                switch (alt133) {
             	case 1 :
-            	    // InternalCompleteOCL.g:15837:2: rule__TemplateBindingCS__Group_1__0
+            	    // InternalCompleteOCL.g:15989:2: rule__TemplateBindingCS__Group_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_19);
+            	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__TemplateBindingCS__Group_1__0();
 
             	    state._fsp--;
@@ -46380,7 +46819,7 @@
             	    break;
 
             	default :
-            	    break loop132;
+            	    break loop133;
                 }
             } while (true);
 
@@ -46409,14 +46848,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__2"
-    // InternalCompleteOCL.g:15847:1: rule__TemplateBindingCS__Group__2 : rule__TemplateBindingCS__Group__2__Impl ;
+    // InternalCompleteOCL.g:15999:1: rule__TemplateBindingCS__Group__2 : rule__TemplateBindingCS__Group__2__Impl ;
     public final void rule__TemplateBindingCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15851:1: ( rule__TemplateBindingCS__Group__2__Impl )
-            // InternalCompleteOCL.g:15852:2: rule__TemplateBindingCS__Group__2__Impl
+            // InternalCompleteOCL.g:16003:1: ( rule__TemplateBindingCS__Group__2__Impl )
+            // InternalCompleteOCL.g:16004:2: rule__TemplateBindingCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group__2__Impl();
@@ -46442,31 +46881,31 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__2__Impl"
-    // InternalCompleteOCL.g:15858:1: rule__TemplateBindingCS__Group__2__Impl : ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) ;
+    // InternalCompleteOCL.g:16010:1: rule__TemplateBindingCS__Group__2__Impl : ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) ;
     public final void rule__TemplateBindingCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15862:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
-            // InternalCompleteOCL.g:15863:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
+            // InternalCompleteOCL.g:16014:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
+            // InternalCompleteOCL.g:16015:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
             {
-            // InternalCompleteOCL.g:15863:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
-            // InternalCompleteOCL.g:15864:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
+            // InternalCompleteOCL.g:16015:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
+            // InternalCompleteOCL.g:16016:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
-            // InternalCompleteOCL.g:15865:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
-            int alt133=2;
-            int LA133_0 = input.LA(1);
+            // InternalCompleteOCL.g:16017:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
+            int alt134=2;
+            int LA134_0 = input.LA(1);
 
-            if ( (LA133_0==88) ) {
-                alt133=1;
+            if ( (LA134_0==88) ) {
+                alt134=1;
             }
-            switch (alt133) {
+            switch (alt134) {
                 case 1 :
-                    // InternalCompleteOCL.g:15865:2: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2
+                    // InternalCompleteOCL.g:16017:2: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TemplateBindingCS__OwnedMultiplicityAssignment_2();
@@ -46504,16 +46943,16 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__0"
-    // InternalCompleteOCL.g:15881:1: rule__TemplateBindingCS__Group_1__0 : rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 ;
+    // InternalCompleteOCL.g:16033:1: rule__TemplateBindingCS__Group_1__0 : rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 ;
     public final void rule__TemplateBindingCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15885:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
-            // InternalCompleteOCL.g:15886:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
+            // InternalCompleteOCL.g:16037:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
+            // InternalCompleteOCL.g:16038:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_80);
+            pushFollow(FollowSets000.FOLLOW_79);
             rule__TemplateBindingCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -46542,17 +46981,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:15893:1: rule__TemplateBindingCS__Group_1__0__Impl : ( ',' ) ;
+    // InternalCompleteOCL.g:16045:1: rule__TemplateBindingCS__Group_1__0__Impl : ( ',' ) ;
     public final void rule__TemplateBindingCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15897:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:15898:1: ( ',' )
+            // InternalCompleteOCL.g:16049:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:16050:1: ( ',' )
             {
-            // InternalCompleteOCL.g:15898:1: ( ',' )
-            // InternalCompleteOCL.g:15899:1: ','
+            // InternalCompleteOCL.g:16050:1: ( ',' )
+            // InternalCompleteOCL.g:16051:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
@@ -46583,14 +47022,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__1"
-    // InternalCompleteOCL.g:15912:1: rule__TemplateBindingCS__Group_1__1 : rule__TemplateBindingCS__Group_1__1__Impl ;
+    // InternalCompleteOCL.g:16064:1: rule__TemplateBindingCS__Group_1__1 : rule__TemplateBindingCS__Group_1__1__Impl ;
     public final void rule__TemplateBindingCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15916:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
-            // InternalCompleteOCL.g:15917:2: rule__TemplateBindingCS__Group_1__1__Impl
+            // InternalCompleteOCL.g:16068:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
+            // InternalCompleteOCL.g:16069:2: rule__TemplateBindingCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group_1__1__Impl();
@@ -46616,23 +47055,23 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:15923:1: rule__TemplateBindingCS__Group_1__1__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:16075:1: rule__TemplateBindingCS__Group_1__1__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) ;
     public final void rule__TemplateBindingCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15927:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:15928:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
+            // InternalCompleteOCL.g:16079:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:16080:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:15928:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
-            // InternalCompleteOCL.g:15929:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
+            // InternalCompleteOCL.g:16080:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
+            // InternalCompleteOCL.g:16081:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
-            // InternalCompleteOCL.g:15930:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
-            // InternalCompleteOCL.g:15930:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
+            // InternalCompleteOCL.g:16082:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
+            // InternalCompleteOCL.g:16082:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1();
@@ -46667,16 +47106,16 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__0"
-    // InternalCompleteOCL.g:15944:1: rule__TypeParameterCS__Group__0 : rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 ;
+    // InternalCompleteOCL.g:16096:1: rule__TypeParameterCS__Group__0 : rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 ;
     public final void rule__TypeParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15948:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
-            // InternalCompleteOCL.g:15949:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
+            // InternalCompleteOCL.g:16100:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
+            // InternalCompleteOCL.g:16101:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_81);
+            pushFollow(FollowSets000.FOLLOW_80);
             rule__TypeParameterCS__Group__0__Impl();
 
             state._fsp--;
@@ -46705,23 +47144,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__0__Impl"
-    // InternalCompleteOCL.g:15956:1: rule__TypeParameterCS__Group__0__Impl : ( ( rule__TypeParameterCS__NameAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:16108:1: rule__TypeParameterCS__Group__0__Impl : ( ( rule__TypeParameterCS__NameAssignment_0 ) ) ;
     public final void rule__TypeParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15960:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
-            // InternalCompleteOCL.g:15961:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:16112:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
+            // InternalCompleteOCL.g:16113:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:15961:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
-            // InternalCompleteOCL.g:15962:1: ( rule__TypeParameterCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:16113:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
+            // InternalCompleteOCL.g:16114:1: ( rule__TypeParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
-            // InternalCompleteOCL.g:15963:1: ( rule__TypeParameterCS__NameAssignment_0 )
-            // InternalCompleteOCL.g:15963:2: rule__TypeParameterCS__NameAssignment_0
+            // InternalCompleteOCL.g:16115:1: ( rule__TypeParameterCS__NameAssignment_0 )
+            // InternalCompleteOCL.g:16115:2: rule__TypeParameterCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__NameAssignment_0();
@@ -46756,14 +47195,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__1"
-    // InternalCompleteOCL.g:15973:1: rule__TypeParameterCS__Group__1 : rule__TypeParameterCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:16125:1: rule__TypeParameterCS__Group__1 : rule__TypeParameterCS__Group__1__Impl ;
     public final void rule__TypeParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15977:1: ( rule__TypeParameterCS__Group__1__Impl )
-            // InternalCompleteOCL.g:15978:2: rule__TypeParameterCS__Group__1__Impl
+            // InternalCompleteOCL.g:16129:1: ( rule__TypeParameterCS__Group__1__Impl )
+            // InternalCompleteOCL.g:16130:2: rule__TypeParameterCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group__1__Impl();
@@ -46789,31 +47228,31 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__1__Impl"
-    // InternalCompleteOCL.g:15984:1: rule__TypeParameterCS__Group__1__Impl : ( ( rule__TypeParameterCS__Group_1__0 )? ) ;
+    // InternalCompleteOCL.g:16136:1: rule__TypeParameterCS__Group__1__Impl : ( ( rule__TypeParameterCS__Group_1__0 )? ) ;
     public final void rule__TypeParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:15988:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
-            // InternalCompleteOCL.g:15989:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:16140:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
+            // InternalCompleteOCL.g:16141:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
             {
-            // InternalCompleteOCL.g:15989:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
-            // InternalCompleteOCL.g:15990:1: ( rule__TypeParameterCS__Group_1__0 )?
+            // InternalCompleteOCL.g:16141:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:16142:1: ( rule__TypeParameterCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:15991:1: ( rule__TypeParameterCS__Group_1__0 )?
-            int alt134=2;
-            int LA134_0 = input.LA(1);
+            // InternalCompleteOCL.g:16143:1: ( rule__TypeParameterCS__Group_1__0 )?
+            int alt135=2;
+            int LA135_0 = input.LA(1);
 
-            if ( (LA134_0==98) ) {
-                alt134=1;
+            if ( (LA135_0==98) ) {
+                alt135=1;
             }
-            switch (alt134) {
+            switch (alt135) {
                 case 1 :
-                    // InternalCompleteOCL.g:15991:2: rule__TypeParameterCS__Group_1__0
+                    // InternalCompleteOCL.g:16143:2: rule__TypeParameterCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeParameterCS__Group_1__0();
@@ -46851,16 +47290,16 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__0"
-    // InternalCompleteOCL.g:16005:1: rule__TypeParameterCS__Group_1__0 : rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 ;
+    // InternalCompleteOCL.g:16157:1: rule__TypeParameterCS__Group_1__0 : rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 ;
     public final void rule__TypeParameterCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16009:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
-            // InternalCompleteOCL.g:16010:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
+            // InternalCompleteOCL.g:16161:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
+            // InternalCompleteOCL.g:16162:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__TypeParameterCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -46889,17 +47328,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:16017:1: rule__TypeParameterCS__Group_1__0__Impl : ( 'extends' ) ;
+    // InternalCompleteOCL.g:16169:1: rule__TypeParameterCS__Group_1__0__Impl : ( 'extends' ) ;
     public final void rule__TypeParameterCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16021:1: ( ( 'extends' ) )
-            // InternalCompleteOCL.g:16022:1: ( 'extends' )
+            // InternalCompleteOCL.g:16173:1: ( ( 'extends' ) )
+            // InternalCompleteOCL.g:16174:1: ( 'extends' )
             {
-            // InternalCompleteOCL.g:16022:1: ( 'extends' )
-            // InternalCompleteOCL.g:16023:1: 'extends'
+            // InternalCompleteOCL.g:16174:1: ( 'extends' )
+            // InternalCompleteOCL.g:16175:1: 'extends'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
@@ -46930,16 +47369,16 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__1"
-    // InternalCompleteOCL.g:16036:1: rule__TypeParameterCS__Group_1__1 : rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 ;
+    // InternalCompleteOCL.g:16188:1: rule__TypeParameterCS__Group_1__1 : rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 ;
     public final void rule__TypeParameterCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16040:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
-            // InternalCompleteOCL.g:16041:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
+            // InternalCompleteOCL.g:16192:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
+            // InternalCompleteOCL.g:16193:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
             {
-            pushFollow(FollowSets000.FOLLOW_82);
+            pushFollow(FollowSets000.FOLLOW_81);
             rule__TypeParameterCS__Group_1__1__Impl();
 
             state._fsp--;
@@ -46968,23 +47407,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:16048:1: rule__TypeParameterCS__Group_1__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:16200:1: rule__TypeParameterCS__Group_1__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) ;
     public final void rule__TypeParameterCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16052:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:16053:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
+            // InternalCompleteOCL.g:16204:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:16205:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:16053:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
-            // InternalCompleteOCL.g:16054:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
+            // InternalCompleteOCL.g:16205:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
+            // InternalCompleteOCL.g:16206:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
-            // InternalCompleteOCL.g:16055:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
-            // InternalCompleteOCL.g:16055:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
+            // InternalCompleteOCL.g:16207:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
+            // InternalCompleteOCL.g:16207:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__OwnedExtendsAssignment_1_1();
@@ -47019,14 +47458,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__2"
-    // InternalCompleteOCL.g:16065:1: rule__TypeParameterCS__Group_1__2 : rule__TypeParameterCS__Group_1__2__Impl ;
+    // InternalCompleteOCL.g:16217:1: rule__TypeParameterCS__Group_1__2 : rule__TypeParameterCS__Group_1__2__Impl ;
     public final void rule__TypeParameterCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16069:1: ( rule__TypeParameterCS__Group_1__2__Impl )
-            // InternalCompleteOCL.g:16070:2: rule__TypeParameterCS__Group_1__2__Impl
+            // InternalCompleteOCL.g:16221:1: ( rule__TypeParameterCS__Group_1__2__Impl )
+            // InternalCompleteOCL.g:16222:2: rule__TypeParameterCS__Group_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group_1__2__Impl();
@@ -47052,37 +47491,37 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__2__Impl"
-    // InternalCompleteOCL.g:16076:1: rule__TypeParameterCS__Group_1__2__Impl : ( ( rule__TypeParameterCS__Group_1_2__0 )* ) ;
+    // InternalCompleteOCL.g:16228:1: rule__TypeParameterCS__Group_1__2__Impl : ( ( rule__TypeParameterCS__Group_1_2__0 )* ) ;
     public final void rule__TypeParameterCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16080:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
-            // InternalCompleteOCL.g:16081:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
+            // InternalCompleteOCL.g:16232:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
+            // InternalCompleteOCL.g:16233:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
             {
-            // InternalCompleteOCL.g:16081:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
-            // InternalCompleteOCL.g:16082:1: ( rule__TypeParameterCS__Group_1_2__0 )*
+            // InternalCompleteOCL.g:16233:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
+            // InternalCompleteOCL.g:16234:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
-            // InternalCompleteOCL.g:16083:1: ( rule__TypeParameterCS__Group_1_2__0 )*
-            loop135:
+            // InternalCompleteOCL.g:16235:1: ( rule__TypeParameterCS__Group_1_2__0 )*
+            loop136:
             do {
-                int alt135=2;
-                int LA135_0 = input.LA(1);
+                int alt136=2;
+                int LA136_0 = input.LA(1);
 
-                if ( (LA135_0==99) ) {
-                    alt135=1;
+                if ( (LA136_0==99) ) {
+                    alt136=1;
                 }
 
 
-                switch (alt135) {
+                switch (alt136) {
             	case 1 :
-            	    // InternalCompleteOCL.g:16083:2: rule__TypeParameterCS__Group_1_2__0
+            	    // InternalCompleteOCL.g:16235:2: rule__TypeParameterCS__Group_1_2__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_83);
+            	    pushFollow(FollowSets000.FOLLOW_82);
             	    rule__TypeParameterCS__Group_1_2__0();
 
             	    state._fsp--;
@@ -47092,7 +47531,7 @@
             	    break;
 
             	default :
-            	    break loop135;
+            	    break loop136;
                 }
             } while (true);
 
@@ -47121,16 +47560,16 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__0"
-    // InternalCompleteOCL.g:16099:1: rule__TypeParameterCS__Group_1_2__0 : rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 ;
+    // InternalCompleteOCL.g:16251:1: rule__TypeParameterCS__Group_1_2__0 : rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 ;
     public final void rule__TypeParameterCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16103:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
-            // InternalCompleteOCL.g:16104:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
+            // InternalCompleteOCL.g:16255:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
+            // InternalCompleteOCL.g:16256:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__TypeParameterCS__Group_1_2__0__Impl();
 
             state._fsp--;
@@ -47159,17 +47598,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__0__Impl"
-    // InternalCompleteOCL.g:16111:1: rule__TypeParameterCS__Group_1_2__0__Impl : ( '&&' ) ;
+    // InternalCompleteOCL.g:16263:1: rule__TypeParameterCS__Group_1_2__0__Impl : ( '&&' ) ;
     public final void rule__TypeParameterCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16115:1: ( ( '&&' ) )
-            // InternalCompleteOCL.g:16116:1: ( '&&' )
+            // InternalCompleteOCL.g:16267:1: ( ( '&&' ) )
+            // InternalCompleteOCL.g:16268:1: ( '&&' )
             {
-            // InternalCompleteOCL.g:16116:1: ( '&&' )
-            // InternalCompleteOCL.g:16117:1: '&&'
+            // InternalCompleteOCL.g:16268:1: ( '&&' )
+            // InternalCompleteOCL.g:16269:1: '&&'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
@@ -47200,14 +47639,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__1"
-    // InternalCompleteOCL.g:16130:1: rule__TypeParameterCS__Group_1_2__1 : rule__TypeParameterCS__Group_1_2__1__Impl ;
+    // InternalCompleteOCL.g:16282:1: rule__TypeParameterCS__Group_1_2__1 : rule__TypeParameterCS__Group_1_2__1__Impl ;
     public final void rule__TypeParameterCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16134:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
-            // InternalCompleteOCL.g:16135:2: rule__TypeParameterCS__Group_1_2__1__Impl
+            // InternalCompleteOCL.g:16286:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
+            // InternalCompleteOCL.g:16287:2: rule__TypeParameterCS__Group_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group_1_2__1__Impl();
@@ -47233,23 +47672,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__1__Impl"
-    // InternalCompleteOCL.g:16141:1: rule__TypeParameterCS__Group_1_2__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) ;
+    // InternalCompleteOCL.g:16293:1: rule__TypeParameterCS__Group_1_2__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) ;
     public final void rule__TypeParameterCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16145:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
-            // InternalCompleteOCL.g:16146:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
+            // InternalCompleteOCL.g:16297:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
+            // InternalCompleteOCL.g:16298:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
             {
-            // InternalCompleteOCL.g:16146:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
-            // InternalCompleteOCL.g:16147:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
+            // InternalCompleteOCL.g:16298:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
+            // InternalCompleteOCL.g:16299:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
-            // InternalCompleteOCL.g:16148:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
-            // InternalCompleteOCL.g:16148:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
+            // InternalCompleteOCL.g:16300:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
+            // InternalCompleteOCL.g:16300:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1();
@@ -47284,14 +47723,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__0"
-    // InternalCompleteOCL.g:16162:1: rule__TypedTypeRefCS__Group__0 : rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 ;
+    // InternalCompleteOCL.g:16314:1: rule__TypedTypeRefCS__Group__0 : rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 ;
     public final void rule__TypedTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16166:1: ( rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 )
-            // InternalCompleteOCL.g:16167:2: rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1
+            // InternalCompleteOCL.g:16318:1: ( rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 )
+            // InternalCompleteOCL.g:16319:2: rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__TypedTypeRefCS__Group__0__Impl();
@@ -47322,23 +47761,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__0__Impl"
-    // InternalCompleteOCL.g:16174:1: rule__TypedTypeRefCS__Group__0__Impl : ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) ;
+    // InternalCompleteOCL.g:16326:1: rule__TypedTypeRefCS__Group__0__Impl : ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) ;
     public final void rule__TypedTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16178:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) )
-            // InternalCompleteOCL.g:16179:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
+            // InternalCompleteOCL.g:16330:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) )
+            // InternalCompleteOCL.g:16331:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
             {
-            // InternalCompleteOCL.g:16179:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
-            // InternalCompleteOCL.g:16180:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
+            // InternalCompleteOCL.g:16331:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
+            // InternalCompleteOCL.g:16332:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0());
             }
-            // InternalCompleteOCL.g:16181:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
-            // InternalCompleteOCL.g:16181:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0
+            // InternalCompleteOCL.g:16333:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
+            // InternalCompleteOCL.g:16333:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__OwnedPathNameAssignment_0();
@@ -47373,14 +47812,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__1"
-    // InternalCompleteOCL.g:16191:1: rule__TypedTypeRefCS__Group__1 : rule__TypedTypeRefCS__Group__1__Impl ;
+    // InternalCompleteOCL.g:16343:1: rule__TypedTypeRefCS__Group__1 : rule__TypedTypeRefCS__Group__1__Impl ;
     public final void rule__TypedTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16195:1: ( rule__TypedTypeRefCS__Group__1__Impl )
-            // InternalCompleteOCL.g:16196:2: rule__TypedTypeRefCS__Group__1__Impl
+            // InternalCompleteOCL.g:16347:1: ( rule__TypedTypeRefCS__Group__1__Impl )
+            // InternalCompleteOCL.g:16348:2: rule__TypedTypeRefCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group__1__Impl();
@@ -47406,31 +47845,31 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__1__Impl"
-    // InternalCompleteOCL.g:16202:1: rule__TypedTypeRefCS__Group__1__Impl : ( ( rule__TypedTypeRefCS__Group_1__0 )? ) ;
+    // InternalCompleteOCL.g:16354:1: rule__TypedTypeRefCS__Group__1__Impl : ( ( rule__TypedTypeRefCS__Group_1__0 )? ) ;
     public final void rule__TypedTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16206:1: ( ( ( rule__TypedTypeRefCS__Group_1__0 )? ) )
-            // InternalCompleteOCL.g:16207:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:16358:1: ( ( ( rule__TypedTypeRefCS__Group_1__0 )? ) )
+            // InternalCompleteOCL.g:16359:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
             {
-            // InternalCompleteOCL.g:16207:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
-            // InternalCompleteOCL.g:16208:1: ( rule__TypedTypeRefCS__Group_1__0 )?
+            // InternalCompleteOCL.g:16359:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
+            // InternalCompleteOCL.g:16360:1: ( rule__TypedTypeRefCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1());
             }
-            // InternalCompleteOCL.g:16209:1: ( rule__TypedTypeRefCS__Group_1__0 )?
-            int alt136=2;
-            int LA136_0 = input.LA(1);
+            // InternalCompleteOCL.g:16361:1: ( rule__TypedTypeRefCS__Group_1__0 )?
+            int alt137=2;
+            int LA137_0 = input.LA(1);
 
-            if ( (LA136_0==68) ) {
-                alt136=1;
+            if ( (LA137_0==68) ) {
+                alt137=1;
             }
-            switch (alt136) {
+            switch (alt137) {
                 case 1 :
-                    // InternalCompleteOCL.g:16209:2: rule__TypedTypeRefCS__Group_1__0
+                    // InternalCompleteOCL.g:16361:2: rule__TypedTypeRefCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypedTypeRefCS__Group_1__0();
@@ -47468,16 +47907,16 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__0"
-    // InternalCompleteOCL.g:16223:1: rule__TypedTypeRefCS__Group_1__0 : rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 ;
+    // InternalCompleteOCL.g:16375:1: rule__TypedTypeRefCS__Group_1__0 : rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 ;
     public final void rule__TypedTypeRefCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16227:1: ( rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 )
-            // InternalCompleteOCL.g:16228:2: rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1
+            // InternalCompleteOCL.g:16379:1: ( rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 )
+            // InternalCompleteOCL.g:16380:2: rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_80);
+            pushFollow(FollowSets000.FOLLOW_79);
             rule__TypedTypeRefCS__Group_1__0__Impl();
 
             state._fsp--;
@@ -47506,17 +47945,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__0__Impl"
-    // InternalCompleteOCL.g:16235:1: rule__TypedTypeRefCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalCompleteOCL.g:16387:1: rule__TypedTypeRefCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__TypedTypeRefCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16239:1: ( ( '(' ) )
-            // InternalCompleteOCL.g:16240:1: ( '(' )
+            // InternalCompleteOCL.g:16391:1: ( ( '(' ) )
+            // InternalCompleteOCL.g:16392:1: ( '(' )
             {
-            // InternalCompleteOCL.g:16240:1: ( '(' )
-            // InternalCompleteOCL.g:16241:1: '('
+            // InternalCompleteOCL.g:16392:1: ( '(' )
+            // InternalCompleteOCL.g:16393:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
@@ -47547,14 +47986,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__1"
-    // InternalCompleteOCL.g:16254:1: rule__TypedTypeRefCS__Group_1__1 : rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 ;
+    // InternalCompleteOCL.g:16406:1: rule__TypedTypeRefCS__Group_1__1 : rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 ;
     public final void rule__TypedTypeRefCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16258:1: ( rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 )
-            // InternalCompleteOCL.g:16259:2: rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2
+            // InternalCompleteOCL.g:16410:1: ( rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 )
+            // InternalCompleteOCL.g:16411:2: rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__TypedTypeRefCS__Group_1__1__Impl();
@@ -47585,23 +48024,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__1__Impl"
-    // InternalCompleteOCL.g:16266:1: rule__TypedTypeRefCS__Group_1__1__Impl : ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) ;
+    // InternalCompleteOCL.g:16418:1: rule__TypedTypeRefCS__Group_1__1__Impl : ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) ;
     public final void rule__TypedTypeRefCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16270:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) )
-            // InternalCompleteOCL.g:16271:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
+            // InternalCompleteOCL.g:16422:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) )
+            // InternalCompleteOCL.g:16423:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
             {
-            // InternalCompleteOCL.g:16271:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
-            // InternalCompleteOCL.g:16272:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
+            // InternalCompleteOCL.g:16423:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
+            // InternalCompleteOCL.g:16424:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1());
             }
-            // InternalCompleteOCL.g:16273:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
-            // InternalCompleteOCL.g:16273:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1
+            // InternalCompleteOCL.g:16425:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
+            // InternalCompleteOCL.g:16425:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__OwnedBindingAssignment_1_1();
@@ -47636,14 +48075,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__2"
-    // InternalCompleteOCL.g:16283:1: rule__TypedTypeRefCS__Group_1__2 : rule__TypedTypeRefCS__Group_1__2__Impl ;
+    // InternalCompleteOCL.g:16435:1: rule__TypedTypeRefCS__Group_1__2 : rule__TypedTypeRefCS__Group_1__2__Impl ;
     public final void rule__TypedTypeRefCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16287:1: ( rule__TypedTypeRefCS__Group_1__2__Impl )
-            // InternalCompleteOCL.g:16288:2: rule__TypedTypeRefCS__Group_1__2__Impl
+            // InternalCompleteOCL.g:16439:1: ( rule__TypedTypeRefCS__Group_1__2__Impl )
+            // InternalCompleteOCL.g:16440:2: rule__TypedTypeRefCS__Group_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group_1__2__Impl();
@@ -47669,17 +48108,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__2__Impl"
-    // InternalCompleteOCL.g:16294:1: rule__TypedTypeRefCS__Group_1__2__Impl : ( ')' ) ;
+    // InternalCompleteOCL.g:16446:1: rule__TypedTypeRefCS__Group_1__2__Impl : ( ')' ) ;
     public final void rule__TypedTypeRefCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16298:1: ( ( ')' ) )
-            // InternalCompleteOCL.g:16299:1: ( ')' )
+            // InternalCompleteOCL.g:16450:1: ( ( ')' ) )
+            // InternalCompleteOCL.g:16451:1: ( ')' )
             {
-            // InternalCompleteOCL.g:16299:1: ( ')' )
-            // InternalCompleteOCL.g:16300:1: ')'
+            // InternalCompleteOCL.g:16451:1: ( ')' )
+            // InternalCompleteOCL.g:16452:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
@@ -47710,16 +48149,16 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__0"
-    // InternalCompleteOCL.g:16319:1: rule__WildcardTypeRefCS__Group__0 : rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 ;
+    // InternalCompleteOCL.g:16471:1: rule__WildcardTypeRefCS__Group__0 : rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 ;
     public final void rule__WildcardTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16323:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
-            // InternalCompleteOCL.g:16324:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
+            // InternalCompleteOCL.g:16475:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
+            // InternalCompleteOCL.g:16476:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_80);
+            pushFollow(FollowSets000.FOLLOW_79);
             rule__WildcardTypeRefCS__Group__0__Impl();
 
             state._fsp--;
@@ -47748,23 +48187,23 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__0__Impl"
-    // InternalCompleteOCL.g:16331:1: rule__WildcardTypeRefCS__Group__0__Impl : ( () ) ;
+    // InternalCompleteOCL.g:16483:1: rule__WildcardTypeRefCS__Group__0__Impl : ( () ) ;
     public final void rule__WildcardTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16335:1: ( ( () ) )
-            // InternalCompleteOCL.g:16336:1: ( () )
+            // InternalCompleteOCL.g:16487:1: ( ( () ) )
+            // InternalCompleteOCL.g:16488:1: ( () )
             {
-            // InternalCompleteOCL.g:16336:1: ( () )
-            // InternalCompleteOCL.g:16337:1: ()
+            // InternalCompleteOCL.g:16488:1: ( () )
+            // InternalCompleteOCL.g:16489:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
-            // InternalCompleteOCL.g:16338:1: ()
-            // InternalCompleteOCL.g:16340:1:
+            // InternalCompleteOCL.g:16490:1: ()
+            // InternalCompleteOCL.g:16492:1:
             {
             }
 
@@ -47789,16 +48228,16 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__1"
-    // InternalCompleteOCL.g:16350:1: rule__WildcardTypeRefCS__Group__1 : rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 ;
+    // InternalCompleteOCL.g:16502:1: rule__WildcardTypeRefCS__Group__1 : rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 ;
     public final void rule__WildcardTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16354:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
-            // InternalCompleteOCL.g:16355:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
+            // InternalCompleteOCL.g:16506:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
+            // InternalCompleteOCL.g:16507:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_81);
+            pushFollow(FollowSets000.FOLLOW_80);
             rule__WildcardTypeRefCS__Group__1__Impl();
 
             state._fsp--;
@@ -47827,17 +48266,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__1__Impl"
-    // InternalCompleteOCL.g:16362:1: rule__WildcardTypeRefCS__Group__1__Impl : ( '?' ) ;
+    // InternalCompleteOCL.g:16514:1: rule__WildcardTypeRefCS__Group__1__Impl : ( '?' ) ;
     public final void rule__WildcardTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16366:1: ( ( '?' ) )
-            // InternalCompleteOCL.g:16367:1: ( '?' )
+            // InternalCompleteOCL.g:16518:1: ( ( '?' ) )
+            // InternalCompleteOCL.g:16519:1: ( '?' )
             {
-            // InternalCompleteOCL.g:16367:1: ( '?' )
-            // InternalCompleteOCL.g:16368:1: '?'
+            // InternalCompleteOCL.g:16519:1: ( '?' )
+            // InternalCompleteOCL.g:16520:1: '?'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
@@ -47868,14 +48307,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__2"
-    // InternalCompleteOCL.g:16381:1: rule__WildcardTypeRefCS__Group__2 : rule__WildcardTypeRefCS__Group__2__Impl ;
+    // InternalCompleteOCL.g:16533:1: rule__WildcardTypeRefCS__Group__2 : rule__WildcardTypeRefCS__Group__2__Impl ;
     public final void rule__WildcardTypeRefCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16385:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
-            // InternalCompleteOCL.g:16386:2: rule__WildcardTypeRefCS__Group__2__Impl
+            // InternalCompleteOCL.g:16537:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
+            // InternalCompleteOCL.g:16538:2: rule__WildcardTypeRefCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group__2__Impl();
@@ -47901,31 +48340,31 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__2__Impl"
-    // InternalCompleteOCL.g:16392:1: rule__WildcardTypeRefCS__Group__2__Impl : ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) ;
+    // InternalCompleteOCL.g:16544:1: rule__WildcardTypeRefCS__Group__2__Impl : ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) ;
     public final void rule__WildcardTypeRefCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16396:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
-            // InternalCompleteOCL.g:16397:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:16548:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
+            // InternalCompleteOCL.g:16549:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
             {
-            // InternalCompleteOCL.g:16397:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
-            // InternalCompleteOCL.g:16398:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
+            // InternalCompleteOCL.g:16549:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
+            // InternalCompleteOCL.g:16550:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
-            // InternalCompleteOCL.g:16399:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
-            int alt137=2;
-            int LA137_0 = input.LA(1);
+            // InternalCompleteOCL.g:16551:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
+            int alt138=2;
+            int LA138_0 = input.LA(1);
 
-            if ( (LA137_0==98) ) {
-                alt137=1;
+            if ( (LA138_0==98) ) {
+                alt138=1;
             }
-            switch (alt137) {
+            switch (alt138) {
                 case 1 :
-                    // InternalCompleteOCL.g:16399:2: rule__WildcardTypeRefCS__Group_2__0
+                    // InternalCompleteOCL.g:16551:2: rule__WildcardTypeRefCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__WildcardTypeRefCS__Group_2__0();
@@ -47963,16 +48402,16 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__0"
-    // InternalCompleteOCL.g:16415:1: rule__WildcardTypeRefCS__Group_2__0 : rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 ;
+    // InternalCompleteOCL.g:16567:1: rule__WildcardTypeRefCS__Group_2__0 : rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 ;
     public final void rule__WildcardTypeRefCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16419:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
-            // InternalCompleteOCL.g:16420:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
+            // InternalCompleteOCL.g:16571:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
+            // InternalCompleteOCL.g:16572:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_21);
+            pushFollow(FollowSets000.FOLLOW_22);
             rule__WildcardTypeRefCS__Group_2__0__Impl();
 
             state._fsp--;
@@ -48001,17 +48440,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__0__Impl"
-    // InternalCompleteOCL.g:16427:1: rule__WildcardTypeRefCS__Group_2__0__Impl : ( 'extends' ) ;
+    // InternalCompleteOCL.g:16579:1: rule__WildcardTypeRefCS__Group_2__0__Impl : ( 'extends' ) ;
     public final void rule__WildcardTypeRefCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16431:1: ( ( 'extends' ) )
-            // InternalCompleteOCL.g:16432:1: ( 'extends' )
+            // InternalCompleteOCL.g:16583:1: ( ( 'extends' ) )
+            // InternalCompleteOCL.g:16584:1: ( 'extends' )
             {
-            // InternalCompleteOCL.g:16432:1: ( 'extends' )
-            // InternalCompleteOCL.g:16433:1: 'extends'
+            // InternalCompleteOCL.g:16584:1: ( 'extends' )
+            // InternalCompleteOCL.g:16585:1: 'extends'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
@@ -48042,14 +48481,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__1"
-    // InternalCompleteOCL.g:16446:1: rule__WildcardTypeRefCS__Group_2__1 : rule__WildcardTypeRefCS__Group_2__1__Impl ;
+    // InternalCompleteOCL.g:16598:1: rule__WildcardTypeRefCS__Group_2__1 : rule__WildcardTypeRefCS__Group_2__1__Impl ;
     public final void rule__WildcardTypeRefCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16450:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
-            // InternalCompleteOCL.g:16451:2: rule__WildcardTypeRefCS__Group_2__1__Impl
+            // InternalCompleteOCL.g:16602:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
+            // InternalCompleteOCL.g:16603:2: rule__WildcardTypeRefCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group_2__1__Impl();
@@ -48075,23 +48514,23 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__1__Impl"
-    // InternalCompleteOCL.g:16457:1: rule__WildcardTypeRefCS__Group_2__1__Impl : ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) ;
+    // InternalCompleteOCL.g:16609:1: rule__WildcardTypeRefCS__Group_2__1__Impl : ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) ;
     public final void rule__WildcardTypeRefCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16461:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
-            // InternalCompleteOCL.g:16462:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
+            // InternalCompleteOCL.g:16613:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
+            // InternalCompleteOCL.g:16614:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
             {
-            // InternalCompleteOCL.g:16462:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
-            // InternalCompleteOCL.g:16463:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
+            // InternalCompleteOCL.g:16614:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
+            // InternalCompleteOCL.g:16615:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
-            // InternalCompleteOCL.g:16464:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
-            // InternalCompleteOCL.g:16464:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
+            // InternalCompleteOCL.g:16616:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
+            // InternalCompleteOCL.g:16616:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1();
@@ -48126,17 +48565,17 @@
 
 
     // $ANTLR start "rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0"
-    // InternalCompleteOCL.g:16479:1: rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 : ( ruleImportCS ) ;
+    // InternalCompleteOCL.g:16631:1: rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 : ( ruleImportCS ) ;
     public final void rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16483:1: ( ( ruleImportCS ) )
-            // InternalCompleteOCL.g:16484:1: ( ruleImportCS )
+            // InternalCompleteOCL.g:16635:1: ( ( ruleImportCS ) )
+            // InternalCompleteOCL.g:16636:1: ( ruleImportCS )
             {
-            // InternalCompleteOCL.g:16484:1: ( ruleImportCS )
-            // InternalCompleteOCL.g:16485:1: ruleImportCS
+            // InternalCompleteOCL.g:16636:1: ( ruleImportCS )
+            // InternalCompleteOCL.g:16637:1: ruleImportCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsImportCSParserRuleCall_0_0());
@@ -48171,17 +48610,17 @@
 
 
     // $ANTLR start "rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0"
-    // InternalCompleteOCL.g:16494:1: rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 : ( rulePackageDeclarationCS ) ;
+    // InternalCompleteOCL.g:16646:1: rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 : ( rulePackageDeclarationCS ) ;
     public final void rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16498:1: ( ( rulePackageDeclarationCS ) )
-            // InternalCompleteOCL.g:16499:1: ( rulePackageDeclarationCS )
+            // InternalCompleteOCL.g:16650:1: ( ( rulePackageDeclarationCS ) )
+            // InternalCompleteOCL.g:16651:1: ( rulePackageDeclarationCS )
             {
-            // InternalCompleteOCL.g:16499:1: ( rulePackageDeclarationCS )
-            // InternalCompleteOCL.g:16500:1: rulePackageDeclarationCS
+            // InternalCompleteOCL.g:16651:1: ( rulePackageDeclarationCS )
+            // InternalCompleteOCL.g:16652:1: rulePackageDeclarationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesPackageDeclarationCSParserRuleCall_1_0_0());
@@ -48216,17 +48655,17 @@
 
 
     // $ANTLR start "rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1"
-    // InternalCompleteOCL.g:16509:1: rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 : ( ruleContextDeclCS ) ;
+    // InternalCompleteOCL.g:16661:1: rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 : ( ruleContextDeclCS ) ;
     public final void rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16513:1: ( ( ruleContextDeclCS ) )
-            // InternalCompleteOCL.g:16514:1: ( ruleContextDeclCS )
+            // InternalCompleteOCL.g:16665:1: ( ( ruleContextDeclCS ) )
+            // InternalCompleteOCL.g:16666:1: ( ruleContextDeclCS )
             {
-            // InternalCompleteOCL.g:16514:1: ( ruleContextDeclCS )
-            // InternalCompleteOCL.g:16515:1: ruleContextDeclCS
+            // InternalCompleteOCL.g:16666:1: ( ruleContextDeclCS )
+            // InternalCompleteOCL.g:16667:1: ruleContextDeclCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsContextDeclCSParserRuleCall_1_1_0());
@@ -48261,17 +48700,17 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1"
-    // InternalCompleteOCL.g:16524:1: rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 : ( ruleTemplateSignatureCS ) ;
+    // InternalCompleteOCL.g:16676:1: rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 : ( ruleTemplateSignatureCS ) ;
     public final void rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16528:1: ( ( ruleTemplateSignatureCS ) )
-            // InternalCompleteOCL.g:16529:1: ( ruleTemplateSignatureCS )
+            // InternalCompleteOCL.g:16680:1: ( ( ruleTemplateSignatureCS ) )
+            // InternalCompleteOCL.g:16681:1: ( ruleTemplateSignatureCS )
             {
-            // InternalCompleteOCL.g:16529:1: ( ruleTemplateSignatureCS )
-            // InternalCompleteOCL.g:16530:1: ruleTemplateSignatureCS
+            // InternalCompleteOCL.g:16681:1: ( ruleTemplateSignatureCS )
+            // InternalCompleteOCL.g:16682:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
@@ -48306,17 +48745,17 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__SelfNameAssignment_2"
-    // InternalCompleteOCL.g:16539:1: rule__ClassifierContextDeclCS__SelfNameAssignment_2 : ( ruleUnrestrictedName ) ;
+    // InternalCompleteOCL.g:16691:1: rule__ClassifierContextDeclCS__SelfNameAssignment_2 : ( ruleUnrestrictedName ) ;
     public final void rule__ClassifierContextDeclCS__SelfNameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16543:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:16544:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:16695:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:16696:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:16544:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:16545:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:16696:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:16697:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameUnrestrictedNameParserRuleCall_2_0());
@@ -48351,28 +48790,28 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3"
-    // InternalCompleteOCL.g:16554:1: rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 : ( rulePathNameCS ) ;
+    // InternalCompleteOCL.g:16706:1: rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 : ( ruleUnreservedPathNameCS ) ;
     public final void rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16558:1: ( ( rulePathNameCS ) )
-            // InternalCompleteOCL.g:16559:1: ( rulePathNameCS )
+            // InternalCompleteOCL.g:16710:1: ( ( ruleUnreservedPathNameCS ) )
+            // InternalCompleteOCL.g:16711:1: ( ruleUnreservedPathNameCS )
             {
-            // InternalCompleteOCL.g:16559:1: ( rulePathNameCS )
-            // InternalCompleteOCL.g:16560:1: rulePathNameCS
+            // InternalCompleteOCL.g:16711:1: ( ruleUnreservedPathNameCS )
+            // InternalCompleteOCL.g:16712:1: ruleUnreservedPathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0());
+               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
-            rulePathNameCS();
+            ruleUnreservedPathNameCS();
 
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0());
+               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_3_0());
             }
 
             }
@@ -48396,17 +48835,17 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1"
-    // InternalCompleteOCL.g:16569:1: rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 : ( ruleConstraintCS ) ;
+    // InternalCompleteOCL.g:16721:1: rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 : ( ruleConstraintCS ) ;
     public final void rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16573:1: ( ( ruleConstraintCS ) )
-            // InternalCompleteOCL.g:16574:1: ( ruleConstraintCS )
+            // InternalCompleteOCL.g:16725:1: ( ( ruleConstraintCS ) )
+            // InternalCompleteOCL.g:16726:1: ( ruleConstraintCS )
             {
-            // InternalCompleteOCL.g:16574:1: ( ruleConstraintCS )
-            // InternalCompleteOCL.g:16575:1: ruleConstraintCS
+            // InternalCompleteOCL.g:16726:1: ( ruleConstraintCS )
+            // InternalCompleteOCL.g:16727:1: ruleConstraintCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_4_0_1_0());
@@ -48441,17 +48880,17 @@
 
 
     // $ANTLR start "rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1"
-    // InternalCompleteOCL.g:16584:1: rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 : ( ruleDefCS ) ;
+    // InternalCompleteOCL.g:16736:1: rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 : ( ruleDefCS ) ;
     public final void rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16588:1: ( ( ruleDefCS ) )
-            // InternalCompleteOCL.g:16589:1: ( ruleDefCS )
+            // InternalCompleteOCL.g:16740:1: ( ( ruleDefCS ) )
+            // InternalCompleteOCL.g:16741:1: ( ruleDefCS )
             {
-            // InternalCompleteOCL.g:16589:1: ( ruleDefCS )
-            // InternalCompleteOCL.g:16590:1: ruleDefCS
+            // InternalCompleteOCL.g:16741:1: ( ruleDefCS )
+            // InternalCompleteOCL.g:16742:1: ruleDefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsDefCSParserRuleCall_4_1_0());
@@ -48486,17 +48925,17 @@
 
 
     // $ANTLR start "rule__ConstraintCS__NameAssignment_0_0"
-    // InternalCompleteOCL.g:16599:1: rule__ConstraintCS__NameAssignment_0_0 : ( ruleUnrestrictedName ) ;
+    // InternalCompleteOCL.g:16751:1: rule__ConstraintCS__NameAssignment_0_0 : ( ruleUnrestrictedName ) ;
     public final void rule__ConstraintCS__NameAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16603:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:16604:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:16755:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:16756:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:16604:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:16605:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:16756:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:16757:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
@@ -48531,17 +48970,17 @@
 
 
     // $ANTLR start "rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1"
-    // InternalCompleteOCL.g:16614:1: rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 : ( ruleSpecificationCS ) ;
+    // InternalCompleteOCL.g:16766:1: rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 : ( ruleSpecificationCS ) ;
     public final void rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16618:1: ( ( ruleSpecificationCS ) )
-            // InternalCompleteOCL.g:16619:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:16770:1: ( ( ruleSpecificationCS ) )
+            // InternalCompleteOCL.g:16771:1: ( ruleSpecificationCS )
             {
-            // InternalCompleteOCL.g:16619:1: ( ruleSpecificationCS )
-            // InternalCompleteOCL.g:16620:1: ruleSpecificationCS
+            // InternalCompleteOCL.g:16771:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:16772:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_0_1_1_0());
@@ -48576,17 +49015,17 @@
 
 
     // $ANTLR start "rule__ConstraintCS__OwnedSpecificationAssignment_2"
-    // InternalCompleteOCL.g:16629:1: rule__ConstraintCS__OwnedSpecificationAssignment_2 : ( ruleSpecificationCS ) ;
+    // InternalCompleteOCL.g:16781:1: rule__ConstraintCS__OwnedSpecificationAssignment_2 : ( ruleSpecificationCS ) ;
     public final void rule__ConstraintCS__OwnedSpecificationAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16633:1: ( ( ruleSpecificationCS ) )
-            // InternalCompleteOCL.g:16634:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:16785:1: ( ( ruleSpecificationCS ) )
+            // InternalCompleteOCL.g:16786:1: ( ruleSpecificationCS )
             {
-            // InternalCompleteOCL.g:16634:1: ( ruleSpecificationCS )
-            // InternalCompleteOCL.g:16635:1: ruleSpecificationCS
+            // InternalCompleteOCL.g:16786:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:16787:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_2_0());
@@ -48621,23 +49060,23 @@
 
 
     // $ANTLR start "rule__DefOperationCS__IsStaticAssignment_0"
-    // InternalCompleteOCL.g:16644:1: rule__DefOperationCS__IsStaticAssignment_0 : ( ( 'static' ) ) ;
+    // InternalCompleteOCL.g:16796:1: rule__DefOperationCS__IsStaticAssignment_0 : ( ( 'static' ) ) ;
     public final void rule__DefOperationCS__IsStaticAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16648:1: ( ( ( 'static' ) ) )
-            // InternalCompleteOCL.g:16649:1: ( ( 'static' ) )
+            // InternalCompleteOCL.g:16800:1: ( ( ( 'static' ) ) )
+            // InternalCompleteOCL.g:16801:1: ( ( 'static' ) )
             {
-            // InternalCompleteOCL.g:16649:1: ( ( 'static' ) )
-            // InternalCompleteOCL.g:16650:1: ( 'static' )
+            // InternalCompleteOCL.g:16801:1: ( ( 'static' ) )
+            // InternalCompleteOCL.g:16802:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0());
             }
-            // InternalCompleteOCL.g:16651:1: ( 'static' )
-            // InternalCompleteOCL.g:16652:1: 'static'
+            // InternalCompleteOCL.g:16803:1: ( 'static' )
+            // InternalCompleteOCL.g:16804:1: 'static'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0());
@@ -48674,17 +49113,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__OwnedSignatureAssignment_4"
-    // InternalCompleteOCL.g:16667:1: rule__DefOperationCS__OwnedSignatureAssignment_4 : ( ruleTemplateSignatureCS ) ;
+    // InternalCompleteOCL.g:16819:1: rule__DefOperationCS__OwnedSignatureAssignment_4 : ( ruleTemplateSignatureCS ) ;
     public final void rule__DefOperationCS__OwnedSignatureAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16671:1: ( ( ruleTemplateSignatureCS ) )
-            // InternalCompleteOCL.g:16672:1: ( ruleTemplateSignatureCS )
+            // InternalCompleteOCL.g:16823:1: ( ( ruleTemplateSignatureCS ) )
+            // InternalCompleteOCL.g:16824:1: ( ruleTemplateSignatureCS )
             {
-            // InternalCompleteOCL.g:16672:1: ( ruleTemplateSignatureCS )
-            // InternalCompleteOCL.g:16673:1: ruleTemplateSignatureCS
+            // InternalCompleteOCL.g:16824:1: ( ruleTemplateSignatureCS )
+            // InternalCompleteOCL.g:16825:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_4_0());
@@ -48719,17 +49158,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__NameAssignment_5"
-    // InternalCompleteOCL.g:16682:1: rule__DefOperationCS__NameAssignment_5 : ( ruleUnrestrictedName ) ;
+    // InternalCompleteOCL.g:16834:1: rule__DefOperationCS__NameAssignment_5 : ( ruleUnrestrictedName ) ;
     public final void rule__DefOperationCS__NameAssignment_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16686:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:16687:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:16838:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:16839:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:16687:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:16688:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:16839:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:16840:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getNameUnrestrictedNameParserRuleCall_5_0());
@@ -48764,17 +49203,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__OwnedParametersAssignment_7_0"
-    // InternalCompleteOCL.g:16697:1: rule__DefOperationCS__OwnedParametersAssignment_7_0 : ( ruleDefParameterCS ) ;
+    // InternalCompleteOCL.g:16849:1: rule__DefOperationCS__OwnedParametersAssignment_7_0 : ( ruleDefParameterCS ) ;
     public final void rule__DefOperationCS__OwnedParametersAssignment_7_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16701:1: ( ( ruleDefParameterCS ) )
-            // InternalCompleteOCL.g:16702:1: ( ruleDefParameterCS )
+            // InternalCompleteOCL.g:16853:1: ( ( ruleDefParameterCS ) )
+            // InternalCompleteOCL.g:16854:1: ( ruleDefParameterCS )
             {
-            // InternalCompleteOCL.g:16702:1: ( ruleDefParameterCS )
-            // InternalCompleteOCL.g:16703:1: ruleDefParameterCS
+            // InternalCompleteOCL.g:16854:1: ( ruleDefParameterCS )
+            // InternalCompleteOCL.g:16855:1: ruleDefParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_0_0());
@@ -48809,17 +49248,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__OwnedParametersAssignment_7_1_1"
-    // InternalCompleteOCL.g:16712:1: rule__DefOperationCS__OwnedParametersAssignment_7_1_1 : ( ruleDefParameterCS ) ;
+    // InternalCompleteOCL.g:16864:1: rule__DefOperationCS__OwnedParametersAssignment_7_1_1 : ( ruleDefParameterCS ) ;
     public final void rule__DefOperationCS__OwnedParametersAssignment_7_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16716:1: ( ( ruleDefParameterCS ) )
-            // InternalCompleteOCL.g:16717:1: ( ruleDefParameterCS )
+            // InternalCompleteOCL.g:16868:1: ( ( ruleDefParameterCS ) )
+            // InternalCompleteOCL.g:16869:1: ( ruleDefParameterCS )
             {
-            // InternalCompleteOCL.g:16717:1: ( ruleDefParameterCS )
-            // InternalCompleteOCL.g:16718:1: ruleDefParameterCS
+            // InternalCompleteOCL.g:16869:1: ( ruleDefParameterCS )
+            // InternalCompleteOCL.g:16870:1: ruleDefParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_1_1_0());
@@ -48854,17 +49293,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__OwnedTypeAssignment_10"
-    // InternalCompleteOCL.g:16727:1: rule__DefOperationCS__OwnedTypeAssignment_10 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:16879:1: rule__DefOperationCS__OwnedTypeAssignment_10 : ( ruleTypeExpCS ) ;
     public final void rule__DefOperationCS__OwnedTypeAssignment_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16731:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:16732:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:16883:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:16884:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:16732:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:16733:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:16884:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:16885:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getOwnedTypeTypeExpCSParserRuleCall_10_0());
@@ -48899,17 +49338,17 @@
 
 
     // $ANTLR start "rule__DefOperationCS__OwnedSpecificationAssignment_12"
-    // InternalCompleteOCL.g:16742:1: rule__DefOperationCS__OwnedSpecificationAssignment_12 : ( ruleSpecificationCS ) ;
+    // InternalCompleteOCL.g:16894:1: rule__DefOperationCS__OwnedSpecificationAssignment_12 : ( ruleSpecificationCS ) ;
     public final void rule__DefOperationCS__OwnedSpecificationAssignment_12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16746:1: ( ( ruleSpecificationCS ) )
-            // InternalCompleteOCL.g:16747:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:16898:1: ( ( ruleSpecificationCS ) )
+            // InternalCompleteOCL.g:16899:1: ( ruleSpecificationCS )
             {
-            // InternalCompleteOCL.g:16747:1: ( ruleSpecificationCS )
-            // InternalCompleteOCL.g:16748:1: ruleSpecificationCS
+            // InternalCompleteOCL.g:16899:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:16900:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_12_0());
@@ -48944,17 +49383,17 @@
 
 
     // $ANTLR start "rule__DefParameterCS__NameAssignment_0"
-    // InternalCompleteOCL.g:16757:1: rule__DefParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalCompleteOCL.g:16909:1: rule__DefParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__DefParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16761:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:16762:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:16913:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:16914:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:16762:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:16763:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:16914:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:16915:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -48989,17 +49428,17 @@
 
 
     // $ANTLR start "rule__DefParameterCS__OwnedTypeAssignment_2"
-    // InternalCompleteOCL.g:16772:1: rule__DefParameterCS__OwnedTypeAssignment_2 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:16924:1: rule__DefParameterCS__OwnedTypeAssignment_2 : ( ruleTypeExpCS ) ;
     public final void rule__DefParameterCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16776:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:16777:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:16928:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:16929:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:16777:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:16778:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:16929:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:16930:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
@@ -49034,23 +49473,23 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__IsStaticAssignment_0"
-    // InternalCompleteOCL.g:16787:1: rule__DefPropertyCS__IsStaticAssignment_0 : ( ( 'static' ) ) ;
+    // InternalCompleteOCL.g:16939:1: rule__DefPropertyCS__IsStaticAssignment_0 : ( ( 'static' ) ) ;
     public final void rule__DefPropertyCS__IsStaticAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16791:1: ( ( ( 'static' ) ) )
-            // InternalCompleteOCL.g:16792:1: ( ( 'static' ) )
+            // InternalCompleteOCL.g:16943:1: ( ( ( 'static' ) ) )
+            // InternalCompleteOCL.g:16944:1: ( ( 'static' ) )
             {
-            // InternalCompleteOCL.g:16792:1: ( ( 'static' ) )
-            // InternalCompleteOCL.g:16793:1: ( 'static' )
+            // InternalCompleteOCL.g:16944:1: ( ( 'static' ) )
+            // InternalCompleteOCL.g:16945:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0());
             }
-            // InternalCompleteOCL.g:16794:1: ( 'static' )
-            // InternalCompleteOCL.g:16795:1: 'static'
+            // InternalCompleteOCL.g:16946:1: ( 'static' )
+            // InternalCompleteOCL.g:16947:1: 'static'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0());
@@ -49087,17 +49526,17 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__NameAssignment_4"
-    // InternalCompleteOCL.g:16810:1: rule__DefPropertyCS__NameAssignment_4 : ( ruleUnrestrictedName ) ;
+    // InternalCompleteOCL.g:16962:1: rule__DefPropertyCS__NameAssignment_4 : ( ruleUnrestrictedName ) ;
     public final void rule__DefPropertyCS__NameAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16814:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:16815:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:16966:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:16967:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:16815:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:16816:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:16967:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:16968:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getNameUnrestrictedNameParserRuleCall_4_0());
@@ -49132,17 +49571,17 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__OwnedTypeAssignment_6"
-    // InternalCompleteOCL.g:16825:1: rule__DefPropertyCS__OwnedTypeAssignment_6 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:16977:1: rule__DefPropertyCS__OwnedTypeAssignment_6 : ( ruleTypeExpCS ) ;
     public final void rule__DefPropertyCS__OwnedTypeAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16829:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:16830:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:16981:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:16982:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:16830:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:16831:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:16982:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:16983:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getOwnedTypeTypeExpCSParserRuleCall_6_0());
@@ -49177,17 +49616,17 @@
 
 
     // $ANTLR start "rule__DefPropertyCS__OwnedSpecificationAssignment_8"
-    // InternalCompleteOCL.g:16840:1: rule__DefPropertyCS__OwnedSpecificationAssignment_8 : ( ruleSpecificationCS ) ;
+    // InternalCompleteOCL.g:16992:1: rule__DefPropertyCS__OwnedSpecificationAssignment_8 : ( ruleSpecificationCS ) ;
     public final void rule__DefPropertyCS__OwnedSpecificationAssignment_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16844:1: ( ( ruleSpecificationCS ) )
-            // InternalCompleteOCL.g:16845:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:16996:1: ( ( ruleSpecificationCS ) )
+            // InternalCompleteOCL.g:16997:1: ( ruleSpecificationCS )
             {
-            // InternalCompleteOCL.g:16845:1: ( ruleSpecificationCS )
-            // InternalCompleteOCL.g:16846:1: ruleSpecificationCS
+            // InternalCompleteOCL.g:16997:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:16998:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_8_0());
@@ -49222,17 +49661,17 @@
 
 
     // $ANTLR start "rule__ImportCS__NameAssignment_1_0"
-    // InternalCompleteOCL.g:16855:1: rule__ImportCS__NameAssignment_1_0 : ( ruleIdentifier ) ;
+    // InternalCompleteOCL.g:17007:1: rule__ImportCS__NameAssignment_1_0 : ( ruleIdentifier ) ;
     public final void rule__ImportCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16859:1: ( ( ruleIdentifier ) )
-            // InternalCompleteOCL.g:16860:1: ( ruleIdentifier )
+            // InternalCompleteOCL.g:17011:1: ( ( ruleIdentifier ) )
+            // InternalCompleteOCL.g:17012:1: ( ruleIdentifier )
             {
-            // InternalCompleteOCL.g:16860:1: ( ruleIdentifier )
-            // InternalCompleteOCL.g:16861:1: ruleIdentifier
+            // InternalCompleteOCL.g:17012:1: ( ruleIdentifier )
+            // InternalCompleteOCL.g:17013:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0());
@@ -49267,17 +49706,17 @@
 
 
     // $ANTLR start "rule__ImportCS__OwnedPathNameAssignment_2"
-    // InternalCompleteOCL.g:16870:1: rule__ImportCS__OwnedPathNameAssignment_2 : ( ruleURIPathNameCS ) ;
+    // InternalCompleteOCL.g:17022:1: rule__ImportCS__OwnedPathNameAssignment_2 : ( ruleURIPathNameCS ) ;
     public final void rule__ImportCS__OwnedPathNameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16874:1: ( ( ruleURIPathNameCS ) )
-            // InternalCompleteOCL.g:16875:1: ( ruleURIPathNameCS )
+            // InternalCompleteOCL.g:17026:1: ( ( ruleURIPathNameCS ) )
+            // InternalCompleteOCL.g:17027:1: ( ruleURIPathNameCS )
             {
-            // InternalCompleteOCL.g:16875:1: ( ruleURIPathNameCS )
-            // InternalCompleteOCL.g:16876:1: ruleURIPathNameCS
+            // InternalCompleteOCL.g:17027:1: ( ruleURIPathNameCS )
+            // InternalCompleteOCL.g:17028:1: ruleURIPathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
@@ -49312,23 +49751,23 @@
 
 
     // $ANTLR start "rule__ImportCS__IsAllAssignment_3"
-    // InternalCompleteOCL.g:16885:1: rule__ImportCS__IsAllAssignment_3 : ( ( '::*' ) ) ;
+    // InternalCompleteOCL.g:17037:1: rule__ImportCS__IsAllAssignment_3 : ( ( '::*' ) ) ;
     public final void rule__ImportCS__IsAllAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16889:1: ( ( ( '::*' ) ) )
-            // InternalCompleteOCL.g:16890:1: ( ( '::*' ) )
+            // InternalCompleteOCL.g:17041:1: ( ( ( '::*' ) ) )
+            // InternalCompleteOCL.g:17042:1: ( ( '::*' ) )
             {
-            // InternalCompleteOCL.g:16890:1: ( ( '::*' ) )
-            // InternalCompleteOCL.g:16891:1: ( '::*' )
+            // InternalCompleteOCL.g:17042:1: ( ( '::*' ) )
+            // InternalCompleteOCL.g:17043:1: ( '::*' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
-            // InternalCompleteOCL.g:16892:1: ( '::*' )
-            // InternalCompleteOCL.g:16893:1: '::*'
+            // InternalCompleteOCL.g:17044:1: ( '::*' )
+            // InternalCompleteOCL.g:17045:1: '::*'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
@@ -49365,17 +49804,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__OwnedSignatureAssignment_1"
-    // InternalCompleteOCL.g:16908:1: rule__OperationContextDeclCS__OwnedSignatureAssignment_1 : ( ruleTemplateSignatureCS ) ;
+    // InternalCompleteOCL.g:17060:1: rule__OperationContextDeclCS__OwnedSignatureAssignment_1 : ( ruleTemplateSignatureCS ) ;
     public final void rule__OperationContextDeclCS__OwnedSignatureAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16912:1: ( ( ruleTemplateSignatureCS ) )
-            // InternalCompleteOCL.g:16913:1: ( ruleTemplateSignatureCS )
+            // InternalCompleteOCL.g:17064:1: ( ( ruleTemplateSignatureCS ) )
+            // InternalCompleteOCL.g:17065:1: ( ruleTemplateSignatureCS )
             {
-            // InternalCompleteOCL.g:16913:1: ( ruleTemplateSignatureCS )
-            // InternalCompleteOCL.g:16914:1: ruleTemplateSignatureCS
+            // InternalCompleteOCL.g:17065:1: ( ruleTemplateSignatureCS )
+            // InternalCompleteOCL.g:17066:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
@@ -49410,28 +49849,28 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__OwnedPathNameAssignment_2"
-    // InternalCompleteOCL.g:16923:1: rule__OperationContextDeclCS__OwnedPathNameAssignment_2 : ( rulePathNameCS ) ;
+    // InternalCompleteOCL.g:17075:1: rule__OperationContextDeclCS__OwnedPathNameAssignment_2 : ( ruleUnreservedPathNameCS ) ;
     public final void rule__OperationContextDeclCS__OwnedPathNameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16927:1: ( ( rulePathNameCS ) )
-            // InternalCompleteOCL.g:16928:1: ( rulePathNameCS )
+            // InternalCompleteOCL.g:17079:1: ( ( ruleUnreservedPathNameCS ) )
+            // InternalCompleteOCL.g:17080:1: ( ruleUnreservedPathNameCS )
             {
-            // InternalCompleteOCL.g:16928:1: ( rulePathNameCS )
-            // InternalCompleteOCL.g:16929:1: rulePathNameCS
+            // InternalCompleteOCL.g:17080:1: ( ruleUnreservedPathNameCS )
+            // InternalCompleteOCL.g:17081:1: ruleUnreservedPathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0());
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
-            rulePathNameCS();
+            ruleUnreservedPathNameCS();
 
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0());
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_2_0());
             }
 
             }
@@ -49455,17 +49894,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__OwnedParametersAssignment_4_0"
-    // InternalCompleteOCL.g:16938:1: rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 : ( ruleParameterCS ) ;
+    // InternalCompleteOCL.g:17090:1: rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 : ( ruleParameterCS ) ;
     public final void rule__OperationContextDeclCS__OwnedParametersAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16942:1: ( ( ruleParameterCS ) )
-            // InternalCompleteOCL.g:16943:1: ( ruleParameterCS )
+            // InternalCompleteOCL.g:17094:1: ( ( ruleParameterCS ) )
+            // InternalCompleteOCL.g:17095:1: ( ruleParameterCS )
             {
-            // InternalCompleteOCL.g:16943:1: ( ruleParameterCS )
-            // InternalCompleteOCL.g:16944:1: ruleParameterCS
+            // InternalCompleteOCL.g:17095:1: ( ruleParameterCS )
+            // InternalCompleteOCL.g:17096:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_0_0());
@@ -49500,17 +49939,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1"
-    // InternalCompleteOCL.g:16953:1: rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 : ( ruleParameterCS ) ;
+    // InternalCompleteOCL.g:17105:1: rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 : ( ruleParameterCS ) ;
     public final void rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16957:1: ( ( ruleParameterCS ) )
-            // InternalCompleteOCL.g:16958:1: ( ruleParameterCS )
+            // InternalCompleteOCL.g:17109:1: ( ( ruleParameterCS ) )
+            // InternalCompleteOCL.g:17110:1: ( ruleParameterCS )
             {
-            // InternalCompleteOCL.g:16958:1: ( ruleParameterCS )
-            // InternalCompleteOCL.g:16959:1: ruleParameterCS
+            // InternalCompleteOCL.g:17110:1: ( ruleParameterCS )
+            // InternalCompleteOCL.g:17111:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_1_1_0());
@@ -49545,17 +49984,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__OwnedTypeAssignment_7"
-    // InternalCompleteOCL.g:16968:1: rule__OperationContextDeclCS__OwnedTypeAssignment_7 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:17120:1: rule__OperationContextDeclCS__OwnedTypeAssignment_7 : ( ruleTypeExpCS ) ;
     public final void rule__OperationContextDeclCS__OwnedTypeAssignment_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16972:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:16973:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17124:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:17125:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:16973:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:16974:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:17125:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17126:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_7_0());
@@ -49590,17 +50029,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1"
-    // InternalCompleteOCL.g:16983:1: rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 : ( ruleConstraintCS ) ;
+    // InternalCompleteOCL.g:17135:1: rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 : ( ruleConstraintCS ) ;
     public final void rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:16987:1: ( ( ruleConstraintCS ) )
-            // InternalCompleteOCL.g:16988:1: ( ruleConstraintCS )
+            // InternalCompleteOCL.g:17139:1: ( ( ruleConstraintCS ) )
+            // InternalCompleteOCL.g:17140:1: ( ruleConstraintCS )
             {
-            // InternalCompleteOCL.g:16988:1: ( ruleConstraintCS )
-            // InternalCompleteOCL.g:16989:1: ruleConstraintCS
+            // InternalCompleteOCL.g:17140:1: ( ruleConstraintCS )
+            // InternalCompleteOCL.g:17141:1: ruleConstraintCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsConstraintCSParserRuleCall_8_0_1_0());
@@ -49635,17 +50074,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1"
-    // InternalCompleteOCL.g:16998:1: rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 : ( ruleConstraintCS ) ;
+    // InternalCompleteOCL.g:17150:1: rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 : ( ruleConstraintCS ) ;
     public final void rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17002:1: ( ( ruleConstraintCS ) )
-            // InternalCompleteOCL.g:17003:1: ( ruleConstraintCS )
+            // InternalCompleteOCL.g:17154:1: ( ( ruleConstraintCS ) )
+            // InternalCompleteOCL.g:17155:1: ( ruleConstraintCS )
             {
-            // InternalCompleteOCL.g:17003:1: ( ruleConstraintCS )
-            // InternalCompleteOCL.g:17004:1: ruleConstraintCS
+            // InternalCompleteOCL.g:17155:1: ( ruleConstraintCS )
+            // InternalCompleteOCL.g:17156:1: ruleConstraintCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsConstraintCSParserRuleCall_8_1_1_0());
@@ -49680,17 +50119,17 @@
 
 
     // $ANTLR start "rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3"
-    // InternalCompleteOCL.g:17013:1: rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 : ( ruleSpecificationCS ) ;
+    // InternalCompleteOCL.g:17165:1: rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 : ( ruleSpecificationCS ) ;
     public final void rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17017:1: ( ( ruleSpecificationCS ) )
-            // InternalCompleteOCL.g:17018:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:17169:1: ( ( ruleSpecificationCS ) )
+            // InternalCompleteOCL.g:17170:1: ( ruleSpecificationCS )
             {
-            // InternalCompleteOCL.g:17018:1: ( ruleSpecificationCS )
-            // InternalCompleteOCL.g:17019:1: ruleSpecificationCS
+            // InternalCompleteOCL.g:17170:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:17171:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesSpecificationCSParserRuleCall_8_2_3_0());
@@ -49725,28 +50164,28 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__OwnedPathNameAssignment_1"
-    // InternalCompleteOCL.g:17028:1: rule__PackageDeclarationCS__OwnedPathNameAssignment_1 : ( rulePathNameCS ) ;
+    // InternalCompleteOCL.g:17180:1: rule__PackageDeclarationCS__OwnedPathNameAssignment_1 : ( ruleUnreservedPathNameCS ) ;
     public final void rule__PackageDeclarationCS__OwnedPathNameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17032:1: ( ( rulePathNameCS ) )
-            // InternalCompleteOCL.g:17033:1: ( rulePathNameCS )
+            // InternalCompleteOCL.g:17184:1: ( ( ruleUnreservedPathNameCS ) )
+            // InternalCompleteOCL.g:17185:1: ( ruleUnreservedPathNameCS )
             {
-            // InternalCompleteOCL.g:17033:1: ( rulePathNameCS )
-            // InternalCompleteOCL.g:17034:1: rulePathNameCS
+            // InternalCompleteOCL.g:17185:1: ( ruleUnreservedPathNameCS )
+            // InternalCompleteOCL.g:17186:1: ruleUnreservedPathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
+               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
-            rulePathNameCS();
+            ruleUnreservedPathNameCS();
 
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
+               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0());
             }
 
             }
@@ -49770,17 +50209,17 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1"
-    // InternalCompleteOCL.g:17043:1: rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 : ( ruleConstraintCS ) ;
+    // InternalCompleteOCL.g:17195:1: rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 : ( ruleConstraintCS ) ;
     public final void rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17047:1: ( ( ruleConstraintCS ) )
-            // InternalCompleteOCL.g:17048:1: ( ruleConstraintCS )
+            // InternalCompleteOCL.g:17199:1: ( ( ruleConstraintCS ) )
+            // InternalCompleteOCL.g:17200:1: ( ruleConstraintCS )
             {
-            // InternalCompleteOCL.g:17048:1: ( ruleConstraintCS )
-            // InternalCompleteOCL.g:17049:1: ruleConstraintCS
+            // InternalCompleteOCL.g:17200:1: ( ruleConstraintCS )
+            // InternalCompleteOCL.g:17201:1: ruleConstraintCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_2_1_0());
@@ -49815,17 +50254,17 @@
 
 
     // $ANTLR start "rule__PackageDeclarationCS__OwnedContextsAssignment_3"
-    // InternalCompleteOCL.g:17058:1: rule__PackageDeclarationCS__OwnedContextsAssignment_3 : ( ruleContextDeclCS ) ;
+    // InternalCompleteOCL.g:17210:1: rule__PackageDeclarationCS__OwnedContextsAssignment_3 : ( ruleContextDeclCS ) ;
     public final void rule__PackageDeclarationCS__OwnedContextsAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17062:1: ( ( ruleContextDeclCS ) )
-            // InternalCompleteOCL.g:17063:1: ( ruleContextDeclCS )
+            // InternalCompleteOCL.g:17214:1: ( ( ruleContextDeclCS ) )
+            // InternalCompleteOCL.g:17215:1: ( ruleContextDeclCS )
             {
-            // InternalCompleteOCL.g:17063:1: ( ruleContextDeclCS )
-            // InternalCompleteOCL.g:17064:1: ruleContextDeclCS
+            // InternalCompleteOCL.g:17215:1: ( ruleContextDeclCS )
+            // InternalCompleteOCL.g:17216:1: ruleContextDeclCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsContextDeclCSParserRuleCall_3_0());
@@ -49860,17 +50299,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__NameAssignment_0_0"
-    // InternalCompleteOCL.g:17073:1: rule__ParameterCS__NameAssignment_0_0 : ( ruleUnrestrictedName ) ;
+    // InternalCompleteOCL.g:17225:1: rule__ParameterCS__NameAssignment_0_0 : ( ruleUnrestrictedName ) ;
     public final void rule__ParameterCS__NameAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17077:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:17078:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:17229:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:17230:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:17078:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:17079:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:17230:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:17231:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
@@ -49905,17 +50344,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__OwnedTypeAssignment_1"
-    // InternalCompleteOCL.g:17088:1: rule__ParameterCS__OwnedTypeAssignment_1 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:17240:1: rule__ParameterCS__OwnedTypeAssignment_1 : ( ruleTypeExpCS ) ;
     public final void rule__ParameterCS__OwnedTypeAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17092:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:17093:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17244:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:17245:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:17093:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:17094:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:17245:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17246:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_0());
@@ -49950,28 +50389,28 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__OwnedPathNameAssignment_1"
-    // InternalCompleteOCL.g:17103:1: rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 : ( rulePathNameCS ) ;
+    // InternalCompleteOCL.g:17255:1: rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 : ( ruleUnreservedPathNameCS ) ;
     public final void rule__PropertyContextDeclCS__OwnedPathNameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17107:1: ( ( rulePathNameCS ) )
-            // InternalCompleteOCL.g:17108:1: ( rulePathNameCS )
+            // InternalCompleteOCL.g:17259:1: ( ( ruleUnreservedPathNameCS ) )
+            // InternalCompleteOCL.g:17260:1: ( ruleUnreservedPathNameCS )
             {
-            // InternalCompleteOCL.g:17108:1: ( rulePathNameCS )
-            // InternalCompleteOCL.g:17109:1: rulePathNameCS
+            // InternalCompleteOCL.g:17260:1: ( ruleUnreservedPathNameCS )
+            // InternalCompleteOCL.g:17261:1: ruleUnreservedPathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
+               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
-            rulePathNameCS();
+            ruleUnreservedPathNameCS();
 
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
+               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0());
             }
 
             }
@@ -49995,17 +50434,17 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__OwnedTypeAssignment_3"
-    // InternalCompleteOCL.g:17118:1: rule__PropertyContextDeclCS__OwnedTypeAssignment_3 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:17270:1: rule__PropertyContextDeclCS__OwnedTypeAssignment_3 : ( ruleTypeExpCS ) ;
     public final void rule__PropertyContextDeclCS__OwnedTypeAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17122:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:17123:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17274:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:17275:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:17123:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:17124:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:17275:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17276:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_3_0());
@@ -50040,17 +50479,17 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3"
-    // InternalCompleteOCL.g:17133:1: rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 : ( ruleSpecificationCS ) ;
+    // InternalCompleteOCL.g:17285:1: rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3 : ( ruleSpecificationCS ) ;
     public final void rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_0_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17137:1: ( ( ruleSpecificationCS ) )
-            // InternalCompleteOCL.g:17138:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:17289:1: ( ( ruleSpecificationCS ) )
+            // InternalCompleteOCL.g:17290:1: ( ruleSpecificationCS )
             {
-            // InternalCompleteOCL.g:17138:1: ( ruleSpecificationCS )
-            // InternalCompleteOCL.g:17139:1: ruleSpecificationCS
+            // InternalCompleteOCL.g:17290:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:17291:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_0_3_0());
@@ -50085,17 +50524,17 @@
 
 
     // $ANTLR start "rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3"
-    // InternalCompleteOCL.g:17148:1: rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 : ( ruleSpecificationCS ) ;
+    // InternalCompleteOCL.g:17300:1: rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3 : ( ruleSpecificationCS ) ;
     public final void rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17152:1: ( ( ruleSpecificationCS ) )
-            // InternalCompleteOCL.g:17153:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:17304:1: ( ( ruleSpecificationCS ) )
+            // InternalCompleteOCL.g:17305:1: ( ruleSpecificationCS )
             {
-            // InternalCompleteOCL.g:17153:1: ( ruleSpecificationCS )
-            // InternalCompleteOCL.g:17154:1: ruleSpecificationCS
+            // InternalCompleteOCL.g:17305:1: ( ruleSpecificationCS )
+            // InternalCompleteOCL.g:17306:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_1_3_0());
@@ -50130,17 +50569,17 @@
 
 
     // $ANTLR start "rule__SpecificationCS__OwnedExpressionAssignment_0"
-    // InternalCompleteOCL.g:17163:1: rule__SpecificationCS__OwnedExpressionAssignment_0 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:17315:1: rule__SpecificationCS__OwnedExpressionAssignment_0 : ( ruleExpCS ) ;
     public final void rule__SpecificationCS__OwnedExpressionAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17167:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:17168:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:17319:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:17320:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:17168:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:17169:1: ruleExpCS
+            // InternalCompleteOCL.g:17320:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:17321:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0());
@@ -50175,17 +50614,17 @@
 
 
     // $ANTLR start "rule__SpecificationCS__ExprStringAssignment_1"
-    // InternalCompleteOCL.g:17178:1: rule__SpecificationCS__ExprStringAssignment_1 : ( RULE_UNQUOTED_STRING ) ;
+    // InternalCompleteOCL.g:17330:1: rule__SpecificationCS__ExprStringAssignment_1 : ( RULE_UNQUOTED_STRING ) ;
     public final void rule__SpecificationCS__ExprStringAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17182:1: ( ( RULE_UNQUOTED_STRING ) )
-            // InternalCompleteOCL.g:17183:1: ( RULE_UNQUOTED_STRING )
+            // InternalCompleteOCL.g:17334:1: ( ( RULE_UNQUOTED_STRING ) )
+            // InternalCompleteOCL.g:17335:1: ( RULE_UNQUOTED_STRING )
             {
-            // InternalCompleteOCL.g:17183:1: ( RULE_UNQUOTED_STRING )
-            // InternalCompleteOCL.g:17184:1: RULE_UNQUOTED_STRING
+            // InternalCompleteOCL.g:17335:1: ( RULE_UNQUOTED_STRING )
+            // InternalCompleteOCL.g:17336:1: RULE_UNQUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0());
@@ -50216,17 +50655,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__OwnedParametersAssignment_0_1"
-    // InternalCompleteOCL.g:17193:1: rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 : ( ruleTypeParameterCS ) ;
+    // InternalCompleteOCL.g:17345:1: rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 : ( ruleTypeParameterCS ) ;
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17197:1: ( ( ruleTypeParameterCS ) )
-            // InternalCompleteOCL.g:17198:1: ( ruleTypeParameterCS )
+            // InternalCompleteOCL.g:17349:1: ( ( ruleTypeParameterCS ) )
+            // InternalCompleteOCL.g:17350:1: ( ruleTypeParameterCS )
             {
-            // InternalCompleteOCL.g:17198:1: ( ruleTypeParameterCS )
-            // InternalCompleteOCL.g:17199:1: ruleTypeParameterCS
+            // InternalCompleteOCL.g:17350:1: ( ruleTypeParameterCS )
+            // InternalCompleteOCL.g:17351:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0());
@@ -50261,17 +50700,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1"
-    // InternalCompleteOCL.g:17208:1: rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 : ( ruleTypeParameterCS ) ;
+    // InternalCompleteOCL.g:17360:1: rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 : ( ruleTypeParameterCS ) ;
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17212:1: ( ( ruleTypeParameterCS ) )
-            // InternalCompleteOCL.g:17213:1: ( ruleTypeParameterCS )
+            // InternalCompleteOCL.g:17364:1: ( ( ruleTypeParameterCS ) )
+            // InternalCompleteOCL.g:17365:1: ( ruleTypeParameterCS )
             {
-            // InternalCompleteOCL.g:17213:1: ( ruleTypeParameterCS )
-            // InternalCompleteOCL.g:17214:1: ruleTypeParameterCS
+            // InternalCompleteOCL.g:17365:1: ( ruleTypeParameterCS )
+            // InternalCompleteOCL.g:17366:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0());
@@ -50306,17 +50745,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__OwnedParametersAssignment_1_1"
-    // InternalCompleteOCL.g:17223:1: rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 : ( ruleTypeParameterCS ) ;
+    // InternalCompleteOCL.g:17375:1: rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 : ( ruleTypeParameterCS ) ;
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17227:1: ( ( ruleTypeParameterCS ) )
-            // InternalCompleteOCL.g:17228:1: ( ruleTypeParameterCS )
+            // InternalCompleteOCL.g:17379:1: ( ( ruleTypeParameterCS ) )
+            // InternalCompleteOCL.g:17380:1: ( ruleTypeParameterCS )
             {
-            // InternalCompleteOCL.g:17228:1: ( ruleTypeParameterCS )
-            // InternalCompleteOCL.g:17229:1: ruleTypeParameterCS
+            // InternalCompleteOCL.g:17380:1: ( ruleTypeParameterCS )
+            // InternalCompleteOCL.g:17381:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0());
@@ -50351,17 +50790,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1"
-    // InternalCompleteOCL.g:17238:1: rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 : ( ruleTypeParameterCS ) ;
+    // InternalCompleteOCL.g:17390:1: rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 : ( ruleTypeParameterCS ) ;
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17242:1: ( ( ruleTypeParameterCS ) )
-            // InternalCompleteOCL.g:17243:1: ( ruleTypeParameterCS )
+            // InternalCompleteOCL.g:17394:1: ( ( ruleTypeParameterCS ) )
+            // InternalCompleteOCL.g:17395:1: ( ruleTypeParameterCS )
             {
-            // InternalCompleteOCL.g:17243:1: ( ruleTypeParameterCS )
-            // InternalCompleteOCL.g:17244:1: ruleTypeParameterCS
+            // InternalCompleteOCL.g:17395:1: ( ruleTypeParameterCS )
+            // InternalCompleteOCL.g:17396:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0());
@@ -50396,17 +50835,17 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__OwnedPathElementsAssignment_0"
-    // InternalCompleteOCL.g:17254:1: rule__URIPathNameCS__OwnedPathElementsAssignment_0 : ( ruleURIFirstPathElementCS ) ;
+    // InternalCompleteOCL.g:17406:1: rule__URIPathNameCS__OwnedPathElementsAssignment_0 : ( ruleURIFirstPathElementCS ) ;
     public final void rule__URIPathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17258:1: ( ( ruleURIFirstPathElementCS ) )
-            // InternalCompleteOCL.g:17259:1: ( ruleURIFirstPathElementCS )
+            // InternalCompleteOCL.g:17410:1: ( ( ruleURIFirstPathElementCS ) )
+            // InternalCompleteOCL.g:17411:1: ( ruleURIFirstPathElementCS )
             {
-            // InternalCompleteOCL.g:17259:1: ( ruleURIFirstPathElementCS )
-            // InternalCompleteOCL.g:17260:1: ruleURIFirstPathElementCS
+            // InternalCompleteOCL.g:17411:1: ( ruleURIFirstPathElementCS )
+            // InternalCompleteOCL.g:17412:1: ruleURIFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
@@ -50441,17 +50880,17 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__OwnedPathElementsAssignment_1_1"
-    // InternalCompleteOCL.g:17269:1: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
+    // InternalCompleteOCL.g:17421:1: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
     public final void rule__URIPathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17273:1: ( ( ruleNextPathElementCS ) )
-            // InternalCompleteOCL.g:17274:1: ( ruleNextPathElementCS )
+            // InternalCompleteOCL.g:17425:1: ( ( ruleNextPathElementCS ) )
+            // InternalCompleteOCL.g:17426:1: ( ruleNextPathElementCS )
             {
-            // InternalCompleteOCL.g:17274:1: ( ruleNextPathElementCS )
-            // InternalCompleteOCL.g:17275:1: ruleNextPathElementCS
+            // InternalCompleteOCL.g:17426:1: ( ruleNextPathElementCS )
+            // InternalCompleteOCL.g:17427:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
@@ -50486,23 +50925,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__ReferredElementAssignment_0"
-    // InternalCompleteOCL.g:17284:1: rule__URIFirstPathElementCS__ReferredElementAssignment_0 : ( ( ruleUnrestrictedName ) ) ;
+    // InternalCompleteOCL.g:17436:1: rule__URIFirstPathElementCS__ReferredElementAssignment_0 : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17288:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalCompleteOCL.g:17289:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:17440:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalCompleteOCL.g:17441:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalCompleteOCL.g:17289:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:17290:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:17441:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:17442:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
             }
-            // InternalCompleteOCL.g:17291:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:17292:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:17443:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:17444:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1());
@@ -50543,23 +50982,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__ReferredElementAssignment_1_1"
-    // InternalCompleteOCL.g:17303:1: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 : ( ( ruleURI ) ) ;
+    // InternalCompleteOCL.g:17455:1: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 : ( ( ruleURI ) ) ;
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17307:1: ( ( ( ruleURI ) ) )
-            // InternalCompleteOCL.g:17308:1: ( ( ruleURI ) )
+            // InternalCompleteOCL.g:17459:1: ( ( ( ruleURI ) ) )
+            // InternalCompleteOCL.g:17460:1: ( ( ruleURI ) )
             {
-            // InternalCompleteOCL.g:17308:1: ( ( ruleURI ) )
-            // InternalCompleteOCL.g:17309:1: ( ruleURI )
+            // InternalCompleteOCL.g:17460:1: ( ( ruleURI ) )
+            // InternalCompleteOCL.g:17461:1: ( ruleURI )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
             }
-            // InternalCompleteOCL.g:17310:1: ( ruleURI )
-            // InternalCompleteOCL.g:17311:1: ruleURI
+            // InternalCompleteOCL.g:17462:1: ( ruleURI )
+            // InternalCompleteOCL.g:17463:1: ruleURI
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1());
@@ -50600,17 +51039,17 @@
 
 
     // $ANTLR start "rule__PrimitiveTypeCS__NameAssignment"
-    // InternalCompleteOCL.g:17323:1: rule__PrimitiveTypeCS__NameAssignment : ( rulePrimitiveTypeIdentifier ) ;
+    // InternalCompleteOCL.g:17475:1: rule__PrimitiveTypeCS__NameAssignment : ( rulePrimitiveTypeIdentifier ) ;
     public final void rule__PrimitiveTypeCS__NameAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17327:1: ( ( rulePrimitiveTypeIdentifier ) )
-            // InternalCompleteOCL.g:17328:1: ( rulePrimitiveTypeIdentifier )
+            // InternalCompleteOCL.g:17479:1: ( ( rulePrimitiveTypeIdentifier ) )
+            // InternalCompleteOCL.g:17480:1: ( rulePrimitiveTypeIdentifier )
             {
-            // InternalCompleteOCL.g:17328:1: ( rulePrimitiveTypeIdentifier )
-            // InternalCompleteOCL.g:17329:1: rulePrimitiveTypeIdentifier
+            // InternalCompleteOCL.g:17480:1: ( rulePrimitiveTypeIdentifier )
+            // InternalCompleteOCL.g:17481:1: rulePrimitiveTypeIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
@@ -50645,17 +51084,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__NameAssignment_0"
-    // InternalCompleteOCL.g:17338:1: rule__CollectionTypeCS__NameAssignment_0 : ( ruleCollectionTypeIdentifier ) ;
+    // InternalCompleteOCL.g:17490:1: rule__CollectionTypeCS__NameAssignment_0 : ( ruleCollectionTypeIdentifier ) ;
     public final void rule__CollectionTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17342:1: ( ( ruleCollectionTypeIdentifier ) )
-            // InternalCompleteOCL.g:17343:1: ( ruleCollectionTypeIdentifier )
+            // InternalCompleteOCL.g:17494:1: ( ( ruleCollectionTypeIdentifier ) )
+            // InternalCompleteOCL.g:17495:1: ( ruleCollectionTypeIdentifier )
             {
-            // InternalCompleteOCL.g:17343:1: ( ruleCollectionTypeIdentifier )
-            // InternalCompleteOCL.g:17344:1: ruleCollectionTypeIdentifier
+            // InternalCompleteOCL.g:17495:1: ( ruleCollectionTypeIdentifier )
+            // InternalCompleteOCL.g:17496:1: ruleCollectionTypeIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
@@ -50690,17 +51129,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__OwnedTypeAssignment_1_1"
-    // InternalCompleteOCL.g:17353:1: rule__CollectionTypeCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpWithoutMultiplicityCS ) ;
+    // InternalCompleteOCL.g:17505:1: rule__CollectionTypeCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpWithoutMultiplicityCS ) ;
     public final void rule__CollectionTypeCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17357:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
-            // InternalCompleteOCL.g:17358:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalCompleteOCL.g:17509:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
+            // InternalCompleteOCL.g:17510:1: ( ruleTypeExpWithoutMultiplicityCS )
             {
-            // InternalCompleteOCL.g:17358:1: ( ruleTypeExpWithoutMultiplicityCS )
-            // InternalCompleteOCL.g:17359:1: ruleTypeExpWithoutMultiplicityCS
+            // InternalCompleteOCL.g:17510:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalCompleteOCL.g:17511:1: ruleTypeExpWithoutMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpWithoutMultiplicityCSParserRuleCall_1_1_0());
@@ -50735,17 +51174,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2"
-    // InternalCompleteOCL.g:17368:1: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 : ( ruleMultiplicityCS ) ;
+    // InternalCompleteOCL.g:17520:1: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 : ( ruleMultiplicityCS ) ;
     public final void rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17372:1: ( ( ruleMultiplicityCS ) )
-            // InternalCompleteOCL.g:17373:1: ( ruleMultiplicityCS )
+            // InternalCompleteOCL.g:17524:1: ( ( ruleMultiplicityCS ) )
+            // InternalCompleteOCL.g:17525:1: ( ruleMultiplicityCS )
             {
-            // InternalCompleteOCL.g:17373:1: ( ruleMultiplicityCS )
-            // InternalCompleteOCL.g:17374:1: ruleMultiplicityCS
+            // InternalCompleteOCL.g:17525:1: ( ruleMultiplicityCS )
+            // InternalCompleteOCL.g:17526:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedCollectionMultiplicityMultiplicityCSParserRuleCall_1_2_0());
@@ -50780,23 +51219,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__NameAssignment_0"
-    // InternalCompleteOCL.g:17383:1: rule__MapTypeCS__NameAssignment_0 : ( ( 'Map' ) ) ;
+    // InternalCompleteOCL.g:17535:1: rule__MapTypeCS__NameAssignment_0 : ( ( 'Map' ) ) ;
     public final void rule__MapTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17387:1: ( ( ( 'Map' ) ) )
-            // InternalCompleteOCL.g:17388:1: ( ( 'Map' ) )
+            // InternalCompleteOCL.g:17539:1: ( ( ( 'Map' ) ) )
+            // InternalCompleteOCL.g:17540:1: ( ( 'Map' ) )
             {
-            // InternalCompleteOCL.g:17388:1: ( ( 'Map' ) )
-            // InternalCompleteOCL.g:17389:1: ( 'Map' )
+            // InternalCompleteOCL.g:17540:1: ( ( 'Map' ) )
+            // InternalCompleteOCL.g:17541:1: ( 'Map' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
-            // InternalCompleteOCL.g:17390:1: ( 'Map' )
-            // InternalCompleteOCL.g:17391:1: 'Map'
+            // InternalCompleteOCL.g:17542:1: ( 'Map' )
+            // InternalCompleteOCL.g:17543:1: 'Map'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
@@ -50833,17 +51272,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__OwnedKeyTypeAssignment_1_1"
-    // InternalCompleteOCL.g:17406:1: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:17558:1: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__MapTypeCS__OwnedKeyTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17410:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:17411:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17562:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:17563:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:17411:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:17412:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:17563:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17564:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
@@ -50878,17 +51317,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__OwnedValueTypeAssignment_1_3"
-    // InternalCompleteOCL.g:17421:1: rule__MapTypeCS__OwnedValueTypeAssignment_1_3 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:17573:1: rule__MapTypeCS__OwnedValueTypeAssignment_1_3 : ( ruleTypeExpCS ) ;
     public final void rule__MapTypeCS__OwnedValueTypeAssignment_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17425:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:17426:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17577:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:17578:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:17426:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:17427:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:17578:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17579:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
@@ -50923,23 +51362,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__NameAssignment_0"
-    // InternalCompleteOCL.g:17436:1: rule__TupleTypeCS__NameAssignment_0 : ( ( 'Tuple' ) ) ;
+    // InternalCompleteOCL.g:17588:1: rule__TupleTypeCS__NameAssignment_0 : ( ( 'Tuple' ) ) ;
     public final void rule__TupleTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17440:1: ( ( ( 'Tuple' ) ) )
-            // InternalCompleteOCL.g:17441:1: ( ( 'Tuple' ) )
+            // InternalCompleteOCL.g:17592:1: ( ( ( 'Tuple' ) ) )
+            // InternalCompleteOCL.g:17593:1: ( ( 'Tuple' ) )
             {
-            // InternalCompleteOCL.g:17441:1: ( ( 'Tuple' ) )
-            // InternalCompleteOCL.g:17442:1: ( 'Tuple' )
+            // InternalCompleteOCL.g:17593:1: ( ( 'Tuple' ) )
+            // InternalCompleteOCL.g:17594:1: ( 'Tuple' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
-            // InternalCompleteOCL.g:17443:1: ( 'Tuple' )
-            // InternalCompleteOCL.g:17444:1: 'Tuple'
+            // InternalCompleteOCL.g:17595:1: ( 'Tuple' )
+            // InternalCompleteOCL.g:17596:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
@@ -50976,17 +51415,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__OwnedPartsAssignment_1_1_0"
-    // InternalCompleteOCL.g:17459:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 : ( ruleTuplePartCS ) ;
+    // InternalCompleteOCL.g:17611:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 : ( ruleTuplePartCS ) ;
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17463:1: ( ( ruleTuplePartCS ) )
-            // InternalCompleteOCL.g:17464:1: ( ruleTuplePartCS )
+            // InternalCompleteOCL.g:17615:1: ( ( ruleTuplePartCS ) )
+            // InternalCompleteOCL.g:17616:1: ( ruleTuplePartCS )
             {
-            // InternalCompleteOCL.g:17464:1: ( ruleTuplePartCS )
-            // InternalCompleteOCL.g:17465:1: ruleTuplePartCS
+            // InternalCompleteOCL.g:17616:1: ( ruleTuplePartCS )
+            // InternalCompleteOCL.g:17617:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
@@ -51021,17 +51460,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1"
-    // InternalCompleteOCL.g:17474:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 : ( ruleTuplePartCS ) ;
+    // InternalCompleteOCL.g:17626:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 : ( ruleTuplePartCS ) ;
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17478:1: ( ( ruleTuplePartCS ) )
-            // InternalCompleteOCL.g:17479:1: ( ruleTuplePartCS )
+            // InternalCompleteOCL.g:17630:1: ( ( ruleTuplePartCS ) )
+            // InternalCompleteOCL.g:17631:1: ( ruleTuplePartCS )
             {
-            // InternalCompleteOCL.g:17479:1: ( ruleTuplePartCS )
-            // InternalCompleteOCL.g:17480:1: ruleTuplePartCS
+            // InternalCompleteOCL.g:17631:1: ( ruleTuplePartCS )
+            // InternalCompleteOCL.g:17632:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
@@ -51066,17 +51505,17 @@
 
 
     // $ANTLR start "rule__TuplePartCS__NameAssignment_0"
-    // InternalCompleteOCL.g:17489:1: rule__TuplePartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalCompleteOCL.g:17641:1: rule__TuplePartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__TuplePartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17493:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:17494:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:17645:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:17646:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:17494:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:17495:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:17646:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:17647:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -51111,17 +51550,17 @@
 
 
     // $ANTLR start "rule__TuplePartCS__OwnedTypeAssignment_2"
-    // InternalCompleteOCL.g:17504:1: rule__TuplePartCS__OwnedTypeAssignment_2 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:17656:1: rule__TuplePartCS__OwnedTypeAssignment_2 : ( ruleTypeExpCS ) ;
     public final void rule__TuplePartCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17508:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:17509:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17660:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:17661:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:17509:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:17510:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:17661:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17662:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
@@ -51156,17 +51595,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__OwnedTypeAssignment_0"
-    // InternalCompleteOCL.g:17519:1: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
+    // InternalCompleteOCL.g:17671:1: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
     public final void rule__CollectionLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17523:1: ( ( ruleCollectionTypeCS ) )
-            // InternalCompleteOCL.g:17524:1: ( ruleCollectionTypeCS )
+            // InternalCompleteOCL.g:17675:1: ( ( ruleCollectionTypeCS ) )
+            // InternalCompleteOCL.g:17676:1: ( ruleCollectionTypeCS )
             {
-            // InternalCompleteOCL.g:17524:1: ( ruleCollectionTypeCS )
-            // InternalCompleteOCL.g:17525:1: ruleCollectionTypeCS
+            // InternalCompleteOCL.g:17676:1: ( ruleCollectionTypeCS )
+            // InternalCompleteOCL.g:17677:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
@@ -51201,17 +51640,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0"
-    // InternalCompleteOCL.g:17534:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleCollectionLiteralPartCS ) ;
+    // InternalCompleteOCL.g:17686:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleCollectionLiteralPartCS ) ;
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17538:1: ( ( ruleCollectionLiteralPartCS ) )
-            // InternalCompleteOCL.g:17539:1: ( ruleCollectionLiteralPartCS )
+            // InternalCompleteOCL.g:17690:1: ( ( ruleCollectionLiteralPartCS ) )
+            // InternalCompleteOCL.g:17691:1: ( ruleCollectionLiteralPartCS )
             {
-            // InternalCompleteOCL.g:17539:1: ( ruleCollectionLiteralPartCS )
-            // InternalCompleteOCL.g:17540:1: ruleCollectionLiteralPartCS
+            // InternalCompleteOCL.g:17691:1: ( ruleCollectionLiteralPartCS )
+            // InternalCompleteOCL.g:17692:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
@@ -51246,17 +51685,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1"
-    // InternalCompleteOCL.g:17549:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleCollectionLiteralPartCS ) ;
+    // InternalCompleteOCL.g:17701:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleCollectionLiteralPartCS ) ;
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17553:1: ( ( ruleCollectionLiteralPartCS ) )
-            // InternalCompleteOCL.g:17554:1: ( ruleCollectionLiteralPartCS )
+            // InternalCompleteOCL.g:17705:1: ( ( ruleCollectionLiteralPartCS ) )
+            // InternalCompleteOCL.g:17706:1: ( ruleCollectionLiteralPartCS )
             {
-            // InternalCompleteOCL.g:17554:1: ( ruleCollectionLiteralPartCS )
-            // InternalCompleteOCL.g:17555:1: ruleCollectionLiteralPartCS
+            // InternalCompleteOCL.g:17706:1: ( ruleCollectionLiteralPartCS )
+            // InternalCompleteOCL.g:17707:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
@@ -51291,17 +51730,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0"
-    // InternalCompleteOCL.g:17564:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:17716:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 : ( ruleExpCS ) ;
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17568:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:17569:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:17720:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:17721:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:17569:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:17570:1: ruleExpCS
+            // InternalCompleteOCL.g:17721:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:17722:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
@@ -51336,17 +51775,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1"
-    // InternalCompleteOCL.g:17579:1: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:17731:1: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 : ( ruleExpCS ) ;
     public final void rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17583:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:17584:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:17735:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:17736:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:17584:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:17585:1: ruleExpCS
+            // InternalCompleteOCL.g:17736:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:17737:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
@@ -51381,17 +51820,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1"
-    // InternalCompleteOCL.g:17594:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 : ( rulePatternExpCS ) ;
+    // InternalCompleteOCL.g:17746:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 : ( rulePatternExpCS ) ;
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17598:1: ( ( rulePatternExpCS ) )
-            // InternalCompleteOCL.g:17599:1: ( rulePatternExpCS )
+            // InternalCompleteOCL.g:17750:1: ( ( rulePatternExpCS ) )
+            // InternalCompleteOCL.g:17751:1: ( rulePatternExpCS )
             {
-            // InternalCompleteOCL.g:17599:1: ( rulePatternExpCS )
-            // InternalCompleteOCL.g:17600:1: rulePatternExpCS
+            // InternalCompleteOCL.g:17751:1: ( rulePatternExpCS )
+            // InternalCompleteOCL.g:17752:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
@@ -51426,17 +51865,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__OwnedTypeAssignment_0"
-    // InternalCompleteOCL.g:17609:1: rule__CollectionPatternCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
+    // InternalCompleteOCL.g:17761:1: rule__CollectionPatternCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
     public final void rule__CollectionPatternCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17613:1: ( ( ruleCollectionTypeCS ) )
-            // InternalCompleteOCL.g:17614:1: ( ruleCollectionTypeCS )
+            // InternalCompleteOCL.g:17765:1: ( ( ruleCollectionTypeCS ) )
+            // InternalCompleteOCL.g:17766:1: ( ruleCollectionTypeCS )
             {
-            // InternalCompleteOCL.g:17614:1: ( ruleCollectionTypeCS )
-            // InternalCompleteOCL.g:17615:1: ruleCollectionTypeCS
+            // InternalCompleteOCL.g:17766:1: ( ruleCollectionTypeCS )
+            // InternalCompleteOCL.g:17767:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
@@ -51471,17 +51910,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__OwnedPartsAssignment_2_0"
-    // InternalCompleteOCL.g:17624:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_0 : ( rulePatternExpCS ) ;
+    // InternalCompleteOCL.g:17776:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_0 : ( rulePatternExpCS ) ;
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17628:1: ( ( rulePatternExpCS ) )
-            // InternalCompleteOCL.g:17629:1: ( rulePatternExpCS )
+            // InternalCompleteOCL.g:17780:1: ( ( rulePatternExpCS ) )
+            // InternalCompleteOCL.g:17781:1: ( rulePatternExpCS )
             {
-            // InternalCompleteOCL.g:17629:1: ( rulePatternExpCS )
-            // InternalCompleteOCL.g:17630:1: rulePatternExpCS
+            // InternalCompleteOCL.g:17781:1: ( rulePatternExpCS )
+            // InternalCompleteOCL.g:17782:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
@@ -51516,17 +51955,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1"
-    // InternalCompleteOCL.g:17639:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 : ( rulePatternExpCS ) ;
+    // InternalCompleteOCL.g:17791:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 : ( rulePatternExpCS ) ;
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17643:1: ( ( rulePatternExpCS ) )
-            // InternalCompleteOCL.g:17644:1: ( rulePatternExpCS )
+            // InternalCompleteOCL.g:17795:1: ( ( rulePatternExpCS ) )
+            // InternalCompleteOCL.g:17796:1: ( rulePatternExpCS )
             {
-            // InternalCompleteOCL.g:17644:1: ( rulePatternExpCS )
-            // InternalCompleteOCL.g:17645:1: rulePatternExpCS
+            // InternalCompleteOCL.g:17796:1: ( rulePatternExpCS )
+            // InternalCompleteOCL.g:17797:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
@@ -51561,17 +52000,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1"
-    // InternalCompleteOCL.g:17654:1: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 : ( ruleIdentifier ) ;
+    // InternalCompleteOCL.g:17806:1: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 : ( ruleIdentifier ) ;
     public final void rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17658:1: ( ( ruleIdentifier ) )
-            // InternalCompleteOCL.g:17659:1: ( ruleIdentifier )
+            // InternalCompleteOCL.g:17810:1: ( ( ruleIdentifier ) )
+            // InternalCompleteOCL.g:17811:1: ( ruleIdentifier )
             {
-            // InternalCompleteOCL.g:17659:1: ( ruleIdentifier )
-            // InternalCompleteOCL.g:17660:1: ruleIdentifier
+            // InternalCompleteOCL.g:17811:1: ( ruleIdentifier )
+            // InternalCompleteOCL.g:17812:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
@@ -51606,23 +52045,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__ReferredPropertyAssignment_0_0"
-    // InternalCompleteOCL.g:17669:1: rule__ShadowPartCS__ReferredPropertyAssignment_0_0 : ( ( ruleUnrestrictedName ) ) ;
+    // InternalCompleteOCL.g:17821:1: rule__ShadowPartCS__ReferredPropertyAssignment_0_0 : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__ShadowPartCS__ReferredPropertyAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17673:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalCompleteOCL.g:17674:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:17825:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalCompleteOCL.g:17826:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalCompleteOCL.g:17674:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:17675:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:17826:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:17827:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0_0());
             }
-            // InternalCompleteOCL.g:17676:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:17677:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:17828:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:17829:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_0_1());
@@ -51663,23 +52102,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2"
-    // InternalCompleteOCL.g:17688:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 : ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) ;
+    // InternalCompleteOCL.g:17840:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 : ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) ;
     public final void rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17692:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) )
-            // InternalCompleteOCL.g:17693:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
+            // InternalCompleteOCL.g:17844:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) )
+            // InternalCompleteOCL.g:17845:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
             {
-            // InternalCompleteOCL.g:17693:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
-            // InternalCompleteOCL.g:17694:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
+            // InternalCompleteOCL.g:17845:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
+            // InternalCompleteOCL.g:17846:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_0_2_0());
             }
-            // InternalCompleteOCL.g:17695:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
-            // InternalCompleteOCL.g:17695:2: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0
+            // InternalCompleteOCL.g:17847:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
+            // InternalCompleteOCL.g:17847:2: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0();
@@ -51714,17 +52153,17 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__OwnedInitExpressionAssignment_1"
-    // InternalCompleteOCL.g:17704:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_1 : ( ruleStringLiteralExpCS ) ;
+    // InternalCompleteOCL.g:17856:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_1 : ( ruleStringLiteralExpCS ) ;
     public final void rule__ShadowPartCS__OwnedInitExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17708:1: ( ( ruleStringLiteralExpCS ) )
-            // InternalCompleteOCL.g:17709:1: ( ruleStringLiteralExpCS )
+            // InternalCompleteOCL.g:17860:1: ( ( ruleStringLiteralExpCS ) )
+            // InternalCompleteOCL.g:17861:1: ( ruleStringLiteralExpCS )
             {
-            // InternalCompleteOCL.g:17709:1: ( ruleStringLiteralExpCS )
-            // InternalCompleteOCL.g:17710:1: ruleStringLiteralExpCS
+            // InternalCompleteOCL.g:17861:1: ( ruleStringLiteralExpCS )
+            // InternalCompleteOCL.g:17862:1: ruleStringLiteralExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionStringLiteralExpCSParserRuleCall_1_0());
@@ -51759,17 +52198,17 @@
 
 
     // $ANTLR start "rule__PatternExpCS__PatternVariableNameAssignment_0"
-    // InternalCompleteOCL.g:17719:1: rule__PatternExpCS__PatternVariableNameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalCompleteOCL.g:17871:1: rule__PatternExpCS__PatternVariableNameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__PatternExpCS__PatternVariableNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17723:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:17724:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:17875:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:17876:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:17724:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:17725:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:17876:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:17877:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
@@ -51804,17 +52243,17 @@
 
 
     // $ANTLR start "rule__PatternExpCS__OwnedPatternTypeAssignment_2"
-    // InternalCompleteOCL.g:17734:1: rule__PatternExpCS__OwnedPatternTypeAssignment_2 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:17886:1: rule__PatternExpCS__OwnedPatternTypeAssignment_2 : ( ruleTypeExpCS ) ;
     public final void rule__PatternExpCS__OwnedPatternTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17738:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:17739:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17890:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:17891:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:17739:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:17740:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:17891:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:17892:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
@@ -51849,17 +52288,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2"
-    // InternalCompleteOCL.g:17749:1: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:17901:1: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 : ( ruleExpCS ) ;
     public final void rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17753:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:17754:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:17905:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:17906:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:17754:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:17755:1: ruleExpCS
+            // InternalCompleteOCL.g:17906:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:17907:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
@@ -51894,17 +52333,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__OwnedTypeAssignment_0"
-    // InternalCompleteOCL.g:17764:1: rule__MapLiteralExpCS__OwnedTypeAssignment_0 : ( ruleMapTypeCS ) ;
+    // InternalCompleteOCL.g:17916:1: rule__MapLiteralExpCS__OwnedTypeAssignment_0 : ( ruleMapTypeCS ) ;
     public final void rule__MapLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17768:1: ( ( ruleMapTypeCS ) )
-            // InternalCompleteOCL.g:17769:1: ( ruleMapTypeCS )
+            // InternalCompleteOCL.g:17920:1: ( ( ruleMapTypeCS ) )
+            // InternalCompleteOCL.g:17921:1: ( ruleMapTypeCS )
             {
-            // InternalCompleteOCL.g:17769:1: ( ruleMapTypeCS )
-            // InternalCompleteOCL.g:17770:1: ruleMapTypeCS
+            // InternalCompleteOCL.g:17921:1: ( ruleMapTypeCS )
+            // InternalCompleteOCL.g:17922:1: ruleMapTypeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
@@ -51939,17 +52378,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__OwnedPartsAssignment_2_0"
-    // InternalCompleteOCL.g:17779:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleMapLiteralPartCS ) ;
+    // InternalCompleteOCL.g:17931:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleMapLiteralPartCS ) ;
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17783:1: ( ( ruleMapLiteralPartCS ) )
-            // InternalCompleteOCL.g:17784:1: ( ruleMapLiteralPartCS )
+            // InternalCompleteOCL.g:17935:1: ( ( ruleMapLiteralPartCS ) )
+            // InternalCompleteOCL.g:17936:1: ( ruleMapLiteralPartCS )
             {
-            // InternalCompleteOCL.g:17784:1: ( ruleMapLiteralPartCS )
-            // InternalCompleteOCL.g:17785:1: ruleMapLiteralPartCS
+            // InternalCompleteOCL.g:17936:1: ( ruleMapLiteralPartCS )
+            // InternalCompleteOCL.g:17937:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
@@ -51984,17 +52423,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1"
-    // InternalCompleteOCL.g:17794:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleMapLiteralPartCS ) ;
+    // InternalCompleteOCL.g:17946:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleMapLiteralPartCS ) ;
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17798:1: ( ( ruleMapLiteralPartCS ) )
-            // InternalCompleteOCL.g:17799:1: ( ruleMapLiteralPartCS )
+            // InternalCompleteOCL.g:17950:1: ( ( ruleMapLiteralPartCS ) )
+            // InternalCompleteOCL.g:17951:1: ( ruleMapLiteralPartCS )
             {
-            // InternalCompleteOCL.g:17799:1: ( ruleMapLiteralPartCS )
-            // InternalCompleteOCL.g:17800:1: ruleMapLiteralPartCS
+            // InternalCompleteOCL.g:17951:1: ( ruleMapLiteralPartCS )
+            // InternalCompleteOCL.g:17952:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
@@ -52029,17 +52468,17 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__OwnedKeyAssignment_0"
-    // InternalCompleteOCL.g:17809:1: rule__MapLiteralPartCS__OwnedKeyAssignment_0 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:17961:1: rule__MapLiteralPartCS__OwnedKeyAssignment_0 : ( ruleExpCS ) ;
     public final void rule__MapLiteralPartCS__OwnedKeyAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17813:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:17814:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:17965:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:17966:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:17814:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:17815:1: ruleExpCS
+            // InternalCompleteOCL.g:17966:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:17967:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
@@ -52074,17 +52513,17 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__OwnedValueAssignment_2"
-    // InternalCompleteOCL.g:17824:1: rule__MapLiteralPartCS__OwnedValueAssignment_2 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:17976:1: rule__MapLiteralPartCS__OwnedValueAssignment_2 : ( ruleExpCS ) ;
     public final void rule__MapLiteralPartCS__OwnedValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17828:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:17829:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:17980:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:17981:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:17829:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:17830:1: ruleExpCS
+            // InternalCompleteOCL.g:17981:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:17982:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
@@ -52119,17 +52558,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__OwnedPartsAssignment_2"
-    // InternalCompleteOCL.g:17839:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_2 : ( ruleTupleLiteralPartCS ) ;
+    // InternalCompleteOCL.g:17991:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_2 : ( ruleTupleLiteralPartCS ) ;
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17843:1: ( ( ruleTupleLiteralPartCS ) )
-            // InternalCompleteOCL.g:17844:1: ( ruleTupleLiteralPartCS )
+            // InternalCompleteOCL.g:17995:1: ( ( ruleTupleLiteralPartCS ) )
+            // InternalCompleteOCL.g:17996:1: ( ruleTupleLiteralPartCS )
             {
-            // InternalCompleteOCL.g:17844:1: ( ruleTupleLiteralPartCS )
-            // InternalCompleteOCL.g:17845:1: ruleTupleLiteralPartCS
+            // InternalCompleteOCL.g:17996:1: ( ruleTupleLiteralPartCS )
+            // InternalCompleteOCL.g:17997:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
@@ -52164,17 +52603,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1"
-    // InternalCompleteOCL.g:17854:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 : ( ruleTupleLiteralPartCS ) ;
+    // InternalCompleteOCL.g:18006:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 : ( ruleTupleLiteralPartCS ) ;
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17858:1: ( ( ruleTupleLiteralPartCS ) )
-            // InternalCompleteOCL.g:17859:1: ( ruleTupleLiteralPartCS )
+            // InternalCompleteOCL.g:18010:1: ( ( ruleTupleLiteralPartCS ) )
+            // InternalCompleteOCL.g:18011:1: ( ruleTupleLiteralPartCS )
             {
-            // InternalCompleteOCL.g:17859:1: ( ruleTupleLiteralPartCS )
-            // InternalCompleteOCL.g:17860:1: ruleTupleLiteralPartCS
+            // InternalCompleteOCL.g:18011:1: ( ruleTupleLiteralPartCS )
+            // InternalCompleteOCL.g:18012:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
@@ -52209,17 +52648,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__NameAssignment_0"
-    // InternalCompleteOCL.g:17869:1: rule__TupleLiteralPartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalCompleteOCL.g:18021:1: rule__TupleLiteralPartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__TupleLiteralPartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17873:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:17874:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:18025:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:18026:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:17874:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:17875:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:18026:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:18027:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -52254,17 +52693,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1"
-    // InternalCompleteOCL.g:17884:1: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:18036:1: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17888:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:17889:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18040:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:18041:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:17889:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:17890:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:18041:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18042:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
@@ -52299,17 +52738,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3"
-    // InternalCompleteOCL.g:17899:1: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18051:1: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 : ( ruleExpCS ) ;
     public final void rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17903:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:17904:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18055:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18056:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:17904:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:17905:1: ruleExpCS
+            // InternalCompleteOCL.g:18056:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18057:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
@@ -52344,17 +52783,17 @@
 
 
     // $ANTLR start "rule__NumberLiteralExpCS__SymbolAssignment"
-    // InternalCompleteOCL.g:17914:1: rule__NumberLiteralExpCS__SymbolAssignment : ( ruleNUMBER_LITERAL ) ;
+    // InternalCompleteOCL.g:18066:1: rule__NumberLiteralExpCS__SymbolAssignment : ( ruleNUMBER_LITERAL ) ;
     public final void rule__NumberLiteralExpCS__SymbolAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17918:1: ( ( ruleNUMBER_LITERAL ) )
-            // InternalCompleteOCL.g:17919:1: ( ruleNUMBER_LITERAL )
+            // InternalCompleteOCL.g:18070:1: ( ( ruleNUMBER_LITERAL ) )
+            // InternalCompleteOCL.g:18071:1: ( ruleNUMBER_LITERAL )
             {
-            // InternalCompleteOCL.g:17919:1: ( ruleNUMBER_LITERAL )
-            // InternalCompleteOCL.g:17920:1: ruleNUMBER_LITERAL
+            // InternalCompleteOCL.g:18071:1: ( ruleNUMBER_LITERAL )
+            // InternalCompleteOCL.g:18072:1: ruleNUMBER_LITERAL
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
@@ -52389,17 +52828,17 @@
 
 
     // $ANTLR start "rule__StringLiteralExpCS__SegmentsAssignment"
-    // InternalCompleteOCL.g:17929:1: rule__StringLiteralExpCS__SegmentsAssignment : ( ruleStringLiteral ) ;
+    // InternalCompleteOCL.g:18081:1: rule__StringLiteralExpCS__SegmentsAssignment : ( ruleStringLiteral ) ;
     public final void rule__StringLiteralExpCS__SegmentsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17933:1: ( ( ruleStringLiteral ) )
-            // InternalCompleteOCL.g:17934:1: ( ruleStringLiteral )
+            // InternalCompleteOCL.g:18085:1: ( ( ruleStringLiteral ) )
+            // InternalCompleteOCL.g:18086:1: ( ruleStringLiteral )
             {
-            // InternalCompleteOCL.g:17934:1: ( ruleStringLiteral )
-            // InternalCompleteOCL.g:17935:1: ruleStringLiteral
+            // InternalCompleteOCL.g:18086:1: ( ruleStringLiteral )
+            // InternalCompleteOCL.g:18087:1: ruleStringLiteral
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
@@ -52434,23 +52873,23 @@
 
 
     // $ANTLR start "rule__BooleanLiteralExpCS__SymbolAssignment_0"
-    // InternalCompleteOCL.g:17944:1: rule__BooleanLiteralExpCS__SymbolAssignment_0 : ( ( 'true' ) ) ;
+    // InternalCompleteOCL.g:18096:1: rule__BooleanLiteralExpCS__SymbolAssignment_0 : ( ( 'true' ) ) ;
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17948:1: ( ( ( 'true' ) ) )
-            // InternalCompleteOCL.g:17949:1: ( ( 'true' ) )
+            // InternalCompleteOCL.g:18100:1: ( ( ( 'true' ) ) )
+            // InternalCompleteOCL.g:18101:1: ( ( 'true' ) )
             {
-            // InternalCompleteOCL.g:17949:1: ( ( 'true' ) )
-            // InternalCompleteOCL.g:17950:1: ( 'true' )
+            // InternalCompleteOCL.g:18101:1: ( ( 'true' ) )
+            // InternalCompleteOCL.g:18102:1: ( 'true' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
-            // InternalCompleteOCL.g:17951:1: ( 'true' )
-            // InternalCompleteOCL.g:17952:1: 'true'
+            // InternalCompleteOCL.g:18103:1: ( 'true' )
+            // InternalCompleteOCL.g:18104:1: 'true'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
@@ -52487,23 +52926,23 @@
 
 
     // $ANTLR start "rule__BooleanLiteralExpCS__SymbolAssignment_1"
-    // InternalCompleteOCL.g:17967:1: rule__BooleanLiteralExpCS__SymbolAssignment_1 : ( ( 'false' ) ) ;
+    // InternalCompleteOCL.g:18119:1: rule__BooleanLiteralExpCS__SymbolAssignment_1 : ( ( 'false' ) ) ;
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17971:1: ( ( ( 'false' ) ) )
-            // InternalCompleteOCL.g:17972:1: ( ( 'false' ) )
+            // InternalCompleteOCL.g:18123:1: ( ( ( 'false' ) ) )
+            // InternalCompleteOCL.g:18124:1: ( ( 'false' ) )
             {
-            // InternalCompleteOCL.g:17972:1: ( ( 'false' ) )
-            // InternalCompleteOCL.g:17973:1: ( 'false' )
+            // InternalCompleteOCL.g:18124:1: ( ( 'false' ) )
+            // InternalCompleteOCL.g:18125:1: ( 'false' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
-            // InternalCompleteOCL.g:17974:1: ( 'false' )
-            // InternalCompleteOCL.g:17975:1: 'false'
+            // InternalCompleteOCL.g:18126:1: ( 'false' )
+            // InternalCompleteOCL.g:18127:1: 'false'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
@@ -52540,17 +52979,17 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1"
-    // InternalCompleteOCL.g:17990:1: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
+    // InternalCompleteOCL.g:18142:1: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
     public final void rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:17994:1: ( ( ruleMultiplicityCS ) )
-            // InternalCompleteOCL.g:17995:1: ( ruleMultiplicityCS )
+            // InternalCompleteOCL.g:18146:1: ( ( ruleMultiplicityCS ) )
+            // InternalCompleteOCL.g:18147:1: ( ruleMultiplicityCS )
             {
-            // InternalCompleteOCL.g:17995:1: ( ruleMultiplicityCS )
-            // InternalCompleteOCL.g:17996:1: ruleMultiplicityCS
+            // InternalCompleteOCL.g:18147:1: ( ruleMultiplicityCS )
+            // InternalCompleteOCL.g:18148:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
@@ -52585,17 +53024,17 @@
 
 
     // $ANTLR start "rule__TypeLiteralExpCS__OwnedTypeAssignment"
-    // InternalCompleteOCL.g:18005:1: rule__TypeLiteralExpCS__OwnedTypeAssignment : ( ruleTypeLiteralWithMultiplicityCS ) ;
+    // InternalCompleteOCL.g:18157:1: rule__TypeLiteralExpCS__OwnedTypeAssignment : ( ruleTypeLiteralWithMultiplicityCS ) ;
     public final void rule__TypeLiteralExpCS__OwnedTypeAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18009:1: ( ( ruleTypeLiteralWithMultiplicityCS ) )
-            // InternalCompleteOCL.g:18010:1: ( ruleTypeLiteralWithMultiplicityCS )
+            // InternalCompleteOCL.g:18161:1: ( ( ruleTypeLiteralWithMultiplicityCS ) )
+            // InternalCompleteOCL.g:18162:1: ( ruleTypeLiteralWithMultiplicityCS )
             {
-            // InternalCompleteOCL.g:18010:1: ( ruleTypeLiteralWithMultiplicityCS )
-            // InternalCompleteOCL.g:18011:1: ruleTypeLiteralWithMultiplicityCS
+            // InternalCompleteOCL.g:18162:1: ( ruleTypeLiteralWithMultiplicityCS )
+            // InternalCompleteOCL.g:18163:1: ruleTypeLiteralWithMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
@@ -52630,17 +53069,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__OwnedPathNameAssignment_0"
-    // InternalCompleteOCL.g:18020:1: rule__TypeNameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
+    // InternalCompleteOCL.g:18172:1: rule__TypeNameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
     public final void rule__TypeNameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18024:1: ( ( rulePathNameCS ) )
-            // InternalCompleteOCL.g:18025:1: ( rulePathNameCS )
+            // InternalCompleteOCL.g:18176:1: ( ( rulePathNameCS ) )
+            // InternalCompleteOCL.g:18177:1: ( rulePathNameCS )
             {
-            // InternalCompleteOCL.g:18025:1: ( rulePathNameCS )
-            // InternalCompleteOCL.g:18026:1: rulePathNameCS
+            // InternalCompleteOCL.g:18177:1: ( rulePathNameCS )
+            // InternalCompleteOCL.g:18178:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
@@ -52675,17 +53114,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0"
-    // InternalCompleteOCL.g:18035:1: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 : ( ruleCurlyBracketedClauseCS ) ;
+    // InternalCompleteOCL.g:18187:1: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 : ( ruleCurlyBracketedClauseCS ) ;
     public final void rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18039:1: ( ( ruleCurlyBracketedClauseCS ) )
-            // InternalCompleteOCL.g:18040:1: ( ruleCurlyBracketedClauseCS )
+            // InternalCompleteOCL.g:18191:1: ( ( ruleCurlyBracketedClauseCS ) )
+            // InternalCompleteOCL.g:18192:1: ( ruleCurlyBracketedClauseCS )
             {
-            // InternalCompleteOCL.g:18040:1: ( ruleCurlyBracketedClauseCS )
-            // InternalCompleteOCL.g:18041:1: ruleCurlyBracketedClauseCS
+            // InternalCompleteOCL.g:18192:1: ( ruleCurlyBracketedClauseCS )
+            // InternalCompleteOCL.g:18193:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
@@ -52720,17 +53159,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1"
-    // InternalCompleteOCL.g:18050:1: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18202:1: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 : ( ruleExpCS ) ;
     public final void rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18054:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18055:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18206:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18207:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18055:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18056:1: ruleExpCS
+            // InternalCompleteOCL.g:18207:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18208:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
@@ -52765,17 +53204,17 @@
 
 
     // $ANTLR start "rule__TypeExpCS__OwnedMultiplicityAssignment_1"
-    // InternalCompleteOCL.g:18065:1: rule__TypeExpCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
+    // InternalCompleteOCL.g:18217:1: rule__TypeExpCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
     public final void rule__TypeExpCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18069:1: ( ( ruleMultiplicityCS ) )
-            // InternalCompleteOCL.g:18070:1: ( ruleMultiplicityCS )
+            // InternalCompleteOCL.g:18221:1: ( ( ruleMultiplicityCS ) )
+            // InternalCompleteOCL.g:18222:1: ( ruleMultiplicityCS )
             {
-            // InternalCompleteOCL.g:18070:1: ( ruleMultiplicityCS )
-            // InternalCompleteOCL.g:18071:1: ruleMultiplicityCS
+            // InternalCompleteOCL.g:18222:1: ( ruleMultiplicityCS )
+            // InternalCompleteOCL.g:18223:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
@@ -52810,17 +53249,17 @@
 
 
     // $ANTLR start "rule__ExpCS__NameAssignment_0_1_1"
-    // InternalCompleteOCL.g:18080:1: rule__ExpCS__NameAssignment_0_1_1 : ( ruleBinaryOperatorName ) ;
+    // InternalCompleteOCL.g:18232:1: rule__ExpCS__NameAssignment_0_1_1 : ( ruleBinaryOperatorName ) ;
     public final void rule__ExpCS__NameAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18084:1: ( ( ruleBinaryOperatorName ) )
-            // InternalCompleteOCL.g:18085:1: ( ruleBinaryOperatorName )
+            // InternalCompleteOCL.g:18236:1: ( ( ruleBinaryOperatorName ) )
+            // InternalCompleteOCL.g:18237:1: ( ruleBinaryOperatorName )
             {
-            // InternalCompleteOCL.g:18085:1: ( ruleBinaryOperatorName )
-            // InternalCompleteOCL.g:18086:1: ruleBinaryOperatorName
+            // InternalCompleteOCL.g:18237:1: ( ruleBinaryOperatorName )
+            // InternalCompleteOCL.g:18238:1: ruleBinaryOperatorName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
@@ -52855,17 +53294,17 @@
 
 
     // $ANTLR start "rule__ExpCS__OwnedRightAssignment_0_1_2"
-    // InternalCompleteOCL.g:18095:1: rule__ExpCS__OwnedRightAssignment_0_1_2 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18247:1: rule__ExpCS__OwnedRightAssignment_0_1_2 : ( ruleExpCS ) ;
     public final void rule__ExpCS__OwnedRightAssignment_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18099:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18100:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18251:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18252:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18100:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18101:1: ruleExpCS
+            // InternalCompleteOCL.g:18252:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18253:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
@@ -52900,17 +53339,17 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__NameAssignment_0_1"
-    // InternalCompleteOCL.g:18110:1: rule__PrefixedLetExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
+    // InternalCompleteOCL.g:18262:1: rule__PrefixedLetExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
     public final void rule__PrefixedLetExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18114:1: ( ( ruleUnaryOperatorName ) )
-            // InternalCompleteOCL.g:18115:1: ( ruleUnaryOperatorName )
+            // InternalCompleteOCL.g:18266:1: ( ( ruleUnaryOperatorName ) )
+            // InternalCompleteOCL.g:18267:1: ( ruleUnaryOperatorName )
             {
-            // InternalCompleteOCL.g:18115:1: ( ruleUnaryOperatorName )
-            // InternalCompleteOCL.g:18116:1: ruleUnaryOperatorName
+            // InternalCompleteOCL.g:18267:1: ( ruleUnaryOperatorName )
+            // InternalCompleteOCL.g:18268:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
@@ -52945,17 +53384,17 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__OwnedRightAssignment_0_2"
-    // InternalCompleteOCL.g:18125:1: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedLetExpCS ) ;
+    // InternalCompleteOCL.g:18277:1: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedLetExpCS ) ;
     public final void rule__PrefixedLetExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18129:1: ( ( rulePrefixedLetExpCS ) )
-            // InternalCompleteOCL.g:18130:1: ( rulePrefixedLetExpCS )
+            // InternalCompleteOCL.g:18281:1: ( ( rulePrefixedLetExpCS ) )
+            // InternalCompleteOCL.g:18282:1: ( rulePrefixedLetExpCS )
             {
-            // InternalCompleteOCL.g:18130:1: ( rulePrefixedLetExpCS )
-            // InternalCompleteOCL.g:18131:1: rulePrefixedLetExpCS
+            // InternalCompleteOCL.g:18282:1: ( rulePrefixedLetExpCS )
+            // InternalCompleteOCL.g:18283:1: rulePrefixedLetExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
@@ -52990,17 +53429,17 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__NameAssignment_0_1"
-    // InternalCompleteOCL.g:18140:1: rule__PrefixedPrimaryExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
+    // InternalCompleteOCL.g:18292:1: rule__PrefixedPrimaryExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
     public final void rule__PrefixedPrimaryExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18144:1: ( ( ruleUnaryOperatorName ) )
-            // InternalCompleteOCL.g:18145:1: ( ruleUnaryOperatorName )
+            // InternalCompleteOCL.g:18296:1: ( ( ruleUnaryOperatorName ) )
+            // InternalCompleteOCL.g:18297:1: ( ruleUnaryOperatorName )
             {
-            // InternalCompleteOCL.g:18145:1: ( ruleUnaryOperatorName )
-            // InternalCompleteOCL.g:18146:1: ruleUnaryOperatorName
+            // InternalCompleteOCL.g:18297:1: ( ruleUnaryOperatorName )
+            // InternalCompleteOCL.g:18298:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
@@ -53035,17 +53474,17 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2"
-    // InternalCompleteOCL.g:18155:1: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedPrimaryExpCS ) ;
+    // InternalCompleteOCL.g:18307:1: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedPrimaryExpCS ) ;
     public final void rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18159:1: ( ( rulePrefixedPrimaryExpCS ) )
-            // InternalCompleteOCL.g:18160:1: ( rulePrefixedPrimaryExpCS )
+            // InternalCompleteOCL.g:18311:1: ( ( rulePrefixedPrimaryExpCS ) )
+            // InternalCompleteOCL.g:18312:1: ( rulePrefixedPrimaryExpCS )
             {
-            // InternalCompleteOCL.g:18160:1: ( rulePrefixedPrimaryExpCS )
-            // InternalCompleteOCL.g:18161:1: rulePrefixedPrimaryExpCS
+            // InternalCompleteOCL.g:18312:1: ( rulePrefixedPrimaryExpCS )
+            // InternalCompleteOCL.g:18313:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
@@ -53080,17 +53519,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedPathNameAssignment_0"
-    // InternalCompleteOCL.g:18170:1: rule__NameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
+    // InternalCompleteOCL.g:18322:1: rule__NameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
     public final void rule__NameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18174:1: ( ( rulePathNameCS ) )
-            // InternalCompleteOCL.g:18175:1: ( rulePathNameCS )
+            // InternalCompleteOCL.g:18326:1: ( ( rulePathNameCS ) )
+            // InternalCompleteOCL.g:18327:1: ( rulePathNameCS )
             {
-            // InternalCompleteOCL.g:18175:1: ( rulePathNameCS )
-            // InternalCompleteOCL.g:18176:1: rulePathNameCS
+            // InternalCompleteOCL.g:18327:1: ( rulePathNameCS )
+            // InternalCompleteOCL.g:18328:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
@@ -53125,17 +53564,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1"
-    // InternalCompleteOCL.g:18185:1: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 : ( ruleSquareBracketedClauseCS ) ;
+    // InternalCompleteOCL.g:18337:1: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 : ( ruleSquareBracketedClauseCS ) ;
     public final void rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18189:1: ( ( ruleSquareBracketedClauseCS ) )
-            // InternalCompleteOCL.g:18190:1: ( ruleSquareBracketedClauseCS )
+            // InternalCompleteOCL.g:18341:1: ( ( ruleSquareBracketedClauseCS ) )
+            // InternalCompleteOCL.g:18342:1: ( ruleSquareBracketedClauseCS )
             {
-            // InternalCompleteOCL.g:18190:1: ( ruleSquareBracketedClauseCS )
-            // InternalCompleteOCL.g:18191:1: ruleSquareBracketedClauseCS
+            // InternalCompleteOCL.g:18342:1: ( ruleSquareBracketedClauseCS )
+            // InternalCompleteOCL.g:18343:1: ruleSquareBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
@@ -53170,17 +53609,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2"
-    // InternalCompleteOCL.g:18200:1: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 : ( ruleRoundBracketedClauseCS ) ;
+    // InternalCompleteOCL.g:18352:1: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 : ( ruleRoundBracketedClauseCS ) ;
     public final void rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18204:1: ( ( ruleRoundBracketedClauseCS ) )
-            // InternalCompleteOCL.g:18205:1: ( ruleRoundBracketedClauseCS )
+            // InternalCompleteOCL.g:18356:1: ( ( ruleRoundBracketedClauseCS ) )
+            // InternalCompleteOCL.g:18357:1: ( ruleRoundBracketedClauseCS )
             {
-            // InternalCompleteOCL.g:18205:1: ( ruleRoundBracketedClauseCS )
-            // InternalCompleteOCL.g:18206:1: ruleRoundBracketedClauseCS
+            // InternalCompleteOCL.g:18357:1: ( ruleRoundBracketedClauseCS )
+            // InternalCompleteOCL.g:18358:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
@@ -53215,17 +53654,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3"
-    // InternalCompleteOCL.g:18215:1: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 : ( ruleCurlyBracketedClauseCS ) ;
+    // InternalCompleteOCL.g:18367:1: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 : ( ruleCurlyBracketedClauseCS ) ;
     public final void rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18219:1: ( ( ruleCurlyBracketedClauseCS ) )
-            // InternalCompleteOCL.g:18220:1: ( ruleCurlyBracketedClauseCS )
+            // InternalCompleteOCL.g:18371:1: ( ( ruleCurlyBracketedClauseCS ) )
+            // InternalCompleteOCL.g:18372:1: ( ruleCurlyBracketedClauseCS )
             {
-            // InternalCompleteOCL.g:18220:1: ( ruleCurlyBracketedClauseCS )
-            // InternalCompleteOCL.g:18221:1: ruleCurlyBracketedClauseCS
+            // InternalCompleteOCL.g:18372:1: ( ruleCurlyBracketedClauseCS )
+            // InternalCompleteOCL.g:18373:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
@@ -53260,23 +53699,23 @@
 
 
     // $ANTLR start "rule__NameExpCS__IsPreAssignment_4_0"
-    // InternalCompleteOCL.g:18230:1: rule__NameExpCS__IsPreAssignment_4_0 : ( ( '@' ) ) ;
+    // InternalCompleteOCL.g:18382:1: rule__NameExpCS__IsPreAssignment_4_0 : ( ( '@' ) ) ;
     public final void rule__NameExpCS__IsPreAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18234:1: ( ( ( '@' ) ) )
-            // InternalCompleteOCL.g:18235:1: ( ( '@' ) )
+            // InternalCompleteOCL.g:18386:1: ( ( ( '@' ) ) )
+            // InternalCompleteOCL.g:18387:1: ( ( '@' ) )
             {
-            // InternalCompleteOCL.g:18235:1: ( ( '@' ) )
-            // InternalCompleteOCL.g:18236:1: ( '@' )
+            // InternalCompleteOCL.g:18387:1: ( ( '@' ) )
+            // InternalCompleteOCL.g:18388:1: ( '@' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
-            // InternalCompleteOCL.g:18237:1: ( '@' )
-            // InternalCompleteOCL.g:18238:1: '@'
+            // InternalCompleteOCL.g:18389:1: ( '@' )
+            // InternalCompleteOCL.g:18390:1: '@'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
@@ -53313,17 +53752,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0"
-    // InternalCompleteOCL.g:18253:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 : ( ruleShadowPartCS ) ;
+    // InternalCompleteOCL.g:18405:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 : ( ruleShadowPartCS ) ;
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18257:1: ( ( ruleShadowPartCS ) )
-            // InternalCompleteOCL.g:18258:1: ( ruleShadowPartCS )
+            // InternalCompleteOCL.g:18409:1: ( ( ruleShadowPartCS ) )
+            // InternalCompleteOCL.g:18410:1: ( ruleShadowPartCS )
             {
-            // InternalCompleteOCL.g:18258:1: ( ruleShadowPartCS )
-            // InternalCompleteOCL.g:18259:1: ruleShadowPartCS
+            // InternalCompleteOCL.g:18410:1: ( ruleShadowPartCS )
+            // InternalCompleteOCL.g:18411:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0());
@@ -53358,17 +53797,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1"
-    // InternalCompleteOCL.g:18268:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 : ( ruleShadowPartCS ) ;
+    // InternalCompleteOCL.g:18420:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 : ( ruleShadowPartCS ) ;
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18272:1: ( ( ruleShadowPartCS ) )
-            // InternalCompleteOCL.g:18273:1: ( ruleShadowPartCS )
+            // InternalCompleteOCL.g:18424:1: ( ( ruleShadowPartCS ) )
+            // InternalCompleteOCL.g:18425:1: ( ruleShadowPartCS )
             {
-            // InternalCompleteOCL.g:18273:1: ( ruleShadowPartCS )
-            // InternalCompleteOCL.g:18274:1: ruleShadowPartCS
+            // InternalCompleteOCL.g:18425:1: ( ruleShadowPartCS )
+            // InternalCompleteOCL.g:18426:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_1_1_0());
@@ -53403,17 +53842,17 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0"
-    // InternalCompleteOCL.g:18283:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 : ( ruleNavigatingArgCS ) ;
+    // InternalCompleteOCL.g:18435:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 : ( ruleNavigatingArgCS ) ;
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18287:1: ( ( ruleNavigatingArgCS ) )
-            // InternalCompleteOCL.g:18288:1: ( ruleNavigatingArgCS )
+            // InternalCompleteOCL.g:18439:1: ( ( ruleNavigatingArgCS ) )
+            // InternalCompleteOCL.g:18440:1: ( ruleNavigatingArgCS )
             {
-            // InternalCompleteOCL.g:18288:1: ( ruleNavigatingArgCS )
-            // InternalCompleteOCL.g:18289:1: ruleNavigatingArgCS
+            // InternalCompleteOCL.g:18440:1: ( ruleNavigatingArgCS )
+            // InternalCompleteOCL.g:18441:1: ruleNavigatingArgCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
@@ -53448,23 +53887,23 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1"
-    // InternalCompleteOCL.g:18298:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) ;
+    // InternalCompleteOCL.g:18450:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) ;
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18302:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) )
-            // InternalCompleteOCL.g:18303:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
+            // InternalCompleteOCL.g:18454:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) )
+            // InternalCompleteOCL.g:18455:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
             {
-            // InternalCompleteOCL.g:18303:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
-            // InternalCompleteOCL.g:18304:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
+            // InternalCompleteOCL.g:18455:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
+            // InternalCompleteOCL.g:18456:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAlternatives_2_1_0());
             }
-            // InternalCompleteOCL.g:18305:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
-            // InternalCompleteOCL.g:18305:2: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0
+            // InternalCompleteOCL.g:18457:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
+            // InternalCompleteOCL.g:18457:2: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0();
@@ -53499,17 +53938,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__OwnedTermsAssignment_1"
-    // InternalCompleteOCL.g:18314:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18466:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 : ( ruleExpCS ) ;
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18318:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18319:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18470:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18471:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18319:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18320:1: ruleExpCS
+            // InternalCompleteOCL.g:18471:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18472:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
@@ -53544,17 +53983,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1"
-    // InternalCompleteOCL.g:18329:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18481:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 : ( ruleExpCS ) ;
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18333:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18334:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18485:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18486:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18334:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18335:1: ruleExpCS
+            // InternalCompleteOCL.g:18486:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18487:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
@@ -53589,17 +54028,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0"
-    // InternalCompleteOCL.g:18344:1: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 : ( ruleNavigatingArgExpCS ) ;
+    // InternalCompleteOCL.g:18496:1: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18348:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalCompleteOCL.g:18349:1: ( ruleNavigatingArgExpCS )
+            // InternalCompleteOCL.g:18500:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalCompleteOCL.g:18501:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalCompleteOCL.g:18349:1: ( ruleNavigatingArgExpCS )
-            // InternalCompleteOCL.g:18350:1: ruleNavigatingArgExpCS
+            // InternalCompleteOCL.g:18501:1: ( ruleNavigatingArgExpCS )
+            // InternalCompleteOCL.g:18502:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
@@ -53634,17 +54073,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1"
-    // InternalCompleteOCL.g:18359:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalCompleteOCL.g:18511:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18363:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalCompleteOCL.g:18364:1: ( ruleCoIteratorVariableCS )
+            // InternalCompleteOCL.g:18515:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalCompleteOCL.g:18516:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalCompleteOCL.g:18364:1: ( ruleCoIteratorVariableCS )
-            // InternalCompleteOCL.g:18365:1: ruleCoIteratorVariableCS
+            // InternalCompleteOCL.g:18516:1: ( ruleCoIteratorVariableCS )
+            // InternalCompleteOCL.g:18517:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_0_1_0());
@@ -53679,17 +54118,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1"
-    // InternalCompleteOCL.g:18374:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18526:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18378:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18379:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18530:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18531:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18379:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18380:1: ruleExpCS
+            // InternalCompleteOCL.g:18531:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18532:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
@@ -53724,17 +54163,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1"
-    // InternalCompleteOCL.g:18389:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:18541:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18393:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:18394:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18545:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:18546:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:18394:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:18395:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:18546:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18547:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_1_1_0());
@@ -53769,17 +54208,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1"
-    // InternalCompleteOCL.g:18404:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalCompleteOCL.g:18556:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18408:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalCompleteOCL.g:18409:1: ( ruleCoIteratorVariableCS )
+            // InternalCompleteOCL.g:18560:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalCompleteOCL.g:18561:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalCompleteOCL.g:18409:1: ( ruleCoIteratorVariableCS )
-            // InternalCompleteOCL.g:18410:1: ruleCoIteratorVariableCS
+            // InternalCompleteOCL.g:18561:1: ( ruleCoIteratorVariableCS )
+            // InternalCompleteOCL.g:18562:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_1_2_1_0());
@@ -53814,17 +54253,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1"
-    // InternalCompleteOCL.g:18419:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18571:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18423:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18424:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18575:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18576:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18424:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18425:1: ruleExpCS
+            // InternalCompleteOCL.g:18576:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18577:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_3_1_0());
@@ -53859,17 +54298,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1"
-    // InternalCompleteOCL.g:18434:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:18586:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18438:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:18439:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18590:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:18591:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:18439:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:18440:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:18591:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18592:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_2_0_1_0());
@@ -53904,17 +54343,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1"
-    // InternalCompleteOCL.g:18449:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalCompleteOCL.g:18601:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18453:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalCompleteOCL.g:18454:1: ( ruleCoIteratorVariableCS )
+            // InternalCompleteOCL.g:18605:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalCompleteOCL.g:18606:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalCompleteOCL.g:18454:1: ( ruleCoIteratorVariableCS )
-            // InternalCompleteOCL.g:18455:1: ruleCoIteratorVariableCS
+            // InternalCompleteOCL.g:18606:1: ( ruleCoIteratorVariableCS )
+            // InternalCompleteOCL.g:18607:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_2_1_1_0());
@@ -53949,17 +54388,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3"
-    // InternalCompleteOCL.g:18464:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18616:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 : ( ruleExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18468:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18469:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18620:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18621:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18469:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18470:1: ruleExpCS
+            // InternalCompleteOCL.g:18621:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18622:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_2_3_0());
@@ -53994,17 +54433,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedTypeAssignment_1_1"
-    // InternalCompleteOCL.g:18479:1: rule__NavigatingArgCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:18631:1: rule__NavigatingArgCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18483:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:18484:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18635:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:18636:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:18484:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:18485:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:18636:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18637:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
@@ -54039,23 +54478,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__PrefixAssignment_0"
-    // InternalCompleteOCL.g:18494:1: rule__NavigatingBarArgCS__PrefixAssignment_0 : ( ( '|' ) ) ;
+    // InternalCompleteOCL.g:18646:1: rule__NavigatingBarArgCS__PrefixAssignment_0 : ( ( '|' ) ) ;
     public final void rule__NavigatingBarArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18498:1: ( ( ( '|' ) ) )
-            // InternalCompleteOCL.g:18499:1: ( ( '|' ) )
+            // InternalCompleteOCL.g:18650:1: ( ( ( '|' ) ) )
+            // InternalCompleteOCL.g:18651:1: ( ( '|' ) )
             {
-            // InternalCompleteOCL.g:18499:1: ( ( '|' ) )
-            // InternalCompleteOCL.g:18500:1: ( '|' )
+            // InternalCompleteOCL.g:18651:1: ( ( '|' ) )
+            // InternalCompleteOCL.g:18652:1: ( '|' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
-            // InternalCompleteOCL.g:18501:1: ( '|' )
-            // InternalCompleteOCL.g:18502:1: '|'
+            // InternalCompleteOCL.g:18653:1: ( '|' )
+            // InternalCompleteOCL.g:18654:1: '|'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
@@ -54092,17 +54531,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1"
-    // InternalCompleteOCL.g:18517:1: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
+    // InternalCompleteOCL.g:18669:1: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18521:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalCompleteOCL.g:18522:1: ( ruleNavigatingArgExpCS )
+            // InternalCompleteOCL.g:18673:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalCompleteOCL.g:18674:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalCompleteOCL.g:18522:1: ( ruleNavigatingArgExpCS )
-            // InternalCompleteOCL.g:18523:1: ruleNavigatingArgExpCS
+            // InternalCompleteOCL.g:18674:1: ( ruleNavigatingArgExpCS )
+            // InternalCompleteOCL.g:18675:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
@@ -54137,17 +54576,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1"
-    // InternalCompleteOCL.g:18532:1: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:18684:1: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18536:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:18537:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18688:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:18689:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:18537:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:18538:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:18689:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18690:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
@@ -54182,17 +54621,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1"
-    // InternalCompleteOCL.g:18547:1: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18699:1: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18551:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18552:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18703:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18704:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18552:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18553:1: ruleExpCS
+            // InternalCompleteOCL.g:18704:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18705:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
@@ -54227,23 +54666,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__PrefixAssignment_0"
-    // InternalCompleteOCL.g:18562:1: rule__NavigatingCommaArgCS__PrefixAssignment_0 : ( ( ',' ) ) ;
+    // InternalCompleteOCL.g:18714:1: rule__NavigatingCommaArgCS__PrefixAssignment_0 : ( ( ',' ) ) ;
     public final void rule__NavigatingCommaArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18566:1: ( ( ( ',' ) ) )
-            // InternalCompleteOCL.g:18567:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:18718:1: ( ( ( ',' ) ) )
+            // InternalCompleteOCL.g:18719:1: ( ( ',' ) )
             {
-            // InternalCompleteOCL.g:18567:1: ( ( ',' ) )
-            // InternalCompleteOCL.g:18568:1: ( ',' )
+            // InternalCompleteOCL.g:18719:1: ( ( ',' ) )
+            // InternalCompleteOCL.g:18720:1: ( ',' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
-            // InternalCompleteOCL.g:18569:1: ( ',' )
-            // InternalCompleteOCL.g:18570:1: ','
+            // InternalCompleteOCL.g:18721:1: ( ',' )
+            // InternalCompleteOCL.g:18722:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
@@ -54280,17 +54719,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1"
-    // InternalCompleteOCL.g:18585:1: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
+    // InternalCompleteOCL.g:18737:1: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18589:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalCompleteOCL.g:18590:1: ( ruleNavigatingArgExpCS )
+            // InternalCompleteOCL.g:18741:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalCompleteOCL.g:18742:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalCompleteOCL.g:18590:1: ( ruleNavigatingArgExpCS )
-            // InternalCompleteOCL.g:18591:1: ruleNavigatingArgExpCS
+            // InternalCompleteOCL.g:18742:1: ( ruleNavigatingArgExpCS )
+            // InternalCompleteOCL.g:18743:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
@@ -54325,17 +54764,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1"
-    // InternalCompleteOCL.g:18600:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalCompleteOCL.g:18752:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18604:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalCompleteOCL.g:18605:1: ( ruleCoIteratorVariableCS )
+            // InternalCompleteOCL.g:18756:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalCompleteOCL.g:18757:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalCompleteOCL.g:18605:1: ( ruleCoIteratorVariableCS )
-            // InternalCompleteOCL.g:18606:1: ruleCoIteratorVariableCS
+            // InternalCompleteOCL.g:18757:1: ( ruleCoIteratorVariableCS )
+            // InternalCompleteOCL.g:18758:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_0_1_0());
@@ -54370,17 +54809,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1"
-    // InternalCompleteOCL.g:18615:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18767:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18619:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18620:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18771:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18772:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18620:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18621:1: ruleExpCS
+            // InternalCompleteOCL.g:18772:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18773:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
@@ -54415,17 +54854,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1"
-    // InternalCompleteOCL.g:18630:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:18782:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18634:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:18635:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18786:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:18787:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:18635:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:18636:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:18787:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18788:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_1_0());
@@ -54460,17 +54899,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1"
-    // InternalCompleteOCL.g:18645:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalCompleteOCL.g:18797:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18649:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalCompleteOCL.g:18650:1: ( ruleCoIteratorVariableCS )
+            // InternalCompleteOCL.g:18801:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalCompleteOCL.g:18802:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalCompleteOCL.g:18650:1: ( ruleCoIteratorVariableCS )
-            // InternalCompleteOCL.g:18651:1: ruleCoIteratorVariableCS
+            // InternalCompleteOCL.g:18802:1: ( ruleCoIteratorVariableCS )
+            // InternalCompleteOCL.g:18803:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_1_2_1_0());
@@ -54505,17 +54944,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1"
-    // InternalCompleteOCL.g:18660:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18812:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18664:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18665:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18816:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18817:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18665:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18666:1: ruleExpCS
+            // InternalCompleteOCL.g:18817:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18818:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_3_1_0());
@@ -54550,17 +54989,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1"
-    // InternalCompleteOCL.g:18675:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:18827:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18679:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:18680:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18831:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:18832:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:18680:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:18681:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:18832:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18833:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_2_0_1_0());
@@ -54595,17 +55034,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1"
-    // InternalCompleteOCL.g:18690:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalCompleteOCL.g:18842:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18694:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalCompleteOCL.g:18695:1: ( ruleCoIteratorVariableCS )
+            // InternalCompleteOCL.g:18846:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalCompleteOCL.g:18847:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalCompleteOCL.g:18695:1: ( ruleCoIteratorVariableCS )
-            // InternalCompleteOCL.g:18696:1: ruleCoIteratorVariableCS
+            // InternalCompleteOCL.g:18847:1: ( ruleCoIteratorVariableCS )
+            // InternalCompleteOCL.g:18848:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_2_1_1_0());
@@ -54640,17 +55079,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3"
-    // InternalCompleteOCL.g:18705:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18857:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 : ( ruleExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18709:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18710:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18861:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18862:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18710:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18711:1: ruleExpCS
+            // InternalCompleteOCL.g:18862:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18863:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_3_0());
@@ -54685,23 +55124,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__PrefixAssignment_0"
-    // InternalCompleteOCL.g:18720:1: rule__NavigatingSemiArgCS__PrefixAssignment_0 : ( ( ';' ) ) ;
+    // InternalCompleteOCL.g:18872:1: rule__NavigatingSemiArgCS__PrefixAssignment_0 : ( ( ';' ) ) ;
     public final void rule__NavigatingSemiArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18724:1: ( ( ( ';' ) ) )
-            // InternalCompleteOCL.g:18725:1: ( ( ';' ) )
+            // InternalCompleteOCL.g:18876:1: ( ( ( ';' ) ) )
+            // InternalCompleteOCL.g:18877:1: ( ( ';' ) )
             {
-            // InternalCompleteOCL.g:18725:1: ( ( ';' ) )
-            // InternalCompleteOCL.g:18726:1: ( ';' )
+            // InternalCompleteOCL.g:18877:1: ( ( ';' ) )
+            // InternalCompleteOCL.g:18878:1: ( ';' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
-            // InternalCompleteOCL.g:18727:1: ( ';' )
-            // InternalCompleteOCL.g:18728:1: ';'
+            // InternalCompleteOCL.g:18879:1: ( ';' )
+            // InternalCompleteOCL.g:18880:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
@@ -54738,17 +55177,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1"
-    // InternalCompleteOCL.g:18743:1: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
+    // InternalCompleteOCL.g:18895:1: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18747:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalCompleteOCL.g:18748:1: ( ruleNavigatingArgExpCS )
+            // InternalCompleteOCL.g:18899:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalCompleteOCL.g:18900:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalCompleteOCL.g:18748:1: ( ruleNavigatingArgExpCS )
-            // InternalCompleteOCL.g:18749:1: ruleNavigatingArgExpCS
+            // InternalCompleteOCL.g:18900:1: ( ruleNavigatingArgExpCS )
+            // InternalCompleteOCL.g:18901:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
@@ -54783,17 +55222,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1"
-    // InternalCompleteOCL.g:18758:1: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:18910:1: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18762:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:18763:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18914:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:18915:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:18763:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:18764:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:18915:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18916:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
@@ -54828,17 +55267,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1"
-    // InternalCompleteOCL.g:18773:1: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18925:1: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18777:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18778:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18929:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18930:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18778:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18779:1: ruleExpCS
+            // InternalCompleteOCL.g:18930:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18931:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
@@ -54873,17 +55312,17 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__NameAssignment_0"
-    // InternalCompleteOCL.g:18788:1: rule__CoIteratorVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalCompleteOCL.g:18940:1: rule__CoIteratorVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__CoIteratorVariableCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18792:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:18793:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:18944:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:18945:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:18793:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:18794:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:18945:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:18946:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -54918,17 +55357,17 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1"
-    // InternalCompleteOCL.g:18803:1: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:18955:1: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18807:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:18808:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18959:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:18960:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:18808:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:18809:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:18960:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:18961:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
@@ -54963,23 +55402,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedConditionAssignment_1"
-    // InternalCompleteOCL.g:18818:1: rule__IfExpCS__OwnedConditionAssignment_1 : ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) ;
+    // InternalCompleteOCL.g:18970:1: rule__IfExpCS__OwnedConditionAssignment_1 : ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) ;
     public final void rule__IfExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18822:1: ( ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) )
-            // InternalCompleteOCL.g:18823:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
+            // InternalCompleteOCL.g:18974:1: ( ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) )
+            // InternalCompleteOCL.g:18975:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
             {
-            // InternalCompleteOCL.g:18823:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
-            // InternalCompleteOCL.g:18824:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
+            // InternalCompleteOCL.g:18975:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
+            // InternalCompleteOCL.g:18976:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0());
             }
-            // InternalCompleteOCL.g:18825:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
-            // InternalCompleteOCL.g:18825:2: rule__IfExpCS__OwnedConditionAlternatives_1_0
+            // InternalCompleteOCL.g:18977:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
+            // InternalCompleteOCL.g:18977:2: rule__IfExpCS__OwnedConditionAlternatives_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedConditionAlternatives_1_0();
@@ -55014,17 +55453,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedThenExpressionAssignment_3"
-    // InternalCompleteOCL.g:18834:1: rule__IfExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:18986:1: rule__IfExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
     public final void rule__IfExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18838:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18839:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18990:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:18991:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18839:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18840:1: ruleExpCS
+            // InternalCompleteOCL.g:18991:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:18992:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
@@ -55059,17 +55498,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedIfThenExpressionsAssignment_4"
-    // InternalCompleteOCL.g:18849:1: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 : ( ruleElseIfThenExpCS ) ;
+    // InternalCompleteOCL.g:19001:1: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 : ( ruleElseIfThenExpCS ) ;
     public final void rule__IfExpCS__OwnedIfThenExpressionsAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18853:1: ( ( ruleElseIfThenExpCS ) )
-            // InternalCompleteOCL.g:18854:1: ( ruleElseIfThenExpCS )
+            // InternalCompleteOCL.g:19005:1: ( ( ruleElseIfThenExpCS ) )
+            // InternalCompleteOCL.g:19006:1: ( ruleElseIfThenExpCS )
             {
-            // InternalCompleteOCL.g:18854:1: ( ruleElseIfThenExpCS )
-            // InternalCompleteOCL.g:18855:1: ruleElseIfThenExpCS
+            // InternalCompleteOCL.g:19006:1: ( ruleElseIfThenExpCS )
+            // InternalCompleteOCL.g:19007:1: ruleElseIfThenExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
@@ -55104,17 +55543,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedElseExpressionAssignment_6"
-    // InternalCompleteOCL.g:18864:1: rule__IfExpCS__OwnedElseExpressionAssignment_6 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:19016:1: rule__IfExpCS__OwnedElseExpressionAssignment_6 : ( ruleExpCS ) ;
     public final void rule__IfExpCS__OwnedElseExpressionAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18868:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18869:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:19020:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:19021:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18869:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18870:1: ruleExpCS
+            // InternalCompleteOCL.g:19021:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:19022:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
@@ -55149,17 +55588,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__OwnedConditionAssignment_1"
-    // InternalCompleteOCL.g:18879:1: rule__ElseIfThenExpCS__OwnedConditionAssignment_1 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:19031:1: rule__ElseIfThenExpCS__OwnedConditionAssignment_1 : ( ruleExpCS ) ;
     public final void rule__ElseIfThenExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18883:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18884:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:19035:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:19036:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18884:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18885:1: ruleExpCS
+            // InternalCompleteOCL.g:19036:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:19037:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
@@ -55194,17 +55633,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3"
-    // InternalCompleteOCL.g:18894:1: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:19046:1: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
     public final void rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18898:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18899:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:19050:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:19051:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18899:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18900:1: ruleExpCS
+            // InternalCompleteOCL.g:19051:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:19052:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
@@ -55239,17 +55678,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__OwnedVariablesAssignment_1"
-    // InternalCompleteOCL.g:18909:1: rule__LetExpCS__OwnedVariablesAssignment_1 : ( ruleLetVariableCS ) ;
+    // InternalCompleteOCL.g:19061:1: rule__LetExpCS__OwnedVariablesAssignment_1 : ( ruleLetVariableCS ) ;
     public final void rule__LetExpCS__OwnedVariablesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18913:1: ( ( ruleLetVariableCS ) )
-            // InternalCompleteOCL.g:18914:1: ( ruleLetVariableCS )
+            // InternalCompleteOCL.g:19065:1: ( ( ruleLetVariableCS ) )
+            // InternalCompleteOCL.g:19066:1: ( ruleLetVariableCS )
             {
-            // InternalCompleteOCL.g:18914:1: ( ruleLetVariableCS )
-            // InternalCompleteOCL.g:18915:1: ruleLetVariableCS
+            // InternalCompleteOCL.g:19066:1: ( ruleLetVariableCS )
+            // InternalCompleteOCL.g:19067:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
@@ -55284,17 +55723,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__OwnedVariablesAssignment_2_1"
-    // InternalCompleteOCL.g:18924:1: rule__LetExpCS__OwnedVariablesAssignment_2_1 : ( ruleLetVariableCS ) ;
+    // InternalCompleteOCL.g:19076:1: rule__LetExpCS__OwnedVariablesAssignment_2_1 : ( ruleLetVariableCS ) ;
     public final void rule__LetExpCS__OwnedVariablesAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18928:1: ( ( ruleLetVariableCS ) )
-            // InternalCompleteOCL.g:18929:1: ( ruleLetVariableCS )
+            // InternalCompleteOCL.g:19080:1: ( ( ruleLetVariableCS ) )
+            // InternalCompleteOCL.g:19081:1: ( ruleLetVariableCS )
             {
-            // InternalCompleteOCL.g:18929:1: ( ruleLetVariableCS )
-            // InternalCompleteOCL.g:18930:1: ruleLetVariableCS
+            // InternalCompleteOCL.g:19081:1: ( ruleLetVariableCS )
+            // InternalCompleteOCL.g:19082:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
@@ -55329,17 +55768,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__OwnedInExpressionAssignment_4"
-    // InternalCompleteOCL.g:18939:1: rule__LetExpCS__OwnedInExpressionAssignment_4 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:19091:1: rule__LetExpCS__OwnedInExpressionAssignment_4 : ( ruleExpCS ) ;
     public final void rule__LetExpCS__OwnedInExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18943:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:18944:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:19095:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:19096:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:18944:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:18945:1: ruleExpCS
+            // InternalCompleteOCL.g:19096:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:19097:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
@@ -55374,17 +55813,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__NameAssignment_0"
-    // InternalCompleteOCL.g:18954:1: rule__LetVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalCompleteOCL.g:19106:1: rule__LetVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__LetVariableCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18958:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:18959:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:19110:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:19111:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:18959:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:18960:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:19111:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:19112:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -55419,17 +55858,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1"
-    // InternalCompleteOCL.g:18969:1: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 : ( ruleRoundBracketedClauseCS ) ;
+    // InternalCompleteOCL.g:19121:1: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 : ( ruleRoundBracketedClauseCS ) ;
     public final void rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18973:1: ( ( ruleRoundBracketedClauseCS ) )
-            // InternalCompleteOCL.g:18974:1: ( ruleRoundBracketedClauseCS )
+            // InternalCompleteOCL.g:19125:1: ( ( ruleRoundBracketedClauseCS ) )
+            // InternalCompleteOCL.g:19126:1: ( ruleRoundBracketedClauseCS )
             {
-            // InternalCompleteOCL.g:18974:1: ( ruleRoundBracketedClauseCS )
-            // InternalCompleteOCL.g:18975:1: ruleRoundBracketedClauseCS
+            // InternalCompleteOCL.g:19126:1: ( ruleRoundBracketedClauseCS )
+            // InternalCompleteOCL.g:19127:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
@@ -55464,17 +55903,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__OwnedTypeAssignment_2_1"
-    // InternalCompleteOCL.g:18984:1: rule__LetVariableCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
+    // InternalCompleteOCL.g:19136:1: rule__LetVariableCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
     public final void rule__LetVariableCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:18988:1: ( ( ruleTypeExpCS ) )
-            // InternalCompleteOCL.g:18989:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:19140:1: ( ( ruleTypeExpCS ) )
+            // InternalCompleteOCL.g:19141:1: ( ruleTypeExpCS )
             {
-            // InternalCompleteOCL.g:18989:1: ( ruleTypeExpCS )
-            // InternalCompleteOCL.g:18990:1: ruleTypeExpCS
+            // InternalCompleteOCL.g:19141:1: ( ruleTypeExpCS )
+            // InternalCompleteOCL.g:19142:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
@@ -55509,17 +55948,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__OwnedInitExpressionAssignment_4"
-    // InternalCompleteOCL.g:18999:1: rule__LetVariableCS__OwnedInitExpressionAssignment_4 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:19151:1: rule__LetVariableCS__OwnedInitExpressionAssignment_4 : ( ruleExpCS ) ;
     public final void rule__LetVariableCS__OwnedInitExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19003:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:19004:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:19155:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:19156:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:19004:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:19005:1: ruleExpCS
+            // InternalCompleteOCL.g:19156:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:19157:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
@@ -55554,17 +55993,17 @@
 
 
     // $ANTLR start "rule__NestedExpCS__OwnedExpressionAssignment_1"
-    // InternalCompleteOCL.g:19014:1: rule__NestedExpCS__OwnedExpressionAssignment_1 : ( ruleExpCS ) ;
+    // InternalCompleteOCL.g:19166:1: rule__NestedExpCS__OwnedExpressionAssignment_1 : ( ruleExpCS ) ;
     public final void rule__NestedExpCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19018:1: ( ( ruleExpCS ) )
-            // InternalCompleteOCL.g:19019:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:19170:1: ( ( ruleExpCS ) )
+            // InternalCompleteOCL.g:19171:1: ( ruleExpCS )
             {
-            // InternalCompleteOCL.g:19019:1: ( ruleExpCS )
-            // InternalCompleteOCL.g:19020:1: ruleExpCS
+            // InternalCompleteOCL.g:19171:1: ( ruleExpCS )
+            // InternalCompleteOCL.g:19172:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
@@ -55599,17 +56038,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__LowerBoundAssignment_0"
-    // InternalCompleteOCL.g:19029:1: rule__MultiplicityBoundsCS__LowerBoundAssignment_0 : ( ruleLOWER ) ;
+    // InternalCompleteOCL.g:19181:1: rule__MultiplicityBoundsCS__LowerBoundAssignment_0 : ( ruleLOWER ) ;
     public final void rule__MultiplicityBoundsCS__LowerBoundAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19033:1: ( ( ruleLOWER ) )
-            // InternalCompleteOCL.g:19034:1: ( ruleLOWER )
+            // InternalCompleteOCL.g:19185:1: ( ( ruleLOWER ) )
+            // InternalCompleteOCL.g:19186:1: ( ruleLOWER )
             {
-            // InternalCompleteOCL.g:19034:1: ( ruleLOWER )
-            // InternalCompleteOCL.g:19035:1: ruleLOWER
+            // InternalCompleteOCL.g:19186:1: ( ruleLOWER )
+            // InternalCompleteOCL.g:19187:1: ruleLOWER
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
@@ -55644,17 +56083,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1"
-    // InternalCompleteOCL.g:19044:1: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 : ( ruleUPPER ) ;
+    // InternalCompleteOCL.g:19196:1: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 : ( ruleUPPER ) ;
     public final void rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19048:1: ( ( ruleUPPER ) )
-            // InternalCompleteOCL.g:19049:1: ( ruleUPPER )
+            // InternalCompleteOCL.g:19200:1: ( ( ruleUPPER ) )
+            // InternalCompleteOCL.g:19201:1: ( ruleUPPER )
             {
-            // InternalCompleteOCL.g:19049:1: ( ruleUPPER )
-            // InternalCompleteOCL.g:19050:1: ruleUPPER
+            // InternalCompleteOCL.g:19201:1: ( ruleUPPER )
+            // InternalCompleteOCL.g:19202:1: ruleUPPER
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
@@ -55689,23 +56128,23 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__IsNullFreeAssignment_2_1"
-    // InternalCompleteOCL.g:19059:1: rule__MultiplicityCS__IsNullFreeAssignment_2_1 : ( ( '|1' ) ) ;
+    // InternalCompleteOCL.g:19211:1: rule__MultiplicityCS__IsNullFreeAssignment_2_1 : ( ( '|1' ) ) ;
     public final void rule__MultiplicityCS__IsNullFreeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19063:1: ( ( ( '|1' ) ) )
-            // InternalCompleteOCL.g:19064:1: ( ( '|1' ) )
+            // InternalCompleteOCL.g:19215:1: ( ( ( '|1' ) ) )
+            // InternalCompleteOCL.g:19216:1: ( ( '|1' ) )
             {
-            // InternalCompleteOCL.g:19064:1: ( ( '|1' ) )
-            // InternalCompleteOCL.g:19065:1: ( '|1' )
+            // InternalCompleteOCL.g:19216:1: ( ( '|1' ) )
+            // InternalCompleteOCL.g:19217:1: ( '|1' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
-            // InternalCompleteOCL.g:19066:1: ( '|1' )
-            // InternalCompleteOCL.g:19067:1: '|1'
+            // InternalCompleteOCL.g:19218:1: ( '|1' )
+            // InternalCompleteOCL.g:19219:1: '|1'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
@@ -55742,23 +56181,23 @@
 
 
     // $ANTLR start "rule__MultiplicityStringCS__StringBoundsAssignment"
-    // InternalCompleteOCL.g:19082:1: rule__MultiplicityStringCS__StringBoundsAssignment : ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) ;
+    // InternalCompleteOCL.g:19234:1: rule__MultiplicityStringCS__StringBoundsAssignment : ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) ;
     public final void rule__MultiplicityStringCS__StringBoundsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19086:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
-            // InternalCompleteOCL.g:19087:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
+            // InternalCompleteOCL.g:19238:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
+            // InternalCompleteOCL.g:19239:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
             {
-            // InternalCompleteOCL.g:19087:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
-            // InternalCompleteOCL.g:19088:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
+            // InternalCompleteOCL.g:19239:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
+            // InternalCompleteOCL.g:19240:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
-            // InternalCompleteOCL.g:19089:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
-            // InternalCompleteOCL.g:19089:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
+            // InternalCompleteOCL.g:19241:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
+            // InternalCompleteOCL.g:19241:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityStringCS__StringBoundsAlternatives_0();
@@ -55793,17 +56232,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__OwnedPathElementsAssignment_0"
-    // InternalCompleteOCL.g:19098:1: rule__PathNameCS__OwnedPathElementsAssignment_0 : ( ruleFirstPathElementCS ) ;
+    // InternalCompleteOCL.g:19250:1: rule__PathNameCS__OwnedPathElementsAssignment_0 : ( ruleFirstPathElementCS ) ;
     public final void rule__PathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19102:1: ( ( ruleFirstPathElementCS ) )
-            // InternalCompleteOCL.g:19103:1: ( ruleFirstPathElementCS )
+            // InternalCompleteOCL.g:19254:1: ( ( ruleFirstPathElementCS ) )
+            // InternalCompleteOCL.g:19255:1: ( ruleFirstPathElementCS )
             {
-            // InternalCompleteOCL.g:19103:1: ( ruleFirstPathElementCS )
-            // InternalCompleteOCL.g:19104:1: ruleFirstPathElementCS
+            // InternalCompleteOCL.g:19255:1: ( ruleFirstPathElementCS )
+            // InternalCompleteOCL.g:19256:1: ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
@@ -55838,17 +56277,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__OwnedPathElementsAssignment_1_1"
-    // InternalCompleteOCL.g:19113:1: rule__PathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
+    // InternalCompleteOCL.g:19265:1: rule__PathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
     public final void rule__PathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19117:1: ( ( ruleNextPathElementCS ) )
-            // InternalCompleteOCL.g:19118:1: ( ruleNextPathElementCS )
+            // InternalCompleteOCL.g:19269:1: ( ( ruleNextPathElementCS ) )
+            // InternalCompleteOCL.g:19270:1: ( ruleNextPathElementCS )
             {
-            // InternalCompleteOCL.g:19118:1: ( ruleNextPathElementCS )
-            // InternalCompleteOCL.g:19119:1: ruleNextPathElementCS
+            // InternalCompleteOCL.g:19270:1: ( ruleNextPathElementCS )
+            // InternalCompleteOCL.g:19271:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
@@ -55882,24 +56321,114 @@
     // $ANTLR end "rule__PathNameCS__OwnedPathElementsAssignment_1_1"
 
 
+    // $ANTLR start "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0"
+    // InternalCompleteOCL.g:19280:1: rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0 : ( ruleNextPathElementCS ) ;
+    public final void rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+
+        try {
+            // InternalCompleteOCL.g:19284:1: ( ( ruleNextPathElementCS ) )
+            // InternalCompleteOCL.g:19285:1: ( ruleNextPathElementCS )
+            {
+            // InternalCompleteOCL.g:19285:1: ( ruleNextPathElementCS )
+            // InternalCompleteOCL.g:19286:1: ruleNextPathElementCS
+            {
+            if ( state.backtracking==0 ) {
+               before(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_0_0());
+            }
+            pushFollow(FollowSets000.FOLLOW_2);
+            ruleNextPathElementCS();
+
+            state._fsp--;
+            if (state.failed) return ;
+            if ( state.backtracking==0 ) {
+               after(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_0_0());
+            }
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0"
+
+
+    // $ANTLR start "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1"
+    // InternalCompleteOCL.g:19295:1: rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
+    public final void rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+
+        try {
+            // InternalCompleteOCL.g:19299:1: ( ( ruleNextPathElementCS ) )
+            // InternalCompleteOCL.g:19300:1: ( ruleNextPathElementCS )
+            {
+            // InternalCompleteOCL.g:19300:1: ( ruleNextPathElementCS )
+            // InternalCompleteOCL.g:19301:1: ruleNextPathElementCS
+            {
+            if ( state.backtracking==0 ) {
+               before(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
+            }
+            pushFollow(FollowSets000.FOLLOW_2);
+            ruleNextPathElementCS();
+
+            state._fsp--;
+            if (state.failed) return ;
+            if ( state.backtracking==0 ) {
+               after(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
+            }
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1"
+
+
     // $ANTLR start "rule__FirstPathElementCS__ReferredElementAssignment"
-    // InternalCompleteOCL.g:19128:1: rule__FirstPathElementCS__ReferredElementAssignment : ( ( ruleUnrestrictedName ) ) ;
+    // InternalCompleteOCL.g:19310:1: rule__FirstPathElementCS__ReferredElementAssignment : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__FirstPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19132:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalCompleteOCL.g:19133:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:19314:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalCompleteOCL.g:19315:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalCompleteOCL.g:19133:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:19134:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:19315:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:19316:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
-            // InternalCompleteOCL.g:19135:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:19136:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:19317:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:19318:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
@@ -55940,23 +56469,23 @@
 
 
     // $ANTLR start "rule__NextPathElementCS__ReferredElementAssignment"
-    // InternalCompleteOCL.g:19147:1: rule__NextPathElementCS__ReferredElementAssignment : ( ( ruleUnreservedName ) ) ;
+    // InternalCompleteOCL.g:19329:1: rule__NextPathElementCS__ReferredElementAssignment : ( ( ruleUnreservedName ) ) ;
     public final void rule__NextPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19151:1: ( ( ( ruleUnreservedName ) ) )
-            // InternalCompleteOCL.g:19152:1: ( ( ruleUnreservedName ) )
+            // InternalCompleteOCL.g:19333:1: ( ( ( ruleUnreservedName ) ) )
+            // InternalCompleteOCL.g:19334:1: ( ( ruleUnreservedName ) )
             {
-            // InternalCompleteOCL.g:19152:1: ( ( ruleUnreservedName ) )
-            // InternalCompleteOCL.g:19153:1: ( ruleUnreservedName )
+            // InternalCompleteOCL.g:19334:1: ( ( ruleUnreservedName ) )
+            // InternalCompleteOCL.g:19335:1: ( ruleUnreservedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
-            // InternalCompleteOCL.g:19154:1: ( ruleUnreservedName )
-            // InternalCompleteOCL.g:19155:1: ruleUnreservedName
+            // InternalCompleteOCL.g:19336:1: ( ruleUnreservedName )
+            // InternalCompleteOCL.g:19337:1: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
@@ -55997,17 +56526,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0"
-    // InternalCompleteOCL.g:19166:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 : ( ruleTemplateParameterSubstitutionCS ) ;
+    // InternalCompleteOCL.g:19348:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 : ( ruleTemplateParameterSubstitutionCS ) ;
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19170:1: ( ( ruleTemplateParameterSubstitutionCS ) )
-            // InternalCompleteOCL.g:19171:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalCompleteOCL.g:19352:1: ( ( ruleTemplateParameterSubstitutionCS ) )
+            // InternalCompleteOCL.g:19353:1: ( ruleTemplateParameterSubstitutionCS )
             {
-            // InternalCompleteOCL.g:19171:1: ( ruleTemplateParameterSubstitutionCS )
-            // InternalCompleteOCL.g:19172:1: ruleTemplateParameterSubstitutionCS
+            // InternalCompleteOCL.g:19353:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalCompleteOCL.g:19354:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
@@ -56042,17 +56571,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1"
-    // InternalCompleteOCL.g:19181:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 : ( ruleTemplateParameterSubstitutionCS ) ;
+    // InternalCompleteOCL.g:19363:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 : ( ruleTemplateParameterSubstitutionCS ) ;
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19185:1: ( ( ruleTemplateParameterSubstitutionCS ) )
-            // InternalCompleteOCL.g:19186:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalCompleteOCL.g:19367:1: ( ( ruleTemplateParameterSubstitutionCS ) )
+            // InternalCompleteOCL.g:19368:1: ( ruleTemplateParameterSubstitutionCS )
             {
-            // InternalCompleteOCL.g:19186:1: ( ruleTemplateParameterSubstitutionCS )
-            // InternalCompleteOCL.g:19187:1: ruleTemplateParameterSubstitutionCS
+            // InternalCompleteOCL.g:19368:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalCompleteOCL.g:19369:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
@@ -56087,17 +56616,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedMultiplicityAssignment_2"
-    // InternalCompleteOCL.g:19196:1: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 : ( ruleMultiplicityCS ) ;
+    // InternalCompleteOCL.g:19378:1: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 : ( ruleMultiplicityCS ) ;
     public final void rule__TemplateBindingCS__OwnedMultiplicityAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19200:1: ( ( ruleMultiplicityCS ) )
-            // InternalCompleteOCL.g:19201:1: ( ruleMultiplicityCS )
+            // InternalCompleteOCL.g:19382:1: ( ( ruleMultiplicityCS ) )
+            // InternalCompleteOCL.g:19383:1: ( ruleMultiplicityCS )
             {
-            // InternalCompleteOCL.g:19201:1: ( ruleMultiplicityCS )
-            // InternalCompleteOCL.g:19202:1: ruleMultiplicityCS
+            // InternalCompleteOCL.g:19383:1: ( ruleMultiplicityCS )
+            // InternalCompleteOCL.g:19384:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
@@ -56132,17 +56661,17 @@
 
 
     // $ANTLR start "rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment"
-    // InternalCompleteOCL.g:19211:1: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment : ( ruleTypeRefCS ) ;
+    // InternalCompleteOCL.g:19393:1: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment : ( ruleTypeRefCS ) ;
     public final void rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19215:1: ( ( ruleTypeRefCS ) )
-            // InternalCompleteOCL.g:19216:1: ( ruleTypeRefCS )
+            // InternalCompleteOCL.g:19397:1: ( ( ruleTypeRefCS ) )
+            // InternalCompleteOCL.g:19398:1: ( ruleTypeRefCS )
             {
-            // InternalCompleteOCL.g:19216:1: ( ruleTypeRefCS )
-            // InternalCompleteOCL.g:19217:1: ruleTypeRefCS
+            // InternalCompleteOCL.g:19398:1: ( ruleTypeRefCS )
+            // InternalCompleteOCL.g:19399:1: ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
@@ -56177,17 +56706,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__NameAssignment_0"
-    // InternalCompleteOCL.g:19226:1: rule__TypeParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalCompleteOCL.g:19408:1: rule__TypeParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__TypeParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19230:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:19231:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:19412:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:19413:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:19231:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:19232:1: ruleUnrestrictedName
+            // InternalCompleteOCL.g:19413:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:19414:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -56222,17 +56751,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__OwnedExtendsAssignment_1_1"
-    // InternalCompleteOCL.g:19241:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_1 : ( ruleTypedRefCS ) ;
+    // InternalCompleteOCL.g:19423:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_1 : ( ruleTypedRefCS ) ;
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19245:1: ( ( ruleTypedRefCS ) )
-            // InternalCompleteOCL.g:19246:1: ( ruleTypedRefCS )
+            // InternalCompleteOCL.g:19427:1: ( ( ruleTypedRefCS ) )
+            // InternalCompleteOCL.g:19428:1: ( ruleTypedRefCS )
             {
-            // InternalCompleteOCL.g:19246:1: ( ruleTypedRefCS )
-            // InternalCompleteOCL.g:19247:1: ruleTypedRefCS
+            // InternalCompleteOCL.g:19428:1: ( ruleTypedRefCS )
+            // InternalCompleteOCL.g:19429:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
@@ -56267,17 +56796,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1"
-    // InternalCompleteOCL.g:19256:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 : ( ruleTypedRefCS ) ;
+    // InternalCompleteOCL.g:19438:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19260:1: ( ( ruleTypedRefCS ) )
-            // InternalCompleteOCL.g:19261:1: ( ruleTypedRefCS )
+            // InternalCompleteOCL.g:19442:1: ( ( ruleTypedRefCS ) )
+            // InternalCompleteOCL.g:19443:1: ( ruleTypedRefCS )
             {
-            // InternalCompleteOCL.g:19261:1: ( ruleTypedRefCS )
-            // InternalCompleteOCL.g:19262:1: ruleTypedRefCS
+            // InternalCompleteOCL.g:19443:1: ( ruleTypedRefCS )
+            // InternalCompleteOCL.g:19444:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
@@ -56312,17 +56841,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__OwnedPathNameAssignment_0"
-    // InternalCompleteOCL.g:19271:1: rule__TypedTypeRefCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
+    // InternalCompleteOCL.g:19453:1: rule__TypedTypeRefCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
     public final void rule__TypedTypeRefCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19275:1: ( ( rulePathNameCS ) )
-            // InternalCompleteOCL.g:19276:1: ( rulePathNameCS )
+            // InternalCompleteOCL.g:19457:1: ( ( rulePathNameCS ) )
+            // InternalCompleteOCL.g:19458:1: ( rulePathNameCS )
             {
-            // InternalCompleteOCL.g:19276:1: ( rulePathNameCS )
-            // InternalCompleteOCL.g:19277:1: rulePathNameCS
+            // InternalCompleteOCL.g:19458:1: ( rulePathNameCS )
+            // InternalCompleteOCL.g:19459:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
@@ -56357,17 +56886,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__OwnedBindingAssignment_1_1"
-    // InternalCompleteOCL.g:19286:1: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 : ( ruleTemplateBindingCS ) ;
+    // InternalCompleteOCL.g:19468:1: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 : ( ruleTemplateBindingCS ) ;
     public final void rule__TypedTypeRefCS__OwnedBindingAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19290:1: ( ( ruleTemplateBindingCS ) )
-            // InternalCompleteOCL.g:19291:1: ( ruleTemplateBindingCS )
+            // InternalCompleteOCL.g:19472:1: ( ( ruleTemplateBindingCS ) )
+            // InternalCompleteOCL.g:19473:1: ( ruleTemplateBindingCS )
             {
-            // InternalCompleteOCL.g:19291:1: ( ruleTemplateBindingCS )
-            // InternalCompleteOCL.g:19292:1: ruleTemplateBindingCS
+            // InternalCompleteOCL.g:19473:1: ( ruleTemplateBindingCS )
+            // InternalCompleteOCL.g:19474:1: ruleTemplateBindingCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
@@ -56402,17 +56931,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1"
-    // InternalCompleteOCL.g:19301:1: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 : ( ruleTypedRefCS ) ;
+    // InternalCompleteOCL.g:19483:1: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalCompleteOCL.g:19305:1: ( ( ruleTypedRefCS ) )
-            // InternalCompleteOCL.g:19306:1: ( ruleTypedRefCS )
+            // InternalCompleteOCL.g:19487:1: ( ( ruleTypedRefCS ) )
+            // InternalCompleteOCL.g:19488:1: ( ruleTypedRefCS )
             {
-            // InternalCompleteOCL.g:19306:1: ( ruleTypedRefCS )
-            // InternalCompleteOCL.g:19307:1: ruleTypedRefCS
+            // InternalCompleteOCL.g:19488:1: ( ruleTypedRefCS )
+            // InternalCompleteOCL.g:19489:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
@@ -56447,11 +56976,11 @@
 
     // $ANTLR start synpred5_InternalCompleteOCL
     public final void synpred5_InternalCompleteOCL_fragment() throws RecognitionException {
-        // InternalCompleteOCL.g:2928:1: ( ( rulePropertyContextDeclCS ) )
-        // InternalCompleteOCL.g:2928:1: ( rulePropertyContextDeclCS )
+        // InternalCompleteOCL.g:2956:1: ( ( rulePropertyContextDeclCS ) )
+        // InternalCompleteOCL.g:2956:1: ( rulePropertyContextDeclCS )
         {
-        // InternalCompleteOCL.g:2928:1: ( rulePropertyContextDeclCS )
-        // InternalCompleteOCL.g:2929:1: rulePropertyContextDeclCS
+        // InternalCompleteOCL.g:2956:1: ( rulePropertyContextDeclCS )
+        // InternalCompleteOCL.g:2957:1: rulePropertyContextDeclCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0());
@@ -56471,11 +57000,11 @@
 
     // $ANTLR start synpred6_InternalCompleteOCL
     public final void synpred6_InternalCompleteOCL_fragment() throws RecognitionException {
-        // InternalCompleteOCL.g:2934:6: ( ( ruleClassifierContextDeclCS ) )
-        // InternalCompleteOCL.g:2934:6: ( ruleClassifierContextDeclCS )
+        // InternalCompleteOCL.g:2962:6: ( ( ruleClassifierContextDeclCS ) )
+        // InternalCompleteOCL.g:2962:6: ( ruleClassifierContextDeclCS )
         {
-        // InternalCompleteOCL.g:2934:6: ( ruleClassifierContextDeclCS )
-        // InternalCompleteOCL.g:2935:1: ruleClassifierContextDeclCS
+        // InternalCompleteOCL.g:2962:6: ( ruleClassifierContextDeclCS )
+        // InternalCompleteOCL.g:2963:1: ruleClassifierContextDeclCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1());
@@ -56495,11 +57024,11 @@
 
     // $ANTLR start synpred75_InternalCompleteOCL
     public final void synpred75_InternalCompleteOCL_fragment() throws RecognitionException {
-        // InternalCompleteOCL.g:3845:6: ( ( ruleTypeLiteralCS ) )
-        // InternalCompleteOCL.g:3845:6: ( ruleTypeLiteralCS )
+        // InternalCompleteOCL.g:3873:6: ( ( ruleTypeLiteralCS ) )
+        // InternalCompleteOCL.g:3873:6: ( ruleTypeLiteralCS )
         {
-        // InternalCompleteOCL.g:3845:6: ( ruleTypeLiteralCS )
-        // InternalCompleteOCL.g:3846:1: ruleTypeLiteralCS
+        // InternalCompleteOCL.g:3873:6: ( ruleTypeLiteralCS )
+        // InternalCompleteOCL.g:3874:1: ruleTypeLiteralCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_1());
@@ -56519,17 +57048,17 @@
 
     // $ANTLR start synpred76_InternalCompleteOCL
     public final void synpred76_InternalCompleteOCL_fragment() throws RecognitionException {
-        // InternalCompleteOCL.g:3867:1: ( ( ( rule__ExpCS__Group_0__0 ) ) )
-        // InternalCompleteOCL.g:3867:1: ( ( rule__ExpCS__Group_0__0 ) )
+        // InternalCompleteOCL.g:3895:1: ( ( ( rule__ExpCS__Group_0__0 ) ) )
+        // InternalCompleteOCL.g:3895:1: ( ( rule__ExpCS__Group_0__0 ) )
         {
-        // InternalCompleteOCL.g:3867:1: ( ( rule__ExpCS__Group_0__0 ) )
-        // InternalCompleteOCL.g:3868:1: ( rule__ExpCS__Group_0__0 )
+        // InternalCompleteOCL.g:3895:1: ( ( rule__ExpCS__Group_0__0 ) )
+        // InternalCompleteOCL.g:3896:1: ( rule__ExpCS__Group_0__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getExpCSAccess().getGroup_0());
         }
-        // InternalCompleteOCL.g:3869:1: ( rule__ExpCS__Group_0__0 )
-        // InternalCompleteOCL.g:3869:2: rule__ExpCS__Group_0__0
+        // InternalCompleteOCL.g:3897:1: ( rule__ExpCS__Group_0__0 )
+        // InternalCompleteOCL.g:3897:2: rule__ExpCS__Group_0__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__ExpCS__Group_0__0();
@@ -56549,11 +57078,11 @@
 
     // $ANTLR start synpred83_InternalCompleteOCL
     public final void synpred83_InternalCompleteOCL_fragment() throws RecognitionException {
-        // InternalCompleteOCL.g:3957:6: ( ( ruleTupleLiteralExpCS ) )
-        // InternalCompleteOCL.g:3957:6: ( ruleTupleLiteralExpCS )
+        // InternalCompleteOCL.g:3985:6: ( ( ruleTupleLiteralExpCS ) )
+        // InternalCompleteOCL.g:3985:6: ( ruleTupleLiteralExpCS )
         {
-        // InternalCompleteOCL.g:3957:6: ( ruleTupleLiteralExpCS )
-        // InternalCompleteOCL.g:3958:1: ruleTupleLiteralExpCS
+        // InternalCompleteOCL.g:3985:6: ( ruleTupleLiteralExpCS )
+        // InternalCompleteOCL.g:3986:1: ruleTupleLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
@@ -56573,11 +57102,11 @@
 
     // $ANTLR start synpred84_InternalCompleteOCL
     public final void synpred84_InternalCompleteOCL_fragment() throws RecognitionException {
-        // InternalCompleteOCL.g:3963:6: ( ( ruleMapLiteralExpCS ) )
-        // InternalCompleteOCL.g:3963:6: ( ruleMapLiteralExpCS )
+        // InternalCompleteOCL.g:3991:6: ( ( ruleMapLiteralExpCS ) )
+        // InternalCompleteOCL.g:3991:6: ( ruleMapLiteralExpCS )
         {
-        // InternalCompleteOCL.g:3963:6: ( ruleMapLiteralExpCS )
-        // InternalCompleteOCL.g:3964:1: ruleMapLiteralExpCS
+        // InternalCompleteOCL.g:3991:6: ( ruleMapLiteralExpCS )
+        // InternalCompleteOCL.g:3992:1: ruleMapLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
@@ -56597,11 +57126,11 @@
 
     // $ANTLR start synpred85_InternalCompleteOCL
     public final void synpred85_InternalCompleteOCL_fragment() throws RecognitionException {
-        // InternalCompleteOCL.g:3969:6: ( ( ruleCollectionLiteralExpCS ) )
-        // InternalCompleteOCL.g:3969:6: ( ruleCollectionLiteralExpCS )
+        // InternalCompleteOCL.g:3997:6: ( ( ruleCollectionLiteralExpCS ) )
+        // InternalCompleteOCL.g:3997:6: ( ruleCollectionLiteralExpCS )
         {
-        // InternalCompleteOCL.g:3969:6: ( ruleCollectionLiteralExpCS )
-        // InternalCompleteOCL.g:3970:1: ruleCollectionLiteralExpCS
+        // InternalCompleteOCL.g:3997:6: ( ruleCollectionLiteralExpCS )
+        // InternalCompleteOCL.g:3998:1: ruleCollectionLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
@@ -56621,11 +57150,11 @@
 
     // $ANTLR start synpred87_InternalCompleteOCL
     public final void synpred87_InternalCompleteOCL_fragment() throws RecognitionException {
-        // InternalCompleteOCL.g:3981:6: ( ( ruleTypeLiteralExpCS ) )
-        // InternalCompleteOCL.g:3981:6: ( ruleTypeLiteralExpCS )
+        // InternalCompleteOCL.g:4009:6: ( ( ruleTypeLiteralExpCS ) )
+        // InternalCompleteOCL.g:4009:6: ( ruleTypeLiteralExpCS )
         {
-        // InternalCompleteOCL.g:3981:6: ( ruleTypeLiteralExpCS )
-        // InternalCompleteOCL.g:3982:1: ruleTypeLiteralExpCS
+        // InternalCompleteOCL.g:4009:6: ( ruleTypeLiteralExpCS )
+        // InternalCompleteOCL.g:4010:1: ruleTypeLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
@@ -56645,17 +57174,17 @@
 
     // $ANTLR start synpred91_InternalCompleteOCL
     public final void synpred91_InternalCompleteOCL_fragment() throws RecognitionException {
-        // InternalCompleteOCL.g:4053:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) )
-        // InternalCompleteOCL.g:4053:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+        // InternalCompleteOCL.g:4081:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) )
+        // InternalCompleteOCL.g:4081:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
         {
-        // InternalCompleteOCL.g:4053:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
-        // InternalCompleteOCL.g:4054:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+        // InternalCompleteOCL.g:4081:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+        // InternalCompleteOCL.g:4082:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
         }
-        // InternalCompleteOCL.g:4055:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
-        // InternalCompleteOCL.g:4055:2: rule__NavigatingArgCS__Group_0_1_0__0
+        // InternalCompleteOCL.g:4083:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+        // InternalCompleteOCL.g:4083:2: rule__NavigatingArgCS__Group_0_1_0__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingArgCS__Group_0_1_0__0();
@@ -56675,17 +57204,17 @@
 
     // $ANTLR start synpred92_InternalCompleteOCL
     public final void synpred92_InternalCompleteOCL_fragment() throws RecognitionException {
-        // InternalCompleteOCL.g:4059:6: ( ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) )
-        // InternalCompleteOCL.g:4059:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+        // InternalCompleteOCL.g:4087:6: ( ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) )
+        // InternalCompleteOCL.g:4087:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
         {
-        // InternalCompleteOCL.g:4059:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
-        // InternalCompleteOCL.g:4060:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+        // InternalCompleteOCL.g:4087:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+        // InternalCompleteOCL.g:4088:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
         }
-        // InternalCompleteOCL.g:4061:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
-        // InternalCompleteOCL.g:4061:2: rule__NavigatingArgCS__Group_0_1_1__0
+        // InternalCompleteOCL.g:4089:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+        // InternalCompleteOCL.g:4089:2: rule__NavigatingArgCS__Group_0_1_1__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingArgCS__Group_0_1_1__0();
@@ -56705,17 +57234,17 @@
 
     // $ANTLR start synpred93_InternalCompleteOCL
     public final void synpred93_InternalCompleteOCL_fragment() throws RecognitionException {
-        // InternalCompleteOCL.g:4081:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) )
-        // InternalCompleteOCL.g:4081:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+        // InternalCompleteOCL.g:4109:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) )
+        // InternalCompleteOCL.g:4109:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
         {
-        // InternalCompleteOCL.g:4081:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
-        // InternalCompleteOCL.g:4082:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+        // InternalCompleteOCL.g:4109:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+        // InternalCompleteOCL.g:4110:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
         }
-        // InternalCompleteOCL.g:4083:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
-        // InternalCompleteOCL.g:4083:2: rule__NavigatingCommaArgCS__Group_2_0__0
+        // InternalCompleteOCL.g:4111:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+        // InternalCompleteOCL.g:4111:2: rule__NavigatingCommaArgCS__Group_2_0__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingCommaArgCS__Group_2_0__0();
@@ -56735,17 +57264,17 @@
 
     // $ANTLR start synpred94_InternalCompleteOCL
     public final void synpred94_InternalCompleteOCL_fragment() throws RecognitionException {
-        // InternalCompleteOCL.g:4087:6: ( ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) )
-        // InternalCompleteOCL.g:4087:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+        // InternalCompleteOCL.g:4115:6: ( ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) )
+        // InternalCompleteOCL.g:4115:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
         {
-        // InternalCompleteOCL.g:4087:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
-        // InternalCompleteOCL.g:4088:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+        // InternalCompleteOCL.g:4115:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+        // InternalCompleteOCL.g:4116:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
         }
-        // InternalCompleteOCL.g:4089:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
-        // InternalCompleteOCL.g:4089:2: rule__NavigatingCommaArgCS__Group_2_1__0
+        // InternalCompleteOCL.g:4117:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+        // InternalCompleteOCL.g:4117:2: rule__NavigatingCommaArgCS__Group_2_1__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingCommaArgCS__Group_2_1__0();
@@ -56984,7 +57513,7 @@
             this.transition = dfa_6;
         }
         public String getDescription() {
-            return "2951:1: rule__DefCS__Alternatives : ( ( ruleDefOperationCS ) | ( ruleDefPropertyCS ) );";
+            return "2979:1: rule__DefCS__Alternatives : ( ( ruleDefOperationCS ) | ( ruleDefPropertyCS ) );";
         }
     }
     static final String dfa_7s = "\30\uffff";
@@ -57040,7 +57569,7 @@
             this.transition = dfa_12;
         }
         public String getDescription() {
-            return "3834:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );";
+            return "3862:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             TokenStream input = (TokenStream)_input;
@@ -57196,7 +57725,7 @@
             this.transition = dfa_18;
         }
         public String getDescription() {
-            return "3862:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );";
+            return "3890:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             TokenStream input = (TokenStream)_input;
@@ -57321,7 +57850,7 @@
             this.transition = dfa_24;
         }
         public String getDescription() {
-            return "3928:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );";
+            return "3956:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             TokenStream input = (TokenStream)_input;
@@ -57450,47 +57979,47 @@
         public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000802L});
         public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000000380002L});
         public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000802L});
-        public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x00000080003800C0L,0x0000000000000010L});
+        public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x7F000080FFF800C0L,0x0000000000000010L});
         public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000000000L,0x0000001000000044L});
         public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000044L});
         public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x00000000003800C0L,0x0000000000000008L});
-        public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x7F00008FFFF801F0L,0x000000C308D00010L});
+        public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x7F00000FFFF801F0L,0x000000C308D00010L});
         public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
         public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000020L});
         public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000000000L,0x0000001000000040L});
-        public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x00000000003800C0L,0x0000000000000020L});
-        public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
-        public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x7F000480FFF800C0L,0x0000000000000010L});
-        public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
-        public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-        public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x00000000003800C0L});
-        public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x7F000080FFF800C0L,0x0000000000000010L});
-        public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000040000000000L});
-        public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x00000000003800E0L});
-        public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000000000000000L,0x0000002000000000L});
-        public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x7F000080FFF800C0L,0x0000000000000030L});
-        public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x7F000080FFF800C0L,0x0000000000000710L});
-        public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000700L});
-        public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000000000000000L,0x0000000000001806L});
-        public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L});
-        public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0000000000000000L,0x0000000000006000L});
-        public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000000000000002L,0x0000000000006000L});
-        public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000000000000000L,0x00000000000000A0L});
-        public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000004000000000L,0x0000000000000080L});
-        public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
-        public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0000000000000000L,0x0000000000008000L});
-        public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000000000000002L,0x0000000000008000L});
-        public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x7F000000FFF800C0L});
+        public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x00000080003800C0L,0x0000000000000010L});
+        public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x00000000003800C0L,0x0000000000000020L});
+        public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
+        public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x7F00040FFFF800F0L,0x000000C208D00010L});
+        public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
+        public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+        public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x00000000003800C0L});
+        public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x7F00000FFFF800F0L,0x000000C208D00010L});
+        public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000040000000000L});
+        public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x00000000003800E0L});
+        public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000000000000000L,0x0000002000000000L});
+        public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x7F00000FFFF800F0L,0x000000C208D00030L});
+        public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x7F00000FFFF800F0L,0x000000C208D00710L});
+        public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000700L});
+        public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000000000000000L,0x0000000000001806L});
+        public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L});
+        public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000000000000000L,0x0000000000006000L});
+        public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000000000000002L,0x0000000000006000L});
+        public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000000000000000L,0x00000000000000A0L});
+        public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000004000000000L,0x0000000000000080L});
+        public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
+        public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000000000000000L,0x0000000000008000L});
+        public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000000000000002L,0x0000000000008000L});
         public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000000000000000L,0x0000000001000020L});
         public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0000000000000000L,0x0000000000010000L});
-        public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x7F00008FFFF800F0L,0x000000C308D20018L});
-        public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x7F00008FFFF800F0L,0x000000C308D00018L});
+        public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x7F00000FFFF800F0L,0x000000C308D20018L});
+        public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x7F00000FFFF800F0L,0x000000C308D00018L});
         public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x0000000000000000L,0x0000000000040000L});
-        public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x7F00008FFFF800F0L,0x000000C308D00010L});
+        public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x7F00000FFFF800F0L,0x000000C308D00010L});
         public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x0000000000000000L,0x0000000000080080L});
         public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x00000000000000C0L});
         public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x0000000000000000L,0x0000000000020000L});
-        public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x7F00008FFFF800F0L,0x000000C308D20010L});
+        public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x7F00000FFFF800F0L,0x000000C308D20010L});
         public static final BitSet FOLLOW_48 = new BitSet(new long[]{0x0000000000000000L,0x0000000000200000L});
         public static final BitSet FOLLOW_49 = new BitSet(new long[]{0x0000000000000000L,0x0000000000020080L});
         public static final BitSet FOLLOW_50 = new BitSet(new long[]{0x0000040000000000L,0x0000000000000008L});
@@ -57500,33 +58029,32 @@
         public static final BitSet FOLLOW_54 = new BitSet(new long[]{0x0000000000000000L,0x0000000001000000L});
         public static final BitSet FOLLOW_55 = new BitSet(new long[]{0x00FFFFF900060000L});
         public static final BitSet FOLLOW_56 = new BitSet(new long[]{0x0000000700000000L});
-        public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x7F00008FFFF800F0L,0x000000C208D00010L});
-        public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x0000000000000000L,0x0000010001010010L});
-        public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x0000000000000002L,0x0000000001000000L});
-        public static final BitSet FOLLOW_60 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L});
-        public static final BitSet FOLLOW_61 = new BitSet(new long[]{0x00000000003800E0L,0x0000000000020000L});
-        public static final BitSet FOLLOW_62 = new BitSet(new long[]{0x7F00008FFFF800F0L,0x000000C308D00039L});
-        public static final BitSet FOLLOW_63 = new BitSet(new long[]{0x0000000000000000L,0x0000060000000080L});
-        public static final BitSet FOLLOW_64 = new BitSet(new long[]{0x0000000000000002L,0x0000060000000080L});
-        public static final BitSet FOLLOW_65 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000080L});
-        public static final BitSet FOLLOW_66 = new BitSet(new long[]{0x0000000000000000L,0x0000000004200008L});
-        public static final BitSet FOLLOW_67 = new BitSet(new long[]{0x0000040000000000L,0x0000000000200000L});
-        public static final BitSet FOLLOW_68 = new BitSet(new long[]{0x7F00008FFFF800F0L,0x000000C308D00011L});
-        public static final BitSet FOLLOW_69 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L});
-        public static final BitSet FOLLOW_70 = new BitSet(new long[]{0x0000000000000000L,0x00000000A0000000L});
-        public static final BitSet FOLLOW_71 = new BitSet(new long[]{0x0000000000000002L,0x0000000080000000L});
-        public static final BitSet FOLLOW_72 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L});
-        public static final BitSet FOLLOW_73 = new BitSet(new long[]{0x0000000000000000L,0x0000000004000080L});
-        public static final BitSet FOLLOW_74 = new BitSet(new long[]{0x0000040000000000L,0x0000000000000018L});
-        public static final BitSet FOLLOW_75 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-        public static final BitSet FOLLOW_76 = new BitSet(new long[]{0x0000000800000010L});
-        public static final BitSet FOLLOW_77 = new BitSet(new long[]{0x0000002800000010L,0x0000000000000001L});
-        public static final BitSet FOLLOW_78 = new BitSet(new long[]{0x8000000000000000L,0x0000080002000000L});
-        public static final BitSet FOLLOW_79 = new BitSet(new long[]{0x0000000000000000L,0x0000000001000080L});
-        public static final BitSet FOLLOW_80 = new BitSet(new long[]{0x7F000080FFF800C0L,0x0000000000000011L});
-        public static final BitSet FOLLOW_81 = new BitSet(new long[]{0x0000000000000000L,0x0000000400000000L});
-        public static final BitSet FOLLOW_82 = new BitSet(new long[]{0x0000000000000000L,0x0000000800000000L});
-        public static final BitSet FOLLOW_83 = new BitSet(new long[]{0x0000000000000002L,0x0000000800000000L});
+        public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x0000000000000000L,0x0000010001010010L});
+        public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x0000000000000002L,0x0000000001000000L});
+        public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L});
+        public static final BitSet FOLLOW_60 = new BitSet(new long[]{0x00000000003800E0L,0x0000000000020000L});
+        public static final BitSet FOLLOW_61 = new BitSet(new long[]{0x7F00000FFFF800F0L,0x000000C308D00039L});
+        public static final BitSet FOLLOW_62 = new BitSet(new long[]{0x0000000000000000L,0x0000060000000080L});
+        public static final BitSet FOLLOW_63 = new BitSet(new long[]{0x0000000000000002L,0x0000060000000080L});
+        public static final BitSet FOLLOW_64 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000080L});
+        public static final BitSet FOLLOW_65 = new BitSet(new long[]{0x0000000000000000L,0x0000000004200008L});
+        public static final BitSet FOLLOW_66 = new BitSet(new long[]{0x0000040000000000L,0x0000000000200000L});
+        public static final BitSet FOLLOW_67 = new BitSet(new long[]{0x7F00000FFFF800F0L,0x000000C308D00011L});
+        public static final BitSet FOLLOW_68 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L});
+        public static final BitSet FOLLOW_69 = new BitSet(new long[]{0x0000000000000000L,0x00000000A0000000L});
+        public static final BitSet FOLLOW_70 = new BitSet(new long[]{0x0000000000000002L,0x0000000080000000L});
+        public static final BitSet FOLLOW_71 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L});
+        public static final BitSet FOLLOW_72 = new BitSet(new long[]{0x0000000000000000L,0x0000000004000080L});
+        public static final BitSet FOLLOW_73 = new BitSet(new long[]{0x0000040000000000L,0x0000000000000018L});
+        public static final BitSet FOLLOW_74 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
+        public static final BitSet FOLLOW_75 = new BitSet(new long[]{0x0000000800000010L});
+        public static final BitSet FOLLOW_76 = new BitSet(new long[]{0x0000002800000010L,0x0000000000000001L});
+        public static final BitSet FOLLOW_77 = new BitSet(new long[]{0x8000000000000000L,0x0000080002000000L});
+        public static final BitSet FOLLOW_78 = new BitSet(new long[]{0x0000000000000000L,0x0000000001000080L});
+        public static final BitSet FOLLOW_79 = new BitSet(new long[]{0x7F00000FFFF800F0L,0x000000C208D00011L});
+        public static final BitSet FOLLOW_80 = new BitSet(new long[]{0x0000000000000000L,0x0000000400000000L});
+        public static final BitSet FOLLOW_81 = new BitSet(new long[]{0x0000000000000000L,0x0000000800000000L});
+        public static final BitSet FOLLOW_82 = new BitSet(new long[]{0x0000000000000002L,0x0000000800000000L});
     }
 
 
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/CompleteOCL.xtextbin b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/CompleteOCL.xtextbin
index adb6424..4c4bcf2 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/CompleteOCL.xtextbin
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/CompleteOCL.xtextbin
Binary files differ
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/CompleteOCLGrammarResource.java b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/CompleteOCLGrammarResource.java
index 469ce80..dbdf82f 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/CompleteOCLGrammarResource.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/CompleteOCLGrammarResource.java
@@ -129,7 +129,7 @@
 					createKeyword("context"),
 					setCardinality("?", createAssignment("ownedSignature", "=", createRuleCall(PR_TemplateSignatureCS))),
 					setCardinality("?", createAssignment("selfName", "=", createRuleCall(PR_UnrestrictedName))),
-					createAssignment("ownedPathName", "=", createRuleCall(_Base.PR_PathNameCS)),
+					createAssignment("ownedPathName", "=", createRuleCall(_Base.PR_UnreservedPathNameCS)),
 					setCardinality("+", createAlternatives(
 						createGroup(
 							createKeyword("inv"),
@@ -226,7 +226,7 @@
 				createGroup(
 					createKeyword("context"),
 					setCardinality("?", createAssignment("ownedSignature", "=", createRuleCall(PR_TemplateSignatureCS))),
-					createAssignment("ownedPathName", "=", createRuleCall(_Base.PR_PathNameCS)),
+					createAssignment("ownedPathName", "=", createRuleCall(_Base.PR_UnreservedPathNameCS)),
 					createKeyword("("),
 					setCardinality("?", createGroup(
 						createAssignment("ownedParameters", "+=", createRuleCall(PR_ParameterCS)),
@@ -251,7 +251,7 @@
 			PR_PackageDeclarationCS.setAlternatives(
 				createGroup(
 					createKeyword("package"),
-					createAssignment("ownedPathName", "=", createRuleCall(_Base.PR_PathNameCS)),
+					createAssignment("ownedPathName", "=", createRuleCall(_Base.PR_UnreservedPathNameCS)),
 					setCardinality("*", createGroup(
 						createKeyword("inv"),
 						createAssignment("ownedInvariants", "+=", createRuleCall(PR_ConstraintCS)))),
@@ -279,7 +279,7 @@
 			PR_PropertyContextDeclCS.setAlternatives(
 				createGroup(
 					createKeyword("context"),
-					createAssignment("ownedPathName", "=", createRuleCall(_Base.PR_PathNameCS)),
+					createAssignment("ownedPathName", "=", createRuleCall(_Base.PR_UnreservedPathNameCS)),
 					createKeyword(":"),
 					createAssignment("ownedType", "=", createRuleCall(_EssentialOCL.PR_TypeExpCS)),
 					setCardinality("*", createAlternatives(
@@ -1148,6 +1148,7 @@
 		private static final @NonNull ParserRule PR_UPPER = createParserRule("UPPER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.EINT));
 		private static final @NonNull ParserRule PR_URI = createParserRule("URI", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_UnreservedName = createParserRule("UnreservedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
+		private static final @NonNull ParserRule PR_UnreservedPathNameCS = createParserRule("UnreservedPathNameCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.PATH_NAME_CS));
 		private static final @NonNull ParserRule PR_UnrestrictedName = createParserRule("UnrestrictedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_WildcardTypeRefCS = createParserRule("WildcardTypeRefCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.WILDCARD_TYPE_REF_CS));
 
@@ -1244,6 +1245,12 @@
 				createRuleCall(TR_SINGLE_QUOTED_STRING));
 			PR_UnreservedName.setAlternatives(
 				createRuleCall(_CompleteOCL.PR_UnrestrictedName));
+			PR_UnreservedPathNameCS.setAlternatives(
+				createGroup(
+					createAssignment("ownedPathElements", "+=", createRuleCall(PR_NextPathElementCS)),
+					setCardinality("*", createGroup(
+						createKeyword("::"),
+						createAssignment("ownedPathElements", "+=", createRuleCall(PR_NextPathElementCS))))));
 			PR_UnrestrictedName.setAlternatives(
 				createRuleCall(PR_Identifier));
 			PR_WildcardTypeRefCS.setAlternatives(
@@ -1272,6 +1279,7 @@
 				rules.add(PR_MultiplicityCS);
 				rules.add(PR_MultiplicityStringCS);
 				rules.add(PR_PathNameCS);
+				rules.add(PR_UnreservedPathNameCS);
 				rules.add(PR_FirstPathElementCS);
 				rules.add(PR_NextPathElementCS);
 				rules.add(PR_TemplateBindingCS);
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/internal/InternalCompleteOCL.g b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/internal/InternalCompleteOCL.g
index 8078e76..9f2e9e4 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/internal/InternalCompleteOCL.g
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/internal/InternalCompleteOCL.g
@@ -243,9 +243,9 @@
 )?(
 (
 		{
-	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0());
+	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_3_0());
 	    }
-		lv_ownedPathName_3_0=rulePathNameCS		{
+		lv_ownedPathName_3_0=ruleUnreservedPathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
 	        }
@@ -253,7 +253,7 @@
        			$current,
        			"ownedPathName",
         		lv_ownedPathName_3_0,
-        		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
+        		"org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -988,9 +988,9 @@
 )?(
 (
 		{
-	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0());
+	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_2_0());
 	    }
-		lv_ownedPathName_2_0=rulePathNameCS		{
+		lv_ownedPathName_2_0=ruleUnreservedPathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
 	        }
@@ -998,7 +998,7 @@
        			$current,
        			"ownedPathName",
         		lv_ownedPathName_2_0,
-        		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
+        		"org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -1184,9 +1184,9 @@
 (
 (
 		{
-	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
+	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0());
 	    }
-		lv_ownedPathName_1_0=rulePathNameCS		{
+		lv_ownedPathName_1_0=ruleUnreservedPathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageDeclarationCSRule());
 	        }
@@ -1194,7 +1194,7 @@
        			$current,
        			"ownedPathName",
         		lv_ownedPathName_1_0,
-        		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
+        		"org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -1332,9 +1332,9 @@
 (
 (
 		{
-	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
+	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0());
 	    }
-		lv_ownedPathName_1_0=rulePathNameCS		{
+		lv_ownedPathName_1_0=ruleUnreservedPathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
 	        }
@@ -1342,7 +1342,7 @@
        			$current,
        			"ownedPathName",
         		lv_ownedPathName_1_0,
-        		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
+        		"org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -6613,6 +6613,67 @@
 
 
 
+// Entry rule entryRuleUnreservedPathNameCS
+entryRuleUnreservedPathNameCS returns [EObject current=null]
+	:
+	{ newCompositeNode(grammarAccess.getUnreservedPathNameCSRule()); }
+	 iv_ruleUnreservedPathNameCS=ruleUnreservedPathNameCS
+	 { $current=$iv_ruleUnreservedPathNameCS.current; }
+	 EOF
+;
+
+// Rule UnreservedPathNameCS
+ruleUnreservedPathNameCS returns [EObject current=null]
+    @init { enterRule();
+    }
+    @after { leaveRule(); }:
+((
+(
+		{
+	        newCompositeNode(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_0_0());
+	    }
+		lv_ownedPathElements_0_0=ruleNextPathElementCS		{
+	        if ($current==null) {
+	            $current = createModelElementForParent(grammarAccess.getUnreservedPathNameCSRule());
+	        }
+       		add(
+       			$current,
+       			"ownedPathElements",
+        		lv_ownedPathElements_0_0,
+        		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
+	        afterParserOrEnumRuleCall();
+	    }
+
+)
+)(	otherlv_1='::'
+    {
+    	newLeafNode(otherlv_1, grammarAccess.getUnreservedPathNameCSAccess().getColonColonKeyword_1_0());
+    }
+(
+(
+		{
+	        newCompositeNode(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
+	    }
+		lv_ownedPathElements_2_0=ruleNextPathElementCS		{
+	        if ($current==null) {
+	            $current = createModelElementForParent(grammarAccess.getUnreservedPathNameCSRule());
+	        }
+       		add(
+       			$current,
+       			"ownedPathElements",
+        		lv_ownedPathElements_2_0,
+        		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
+	        afterParserOrEnumRuleCall();
+	    }
+
+)
+))*)
+;
+
+
+
+
+
 // Entry rule entryRuleFirstPathElementCS
 entryRuleFirstPathElementCS returns [EObject current=null]
 	:
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/internal/InternalCompleteOCLLexer.java b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/internal/InternalCompleteOCLLexer.java
index 81d919d..dd92947 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/internal/InternalCompleteOCLLexer.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/internal/InternalCompleteOCLLexer.java
@@ -2036,8 +2036,8 @@
         try {
             int _type = RULE_UNQUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:7277:22: ( '\\u00A3$%^\\u00A3$%^' )
-            // InternalCompleteOCL.g:7277:24: '\\u00A3$%^\\u00A3$%^'
+            // InternalCompleteOCL.g:7338:22: ( '\\u00A3$%^\\u00A3$%^' )
+            // InternalCompleteOCL.g:7338:24: '\\u00A3$%^\\u00A3$%^'
             {
             match("\u00A3$%^\u00A3$%^");
 
@@ -2055,8 +2055,8 @@
     // $ANTLR start "RULE_ESCAPED_CHARACTER"
     public final void mRULE_ESCAPED_CHARACTER() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:7279:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
-            // InternalCompleteOCL.g:7279:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+            // InternalCompleteOCL.g:7340:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
+            // InternalCompleteOCL.g:7340:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
             match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -2080,8 +2080,8 @@
     // $ANTLR start "RULE_LETTER_CHARACTER"
     public final void mRULE_LETTER_CHARACTER() throws RecognitionException {
         try {
-            // InternalCompleteOCL.g:7281:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
-            // InternalCompleteOCL.g:7281:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
+            // InternalCompleteOCL.g:7342:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
+            // InternalCompleteOCL.g:7342:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
             {
             if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
                 input.consume();
@@ -2106,11 +2106,11 @@
         try {
             int _type = RULE_DOUBLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:7283:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
-            // InternalCompleteOCL.g:7283:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+            // InternalCompleteOCL.g:7344:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
+            // InternalCompleteOCL.g:7344:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
             match('\"');
-            // InternalCompleteOCL.g:7283:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
+            // InternalCompleteOCL.g:7344:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
                 int alt1=3;
@@ -2126,14 +2126,14 @@
 
                 switch (alt1) {
             	case 1 :
-            	    // InternalCompleteOCL.g:7283:34: RULE_ESCAPED_CHARACTER
+            	    // InternalCompleteOCL.g:7344:34: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalCompleteOCL.g:7283:57: ~ ( ( '\\\\' | '\"' ) )
+            	    // InternalCompleteOCL.g:7344:57: ~ ( ( '\\\\' | '\"' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2170,11 +2170,11 @@
         try {
             int _type = RULE_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:7285:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            // InternalCompleteOCL.g:7285:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+            // InternalCompleteOCL.g:7346:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // InternalCompleteOCL.g:7346:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
             match('\'');
-            // InternalCompleteOCL.g:7285:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
+            // InternalCompleteOCL.g:7346:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
                 int alt2=3;
@@ -2190,14 +2190,14 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // InternalCompleteOCL.g:7285:35: RULE_ESCAPED_CHARACTER
+            	    // InternalCompleteOCL.g:7346:35: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalCompleteOCL.g:7285:58: ~ ( ( '\\\\' | '\\'' ) )
+            	    // InternalCompleteOCL.g:7346:58: ~ ( ( '\\\\' | '\\'' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2234,12 +2234,12 @@
         try {
             int _type = RULE_ML_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:7287:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
-            // InternalCompleteOCL.g:7287:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
+            // InternalCompleteOCL.g:7348:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
+            // InternalCompleteOCL.g:7348:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
             match("/'");
 
-            // InternalCompleteOCL.g:7287:38: ( options {greedy=false; } : . )*
+            // InternalCompleteOCL.g:7348:38: ( options {greedy=false; } : . )*
             loop3:
             do {
                 int alt3=2;
@@ -2264,7 +2264,7 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // InternalCompleteOCL.g:7287:66: .
+            	    // InternalCompleteOCL.g:7348:66: .
             	    {
             	    matchAny();
 
@@ -2294,11 +2294,11 @@
         try {
             int _type = RULE_SIMPLE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:7289:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
-            // InternalCompleteOCL.g:7289:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalCompleteOCL.g:7350:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
+            // InternalCompleteOCL.g:7350:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
             mRULE_LETTER_CHARACTER();
-            // InternalCompleteOCL.g:7289:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalCompleteOCL.g:7350:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
                 int alt4=2;
@@ -2347,8 +2347,8 @@
         try {
             int _type = RULE_ESCAPED_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:7291:17: ( '_' RULE_SINGLE_QUOTED_STRING )
-            // InternalCompleteOCL.g:7291:19: '_' RULE_SINGLE_QUOTED_STRING
+            // InternalCompleteOCL.g:7352:17: ( '_' RULE_SINGLE_QUOTED_STRING )
+            // InternalCompleteOCL.g:7352:19: '_' RULE_SINGLE_QUOTED_STRING
             {
             match('_');
             mRULE_SINGLE_QUOTED_STRING();
@@ -2368,10 +2368,10 @@
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:7293:10: ( ( '0' .. '9' )+ )
-            // InternalCompleteOCL.g:7293:12: ( '0' .. '9' )+
+            // InternalCompleteOCL.g:7354:10: ( ( '0' .. '9' )+ )
+            // InternalCompleteOCL.g:7354:12: ( '0' .. '9' )+
             {
-            // InternalCompleteOCL.g:7293:12: ( '0' .. '9' )+
+            // InternalCompleteOCL.g:7354:12: ( '0' .. '9' )+
             int cnt5=0;
             loop5:
             do {
@@ -2385,7 +2385,7 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // InternalCompleteOCL.g:7293:13: '0' .. '9'
+            	    // InternalCompleteOCL.g:7354:13: '0' .. '9'
             	    {
             	    matchRange('0','9');
 
@@ -2417,12 +2417,12 @@
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:7295:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // InternalCompleteOCL.g:7295:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // InternalCompleteOCL.g:7356:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // InternalCompleteOCL.g:7356:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*");
 
-            // InternalCompleteOCL.g:7295:24: ( options {greedy=false; } : . )*
+            // InternalCompleteOCL.g:7356:24: ( options {greedy=false; } : . )*
             loop6:
             do {
                 int alt6=2;
@@ -2447,7 +2447,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // InternalCompleteOCL.g:7295:52: .
+            	    // InternalCompleteOCL.g:7356:52: .
             	    {
             	    matchAny();
 
@@ -2477,12 +2477,12 @@
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:7297:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // InternalCompleteOCL.g:7297:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // InternalCompleteOCL.g:7358:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // InternalCompleteOCL.g:7358:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("--");
 
-            // InternalCompleteOCL.g:7297:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // InternalCompleteOCL.g:7358:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
             do {
                 int alt7=2;
@@ -2495,7 +2495,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // InternalCompleteOCL.g:7297:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // InternalCompleteOCL.g:7358:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2515,7 +2515,7 @@
                 }
             } while (true);
 
-            // InternalCompleteOCL.g:7297:40: ( ( '\\r' )? '\\n' )?
+            // InternalCompleteOCL.g:7358:40: ( ( '\\r' )? '\\n' )?
             int alt9=2;
             int LA9_0 = input.LA(1);
 
@@ -2524,9 +2524,9 @@
             }
             switch (alt9) {
                 case 1 :
-                    // InternalCompleteOCL.g:7297:41: ( '\\r' )? '\\n'
+                    // InternalCompleteOCL.g:7358:41: ( '\\r' )? '\\n'
                     {
-                    // InternalCompleteOCL.g:7297:41: ( '\\r' )?
+                    // InternalCompleteOCL.g:7358:41: ( '\\r' )?
                     int alt8=2;
                     int LA8_0 = input.LA(1);
 
@@ -2535,7 +2535,7 @@
                     }
                     switch (alt8) {
                         case 1 :
-                            // InternalCompleteOCL.g:7297:41: '\\r'
+                            // InternalCompleteOCL.g:7358:41: '\\r'
                             {
                             match('\r');
 
@@ -2567,10 +2567,10 @@
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:7299:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // InternalCompleteOCL.g:7299:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalCompleteOCL.g:7360:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // InternalCompleteOCL.g:7360:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // InternalCompleteOCL.g:7299:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalCompleteOCL.g:7360:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt10=0;
             loop10:
             do {
@@ -2624,8 +2624,8 @@
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalCompleteOCL.g:7301:16: ( . )
-            // InternalCompleteOCL.g:7301:18: .
+            // InternalCompleteOCL.g:7362:16: ( . )
+            // InternalCompleteOCL.g:7362:18: .
             {
             matchAny();
 
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/internal/InternalCompleteOCLParser.java b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/internal/InternalCompleteOCLParser.java
index d569b7d..f4f6b72 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/internal/InternalCompleteOCLParser.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/internal/InternalCompleteOCLParser.java
@@ -582,7 +582,7 @@
 
 
     // $ANTLR start "ruleClassifierContextDeclCS"
-    // InternalCompleteOCL.g:199:1: ruleClassifierContextDeclCS returns [EObject current=null] : (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= rulePathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+ ) ;
+    // InternalCompleteOCL.g:199:1: ruleClassifierContextDeclCS returns [EObject current=null] : (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= ruleUnreservedPathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+ ) ;
     public final EObject ruleClassifierContextDeclCS() throws RecognitionException {
         EObject current = null;
 
@@ -602,11 +602,11 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:202:28: ( (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= rulePathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+ ) )
-            // InternalCompleteOCL.g:203:1: (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= rulePathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+ )
+            // InternalCompleteOCL.g:202:28: ( (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= ruleUnreservedPathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+ ) )
+            // InternalCompleteOCL.g:203:1: (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= ruleUnreservedPathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+ )
             {
-            // InternalCompleteOCL.g:203:1: (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= rulePathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+ )
-            // InternalCompleteOCL.g:203:3: otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= rulePathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+
+            // InternalCompleteOCL.g:203:1: (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= ruleUnreservedPathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+ )
+            // InternalCompleteOCL.g:203:3: otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= ruleUnreservedPathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+
             {
             otherlv_0=(Token)match(input,19,FollowSets000.FOLLOW_5); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -667,7 +667,7 @@
                     {
                     int LA5_1 = input.LA(2);
 
-                    if ( ((LA5_1>=RULE_SIMPLE_ID && LA5_1<=RULE_ESCAPED_ID)||(LA5_1>=28 && LA5_1<=30)) ) {
+                    if ( ((LA5_1>=RULE_SIMPLE_ID && LA5_1<=RULE_ESCAPED_ID)||(LA5_1>=28 && LA5_1<=30)||(LA5_1>=42 && LA5_1<=51)||(LA5_1>=73 && LA5_1<=74)||(LA5_1>=76 && LA5_1<=80)) ) {
                         alt5=1;
                     }
                     }
@@ -676,7 +676,7 @@
                     {
                     int LA5_2 = input.LA(2);
 
-                    if ( ((LA5_2>=RULE_SIMPLE_ID && LA5_2<=RULE_ESCAPED_ID)||(LA5_2>=28 && LA5_2<=30)) ) {
+                    if ( ((LA5_2>=RULE_SIMPLE_ID && LA5_2<=RULE_ESCAPED_ID)||(LA5_2>=28 && LA5_2<=30)||(LA5_2>=42 && LA5_2<=51)||(LA5_2>=73 && LA5_2<=74)||(LA5_2>=76 && LA5_2<=80)) ) {
                         alt5=1;
                     }
                     }
@@ -685,7 +685,7 @@
                     {
                     int LA5_3 = input.LA(2);
 
-                    if ( ((LA5_3>=RULE_SIMPLE_ID && LA5_3<=RULE_ESCAPED_ID)||(LA5_3>=28 && LA5_3<=30)) ) {
+                    if ( ((LA5_3>=RULE_SIMPLE_ID && LA5_3<=RULE_ESCAPED_ID)||(LA5_3>=28 && LA5_3<=30)||(LA5_3>=42 && LA5_3<=51)||(LA5_3>=73 && LA5_3<=74)||(LA5_3>=76 && LA5_3<=80)) ) {
                         alt5=1;
                     }
                     }
@@ -694,7 +694,7 @@
                     {
                     int LA5_4 = input.LA(2);
 
-                    if ( ((LA5_4>=RULE_SIMPLE_ID && LA5_4<=RULE_ESCAPED_ID)||(LA5_4>=28 && LA5_4<=30)) ) {
+                    if ( ((LA5_4>=RULE_SIMPLE_ID && LA5_4<=RULE_ESCAPED_ID)||(LA5_4>=28 && LA5_4<=30)||(LA5_4>=42 && LA5_4<=51)||(LA5_4>=73 && LA5_4<=74)||(LA5_4>=76 && LA5_4<=80)) ) {
                         alt5=1;
                     }
                     }
@@ -703,7 +703,7 @@
                     {
                     int LA5_5 = input.LA(2);
 
-                    if ( ((LA5_5>=RULE_SIMPLE_ID && LA5_5<=RULE_ESCAPED_ID)||(LA5_5>=28 && LA5_5<=30)) ) {
+                    if ( ((LA5_5>=RULE_SIMPLE_ID && LA5_5<=RULE_ESCAPED_ID)||(LA5_5>=28 && LA5_5<=30)||(LA5_5>=42 && LA5_5<=51)||(LA5_5>=73 && LA5_5<=74)||(LA5_5>=76 && LA5_5<=80)) ) {
                         alt5=1;
                     }
                     }
@@ -749,19 +749,19 @@
 
             }
 
-            // InternalCompleteOCL.g:243:3: ( (lv_ownedPathName_3_0= rulePathNameCS ) )
-            // InternalCompleteOCL.g:244:1: (lv_ownedPathName_3_0= rulePathNameCS )
+            // InternalCompleteOCL.g:243:3: ( (lv_ownedPathName_3_0= ruleUnreservedPathNameCS ) )
+            // InternalCompleteOCL.g:244:1: (lv_ownedPathName_3_0= ruleUnreservedPathNameCS )
             {
-            // InternalCompleteOCL.g:244:1: (lv_ownedPathName_3_0= rulePathNameCS )
-            // InternalCompleteOCL.g:245:3: lv_ownedPathName_3_0= rulePathNameCS
+            // InternalCompleteOCL.g:244:1: (lv_ownedPathName_3_0= ruleUnreservedPathNameCS )
+            // InternalCompleteOCL.g:245:3: lv_ownedPathName_3_0= ruleUnreservedPathNameCS
             {
             if ( state.backtracking==0 ) {
 
-              	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0());
+              	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_3_0());
 
             }
             pushFollow(FollowSets000.FOLLOW_6);
-            lv_ownedPathName_3_0=rulePathNameCS();
+            lv_ownedPathName_3_0=ruleUnreservedPathNameCS();
 
             state._fsp--;
             if (state.failed) return current;
@@ -774,7 +774,7 @@
                      			current,
                      			"ownedPathName",
                       		lv_ownedPathName_3_0,
-                      		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
+                      		"org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
               	        afterParserOrEnumRuleCall();
 
             }
@@ -1654,7 +1654,7 @@
 
             }
 
-            otherlv_3=(Token)match(input,23,FollowSets000.FOLLOW_5); if (state.failed) return current;
+            otherlv_3=(Token)match(input,23,FollowSets000.FOLLOW_14); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getDefOperationCSAccess().getColonKeyword_3());
@@ -1679,7 +1679,7 @@
                       	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_4_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_14);
+                    pushFollow(FollowSets000.FOLLOW_15);
                     lv_ownedSignature_4_0=ruleTemplateSignatureCS();
 
                     state._fsp--;
@@ -1717,7 +1717,7 @@
               	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getNameUnrestrictedNameParserRuleCall_5_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_15);
+            pushFollow(FollowSets000.FOLLOW_16);
             lv_name_5_0=ruleUnrestrictedName();
 
             state._fsp--;
@@ -1741,7 +1741,7 @@
 
             }
 
-            otherlv_6=(Token)match(input,21,FollowSets000.FOLLOW_16); if (state.failed) return current;
+            otherlv_6=(Token)match(input,21,FollowSets000.FOLLOW_17); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_6, grammarAccess.getDefOperationCSAccess().getLeftParenthesisKeyword_6());
@@ -1769,7 +1769,7 @@
                       	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_0_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_17);
+                    pushFollow(FollowSets000.FOLLOW_18);
                     lv_ownedParameters_7_0=ruleDefParameterCS();
 
                     state._fsp--;
@@ -1808,7 +1808,7 @@
                     	case 1 :
                     	    // InternalCompleteOCL.g:607:4: otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) )
                     	    {
-                    	    otherlv_8=(Token)match(input,26,FollowSets000.FOLLOW_14); if (state.failed) return current;
+                    	    otherlv_8=(Token)match(input,26,FollowSets000.FOLLOW_15); if (state.failed) return current;
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_8, grammarAccess.getDefOperationCSAccess().getCommaKeyword_7_1_0());
@@ -1825,7 +1825,7 @@
                     	      	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_1_1_0());
 
                     	    }
-                    	    pushFollow(FollowSets000.FOLLOW_17);
+                    	    pushFollow(FollowSets000.FOLLOW_18);
                     	    lv_ownedParameters_9_0=ruleDefParameterCS();
 
                     	    state._fsp--;
@@ -1870,7 +1870,7 @@
                   	newLeafNode(otherlv_10, grammarAccess.getDefOperationCSAccess().getRightParenthesisKeyword_8());
 
             }
-            otherlv_11=(Token)match(input,23,FollowSets000.FOLLOW_18); if (state.failed) return current;
+            otherlv_11=(Token)match(input,23,FollowSets000.FOLLOW_19); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_11, grammarAccess.getDefOperationCSAccess().getColonKeyword_9());
@@ -1895,7 +1895,7 @@
                       	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedTypeTypeExpCSParserRuleCall_10_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_19);
+                    pushFollow(FollowSets000.FOLLOW_20);
                     lv_ownedType_12_0=ruleTypeExpCS();
 
                     state._fsp--;
@@ -2080,7 +2080,7 @@
 
             }
 
-            otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+            otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getDefParameterCSAccess().getColonKeyword_1());
@@ -2289,7 +2289,7 @@
 
             }
 
-            otherlv_3=(Token)match(input,23,FollowSets000.FOLLOW_14); if (state.failed) return current;
+            otherlv_3=(Token)match(input,23,FollowSets000.FOLLOW_15); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getDefPropertyCSAccess().getColonKeyword_3());
@@ -2330,7 +2330,7 @@
 
             }
 
-            otherlv_5=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+            otherlv_5=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getDefPropertyCSAccess().getColonKeyword_5());
@@ -2347,7 +2347,7 @@
               	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getOwnedTypeTypeExpCSParserRuleCall_6_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_19);
+            pushFollow(FollowSets000.FOLLOW_20);
             lv_ownedType_6_0=ruleTypeExpCS();
 
             state._fsp--;
@@ -2528,7 +2528,7 @@
                 case 1 :
                     // InternalCompleteOCL.g:876:4: otherlv_0= 'import'
                     {
-                    otherlv_0=(Token)match(input,28,FollowSets000.FOLLOW_21); if (state.failed) return current;
+                    otherlv_0=(Token)match(input,28,FollowSets000.FOLLOW_22); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_0, grammarAccess.getImportCSAccess().getImportKeyword_0_0());
@@ -2540,7 +2540,7 @@
                 case 2 :
                     // InternalCompleteOCL.g:881:7: otherlv_1= 'include'
                     {
-                    otherlv_1=(Token)match(input,29,FollowSets000.FOLLOW_21); if (state.failed) return current;
+                    otherlv_1=(Token)match(input,29,FollowSets000.FOLLOW_22); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getImportCSAccess().getIncludeKeyword_0_1());
@@ -2552,7 +2552,7 @@
                 case 3 :
                     // InternalCompleteOCL.g:886:7: otherlv_2= 'library'
                     {
-                    otherlv_2=(Token)match(input,30,FollowSets000.FOLLOW_21); if (state.failed) return current;
+                    otherlv_2=(Token)match(input,30,FollowSets000.FOLLOW_22); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getImportCSAccess().getLibraryKeyword_0_2());
@@ -2621,7 +2621,7 @@
 
                     }
 
-                    otherlv_4=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
+                    otherlv_4=(Token)match(input,23,FollowSets000.FOLLOW_22); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_4, grammarAccess.getImportCSAccess().getColonKeyword_1_1());
@@ -2644,7 +2644,7 @@
               	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_22);
+            pushFollow(FollowSets000.FOLLOW_23);
             lv_ownedPathName_5_0=ruleURIPathNameCS();
 
             state._fsp--;
@@ -2768,7 +2768,7 @@
 
 
     // $ANTLR start "ruleOperationContextDeclCS"
-    // InternalCompleteOCL.g:962:1: ruleOperationContextDeclCS returns [EObject current=null] : (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= rulePathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )* ) ;
+    // InternalCompleteOCL.g:962:1: ruleOperationContextDeclCS returns [EObject current=null] : (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= ruleUnreservedPathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )* ) ;
     public final EObject ruleOperationContextDeclCS() throws RecognitionException {
         EObject current = null;
 
@@ -2801,11 +2801,11 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:965:28: ( (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= rulePathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )* ) )
-            // InternalCompleteOCL.g:966:1: (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= rulePathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )* )
+            // InternalCompleteOCL.g:965:28: ( (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= ruleUnreservedPathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )* ) )
+            // InternalCompleteOCL.g:966:1: (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= ruleUnreservedPathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )* )
             {
-            // InternalCompleteOCL.g:966:1: (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= rulePathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )* )
-            // InternalCompleteOCL.g:966:3: otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= rulePathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )*
+            // InternalCompleteOCL.g:966:1: (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= ruleUnreservedPathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )* )
+            // InternalCompleteOCL.g:966:3: otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= ruleUnreservedPathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )*
             {
             otherlv_0=(Token)match(input,19,FollowSets000.FOLLOW_5); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -2859,19 +2859,19 @@
 
             }
 
-            // InternalCompleteOCL.g:988:3: ( (lv_ownedPathName_2_0= rulePathNameCS ) )
-            // InternalCompleteOCL.g:989:1: (lv_ownedPathName_2_0= rulePathNameCS )
+            // InternalCompleteOCL.g:988:3: ( (lv_ownedPathName_2_0= ruleUnreservedPathNameCS ) )
+            // InternalCompleteOCL.g:989:1: (lv_ownedPathName_2_0= ruleUnreservedPathNameCS )
             {
-            // InternalCompleteOCL.g:989:1: (lv_ownedPathName_2_0= rulePathNameCS )
-            // InternalCompleteOCL.g:990:3: lv_ownedPathName_2_0= rulePathNameCS
+            // InternalCompleteOCL.g:989:1: (lv_ownedPathName_2_0= ruleUnreservedPathNameCS )
+            // InternalCompleteOCL.g:990:3: lv_ownedPathName_2_0= ruleUnreservedPathNameCS
             {
             if ( state.backtracking==0 ) {
 
-              	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0());
+              	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_2_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_15);
-            lv_ownedPathName_2_0=rulePathNameCS();
+            pushFollow(FollowSets000.FOLLOW_16);
+            lv_ownedPathName_2_0=ruleUnreservedPathNameCS();
 
             state._fsp--;
             if (state.failed) return current;
@@ -2884,7 +2884,7 @@
                      			current,
                      			"ownedPathName",
                       		lv_ownedPathName_2_0,
-                      		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
+                      		"org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
               	        afterParserOrEnumRuleCall();
 
             }
@@ -2894,7 +2894,7 @@
 
             }
 
-            otherlv_3=(Token)match(input,21,FollowSets000.FOLLOW_23); if (state.failed) return current;
+            otherlv_3=(Token)match(input,21,FollowSets000.FOLLOW_24); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getOperationContextDeclCSAccess().getLeftParenthesisKeyword_3());
@@ -2922,7 +2922,7 @@
                       	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_0_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_17);
+                    pushFollow(FollowSets000.FOLLOW_18);
                     lv_ownedParameters_4_0=ruleParameterCS();
 
                     state._fsp--;
@@ -2961,7 +2961,7 @@
                     	case 1 :
                     	    // InternalCompleteOCL.g:1028:4: otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) )
                     	    {
-                    	    otherlv_5=(Token)match(input,26,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    	    otherlv_5=(Token)match(input,26,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_5, grammarAccess.getOperationContextDeclCSAccess().getCommaKeyword_4_1_0());
@@ -2978,7 +2978,7 @@
                     	      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_1_1_0());
 
                     	    }
-                    	    pushFollow(FollowSets000.FOLLOW_17);
+                    	    pushFollow(FollowSets000.FOLLOW_18);
                     	    lv_ownedParameters_6_0=ruleParameterCS();
 
                     	    state._fsp--;
@@ -3023,7 +3023,7 @@
                   	newLeafNode(otherlv_7, grammarAccess.getOperationContextDeclCSAccess().getRightParenthesisKeyword_5());
 
             }
-            otherlv_8=(Token)match(input,23,FollowSets000.FOLLOW_24); if (state.failed) return current;
+            otherlv_8=(Token)match(input,23,FollowSets000.FOLLOW_25); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_8, grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_6());
@@ -3048,7 +3048,7 @@
                       	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_7_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_25);
+                    pushFollow(FollowSets000.FOLLOW_26);
                     lv_ownedType_9_0=ruleTypeExpCS();
 
                     state._fsp--;
@@ -3122,7 +3122,7 @@
             	      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsConstraintCSParserRuleCall_8_0_1_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_25);
+            	    pushFollow(FollowSets000.FOLLOW_26);
             	    lv_ownedPreconditions_11_0=ruleConstraintCS();
 
             	    state._fsp--;
@@ -3175,7 +3175,7 @@
             	      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsConstraintCSParserRuleCall_8_1_1_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_25);
+            	    pushFollow(FollowSets000.FOLLOW_26);
             	    lv_ownedPostconditions_13_0=ruleConstraintCS();
 
             	    state._fsp--;
@@ -3271,7 +3271,7 @@
             	      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesSpecificationCSParserRuleCall_8_2_3_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_25);
+            	    pushFollow(FollowSets000.FOLLOW_26);
             	    lv_ownedBodies_17_0=ruleSpecificationCS();
 
             	    state._fsp--;
@@ -3370,7 +3370,7 @@
 
 
     // $ANTLR start "rulePackageDeclarationCS"
-    // InternalCompleteOCL.g:1176:1: rulePackageDeclarationCS returns [EObject current=null] : (otherlv_0= 'package' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage' ) ;
+    // InternalCompleteOCL.g:1176:1: rulePackageDeclarationCS returns [EObject current=null] : (otherlv_0= 'package' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage' ) ;
     public final EObject rulePackageDeclarationCS() throws RecognitionException {
         EObject current = null;
 
@@ -3387,11 +3387,11 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:1179:28: ( (otherlv_0= 'package' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage' ) )
-            // InternalCompleteOCL.g:1180:1: (otherlv_0= 'package' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage' )
+            // InternalCompleteOCL.g:1179:28: ( (otherlv_0= 'package' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage' ) )
+            // InternalCompleteOCL.g:1180:1: (otherlv_0= 'package' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage' )
             {
-            // InternalCompleteOCL.g:1180:1: (otherlv_0= 'package' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage' )
-            // InternalCompleteOCL.g:1180:3: otherlv_0= 'package' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage'
+            // InternalCompleteOCL.g:1180:1: (otherlv_0= 'package' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage' )
+            // InternalCompleteOCL.g:1180:3: otherlv_0= 'package' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage'
             {
             otherlv_0=(Token)match(input,35,FollowSets000.FOLLOW_5); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -3399,19 +3399,19 @@
                   	newLeafNode(otherlv_0, grammarAccess.getPackageDeclarationCSAccess().getPackageKeyword_0());
 
             }
-            // InternalCompleteOCL.g:1184:1: ( (lv_ownedPathName_1_0= rulePathNameCS ) )
-            // InternalCompleteOCL.g:1185:1: (lv_ownedPathName_1_0= rulePathNameCS )
+            // InternalCompleteOCL.g:1184:1: ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) )
+            // InternalCompleteOCL.g:1185:1: (lv_ownedPathName_1_0= ruleUnreservedPathNameCS )
             {
-            // InternalCompleteOCL.g:1185:1: (lv_ownedPathName_1_0= rulePathNameCS )
-            // InternalCompleteOCL.g:1186:3: lv_ownedPathName_1_0= rulePathNameCS
+            // InternalCompleteOCL.g:1185:1: (lv_ownedPathName_1_0= ruleUnreservedPathNameCS )
+            // InternalCompleteOCL.g:1186:3: lv_ownedPathName_1_0= ruleUnreservedPathNameCS
             {
             if ( state.backtracking==0 ) {
 
-              	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
+              	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_26);
-            lv_ownedPathName_1_0=rulePathNameCS();
+            pushFollow(FollowSets000.FOLLOW_27);
+            lv_ownedPathName_1_0=ruleUnreservedPathNameCS();
 
             state._fsp--;
             if (state.failed) return current;
@@ -3424,7 +3424,7 @@
                      			current,
                      			"ownedPathName",
                       		lv_ownedPathName_1_0,
-                      		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
+                      		"org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
               	        afterParserOrEnumRuleCall();
 
             }
@@ -3466,7 +3466,7 @@
             	      	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_2_1_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_26);
+            	    pushFollow(FollowSets000.FOLLOW_27);
             	    lv_ownedInvariants_3_0=ruleConstraintCS();
 
             	    state._fsp--;
@@ -3522,7 +3522,7 @@
             	      	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsContextDeclCSParserRuleCall_3_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_27);
+            	    pushFollow(FollowSets000.FOLLOW_28);
             	    lv_ownedContexts_4_0=ruleContextDeclCS();
 
             	    state._fsp--;
@@ -3729,7 +3729,7 @@
 
                     }
 
-                    otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getParameterCSAccess().getColonKeyword_0_1());
@@ -3839,7 +3839,7 @@
 
 
     // $ANTLR start "rulePropertyContextDeclCS"
-    // InternalCompleteOCL.g:1324:1: rulePropertyContextDeclCS returns [EObject current=null] : (otherlv_0= 'context' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )* ) ;
+    // InternalCompleteOCL.g:1324:1: rulePropertyContextDeclCS returns [EObject current=null] : (otherlv_0= 'context' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )* ) ;
     public final EObject rulePropertyContextDeclCS() throws RecognitionException {
         EObject current = null;
 
@@ -3861,11 +3861,11 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:1327:28: ( (otherlv_0= 'context' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )* ) )
-            // InternalCompleteOCL.g:1328:1: (otherlv_0= 'context' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )* )
+            // InternalCompleteOCL.g:1327:28: ( (otherlv_0= 'context' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )* ) )
+            // InternalCompleteOCL.g:1328:1: (otherlv_0= 'context' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )* )
             {
-            // InternalCompleteOCL.g:1328:1: (otherlv_0= 'context' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )* )
-            // InternalCompleteOCL.g:1328:3: otherlv_0= 'context' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )*
+            // InternalCompleteOCL.g:1328:1: (otherlv_0= 'context' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )* )
+            // InternalCompleteOCL.g:1328:3: otherlv_0= 'context' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )*
             {
             otherlv_0=(Token)match(input,19,FollowSets000.FOLLOW_5); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -3873,19 +3873,19 @@
                   	newLeafNode(otherlv_0, grammarAccess.getPropertyContextDeclCSAccess().getContextKeyword_0());
 
             }
-            // InternalCompleteOCL.g:1332:1: ( (lv_ownedPathName_1_0= rulePathNameCS ) )
-            // InternalCompleteOCL.g:1333:1: (lv_ownedPathName_1_0= rulePathNameCS )
+            // InternalCompleteOCL.g:1332:1: ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) )
+            // InternalCompleteOCL.g:1333:1: (lv_ownedPathName_1_0= ruleUnreservedPathNameCS )
             {
-            // InternalCompleteOCL.g:1333:1: (lv_ownedPathName_1_0= rulePathNameCS )
-            // InternalCompleteOCL.g:1334:3: lv_ownedPathName_1_0= rulePathNameCS
+            // InternalCompleteOCL.g:1333:1: (lv_ownedPathName_1_0= ruleUnreservedPathNameCS )
+            // InternalCompleteOCL.g:1334:3: lv_ownedPathName_1_0= ruleUnreservedPathNameCS
             {
             if ( state.backtracking==0 ) {
 
-              	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
+              	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0());
 
             }
             pushFollow(FollowSets000.FOLLOW_12);
-            lv_ownedPathName_1_0=rulePathNameCS();
+            lv_ownedPathName_1_0=ruleUnreservedPathNameCS();
 
             state._fsp--;
             if (state.failed) return current;
@@ -3898,7 +3898,7 @@
                      			current,
                      			"ownedPathName",
                       		lv_ownedPathName_1_0,
-                      		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
+                      		"org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
               	        afterParserOrEnumRuleCall();
 
             }
@@ -3908,7 +3908,7 @@
 
             }
 
-            otherlv_2=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+            otherlv_2=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_2());
@@ -3925,7 +3925,7 @@
               	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_3_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_28);
+            pushFollow(FollowSets000.FOLLOW_29);
             lv_ownedType_3_0=ruleTypeExpCS();
 
             state._fsp--;
@@ -4030,7 +4030,7 @@
             	      	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_0_3_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_28);
+            	    pushFollow(FollowSets000.FOLLOW_29);
             	    lv_ownedDefaultExpressions_7_0=ruleSpecificationCS();
 
             	    state._fsp--;
@@ -4126,7 +4126,7 @@
             	      	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_1_3_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_28);
+            	    pushFollow(FollowSets000.FOLLOW_29);
             	    lv_ownedDefaultExpressions_11_0=ruleSpecificationCS();
 
             	    state._fsp--;
@@ -4446,7 +4446,7 @@
                     // InternalCompleteOCL.g:1526:2: (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' )
                     // InternalCompleteOCL.g:1526:4: otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')'
                     {
-                    otherlv_0=(Token)match(input,21,FollowSets000.FOLLOW_14); if (state.failed) return current;
+                    otherlv_0=(Token)match(input,21,FollowSets000.FOLLOW_15); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_0, grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0());
@@ -4463,7 +4463,7 @@
                       	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_17);
+                    pushFollow(FollowSets000.FOLLOW_18);
                     lv_ownedParameters_1_0=ruleTypeParameterCS();
 
                     state._fsp--;
@@ -4502,7 +4502,7 @@
                     	case 1 :
                     	    // InternalCompleteOCL.g:1548:4: otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) )
                     	    {
-                    	    otherlv_2=(Token)match(input,26,FollowSets000.FOLLOW_14); if (state.failed) return current;
+                    	    otherlv_2=(Token)match(input,26,FollowSets000.FOLLOW_15); if (state.failed) return current;
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_2, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0());
@@ -4519,7 +4519,7 @@
                     	      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0());
 
                     	    }
-                    	    pushFollow(FollowSets000.FOLLOW_17);
+                    	    pushFollow(FollowSets000.FOLLOW_18);
                     	    lv_ownedParameters_3_0=ruleTypeParameterCS();
 
                     	    state._fsp--;
@@ -4570,7 +4570,7 @@
                     // InternalCompleteOCL.g:1575:6: (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' )
                     // InternalCompleteOCL.g:1575:8: otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>'
                     {
-                    otherlv_5=(Token)match(input,39,FollowSets000.FOLLOW_14); if (state.failed) return current;
+                    otherlv_5=(Token)match(input,39,FollowSets000.FOLLOW_15); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0());
@@ -4587,7 +4587,7 @@
                       	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_29);
+                    pushFollow(FollowSets000.FOLLOW_30);
                     lv_ownedParameters_6_0=ruleTypeParameterCS();
 
                     state._fsp--;
@@ -4626,7 +4626,7 @@
                     	case 1 :
                     	    // InternalCompleteOCL.g:1597:4: otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) )
                     	    {
-                    	    otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_14); if (state.failed) return current;
+                    	    otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_15); if (state.failed) return current;
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_7, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0());
@@ -4643,7 +4643,7 @@
                     	      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0());
 
                     	    }
-                    	    pushFollow(FollowSets000.FOLLOW_29);
+                    	    pushFollow(FollowSets000.FOLLOW_30);
                     	    lv_ownedParameters_8_0=ruleTypeParameterCS();
 
                     	    state._fsp--;
@@ -7149,7 +7149,7 @@
               	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_30);
+            pushFollow(FollowSets000.FOLLOW_31);
             lv_ownedPathElements_0_0=ruleURIFirstPathElementCS();
 
             state._fsp--;
@@ -7188,7 +7188,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:2423:4: otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
             	    {
-            	    otherlv_1=(Token)match(input,75,FollowSets000.FOLLOW_31); if (state.failed) return current;
+            	    otherlv_1=(Token)match(input,75,FollowSets000.FOLLOW_5); if (state.failed) return current;
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
@@ -7205,7 +7205,7 @@
             	      	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_30);
+            	    pushFollow(FollowSets000.FOLLOW_31);
             	    lv_ownedPathElements_2_0=ruleNextPathElementCS();
 
             	    state._fsp--;
@@ -7859,7 +7859,7 @@
                 case 1 :
                     // InternalCompleteOCL.g:2647:4: otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')'
                     {
-                    otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -8080,7 +8080,7 @@
                 case 1 :
                     // InternalCompleteOCL.g:2727:4: otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')'
                     {
-                    otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -8121,7 +8121,7 @@
 
                     }
 
-                    otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
@@ -8296,7 +8296,7 @@
                 case 1 :
                     // InternalCompleteOCL.g:2811:4: otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')'
                     {
-                    otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_16); if (state.failed) return current;
+                    otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_17); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -8324,7 +8324,7 @@
                               	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
 
                             }
-                            pushFollow(FollowSets000.FOLLOW_17);
+                            pushFollow(FollowSets000.FOLLOW_18);
                             lv_ownedParts_2_0=ruleTuplePartCS();
 
                             state._fsp--;
@@ -8363,7 +8363,7 @@
                             	case 1 :
                             	    // InternalCompleteOCL.g:2833:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) )
                             	    {
-                            	    otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_14); if (state.failed) return current;
+                            	    otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_15); if (state.failed) return current;
                             	    if ( state.backtracking==0 ) {
 
                             	          	newLeafNode(otherlv_3, grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
@@ -8380,7 +8380,7 @@
                             	      	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
 
                             	    }
-                            	    pushFollow(FollowSets000.FOLLOW_17);
+                            	    pushFollow(FollowSets000.FOLLOW_18);
                             	    lv_ownedParts_4_0=ruleTuplePartCS();
 
                             	    state._fsp--;
@@ -8548,7 +8548,7 @@
 
             }
 
-            otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+            otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
@@ -9642,7 +9642,7 @@
                       	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_19);
+                    pushFollow(FollowSets000.FOLLOW_20);
                     ruleUnrestrictedName();
 
                     state._fsp--;
@@ -9751,12 +9751,12 @@
                         {
                         int LA63_4 = input.LA(2);
 
-                        if ( (LA63_4==23) ) {
-                            alt63=2;
-                        }
-                        else if ( (LA63_4==EOF||(LA63_4>=17 && LA63_4<=18)||LA63_4==21||(LA63_4>=26 && LA63_4<=27)||(LA63_4>=39 && LA63_4<=40)||LA63_4==52||(LA63_4>=55 && LA63_4<=72)||LA63_4==75||(LA63_4>=81 && LA63_4<=82)||(LA63_4>=91 && LA63_4<=92)) ) {
+                        if ( (LA63_4==EOF||(LA63_4>=17 && LA63_4<=18)||LA63_4==21||(LA63_4>=26 && LA63_4<=27)||(LA63_4>=39 && LA63_4<=40)||LA63_4==52||(LA63_4>=55 && LA63_4<=72)||LA63_4==75||(LA63_4>=81 && LA63_4<=82)||(LA63_4>=91 && LA63_4<=92)) ) {
                             alt63=1;
                         }
+                        else if ( (LA63_4==23) ) {
+                            alt63=2;
+                        }
                         else {
                             if (state.backtracking>0) {state.failed=true; return current;}
                             NoViableAltException nvae =
@@ -10060,7 +10060,7 @@
 
             }
 
-            otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+            otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
@@ -11026,7 +11026,7 @@
                   	newLeafNode(otherlv_0, grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
 
             }
-            otherlv_1=(Token)match(input,81,FollowSets000.FOLLOW_14); if (state.failed) return current;
+            otherlv_1=(Token)match(input,81,FollowSets000.FOLLOW_15); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -11082,7 +11082,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:3699:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) )
             	    {
-            	    otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_14); if (state.failed) return current;
+            	    otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_15); if (state.failed) return current;
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
@@ -11269,7 +11269,7 @@
                 case 1 :
                     // InternalCompleteOCL.g:3764:4: otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                     {
-                    otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
@@ -11286,7 +11286,7 @@
                       	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_19);
+                    pushFollow(FollowSets000.FOLLOW_20);
                     lv_ownedType_2_0=ruleTypeExpCS();
 
                     state._fsp--;
@@ -13710,7 +13710,7 @@
                       	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_51);
+                    pushFollow(FollowSets000.FOLLOW_21);
                     lv_name_1_0=ruleUnaryOperatorName();
 
                     state._fsp--;
@@ -14268,7 +14268,7 @@
               	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_52);
+            pushFollow(FollowSets000.FOLLOW_51);
             lv_ownedPathName_0_0=rulePathNameCS();
 
             state._fsp--;
@@ -14315,7 +14315,7 @@
             	      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_52);
+            	    pushFollow(FollowSets000.FOLLOW_51);
             	    lv_ownedSquareBracketedClauses_1_0=ruleSquareBracketedClauseCS();
 
             	    state._fsp--;
@@ -14364,7 +14364,7 @@
                       	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_53);
+                    pushFollow(FollowSets000.FOLLOW_52);
                     lv_ownedRoundBracketedClause_2_0=ruleRoundBracketedClauseCS();
 
                     state._fsp--;
@@ -14410,7 +14410,7 @@
                       	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_54);
+                    pushFollow(FollowSets000.FOLLOW_53);
                     lv_ownedCurlyBracketedClause_3_0=ruleCurlyBracketedClauseCS();
 
                     state._fsp--;
@@ -14454,7 +14454,7 @@
                     // InternalCompleteOCL.g:4888:1: (lv_isPre_4_0= '@' )
                     // InternalCompleteOCL.g:4889:3: lv_isPre_4_0= '@'
                     {
-                    lv_isPre_4_0=(Token)match(input,91,FollowSets000.FOLLOW_55); if (state.failed) return current;
+                    lv_isPre_4_0=(Token)match(input,91,FollowSets000.FOLLOW_54); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isPre_4_0, grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
@@ -14588,7 +14588,7 @@
 
             }
 
-            otherlv_1=(Token)match(input,81,FollowSets000.FOLLOW_56); if (state.failed) return current;
+            otherlv_1=(Token)match(input,81,FollowSets000.FOLLOW_55); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
@@ -14655,7 +14655,7 @@
                     	case 1 :
                     	    // InternalCompleteOCL.g:4958:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) )
                     	    {
-                    	    otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_21); if (state.failed) return current;
+                    	    otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_22); if (state.failed) return current;
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_1_0());
@@ -14822,7 +14822,7 @@
 
             }
 
-            otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_57); if (state.failed) return current;
+            otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_56); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
@@ -14850,7 +14850,7 @@
                       	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_58);
+                    pushFollow(FollowSets000.FOLLOW_57);
                     lv_ownedArguments_2_0=ruleNavigatingArgCS();
 
                     state._fsp--;
@@ -14927,7 +14927,7 @@
                     	              	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0_0());
 
                     	            }
-                    	            pushFollow(FollowSets000.FOLLOW_58);
+                    	            pushFollow(FollowSets000.FOLLOW_57);
                     	            lv_ownedArguments_3_1=ruleNavigatingCommaArgCS();
 
                     	            state._fsp--;
@@ -14956,7 +14956,7 @@
                     	              	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_1_0_1());
 
                     	            }
-                    	            pushFollow(FollowSets000.FOLLOW_58);
+                    	            pushFollow(FollowSets000.FOLLOW_57);
                     	            lv_ownedArguments_3_2=ruleNavigatingSemiArgCS();
 
                     	            state._fsp--;
@@ -14985,7 +14985,7 @@
                     	              	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_1_0_2());
 
                     	            }
-                    	            pushFollow(FollowSets000.FOLLOW_58);
+                    	            pushFollow(FollowSets000.FOLLOW_57);
                     	            lv_ownedArguments_3_3=ruleNavigatingBarArgCS();
 
                     	            state._fsp--;
@@ -15134,7 +15134,7 @@
               	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_59);
+            pushFollow(FollowSets000.FOLLOW_58);
             lv_ownedTerms_1_0=ruleExpCS();
 
             state._fsp--;
@@ -15190,7 +15190,7 @@
             	      	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_59);
+            	    pushFollow(FollowSets000.FOLLOW_58);
             	    lv_ownedTerms_3_0=ruleExpCS();
 
             	    state._fsp--;
@@ -15367,7 +15367,7 @@
                       	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_60);
+                    pushFollow(FollowSets000.FOLLOW_59);
                     lv_ownedNameExpression_0_0=ruleNavigatingArgExpCS();
 
                     state._fsp--;
@@ -15401,7 +15401,7 @@
                             // InternalCompleteOCL.g:5199:3: (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? )
                             // InternalCompleteOCL.g:5199:5: otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )?
                             {
-                            otherlv_1=(Token)match(input,86,FollowSets000.FOLLOW_14); if (state.failed) return current;
+                            otherlv_1=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return current;
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_1, grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_0_0());
@@ -15418,7 +15418,7 @@
                               	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_0_1_0());
 
                             }
-                            pushFollow(FollowSets000.FOLLOW_61);
+                            pushFollow(FollowSets000.FOLLOW_60);
                             lv_ownedCoIterator_2_0=ruleCoIteratorVariableCS();
 
                             state._fsp--;
@@ -15512,7 +15512,7 @@
                             // InternalCompleteOCL.g:5244:6: (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? )
                             // InternalCompleteOCL.g:5244:8: otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )?
                             {
-                            otherlv_5=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                            otherlv_5=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_5, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_1_0());
@@ -15529,7 +15529,7 @@
                               	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_1_1_0());
 
                             }
-                            pushFollow(FollowSets000.FOLLOW_62);
+                            pushFollow(FollowSets000.FOLLOW_61);
                             lv_ownedType_6_0=ruleTypeExpCS();
 
                             state._fsp--;
@@ -15564,7 +15564,7 @@
                                 case 1 :
                                     // InternalCompleteOCL.g:5266:4: otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) )
                                     {
-                                    otherlv_7=(Token)match(input,86,FollowSets000.FOLLOW_14); if (state.failed) return current;
+                                    otherlv_7=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return current;
                                     if ( state.backtracking==0 ) {
 
                                           	newLeafNode(otherlv_7, grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_1_2_0());
@@ -15581,7 +15581,7 @@
                                       	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_1_2_1_0());
 
                                     }
-                                    pushFollow(FollowSets000.FOLLOW_61);
+                                    pushFollow(FollowSets000.FOLLOW_60);
                                     lv_ownedCoIterator_8_0=ruleCoIteratorVariableCS();
 
                                     state._fsp--;
@@ -15692,7 +15692,7 @@
                                 case 1 :
                                     // InternalCompleteOCL.g:5311:9: otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) )
                                     {
-                                    otherlv_11=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                                    otherlv_11=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
                                     if ( state.backtracking==0 ) {
 
                                           	newLeafNode(otherlv_11, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_2_0_0());
@@ -15709,7 +15709,7 @@
                                       	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_2_0_1_0());
 
                                     }
-                                    pushFollow(FollowSets000.FOLLOW_63);
+                                    pushFollow(FollowSets000.FOLLOW_62);
                                     lv_ownedType_12_0=ruleTypeExpCS();
 
                                     state._fsp--;
@@ -15750,7 +15750,7 @@
                                 case 1 :
                                     // InternalCompleteOCL.g:5333:6: otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) )
                                     {
-                                    otherlv_13=(Token)match(input,86,FollowSets000.FOLLOW_14); if (state.failed) return current;
+                                    otherlv_13=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return current;
                                     if ( state.backtracking==0 ) {
 
                                           	newLeafNode(otherlv_13, grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_2_1_0());
@@ -15767,7 +15767,7 @@
                                       	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_2_1_1_0());
 
                                     }
-                                    pushFollow(FollowSets000.FOLLOW_64);
+                                    pushFollow(FollowSets000.FOLLOW_63);
                                     lv_ownedCoIterator_14_0=ruleCoIteratorVariableCS();
 
                                     state._fsp--;
@@ -15859,7 +15859,7 @@
                     // InternalCompleteOCL.g:5378:6: (otherlv_17= ':' ( (lv_ownedType_18_0= ruleTypeExpCS ) ) )
                     // InternalCompleteOCL.g:5378:8: otherlv_17= ':' ( (lv_ownedType_18_0= ruleTypeExpCS ) )
                     {
-                    otherlv_17=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_17=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_17, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
@@ -15998,7 +15998,7 @@
             // InternalCompleteOCL.g:5422:1: (lv_prefix_0_0= '|' )
             // InternalCompleteOCL.g:5423:3: lv_prefix_0_0= '|'
             {
-            lv_prefix_0_0=(Token)match(input,95,FollowSets000.FOLLOW_65); if (state.failed) return current;
+            lv_prefix_0_0=(Token)match(input,95,FollowSets000.FOLLOW_64); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
@@ -16029,7 +16029,7 @@
               	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_66);
+            pushFollow(FollowSets000.FOLLOW_65);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
 
             state._fsp--;
@@ -16064,7 +16064,7 @@
                 case 1 :
                     // InternalCompleteOCL.g:5454:4: otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
                     {
-                    otherlv_2=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_2=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
@@ -16081,7 +16081,7 @@
                       	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_61);
+                    pushFollow(FollowSets000.FOLLOW_60);
                     lv_ownedType_3_0=ruleTypeExpCS();
 
                     state._fsp--;
@@ -16279,7 +16279,7 @@
             // InternalCompleteOCL.g:5520:1: (lv_prefix_0_0= ',' )
             // InternalCompleteOCL.g:5521:3: lv_prefix_0_0= ','
             {
-            lv_prefix_0_0=(Token)match(input,26,FollowSets000.FOLLOW_65); if (state.failed) return current;
+            lv_prefix_0_0=(Token)match(input,26,FollowSets000.FOLLOW_64); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
@@ -16310,7 +16310,7 @@
               	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_60);
+            pushFollow(FollowSets000.FOLLOW_59);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
 
             state._fsp--;
@@ -16344,7 +16344,7 @@
                     // InternalCompleteOCL.g:5552:3: (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )
                     // InternalCompleteOCL.g:5552:5: otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
                     {
-                    otherlv_2=(Token)match(input,86,FollowSets000.FOLLOW_14); if (state.failed) return current;
+                    otherlv_2=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_0_0());
@@ -16361,7 +16361,7 @@
                       	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_0_1_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_61);
+                    pushFollow(FollowSets000.FOLLOW_60);
                     lv_ownedCoIterator_3_0=ruleCoIteratorVariableCS();
 
                     state._fsp--;
@@ -16455,7 +16455,7 @@
                     // InternalCompleteOCL.g:5597:6: (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? )
                     // InternalCompleteOCL.g:5597:8: otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )?
                     {
-                    otherlv_6=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_6=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_1_0());
@@ -16472,7 +16472,7 @@
                       	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_1_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_62);
+                    pushFollow(FollowSets000.FOLLOW_61);
                     lv_ownedType_7_0=ruleTypeExpCS();
 
                     state._fsp--;
@@ -16507,7 +16507,7 @@
                         case 1 :
                             // InternalCompleteOCL.g:5619:4: otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) )
                             {
-                            otherlv_8=(Token)match(input,86,FollowSets000.FOLLOW_14); if (state.failed) return current;
+                            otherlv_8=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return current;
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_8, grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_1_2_0());
@@ -16524,7 +16524,7 @@
                               	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_1_2_1_0());
 
                             }
-                            pushFollow(FollowSets000.FOLLOW_61);
+                            pushFollow(FollowSets000.FOLLOW_60);
                             lv_ownedCoIterator_9_0=ruleCoIteratorVariableCS();
 
                             state._fsp--;
@@ -16635,7 +16635,7 @@
                         case 1 :
                             // InternalCompleteOCL.g:5664:9: otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) )
                             {
-                            otherlv_12=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                            otherlv_12=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_12, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_2_0_0());
@@ -16652,7 +16652,7 @@
                               	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_2_0_1_0());
 
                             }
-                            pushFollow(FollowSets000.FOLLOW_63);
+                            pushFollow(FollowSets000.FOLLOW_62);
                             lv_ownedType_13_0=ruleTypeExpCS();
 
                             state._fsp--;
@@ -16693,7 +16693,7 @@
                         case 1 :
                             // InternalCompleteOCL.g:5686:6: otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) )
                             {
-                            otherlv_14=(Token)match(input,86,FollowSets000.FOLLOW_14); if (state.failed) return current;
+                            otherlv_14=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return current;
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_14, grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_2_1_0());
@@ -16710,7 +16710,7 @@
                               	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_2_1_1_0());
 
                             }
-                            pushFollow(FollowSets000.FOLLOW_64);
+                            pushFollow(FollowSets000.FOLLOW_63);
                             lv_ownedCoIterator_15_0=ruleCoIteratorVariableCS();
 
                             state._fsp--;
@@ -16882,7 +16882,7 @@
             // InternalCompleteOCL.g:5752:1: (lv_prefix_0_0= ';' )
             // InternalCompleteOCL.g:5753:3: lv_prefix_0_0= ';'
             {
-            lv_prefix_0_0=(Token)match(input,96,FollowSets000.FOLLOW_65); if (state.failed) return current;
+            lv_prefix_0_0=(Token)match(input,96,FollowSets000.FOLLOW_64); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
@@ -16913,7 +16913,7 @@
               	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_66);
+            pushFollow(FollowSets000.FOLLOW_65);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
 
             state._fsp--;
@@ -16948,7 +16948,7 @@
                 case 1 :
                     // InternalCompleteOCL.g:5784:4: otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
                     {
-                    otherlv_2=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_2=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
@@ -16965,7 +16965,7 @@
                       	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_61);
+                    pushFollow(FollowSets000.FOLLOW_60);
                     lv_ownedType_3_0=ruleTypeExpCS();
 
                     state._fsp--;
@@ -17146,7 +17146,7 @@
               	        newCompositeNode(grammarAccess.getCoIteratorVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_66);
+            pushFollow(FollowSets000.FOLLOW_65);
             lv_name_0_0=ruleUnrestrictedName();
 
             state._fsp--;
@@ -17181,7 +17181,7 @@
                 case 1 :
                     // InternalCompleteOCL.g:5867:4: otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                     {
-                    otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getCoIteratorVariableCSAccess().getColonKeyword_1_0());
@@ -17393,12 +17393,12 @@
                 {
                 int LA112_3 = input.LA(2);
 
-                if ( (LA112_3==23) ) {
-                    alt112=2;
-                }
-                else if ( ((LA112_3>=17 && LA112_3<=18)||LA112_3==21||LA112_3==27||(LA112_3>=39 && LA112_3<=40)||LA112_3==52||(LA112_3>=55 && LA112_3<=72)||LA112_3==75||LA112_3==81||(LA112_3>=91 && LA112_3<=92)||LA112_3==98) ) {
+                if ( ((LA112_3>=17 && LA112_3<=18)||LA112_3==21||LA112_3==27||(LA112_3>=39 && LA112_3<=40)||LA112_3==52||(LA112_3>=55 && LA112_3<=72)||LA112_3==75||LA112_3==81||(LA112_3>=91 && LA112_3<=92)||LA112_3==98) ) {
                     alt112=1;
                 }
+                else if ( (LA112_3==23) ) {
+                    alt112=2;
+                }
                 else {
                     if (state.backtracking>0) {state.failed=true; return current;}
                     NoViableAltException nvae =
@@ -17450,12 +17450,12 @@
                 {
                 int LA112_6 = input.LA(2);
 
-                if ( (LA112_6==23) ) {
-                    alt112=2;
-                }
-                else if ( ((LA112_6>=17 && LA112_6<=18)||LA112_6==21||LA112_6==27||(LA112_6>=39 && LA112_6<=40)||LA112_6==52||(LA112_6>=55 && LA112_6<=72)||LA112_6==75||LA112_6==81||(LA112_6>=91 && LA112_6<=92)||LA112_6==98) ) {
+                if ( ((LA112_6>=17 && LA112_6<=18)||LA112_6==21||LA112_6==27||(LA112_6>=39 && LA112_6<=40)||LA112_6==52||(LA112_6>=55 && LA112_6<=72)||LA112_6==75||LA112_6==81||(LA112_6>=91 && LA112_6<=92)||LA112_6==98) ) {
                     alt112=1;
                 }
+                else if ( (LA112_6==23) ) {
+                    alt112=2;
+                }
                 else {
                     if (state.backtracking>0) {state.failed=true; return current;}
                     NoViableAltException nvae =
@@ -17487,7 +17487,7 @@
                       	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_67);
+                    pushFollow(FollowSets000.FOLLOW_66);
                     lv_ownedCondition_1_1=ruleExpCS();
 
                     state._fsp--;
@@ -17516,7 +17516,7 @@
                       	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_67);
+                    pushFollow(FollowSets000.FOLLOW_66);
                     lv_ownedCondition_1_2=rulePatternExpCS();
 
                     state._fsp--;
@@ -17563,7 +17563,7 @@
               	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_68);
+            pushFollow(FollowSets000.FOLLOW_67);
             lv_ownedThenExpression_3_0=ruleExpCS();
 
             state._fsp--;
@@ -17610,7 +17610,7 @@
             	      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_68);
+            	    pushFollow(FollowSets000.FOLLOW_67);
             	    lv_ownedIfThenExpressions_4_0=ruleElseIfThenExpCS();
 
             	    state._fsp--;
@@ -17657,7 +17657,7 @@
               	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_69);
+            pushFollow(FollowSets000.FOLLOW_68);
             lv_ownedElseExpression_6_0=ruleExpCS();
 
             state._fsp--;
@@ -17787,7 +17787,7 @@
               	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_67);
+            pushFollow(FollowSets000.FOLLOW_66);
             lv_ownedCondition_1_0=ruleExpCS();
 
             state._fsp--;
@@ -17938,7 +17938,7 @@
             // InternalCompleteOCL.g:6102:1: (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) )
             // InternalCompleteOCL.g:6102:3: otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) )
             {
-            otherlv_0=(Token)match(input,102,FollowSets000.FOLLOW_14); if (state.failed) return current;
+            otherlv_0=(Token)match(input,102,FollowSets000.FOLLOW_15); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getLetExpCSAccess().getLetKeyword_0());
@@ -17955,7 +17955,7 @@
               	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_70);
+            pushFollow(FollowSets000.FOLLOW_69);
             lv_ownedVariables_1_0=ruleLetVariableCS();
 
             state._fsp--;
@@ -17994,7 +17994,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:6124:4: otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) )
             	    {
-            	    otherlv_2=(Token)match(input,26,FollowSets000.FOLLOW_14); if (state.failed) return current;
+            	    otherlv_2=(Token)match(input,26,FollowSets000.FOLLOW_15); if (state.failed) return current;
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_2, grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
@@ -18011,7 +18011,7 @@
             	      	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_70);
+            	    pushFollow(FollowSets000.FOLLOW_69);
             	    lv_ownedVariables_3_0=ruleLetVariableCS();
 
             	    state._fsp--;
@@ -18183,7 +18183,7 @@
               	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_71);
+            pushFollow(FollowSets000.FOLLOW_70);
             lv_name_0_0=ruleUnrestrictedName();
 
             state._fsp--;
@@ -18264,7 +18264,7 @@
                 case 1 :
                     // InternalCompleteOCL.g:6225:5: otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     {
-                    otherlv_2=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_2=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
@@ -18281,7 +18281,7 @@
                       	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_19);
+                    pushFollow(FollowSets000.FOLLOW_20);
                     lv_ownedType_3_0=ruleTypeExpCS();
 
                     state._fsp--;
@@ -18710,7 +18710,7 @@
                 case 1 :
                     // InternalCompleteOCL.g:6389:4: otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) )
                     {
-                    otherlv_1=(Token)match(input,83,FollowSets000.FOLLOW_72); if (state.failed) return current;
+                    otherlv_1=(Token)match(input,83,FollowSets000.FOLLOW_71); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
@@ -18842,7 +18842,7 @@
             // InternalCompleteOCL.g:6432:1: (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' )
             // InternalCompleteOCL.g:6432:3: otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']'
             {
-            otherlv_0=(Token)match(input,92,FollowSets000.FOLLOW_73); if (state.failed) return current;
+            otherlv_0=(Token)match(input,92,FollowSets000.FOLLOW_72); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
@@ -18879,7 +18879,7 @@
                               newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_74);
+                    pushFollow(FollowSets000.FOLLOW_73);
                     this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS();
 
                     state._fsp--;
@@ -18906,7 +18906,7 @@
                               newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_74);
+                    pushFollow(FollowSets000.FOLLOW_73);
                     this_MultiplicityStringCS_2=ruleMultiplicityStringCS();
 
                     state._fsp--;
@@ -18937,7 +18937,7 @@
                 case 1 :
                     // InternalCompleteOCL.g:6461:4: otherlv_3= '|?'
                     {
-                    otherlv_3=(Token)match(input,104,FollowSets000.FOLLOW_75); if (state.failed) return current;
+                    otherlv_3=(Token)match(input,104,FollowSets000.FOLLOW_74); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
@@ -18955,7 +18955,7 @@
                     // InternalCompleteOCL.g:6467:1: (lv_isNullFree_4_0= '|1' )
                     // InternalCompleteOCL.g:6468:3: lv_isNullFree_4_0= '|1'
                     {
-                    lv_isNullFree_4_0=(Token)match(input,105,FollowSets000.FOLLOW_75); if (state.failed) return current;
+                    lv_isNullFree_4_0=(Token)match(input,105,FollowSets000.FOLLOW_74); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isNullFree_4_0, grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
@@ -19256,7 +19256,7 @@
               	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_30);
+            pushFollow(FollowSets000.FOLLOW_31);
             lv_ownedPathElements_0_0=ruleFirstPathElementCS();
 
             state._fsp--;
@@ -19295,7 +19295,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:6587:4: otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
             	    {
-            	    otherlv_1=(Token)match(input,75,FollowSets000.FOLLOW_31); if (state.failed) return current;
+            	    otherlv_1=(Token)match(input,75,FollowSets000.FOLLOW_5); if (state.failed) return current;
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
@@ -19312,7 +19312,7 @@
             	      	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_30);
+            	    pushFollow(FollowSets000.FOLLOW_31);
             	    lv_ownedPathElements_2_0=ruleNextPathElementCS();
 
             	    state._fsp--;
@@ -19367,8 +19367,190 @@
     // $ANTLR end "rulePathNameCS"
 
 
+    // $ANTLR start "entryRuleUnreservedPathNameCS"
+    // InternalCompleteOCL.g:6617:1: entryRuleUnreservedPathNameCS returns [EObject current=null] : iv_ruleUnreservedPathNameCS= ruleUnreservedPathNameCS EOF ;
+    public final EObject entryRuleUnreservedPathNameCS() throws RecognitionException {
+        EObject current = null;
+
+        EObject iv_ruleUnreservedPathNameCS = null;
+
+
+        try {
+            // InternalCompleteOCL.g:6618:2: (iv_ruleUnreservedPathNameCS= ruleUnreservedPathNameCS EOF )
+            // InternalCompleteOCL.g:6619:2: iv_ruleUnreservedPathNameCS= ruleUnreservedPathNameCS EOF
+            {
+            if ( state.backtracking==0 ) {
+               newCompositeNode(grammarAccess.getUnreservedPathNameCSRule());
+            }
+            pushFollow(FollowSets000.FOLLOW_1);
+            iv_ruleUnreservedPathNameCS=ruleUnreservedPathNameCS();
+
+            state._fsp--;
+            if (state.failed) return current;
+            if ( state.backtracking==0 ) {
+               current =iv_ruleUnreservedPathNameCS;
+            }
+            match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
+
+            }
+
+        }
+
+            catch (RecognitionException re) {
+                recover(input,re);
+                appendSkippedTokens();
+            }
+        finally {
+        }
+        return current;
+    }
+    // $ANTLR end "entryRuleUnreservedPathNameCS"
+
+
+    // $ANTLR start "ruleUnreservedPathNameCS"
+    // InternalCompleteOCL.g:6626:1: ruleUnreservedPathNameCS returns [EObject current=null] : ( ( (lv_ownedPathElements_0_0= ruleNextPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) ;
+    public final EObject ruleUnreservedPathNameCS() throws RecognitionException {
+        EObject current = null;
+
+        Token otherlv_1=null;
+        EObject lv_ownedPathElements_0_0 = null;
+
+        EObject lv_ownedPathElements_2_0 = null;
+
+
+         enterRule();
+
+        try {
+            // InternalCompleteOCL.g:6629:28: ( ( ( (lv_ownedPathElements_0_0= ruleNextPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) )
+            // InternalCompleteOCL.g:6630:1: ( ( (lv_ownedPathElements_0_0= ruleNextPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
+            {
+            // InternalCompleteOCL.g:6630:1: ( ( (lv_ownedPathElements_0_0= ruleNextPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
+            // InternalCompleteOCL.g:6630:2: ( (lv_ownedPathElements_0_0= ruleNextPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )*
+            {
+            // InternalCompleteOCL.g:6630:2: ( (lv_ownedPathElements_0_0= ruleNextPathElementCS ) )
+            // InternalCompleteOCL.g:6631:1: (lv_ownedPathElements_0_0= ruleNextPathElementCS )
+            {
+            // InternalCompleteOCL.g:6631:1: (lv_ownedPathElements_0_0= ruleNextPathElementCS )
+            // InternalCompleteOCL.g:6632:3: lv_ownedPathElements_0_0= ruleNextPathElementCS
+            {
+            if ( state.backtracking==0 ) {
+
+              	        newCompositeNode(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_0_0());
+
+            }
+            pushFollow(FollowSets000.FOLLOW_31);
+            lv_ownedPathElements_0_0=ruleNextPathElementCS();
+
+            state._fsp--;
+            if (state.failed) return current;
+            if ( state.backtracking==0 ) {
+
+              	        if (current==null) {
+              	            current = createModelElementForParent(grammarAccess.getUnreservedPathNameCSRule());
+              	        }
+                     		add(
+                     			current,
+                     			"ownedPathElements",
+                      		lv_ownedPathElements_0_0,
+                      		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
+              	        afterParserOrEnumRuleCall();
+
+            }
+
+            }
+
+
+            }
+
+            // InternalCompleteOCL.g:6648:2: (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )*
+            loop122:
+            do {
+                int alt122=2;
+                int LA122_0 = input.LA(1);
+
+                if ( (LA122_0==75) ) {
+                    alt122=1;
+                }
+
+
+                switch (alt122) {
+            	case 1 :
+            	    // InternalCompleteOCL.g:6648:4: otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
+            	    {
+            	    otherlv_1=(Token)match(input,75,FollowSets000.FOLLOW_5); if (state.failed) return current;
+            	    if ( state.backtracking==0 ) {
+
+            	          	newLeafNode(otherlv_1, grammarAccess.getUnreservedPathNameCSAccess().getColonColonKeyword_1_0());
+
+            	    }
+            	    // InternalCompleteOCL.g:6652:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
+            	    // InternalCompleteOCL.g:6653:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
+            	    {
+            	    // InternalCompleteOCL.g:6653:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
+            	    // InternalCompleteOCL.g:6654:3: lv_ownedPathElements_2_0= ruleNextPathElementCS
+            	    {
+            	    if ( state.backtracking==0 ) {
+
+            	      	        newCompositeNode(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
+
+            	    }
+            	    pushFollow(FollowSets000.FOLLOW_31);
+            	    lv_ownedPathElements_2_0=ruleNextPathElementCS();
+
+            	    state._fsp--;
+            	    if (state.failed) return current;
+            	    if ( state.backtracking==0 ) {
+
+            	      	        if (current==null) {
+            	      	            current = createModelElementForParent(grammarAccess.getUnreservedPathNameCSRule());
+            	      	        }
+            	             		add(
+            	             			current,
+            	             			"ownedPathElements",
+            	              		lv_ownedPathElements_2_0,
+            	              		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
+            	      	        afterParserOrEnumRuleCall();
+
+            	    }
+
+            	    }
+
+
+            	    }
+
+
+            	    }
+            	    break;
+
+            	default :
+            	    break loop122;
+                }
+            } while (true);
+
+
+            }
+
+
+            }
+
+            if ( state.backtracking==0 ) {
+               leaveRule();
+            }
+        }
+
+            catch (RecognitionException re) {
+                recover(input,re);
+                appendSkippedTokens();
+            }
+        finally {
+        }
+        return current;
+    }
+    // $ANTLR end "ruleUnreservedPathNameCS"
+
+
     // $ANTLR start "entryRuleFirstPathElementCS"
-    // InternalCompleteOCL.g:6617:1: entryRuleFirstPathElementCS returns [EObject current=null] : iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ;
+    // InternalCompleteOCL.g:6678:1: entryRuleFirstPathElementCS returns [EObject current=null] : iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ;
     public final EObject entryRuleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
@@ -19376,8 +19558,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:6618:2: (iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF )
-            // InternalCompleteOCL.g:6619:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
+            // InternalCompleteOCL.g:6679:2: (iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF )
+            // InternalCompleteOCL.g:6680:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getFirstPathElementCSRule());
@@ -19408,21 +19590,21 @@
 
 
     // $ANTLR start "ruleFirstPathElementCS"
-    // InternalCompleteOCL.g:6626:1: ruleFirstPathElementCS returns [EObject current=null] : ( ( ruleUnrestrictedName ) ) ;
+    // InternalCompleteOCL.g:6687:1: ruleFirstPathElementCS returns [EObject current=null] : ( ( ruleUnrestrictedName ) ) ;
     public final EObject ruleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:6629:28: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalCompleteOCL.g:6630:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:6690:28: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalCompleteOCL.g:6691:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalCompleteOCL.g:6630:1: ( ( ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:6631:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:6691:1: ( ( ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:6692:1: ( ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:6631:1: ( ruleUnrestrictedName )
-            // InternalCompleteOCL.g:6632:3: ruleUnrestrictedName
+            // InternalCompleteOCL.g:6692:1: ( ruleUnrestrictedName )
+            // InternalCompleteOCL.g:6693:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
 
@@ -19477,7 +19659,7 @@
 
 
     // $ANTLR start "entryRuleNextPathElementCS"
-    // InternalCompleteOCL.g:6656:1: entryRuleNextPathElementCS returns [EObject current=null] : iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ;
+    // InternalCompleteOCL.g:6717:1: entryRuleNextPathElementCS returns [EObject current=null] : iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ;
     public final EObject entryRuleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
@@ -19485,8 +19667,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:6657:2: (iv_ruleNextPathElementCS= ruleNextPathElementCS EOF )
-            // InternalCompleteOCL.g:6658:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
+            // InternalCompleteOCL.g:6718:2: (iv_ruleNextPathElementCS= ruleNextPathElementCS EOF )
+            // InternalCompleteOCL.g:6719:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getNextPathElementCSRule());
@@ -19517,21 +19699,21 @@
 
 
     // $ANTLR start "ruleNextPathElementCS"
-    // InternalCompleteOCL.g:6665:1: ruleNextPathElementCS returns [EObject current=null] : ( ( ruleUnreservedName ) ) ;
+    // InternalCompleteOCL.g:6726:1: ruleNextPathElementCS returns [EObject current=null] : ( ( ruleUnreservedName ) ) ;
     public final EObject ruleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:6668:28: ( ( ( ruleUnreservedName ) ) )
-            // InternalCompleteOCL.g:6669:1: ( ( ruleUnreservedName ) )
+            // InternalCompleteOCL.g:6729:28: ( ( ( ruleUnreservedName ) ) )
+            // InternalCompleteOCL.g:6730:1: ( ( ruleUnreservedName ) )
             {
-            // InternalCompleteOCL.g:6669:1: ( ( ruleUnreservedName ) )
-            // InternalCompleteOCL.g:6670:1: ( ruleUnreservedName )
+            // InternalCompleteOCL.g:6730:1: ( ( ruleUnreservedName ) )
+            // InternalCompleteOCL.g:6731:1: ( ruleUnreservedName )
             {
-            // InternalCompleteOCL.g:6670:1: ( ruleUnreservedName )
-            // InternalCompleteOCL.g:6671:3: ruleUnreservedName
+            // InternalCompleteOCL.g:6731:1: ( ruleUnreservedName )
+            // InternalCompleteOCL.g:6732:3: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
 
@@ -19586,7 +19768,7 @@
 
 
     // $ANTLR start "entryRuleTemplateBindingCS"
-    // InternalCompleteOCL.g:6695:1: entryRuleTemplateBindingCS returns [EObject current=null] : iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ;
+    // InternalCompleteOCL.g:6756:1: entryRuleTemplateBindingCS returns [EObject current=null] : iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ;
     public final EObject entryRuleTemplateBindingCS() throws RecognitionException {
         EObject current = null;
 
@@ -19594,8 +19776,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:6696:2: (iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF )
-            // InternalCompleteOCL.g:6697:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
+            // InternalCompleteOCL.g:6757:2: (iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF )
+            // InternalCompleteOCL.g:6758:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTemplateBindingCSRule());
@@ -19626,7 +19808,7 @@
 
 
     // $ANTLR start "ruleTemplateBindingCS"
-    // InternalCompleteOCL.g:6704:1: ruleTemplateBindingCS returns [EObject current=null] : ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) ;
+    // InternalCompleteOCL.g:6765:1: ruleTemplateBindingCS returns [EObject current=null] : ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) ;
     public final EObject ruleTemplateBindingCS() throws RecognitionException {
         EObject current = null;
 
@@ -19641,24 +19823,24 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:6707:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
-            // InternalCompleteOCL.g:6708:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
+            // InternalCompleteOCL.g:6768:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
+            // InternalCompleteOCL.g:6769:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
             {
-            // InternalCompleteOCL.g:6708:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
-            // InternalCompleteOCL.g:6708:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
+            // InternalCompleteOCL.g:6769:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
+            // InternalCompleteOCL.g:6769:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
             {
-            // InternalCompleteOCL.g:6708:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) )
-            // InternalCompleteOCL.g:6709:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
+            // InternalCompleteOCL.g:6769:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) )
+            // InternalCompleteOCL.g:6770:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
             {
-            // InternalCompleteOCL.g:6709:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
-            // InternalCompleteOCL.g:6710:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
+            // InternalCompleteOCL.g:6770:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
+            // InternalCompleteOCL.g:6771:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
 
               	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_76);
+            pushFollow(FollowSets000.FOLLOW_75);
             lv_ownedSubstitutions_0_0=ruleTemplateParameterSubstitutionCS();
 
             state._fsp--;
@@ -19682,39 +19864,39 @@
 
             }
 
-            // InternalCompleteOCL.g:6726:2: (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )*
-            loop122:
+            // InternalCompleteOCL.g:6787:2: (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )*
+            loop123:
             do {
-                int alt122=2;
-                int LA122_0 = input.LA(1);
+                int alt123=2;
+                int LA123_0 = input.LA(1);
 
-                if ( (LA122_0==26) ) {
-                    alt122=1;
+                if ( (LA123_0==26) ) {
+                    alt123=1;
                 }
 
 
-                switch (alt122) {
+                switch (alt123) {
             	case 1 :
-            	    // InternalCompleteOCL.g:6726:4: otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
+            	    // InternalCompleteOCL.g:6787:4: otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
             	    {
-            	    otherlv_1=(Token)match(input,26,FollowSets000.FOLLOW_77); if (state.failed) return current;
+            	    otherlv_1=(Token)match(input,26,FollowSets000.FOLLOW_76); if (state.failed) return current;
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
 
             	    }
-            	    // InternalCompleteOCL.g:6730:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
-            	    // InternalCompleteOCL.g:6731:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
+            	    // InternalCompleteOCL.g:6791:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
+            	    // InternalCompleteOCL.g:6792:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
             	    {
-            	    // InternalCompleteOCL.g:6731:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
-            	    // InternalCompleteOCL.g:6732:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
+            	    // InternalCompleteOCL.g:6792:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
+            	    // InternalCompleteOCL.g:6793:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
             	    {
             	    if ( state.backtracking==0 ) {
 
             	      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
 
             	    }
-            	    pushFollow(FollowSets000.FOLLOW_76);
+            	    pushFollow(FollowSets000.FOLLOW_75);
             	    lv_ownedSubstitutions_2_0=ruleTemplateParameterSubstitutionCS();
 
             	    state._fsp--;
@@ -19743,23 +19925,23 @@
             	    break;
 
             	default :
-            	    break loop122;
+            	    break loop123;
                 }
             } while (true);
 
-            // InternalCompleteOCL.g:6748:4: ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
-            int alt123=2;
-            int LA123_0 = input.LA(1);
+            // InternalCompleteOCL.g:6809:4: ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
+            int alt124=2;
+            int LA124_0 = input.LA(1);
 
-            if ( (LA123_0==92) ) {
-                alt123=1;
+            if ( (LA124_0==92) ) {
+                alt124=1;
             }
-            switch (alt123) {
+            switch (alt124) {
                 case 1 :
-                    // InternalCompleteOCL.g:6749:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
+                    // InternalCompleteOCL.g:6810:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
                     {
-                    // InternalCompleteOCL.g:6749:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
-                    // InternalCompleteOCL.g:6750:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
+                    // InternalCompleteOCL.g:6810:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
+                    // InternalCompleteOCL.g:6811:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -19816,7 +19998,7 @@
 
 
     // $ANTLR start "entryRuleTemplateParameterSubstitutionCS"
-    // InternalCompleteOCL.g:6774:1: entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] : iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ;
+    // InternalCompleteOCL.g:6835:1: entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] : iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ;
     public final EObject entryRuleTemplateParameterSubstitutionCS() throws RecognitionException {
         EObject current = null;
 
@@ -19824,8 +20006,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:6775:2: (iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF )
-            // InternalCompleteOCL.g:6776:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
+            // InternalCompleteOCL.g:6836:2: (iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF )
+            // InternalCompleteOCL.g:6837:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule());
@@ -19856,7 +20038,7 @@
 
 
     // $ANTLR start "ruleTemplateParameterSubstitutionCS"
-    // InternalCompleteOCL.g:6783:1: ruleTemplateParameterSubstitutionCS returns [EObject current=null] : ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) ;
+    // InternalCompleteOCL.g:6844:1: ruleTemplateParameterSubstitutionCS returns [EObject current=null] : ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) ;
     public final EObject ruleTemplateParameterSubstitutionCS() throws RecognitionException {
         EObject current = null;
 
@@ -19866,14 +20048,14 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:6786:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
-            // InternalCompleteOCL.g:6787:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
+            // InternalCompleteOCL.g:6847:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
+            // InternalCompleteOCL.g:6848:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
             {
-            // InternalCompleteOCL.g:6787:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
-            // InternalCompleteOCL.g:6788:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
+            // InternalCompleteOCL.g:6848:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
+            // InternalCompleteOCL.g:6849:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
             {
-            // InternalCompleteOCL.g:6788:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
-            // InternalCompleteOCL.g:6789:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
+            // InternalCompleteOCL.g:6849:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
+            // InternalCompleteOCL.g:6850:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
 
@@ -19924,7 +20106,7 @@
 
 
     // $ANTLR start "entryRuleTypeParameterCS"
-    // InternalCompleteOCL.g:6813:1: entryRuleTypeParameterCS returns [EObject current=null] : iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ;
+    // InternalCompleteOCL.g:6874:1: entryRuleTypeParameterCS returns [EObject current=null] : iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ;
     public final EObject entryRuleTypeParameterCS() throws RecognitionException {
         EObject current = null;
 
@@ -19932,8 +20114,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:6814:2: (iv_ruleTypeParameterCS= ruleTypeParameterCS EOF )
-            // InternalCompleteOCL.g:6815:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
+            // InternalCompleteOCL.g:6875:2: (iv_ruleTypeParameterCS= ruleTypeParameterCS EOF )
+            // InternalCompleteOCL.g:6876:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypeParameterCSRule());
@@ -19964,7 +20146,7 @@
 
 
     // $ANTLR start "ruleTypeParameterCS"
-    // InternalCompleteOCL.g:6822:1: ruleTypeParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) ;
+    // InternalCompleteOCL.g:6883:1: ruleTypeParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) ;
     public final EObject ruleTypeParameterCS() throws RecognitionException {
         EObject current = null;
 
@@ -19980,24 +20162,24 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:6825:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
-            // InternalCompleteOCL.g:6826:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
+            // InternalCompleteOCL.g:6886:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
+            // InternalCompleteOCL.g:6887:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
             {
-            // InternalCompleteOCL.g:6826:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
-            // InternalCompleteOCL.g:6826:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
+            // InternalCompleteOCL.g:6887:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
+            // InternalCompleteOCL.g:6887:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
             {
-            // InternalCompleteOCL.g:6826:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
-            // InternalCompleteOCL.g:6827:1: (lv_name_0_0= ruleUnrestrictedName )
+            // InternalCompleteOCL.g:6887:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
+            // InternalCompleteOCL.g:6888:1: (lv_name_0_0= ruleUnrestrictedName )
             {
-            // InternalCompleteOCL.g:6827:1: (lv_name_0_0= ruleUnrestrictedName )
-            // InternalCompleteOCL.g:6828:3: lv_name_0_0= ruleUnrestrictedName
+            // InternalCompleteOCL.g:6888:1: (lv_name_0_0= ruleUnrestrictedName )
+            // InternalCompleteOCL.g:6889:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
 
               	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 
             }
-            pushFollow(FollowSets000.FOLLOW_78);
+            pushFollow(FollowSets000.FOLLOW_77);
             lv_name_0_0=ruleUnrestrictedName();
 
             state._fsp--;
@@ -20021,35 +20203,35 @@
 
             }
 
-            // InternalCompleteOCL.g:6844:2: (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
-            int alt125=2;
-            int LA125_0 = input.LA(1);
+            // InternalCompleteOCL.g:6905:2: (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
+            int alt126=2;
+            int LA126_0 = input.LA(1);
 
-            if ( (LA125_0==106) ) {
-                alt125=1;
+            if ( (LA126_0==106) ) {
+                alt126=1;
             }
-            switch (alt125) {
+            switch (alt126) {
                 case 1 :
-                    // InternalCompleteOCL.g:6844:4: otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
+                    // InternalCompleteOCL.g:6905:4: otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
                     {
-                    otherlv_1=(Token)match(input,106,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_1=(Token)match(input,106,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
 
                     }
-                    // InternalCompleteOCL.g:6848:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
-                    // InternalCompleteOCL.g:6849:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
+                    // InternalCompleteOCL.g:6909:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
+                    // InternalCompleteOCL.g:6910:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
                     {
-                    // InternalCompleteOCL.g:6849:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
-                    // InternalCompleteOCL.g:6850:3: lv_ownedExtends_2_0= ruleTypedRefCS
+                    // InternalCompleteOCL.g:6910:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
+                    // InternalCompleteOCL.g:6911:3: lv_ownedExtends_2_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
                       	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
 
                     }
-                    pushFollow(FollowSets000.FOLLOW_79);
+                    pushFollow(FollowSets000.FOLLOW_78);
                     lv_ownedExtends_2_0=ruleTypedRefCS();
 
                     state._fsp--;
@@ -20073,39 +20255,39 @@
 
                     }
 
-                    // InternalCompleteOCL.g:6866:2: (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
-                    loop124:
+                    // InternalCompleteOCL.g:6927:2: (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
+                    loop125:
                     do {
-                        int alt124=2;
-                        int LA124_0 = input.LA(1);
+                        int alt125=2;
+                        int LA125_0 = input.LA(1);
 
-                        if ( (LA124_0==107) ) {
-                            alt124=1;
+                        if ( (LA125_0==107) ) {
+                            alt125=1;
                         }
 
 
-                        switch (alt124) {
+                        switch (alt125) {
                     	case 1 :
-                    	    // InternalCompleteOCL.g:6866:4: otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
+                    	    // InternalCompleteOCL.g:6927:4: otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
                     	    {
-                    	    otherlv_3=(Token)match(input,107,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    	    otherlv_3=(Token)match(input,107,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
 
                     	    }
-                    	    // InternalCompleteOCL.g:6870:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
-                    	    // InternalCompleteOCL.g:6871:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
+                    	    // InternalCompleteOCL.g:6931:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
+                    	    // InternalCompleteOCL.g:6932:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
                     	    {
-                    	    // InternalCompleteOCL.g:6871:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
-                    	    // InternalCompleteOCL.g:6872:3: lv_ownedExtends_4_0= ruleTypedRefCS
+                    	    // InternalCompleteOCL.g:6932:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
+                    	    // InternalCompleteOCL.g:6933:3: lv_ownedExtends_4_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
 
                     	      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
 
                     	    }
-                    	    pushFollow(FollowSets000.FOLLOW_79);
+                    	    pushFollow(FollowSets000.FOLLOW_78);
                     	    lv_ownedExtends_4_0=ruleTypedRefCS();
 
                     	    state._fsp--;
@@ -20134,7 +20316,7 @@
                     	    break;
 
                     	default :
-                    	    break loop124;
+                    	    break loop125;
                         }
                     } while (true);
 
@@ -20167,7 +20349,7 @@
 
 
     // $ANTLR start "entryRuleTypeRefCS"
-    // InternalCompleteOCL.g:6896:1: entryRuleTypeRefCS returns [EObject current=null] : iv_ruleTypeRefCS= ruleTypeRefCS EOF ;
+    // InternalCompleteOCL.g:6957:1: entryRuleTypeRefCS returns [EObject current=null] : iv_ruleTypeRefCS= ruleTypeRefCS EOF ;
     public final EObject entryRuleTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -20175,8 +20357,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:6897:2: (iv_ruleTypeRefCS= ruleTypeRefCS EOF )
-            // InternalCompleteOCL.g:6898:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
+            // InternalCompleteOCL.g:6958:2: (iv_ruleTypeRefCS= ruleTypeRefCS EOF )
+            // InternalCompleteOCL.g:6959:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypeRefCSRule());
@@ -20207,7 +20389,7 @@
 
 
     // $ANTLR start "ruleTypeRefCS"
-    // InternalCompleteOCL.g:6905:1: ruleTypeRefCS returns [EObject current=null] : (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) ;
+    // InternalCompleteOCL.g:6966:1: ruleTypeRefCS returns [EObject current=null] : (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) ;
     public final EObject ruleTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -20219,29 +20401,29 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:6908:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
-            // InternalCompleteOCL.g:6909:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
+            // InternalCompleteOCL.g:6969:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
+            // InternalCompleteOCL.g:6970:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
             {
-            // InternalCompleteOCL.g:6909:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
-            int alt126=2;
-            int LA126_0 = input.LA(1);
+            // InternalCompleteOCL.g:6970:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
+            int alt127=2;
+            int LA127_0 = input.LA(1);
 
-            if ( ((LA126_0>=RULE_SIMPLE_ID && LA126_0<=RULE_ESCAPED_ID)||(LA126_0>=28 && LA126_0<=30)||(LA126_0>=42 && LA126_0<=51)||(LA126_0>=73 && LA126_0<=74)||(LA126_0>=76 && LA126_0<=80)) ) {
-                alt126=1;
+            if ( ((LA127_0>=RULE_SIMPLE_ID && LA127_0<=RULE_ESCAPED_ID)||(LA127_0>=28 && LA127_0<=30)||(LA127_0>=42 && LA127_0<=51)||(LA127_0>=73 && LA127_0<=74)||(LA127_0>=76 && LA127_0<=80)) ) {
+                alt127=1;
             }
-            else if ( (LA126_0==41) ) {
-                alt126=2;
+            else if ( (LA127_0==41) ) {
+                alt127=2;
             }
             else {
                 if (state.backtracking>0) {state.failed=true; return current;}
                 NoViableAltException nvae =
-                    new NoViableAltException("", 126, 0, input);
+                    new NoViableAltException("", 127, 0, input);
 
                 throw nvae;
             }
-            switch (alt126) {
+            switch (alt127) {
                 case 1 :
-                    // InternalCompleteOCL.g:6910:2: this_TypedRefCS_0= ruleTypedRefCS
+                    // InternalCompleteOCL.g:6971:2: this_TypedRefCS_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -20268,7 +20450,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:6923:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
+                    // InternalCompleteOCL.g:6984:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -20317,7 +20499,7 @@
 
 
     // $ANTLR start "entryRuleTypedTypeRefCS"
-    // InternalCompleteOCL.g:6942:1: entryRuleTypedTypeRefCS returns [EObject current=null] : iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF ;
+    // InternalCompleteOCL.g:7003:1: entryRuleTypedTypeRefCS returns [EObject current=null] : iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF ;
     public final EObject entryRuleTypedTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -20325,8 +20507,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:6943:2: (iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF )
-            // InternalCompleteOCL.g:6944:2: iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF
+            // InternalCompleteOCL.g:7004:2: (iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF )
+            // InternalCompleteOCL.g:7005:2: iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypedTypeRefCSRule());
@@ -20357,7 +20539,7 @@
 
 
     // $ANTLR start "ruleTypedTypeRefCS"
-    // InternalCompleteOCL.g:6951:1: ruleTypedTypeRefCS returns [EObject current=null] : ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) ;
+    // InternalCompleteOCL.g:7012:1: ruleTypedTypeRefCS returns [EObject current=null] : ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) ;
     public final EObject ruleTypedTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -20371,17 +20553,17 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:6954:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) )
-            // InternalCompleteOCL.g:6955:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
+            // InternalCompleteOCL.g:7015:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) )
+            // InternalCompleteOCL.g:7016:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
             {
-            // InternalCompleteOCL.g:6955:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
-            // InternalCompleteOCL.g:6955:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
+            // InternalCompleteOCL.g:7016:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
+            // InternalCompleteOCL.g:7016:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
             {
-            // InternalCompleteOCL.g:6955:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) )
-            // InternalCompleteOCL.g:6956:1: (lv_ownedPathName_0_0= rulePathNameCS )
+            // InternalCompleteOCL.g:7016:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) )
+            // InternalCompleteOCL.g:7017:1: (lv_ownedPathName_0_0= rulePathNameCS )
             {
-            // InternalCompleteOCL.g:6956:1: (lv_ownedPathName_0_0= rulePathNameCS )
-            // InternalCompleteOCL.g:6957:3: lv_ownedPathName_0_0= rulePathNameCS
+            // InternalCompleteOCL.g:7017:1: (lv_ownedPathName_0_0= rulePathNameCS )
+            // InternalCompleteOCL.g:7018:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
 
@@ -20412,28 +20594,28 @@
 
             }
 
-            // InternalCompleteOCL.g:6973:2: (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
-            int alt127=2;
-            int LA127_0 = input.LA(1);
+            // InternalCompleteOCL.g:7034:2: (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
+            int alt128=2;
+            int LA128_0 = input.LA(1);
 
-            if ( (LA127_0==21) ) {
-                alt127=1;
+            if ( (LA128_0==21) ) {
+                alt128=1;
             }
-            switch (alt127) {
+            switch (alt128) {
                 case 1 :
-                    // InternalCompleteOCL.g:6973:4: otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')'
+                    // InternalCompleteOCL.g:7034:4: otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')'
                     {
-                    otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_77); if (state.failed) return current;
+                    otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_76); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
 
                     }
-                    // InternalCompleteOCL.g:6977:1: ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) )
-                    // InternalCompleteOCL.g:6978:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
+                    // InternalCompleteOCL.g:7038:1: ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) )
+                    // InternalCompleteOCL.g:7039:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
                     {
-                    // InternalCompleteOCL.g:6978:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
-                    // InternalCompleteOCL.g:6979:3: lv_ownedBinding_2_0= ruleTemplateBindingCS
+                    // InternalCompleteOCL.g:7039:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
+                    // InternalCompleteOCL.g:7040:3: lv_ownedBinding_2_0= ruleTemplateBindingCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -20499,7 +20681,7 @@
 
 
     // $ANTLR start "entryRuleWildcardTypeRefCS"
-    // InternalCompleteOCL.g:7007:1: entryRuleWildcardTypeRefCS returns [EObject current=null] : iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ;
+    // InternalCompleteOCL.g:7068:1: entryRuleWildcardTypeRefCS returns [EObject current=null] : iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ;
     public final EObject entryRuleWildcardTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -20507,8 +20689,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:7008:2: (iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF )
-            // InternalCompleteOCL.g:7009:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
+            // InternalCompleteOCL.g:7069:2: (iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF )
+            // InternalCompleteOCL.g:7070:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getWildcardTypeRefCSRule());
@@ -20539,7 +20721,7 @@
 
 
     // $ANTLR start "ruleWildcardTypeRefCS"
-    // InternalCompleteOCL.g:7016:1: ruleWildcardTypeRefCS returns [EObject current=null] : ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) ;
+    // InternalCompleteOCL.g:7077:1: ruleWildcardTypeRefCS returns [EObject current=null] : ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) ;
     public final EObject ruleWildcardTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -20551,14 +20733,14 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:7019:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
-            // InternalCompleteOCL.g:7020:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
+            // InternalCompleteOCL.g:7080:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
+            // InternalCompleteOCL.g:7081:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
             {
-            // InternalCompleteOCL.g:7020:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
-            // InternalCompleteOCL.g:7020:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
+            // InternalCompleteOCL.g:7081:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
+            // InternalCompleteOCL.g:7081:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             {
-            // InternalCompleteOCL.g:7020:2: ()
-            // InternalCompleteOCL.g:7021:2:
+            // InternalCompleteOCL.g:7081:2: ()
+            // InternalCompleteOCL.g:7082:2:
             {
             if ( state.backtracking==0 ) {
 
@@ -20575,34 +20757,34 @@
 
             }
 
-            otherlv_1=(Token)match(input,41,FollowSets000.FOLLOW_78); if (state.failed) return current;
+            otherlv_1=(Token)match(input,41,FollowSets000.FOLLOW_77); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
 
             }
-            // InternalCompleteOCL.g:7033:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
-            int alt128=2;
-            int LA128_0 = input.LA(1);
+            // InternalCompleteOCL.g:7094:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
+            int alt129=2;
+            int LA129_0 = input.LA(1);
 
-            if ( (LA128_0==106) ) {
-                alt128=1;
+            if ( (LA129_0==106) ) {
+                alt129=1;
             }
-            switch (alt128) {
+            switch (alt129) {
                 case 1 :
-                    // InternalCompleteOCL.g:7033:3: otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
+                    // InternalCompleteOCL.g:7094:3: otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
                     {
-                    otherlv_2=(Token)match(input,106,FollowSets000.FOLLOW_20); if (state.failed) return current;
+                    otherlv_2=(Token)match(input,106,FollowSets000.FOLLOW_21); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
 
                     }
-                    // InternalCompleteOCL.g:7037:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
-                    // InternalCompleteOCL.g:7038:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
+                    // InternalCompleteOCL.g:7098:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
+                    // InternalCompleteOCL.g:7099:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
                     {
-                    // InternalCompleteOCL.g:7038:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
-                    // InternalCompleteOCL.g:7039:3: lv_ownedExtends_3_0= ruleTypedRefCS
+                    // InternalCompleteOCL.g:7099:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
+                    // InternalCompleteOCL.g:7100:3: lv_ownedExtends_3_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -20662,7 +20844,7 @@
 
 
     // $ANTLR start "entryRuleID"
-    // InternalCompleteOCL.g:7063:1: entryRuleID returns [String current=null] : iv_ruleID= ruleID EOF ;
+    // InternalCompleteOCL.g:7124:1: entryRuleID returns [String current=null] : iv_ruleID= ruleID EOF ;
     public final String entryRuleID() throws RecognitionException {
         String current = null;
 
@@ -20670,8 +20852,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:7064:2: (iv_ruleID= ruleID EOF )
-            // InternalCompleteOCL.g:7065:2: iv_ruleID= ruleID EOF
+            // InternalCompleteOCL.g:7125:2: (iv_ruleID= ruleID EOF )
+            // InternalCompleteOCL.g:7126:2: iv_ruleID= ruleID EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getIDRule());
@@ -20702,7 +20884,7 @@
 
 
     // $ANTLR start "ruleID"
-    // InternalCompleteOCL.g:7072:1: ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) ;
+    // InternalCompleteOCL.g:7133:1: ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) ;
     public final AntlrDatatypeRuleToken ruleID() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -20712,29 +20894,29 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:7075:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
-            // InternalCompleteOCL.g:7076:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
+            // InternalCompleteOCL.g:7136:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
+            // InternalCompleteOCL.g:7137:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
             {
-            // InternalCompleteOCL.g:7076:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
-            int alt129=2;
-            int LA129_0 = input.LA(1);
+            // InternalCompleteOCL.g:7137:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
+            int alt130=2;
+            int LA130_0 = input.LA(1);
 
-            if ( (LA129_0==RULE_SIMPLE_ID) ) {
-                alt129=1;
+            if ( (LA130_0==RULE_SIMPLE_ID) ) {
+                alt130=1;
             }
-            else if ( (LA129_0==RULE_ESCAPED_ID) ) {
-                alt129=2;
+            else if ( (LA130_0==RULE_ESCAPED_ID) ) {
+                alt130=2;
             }
             else {
                 if (state.backtracking>0) {state.failed=true; return current;}
                 NoViableAltException nvae =
-                    new NoViableAltException("", 129, 0, input);
+                    new NoViableAltException("", 130, 0, input);
 
                 throw nvae;
             }
-            switch (alt129) {
+            switch (alt130) {
                 case 1 :
-                    // InternalCompleteOCL.g:7076:6: this_SIMPLE_ID_0= RULE_SIMPLE_ID
+                    // InternalCompleteOCL.g:7137:6: this_SIMPLE_ID_0= RULE_SIMPLE_ID
                     {
                     this_SIMPLE_ID_0=(Token)match(input,RULE_SIMPLE_ID,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -20751,7 +20933,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:7084:10: this_ESCAPED_ID_1= RULE_ESCAPED_ID
+                    // InternalCompleteOCL.g:7145:10: this_ESCAPED_ID_1= RULE_ESCAPED_ID
                     {
                     this_ESCAPED_ID_1=(Token)match(input,RULE_ESCAPED_ID,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -20790,7 +20972,7 @@
 
 
     // $ANTLR start "entryRuleIdentifier"
-    // InternalCompleteOCL.g:7099:1: entryRuleIdentifier returns [String current=null] : iv_ruleIdentifier= ruleIdentifier EOF ;
+    // InternalCompleteOCL.g:7160:1: entryRuleIdentifier returns [String current=null] : iv_ruleIdentifier= ruleIdentifier EOF ;
     public final String entryRuleIdentifier() throws RecognitionException {
         String current = null;
 
@@ -20798,8 +20980,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:7100:2: (iv_ruleIdentifier= ruleIdentifier EOF )
-            // InternalCompleteOCL.g:7101:2: iv_ruleIdentifier= ruleIdentifier EOF
+            // InternalCompleteOCL.g:7161:2: (iv_ruleIdentifier= ruleIdentifier EOF )
+            // InternalCompleteOCL.g:7162:2: iv_ruleIdentifier= ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getIdentifierRule());
@@ -20830,7 +21012,7 @@
 
 
     // $ANTLR start "ruleIdentifier"
-    // InternalCompleteOCL.g:7108:1: ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_ID_0= ruleID ;
+    // InternalCompleteOCL.g:7169:1: ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_ID_0= ruleID ;
     public final AntlrDatatypeRuleToken ruleIdentifier() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -20840,8 +21022,8 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:7111:28: (this_ID_0= ruleID )
-            // InternalCompleteOCL.g:7113:5: this_ID_0= ruleID
+            // InternalCompleteOCL.g:7172:28: (this_ID_0= ruleID )
+            // InternalCompleteOCL.g:7174:5: this_ID_0= ruleID
             {
             if ( state.backtracking==0 ) {
 
@@ -20883,7 +21065,7 @@
 
 
     // $ANTLR start "entryRuleLOWER"
-    // InternalCompleteOCL.g:7131:1: entryRuleLOWER returns [String current=null] : iv_ruleLOWER= ruleLOWER EOF ;
+    // InternalCompleteOCL.g:7192:1: entryRuleLOWER returns [String current=null] : iv_ruleLOWER= ruleLOWER EOF ;
     public final String entryRuleLOWER() throws RecognitionException {
         String current = null;
 
@@ -20891,8 +21073,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:7132:2: (iv_ruleLOWER= ruleLOWER EOF )
-            // InternalCompleteOCL.g:7133:2: iv_ruleLOWER= ruleLOWER EOF
+            // InternalCompleteOCL.g:7193:2: (iv_ruleLOWER= ruleLOWER EOF )
+            // InternalCompleteOCL.g:7194:2: iv_ruleLOWER= ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getLOWERRule());
@@ -20923,7 +21105,7 @@
 
 
     // $ANTLR start "ruleLOWER"
-    // InternalCompleteOCL.g:7140:1: ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
+    // InternalCompleteOCL.g:7201:1: ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
     public final AntlrDatatypeRuleToken ruleLOWER() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -20932,8 +21114,8 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:7143:28: (this_INT_0= RULE_INT )
-            // InternalCompleteOCL.g:7144:5: this_INT_0= RULE_INT
+            // InternalCompleteOCL.g:7204:28: (this_INT_0= RULE_INT )
+            // InternalCompleteOCL.g:7205:5: this_INT_0= RULE_INT
             {
             this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -20966,7 +21148,7 @@
 
 
     // $ANTLR start "entryRuleNUMBER_LITERAL"
-    // InternalCompleteOCL.g:7159:1: entryRuleNUMBER_LITERAL returns [String current=null] : iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF ;
+    // InternalCompleteOCL.g:7220:1: entryRuleNUMBER_LITERAL returns [String current=null] : iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF ;
     public final String entryRuleNUMBER_LITERAL() throws RecognitionException {
         String current = null;
 
@@ -20974,8 +21156,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:7160:2: (iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF )
-            // InternalCompleteOCL.g:7161:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF
+            // InternalCompleteOCL.g:7221:2: (iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF )
+            // InternalCompleteOCL.g:7222:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getNUMBER_LITERALRule());
@@ -21006,7 +21188,7 @@
 
 
     // $ANTLR start "ruleNUMBER_LITERAL"
-    // InternalCompleteOCL.g:7168:1: ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
+    // InternalCompleteOCL.g:7229:1: ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
     public final AntlrDatatypeRuleToken ruleNUMBER_LITERAL() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -21015,8 +21197,8 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:7171:28: (this_INT_0= RULE_INT )
-            // InternalCompleteOCL.g:7172:5: this_INT_0= RULE_INT
+            // InternalCompleteOCL.g:7232:28: (this_INT_0= RULE_INT )
+            // InternalCompleteOCL.g:7233:5: this_INT_0= RULE_INT
             {
             this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -21049,7 +21231,7 @@
 
 
     // $ANTLR start "entryRuleStringLiteral"
-    // InternalCompleteOCL.g:7187:1: entryRuleStringLiteral returns [String current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ;
+    // InternalCompleteOCL.g:7248:1: entryRuleStringLiteral returns [String current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ;
     public final String entryRuleStringLiteral() throws RecognitionException {
         String current = null;
 
@@ -21057,8 +21239,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:7188:2: (iv_ruleStringLiteral= ruleStringLiteral EOF )
-            // InternalCompleteOCL.g:7189:2: iv_ruleStringLiteral= ruleStringLiteral EOF
+            // InternalCompleteOCL.g:7249:2: (iv_ruleStringLiteral= ruleStringLiteral EOF )
+            // InternalCompleteOCL.g:7250:2: iv_ruleStringLiteral= ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getStringLiteralRule());
@@ -21089,7 +21271,7 @@
 
 
     // $ANTLR start "ruleStringLiteral"
-    // InternalCompleteOCL.g:7196:1: ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
+    // InternalCompleteOCL.g:7257:1: ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
     public final AntlrDatatypeRuleToken ruleStringLiteral() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -21098,8 +21280,8 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:7199:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
-            // InternalCompleteOCL.g:7200:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
+            // InternalCompleteOCL.g:7260:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
+            // InternalCompleteOCL.g:7261:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
             {
             this_SINGLE_QUOTED_STRING_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -21132,7 +21314,7 @@
 
 
     // $ANTLR start "entryRuleUPPER"
-    // InternalCompleteOCL.g:7215:1: entryRuleUPPER returns [String current=null] : iv_ruleUPPER= ruleUPPER EOF ;
+    // InternalCompleteOCL.g:7276:1: entryRuleUPPER returns [String current=null] : iv_ruleUPPER= ruleUPPER EOF ;
     public final String entryRuleUPPER() throws RecognitionException {
         String current = null;
 
@@ -21140,8 +21322,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:7216:2: (iv_ruleUPPER= ruleUPPER EOF )
-            // InternalCompleteOCL.g:7217:2: iv_ruleUPPER= ruleUPPER EOF
+            // InternalCompleteOCL.g:7277:2: (iv_ruleUPPER= ruleUPPER EOF )
+            // InternalCompleteOCL.g:7278:2: iv_ruleUPPER= ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getUPPERRule());
@@ -21172,7 +21354,7 @@
 
 
     // $ANTLR start "ruleUPPER"
-    // InternalCompleteOCL.g:7224:1: ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= '*' ) ;
+    // InternalCompleteOCL.g:7285:1: ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= '*' ) ;
     public final AntlrDatatypeRuleToken ruleUPPER() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -21182,29 +21364,29 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:7227:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
-            // InternalCompleteOCL.g:7228:1: (this_INT_0= RULE_INT | kw= '*' )
+            // InternalCompleteOCL.g:7288:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
+            // InternalCompleteOCL.g:7289:1: (this_INT_0= RULE_INT | kw= '*' )
             {
-            // InternalCompleteOCL.g:7228:1: (this_INT_0= RULE_INT | kw= '*' )
-            int alt130=2;
-            int LA130_0 = input.LA(1);
+            // InternalCompleteOCL.g:7289:1: (this_INT_0= RULE_INT | kw= '*' )
+            int alt131=2;
+            int LA131_0 = input.LA(1);
 
-            if ( (LA130_0==RULE_INT) ) {
-                alt130=1;
+            if ( (LA131_0==RULE_INT) ) {
+                alt131=1;
             }
-            else if ( (LA130_0==55) ) {
-                alt130=2;
+            else if ( (LA131_0==55) ) {
+                alt131=2;
             }
             else {
                 if (state.backtracking>0) {state.failed=true; return current;}
                 NoViableAltException nvae =
-                    new NoViableAltException("", 130, 0, input);
+                    new NoViableAltException("", 131, 0, input);
 
                 throw nvae;
             }
-            switch (alt130) {
+            switch (alt131) {
                 case 1 :
-                    // InternalCompleteOCL.g:7228:6: this_INT_0= RULE_INT
+                    // InternalCompleteOCL.g:7289:6: this_INT_0= RULE_INT
                     {
                     this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -21221,7 +21403,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalCompleteOCL.g:7237:2: kw= '*'
+                    // InternalCompleteOCL.g:7298:2: kw= '*'
                     {
                     kw=(Token)match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -21256,7 +21438,7 @@
 
 
     // $ANTLR start "entryRuleURI"
-    // InternalCompleteOCL.g:7250:1: entryRuleURI returns [String current=null] : iv_ruleURI= ruleURI EOF ;
+    // InternalCompleteOCL.g:7311:1: entryRuleURI returns [String current=null] : iv_ruleURI= ruleURI EOF ;
     public final String entryRuleURI() throws RecognitionException {
         String current = null;
 
@@ -21264,8 +21446,8 @@
 
 
         try {
-            // InternalCompleteOCL.g:7251:2: (iv_ruleURI= ruleURI EOF )
-            // InternalCompleteOCL.g:7252:2: iv_ruleURI= ruleURI EOF
+            // InternalCompleteOCL.g:7312:2: (iv_ruleURI= ruleURI EOF )
+            // InternalCompleteOCL.g:7313:2: iv_ruleURI= ruleURI EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getURIRule());
@@ -21296,7 +21478,7 @@
 
 
     // $ANTLR start "ruleURI"
-    // InternalCompleteOCL.g:7259:1: ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
+    // InternalCompleteOCL.g:7320:1: ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
     public final AntlrDatatypeRuleToken ruleURI() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -21305,8 +21487,8 @@
          enterRule();
 
         try {
-            // InternalCompleteOCL.g:7262:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
-            // InternalCompleteOCL.g:7263:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
+            // InternalCompleteOCL.g:7323:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
+            // InternalCompleteOCL.g:7324:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
             {
             this_SINGLE_QUOTED_STRING_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -21432,13 +21614,13 @@
         state._fsp--;
         if (state.failed) return ;
         // InternalCompleteOCL.g:4428:1: ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
-        int alt148=2;
-        int LA148_0 = input.LA(1);
+        int alt149=2;
+        int LA149_0 = input.LA(1);
 
-        if ( ((LA148_0>=17 && LA148_0<=18)||LA148_0==27||(LA148_0>=39 && LA148_0<=40)||LA148_0==52||(LA148_0>=55 && LA148_0<=72)) ) {
-            alt148=1;
+        if ( ((LA149_0>=17 && LA149_0<=18)||LA149_0==27||(LA149_0>=39 && LA149_0<=40)||LA149_0==52||(LA149_0>=55 && LA149_0<=72)) ) {
+            alt149=1;
         }
-        switch (alt148) {
+        switch (alt149) {
             case 1 :
                 // InternalCompleteOCL.g:4428:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) )
                 {
@@ -21618,7 +21800,7 @@
         // InternalCompleteOCL.g:5199:3: (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? )
         // InternalCompleteOCL.g:5199:5: otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )?
         {
-        otherlv_1=(Token)match(input,86,FollowSets000.FOLLOW_14); if (state.failed) return ;
+        otherlv_1=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return ;
         // InternalCompleteOCL.g:5203:1: ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) )
         // InternalCompleteOCL.g:5204:1: (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS )
         {
@@ -21630,7 +21812,7 @@
           	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_0_1_0());
 
         }
-        pushFollow(FollowSets000.FOLLOW_61);
+        pushFollow(FollowSets000.FOLLOW_60);
         lv_ownedCoIterator_2_0=ruleCoIteratorVariableCS();
 
         state._fsp--;
@@ -21642,13 +21824,13 @@
         }
 
         // InternalCompleteOCL.g:5221:2: (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )?
-        int alt153=2;
-        int LA153_0 = input.LA(1);
+        int alt154=2;
+        int LA154_0 = input.LA(1);
 
-        if ( (LA153_0==27) ) {
-            alt153=1;
+        if ( (LA154_0==27) ) {
+            alt154=1;
         }
-        switch (alt153) {
+        switch (alt154) {
             case 1 :
                 // InternalCompleteOCL.g:5221:4: otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) )
                 {
@@ -21707,7 +21889,7 @@
         // InternalCompleteOCL.g:5244:6: (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? )
         // InternalCompleteOCL.g:5244:8: otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )?
         {
-        otherlv_5=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return ;
+        otherlv_5=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return ;
         // InternalCompleteOCL.g:5248:1: ( (lv_ownedType_6_0= ruleTypeExpCS ) )
         // InternalCompleteOCL.g:5249:1: (lv_ownedType_6_0= ruleTypeExpCS )
         {
@@ -21719,7 +21901,7 @@
           	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_1_1_0());
 
         }
-        pushFollow(FollowSets000.FOLLOW_62);
+        pushFollow(FollowSets000.FOLLOW_61);
         lv_ownedType_6_0=ruleTypeExpCS();
 
         state._fsp--;
@@ -21731,17 +21913,17 @@
         }
 
         // InternalCompleteOCL.g:5266:2: (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )?
-        int alt154=2;
-        int LA154_0 = input.LA(1);
+        int alt155=2;
+        int LA155_0 = input.LA(1);
 
-        if ( (LA154_0==86) ) {
-            alt154=1;
+        if ( (LA155_0==86) ) {
+            alt155=1;
         }
-        switch (alt154) {
+        switch (alt155) {
             case 1 :
                 // InternalCompleteOCL.g:5266:4: otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) )
                 {
-                otherlv_7=(Token)match(input,86,FollowSets000.FOLLOW_14); if (state.failed) return ;
+                otherlv_7=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return ;
                 // InternalCompleteOCL.g:5270:1: ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) )
                 // InternalCompleteOCL.g:5271:1: (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS )
                 {
@@ -21753,7 +21935,7 @@
                   	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_1_2_1_0());
 
                 }
-                pushFollow(FollowSets000.FOLLOW_61);
+                pushFollow(FollowSets000.FOLLOW_60);
                 lv_ownedCoIterator_8_0=ruleCoIteratorVariableCS();
 
                 state._fsp--;
@@ -21771,13 +21953,13 @@
         }
 
         // InternalCompleteOCL.g:5288:4: (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )?
-        int alt155=2;
-        int LA155_0 = input.LA(1);
+        int alt156=2;
+        int LA156_0 = input.LA(1);
 
-        if ( (LA155_0==27) ) {
-            alt155=1;
+        if ( (LA156_0==27) ) {
+            alt156=1;
         }
-        switch (alt155) {
+        switch (alt156) {
             case 1 :
                 // InternalCompleteOCL.g:5288:6: otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) )
                 {
@@ -21837,17 +22019,17 @@
         // InternalCompleteOCL.g:5311:7: (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) )
         {
         // InternalCompleteOCL.g:5311:7: (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )?
-        int alt156=2;
-        int LA156_0 = input.LA(1);
+        int alt157=2;
+        int LA157_0 = input.LA(1);
 
-        if ( (LA156_0==23) ) {
-            alt156=1;
+        if ( (LA157_0==23) ) {
+            alt157=1;
         }
-        switch (alt156) {
+        switch (alt157) {
             case 1 :
                 // InternalCompleteOCL.g:5311:9: otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) )
                 {
-                otherlv_11=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return ;
+                otherlv_11=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return ;
                 // InternalCompleteOCL.g:5315:1: ( (lv_ownedType_12_0= ruleTypeExpCS ) )
                 // InternalCompleteOCL.g:5316:1: (lv_ownedType_12_0= ruleTypeExpCS )
                 {
@@ -21859,7 +22041,7 @@
                   	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_2_0_1_0());
 
                 }
-                pushFollow(FollowSets000.FOLLOW_63);
+                pushFollow(FollowSets000.FOLLOW_62);
                 lv_ownedType_12_0=ruleTypeExpCS();
 
                 state._fsp--;
@@ -21877,17 +22059,17 @@
         }
 
         // InternalCompleteOCL.g:5333:4: (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )?
-        int alt157=2;
-        int LA157_0 = input.LA(1);
+        int alt158=2;
+        int LA158_0 = input.LA(1);
 
-        if ( (LA157_0==86) ) {
-            alt157=1;
+        if ( (LA158_0==86) ) {
+            alt158=1;
         }
-        switch (alt157) {
+        switch (alt158) {
             case 1 :
                 // InternalCompleteOCL.g:5333:6: otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) )
                 {
-                otherlv_13=(Token)match(input,86,FollowSets000.FOLLOW_14); if (state.failed) return ;
+                otherlv_13=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return ;
                 // InternalCompleteOCL.g:5337:1: ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) )
                 // InternalCompleteOCL.g:5338:1: (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS )
                 {
@@ -21899,7 +22081,7 @@
                   	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_2_1_1_0());
 
                 }
-                pushFollow(FollowSets000.FOLLOW_64);
+                pushFollow(FollowSets000.FOLLOW_63);
                 lv_ownedCoIterator_14_0=ruleCoIteratorVariableCS();
 
                 state._fsp--;
@@ -21962,7 +22144,7 @@
         // InternalCompleteOCL.g:5552:3: (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )
         // InternalCompleteOCL.g:5552:5: otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
         {
-        otherlv_2=(Token)match(input,86,FollowSets000.FOLLOW_14); if (state.failed) return ;
+        otherlv_2=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return ;
         // InternalCompleteOCL.g:5556:1: ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) )
         // InternalCompleteOCL.g:5557:1: (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS )
         {
@@ -21974,7 +22156,7 @@
           	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_0_1_0());
 
         }
-        pushFollow(FollowSets000.FOLLOW_61);
+        pushFollow(FollowSets000.FOLLOW_60);
         lv_ownedCoIterator_3_0=ruleCoIteratorVariableCS();
 
         state._fsp--;
@@ -21986,13 +22168,13 @@
         }
 
         // InternalCompleteOCL.g:5574:2: (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
-        int alt165=2;
-        int LA165_0 = input.LA(1);
+        int alt166=2;
+        int LA166_0 = input.LA(1);
 
-        if ( (LA165_0==27) ) {
-            alt165=1;
+        if ( (LA166_0==27) ) {
+            alt166=1;
         }
-        switch (alt165) {
+        switch (alt166) {
             case 1 :
                 // InternalCompleteOCL.g:5574:4: otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                 {
@@ -22051,7 +22233,7 @@
         // InternalCompleteOCL.g:5597:6: (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? )
         // InternalCompleteOCL.g:5597:8: otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )?
         {
-        otherlv_6=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return ;
+        otherlv_6=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return ;
         // InternalCompleteOCL.g:5601:1: ( (lv_ownedType_7_0= ruleTypeExpCS ) )
         // InternalCompleteOCL.g:5602:1: (lv_ownedType_7_0= ruleTypeExpCS )
         {
@@ -22063,7 +22245,7 @@
           	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_1_0());
 
         }
-        pushFollow(FollowSets000.FOLLOW_62);
+        pushFollow(FollowSets000.FOLLOW_61);
         lv_ownedType_7_0=ruleTypeExpCS();
 
         state._fsp--;
@@ -22075,17 +22257,17 @@
         }
 
         // InternalCompleteOCL.g:5619:2: (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )?
-        int alt166=2;
-        int LA166_0 = input.LA(1);
+        int alt167=2;
+        int LA167_0 = input.LA(1);
 
-        if ( (LA166_0==86) ) {
-            alt166=1;
+        if ( (LA167_0==86) ) {
+            alt167=1;
         }
-        switch (alt166) {
+        switch (alt167) {
             case 1 :
                 // InternalCompleteOCL.g:5619:4: otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) )
                 {
-                otherlv_8=(Token)match(input,86,FollowSets000.FOLLOW_14); if (state.failed) return ;
+                otherlv_8=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return ;
                 // InternalCompleteOCL.g:5623:1: ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) )
                 // InternalCompleteOCL.g:5624:1: (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS )
                 {
@@ -22097,7 +22279,7 @@
                   	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_1_2_1_0());
 
                 }
-                pushFollow(FollowSets000.FOLLOW_61);
+                pushFollow(FollowSets000.FOLLOW_60);
                 lv_ownedCoIterator_9_0=ruleCoIteratorVariableCS();
 
                 state._fsp--;
@@ -22115,13 +22297,13 @@
         }
 
         // InternalCompleteOCL.g:5641:4: (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )?
-        int alt167=2;
-        int LA167_0 = input.LA(1);
+        int alt168=2;
+        int LA168_0 = input.LA(1);
 
-        if ( (LA167_0==27) ) {
-            alt167=1;
+        if ( (LA168_0==27) ) {
+            alt168=1;
         }
-        switch (alt167) {
+        switch (alt168) {
             case 1 :
                 // InternalCompleteOCL.g:5641:6: otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) )
                 {
@@ -22181,17 +22363,17 @@
         // InternalCompleteOCL.g:5664:7: (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) )
         {
         // InternalCompleteOCL.g:5664:7: (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )?
-        int alt168=2;
-        int LA168_0 = input.LA(1);
+        int alt169=2;
+        int LA169_0 = input.LA(1);
 
-        if ( (LA168_0==23) ) {
-            alt168=1;
+        if ( (LA169_0==23) ) {
+            alt169=1;
         }
-        switch (alt168) {
+        switch (alt169) {
             case 1 :
                 // InternalCompleteOCL.g:5664:9: otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) )
                 {
-                otherlv_12=(Token)match(input,23,FollowSets000.FOLLOW_20); if (state.failed) return ;
+                otherlv_12=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return ;
                 // InternalCompleteOCL.g:5668:1: ( (lv_ownedType_13_0= ruleTypeExpCS ) )
                 // InternalCompleteOCL.g:5669:1: (lv_ownedType_13_0= ruleTypeExpCS )
                 {
@@ -22203,7 +22385,7 @@
                   	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_2_0_1_0());
 
                 }
-                pushFollow(FollowSets000.FOLLOW_63);
+                pushFollow(FollowSets000.FOLLOW_62);
                 lv_ownedType_13_0=ruleTypeExpCS();
 
                 state._fsp--;
@@ -22221,17 +22403,17 @@
         }
 
         // InternalCompleteOCL.g:5686:4: (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )?
-        int alt169=2;
-        int LA169_0 = input.LA(1);
+        int alt170=2;
+        int LA170_0 = input.LA(1);
 
-        if ( (LA169_0==86) ) {
-            alt169=1;
+        if ( (LA170_0==86) ) {
+            alt170=1;
         }
-        switch (alt169) {
+        switch (alt170) {
             case 1 :
                 // InternalCompleteOCL.g:5686:6: otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) )
                 {
-                otherlv_14=(Token)match(input,86,FollowSets000.FOLLOW_14); if (state.failed) return ;
+                otherlv_14=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return ;
                 // InternalCompleteOCL.g:5690:1: ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) )
                 // InternalCompleteOCL.g:5691:1: (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS )
                 {
@@ -22243,7 +22425,7 @@
                   	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_2_1_1_0());
 
                 }
-                pushFollow(FollowSets000.FOLLOW_64);
+                pushFollow(FollowSets000.FOLLOW_63);
                 lv_ownedCoIterator_15_0=ruleCoIteratorVariableCS();
 
                 state._fsp--;
@@ -23151,81 +23333,80 @@
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x0000000870080002L});
         public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000800080002L});
-        public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000008070200060L});
+        public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x000FFC8070200060L,0x000000000001F600L});
         public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000003100000L});
         public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000070800060L});
         public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000003100002L});
         public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x00FFFC80702001F0L,0x000000C207A1F600L});
+        public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x00FFFC00702001F0L,0x000000C207A1F600L});
         public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000400000L});
         public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000800000L});
         public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000002000000L});
-        public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000070000060L});
-        public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000070400060L});
-        public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000004400000L});
-        public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x000FFC8078200060L,0x000000000001F600L});
-        public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x000FFC8070200060L,0x000000000001F600L});
-        public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000070000160L});
-        public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000080000002L});
-        public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x000FFC8070600060L,0x000000000001F600L});
-        public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x000FFC8770200062L,0x000000000001F600L});
-        public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000000700000002L});
-        public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000001800180000L});
-        public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000001800080000L});
-        public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000006000000002L});
-        public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000010004000000L});
-        public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000800L});
-        public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x000FFC0070000060L,0x000000000001F600L});
+        public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000008070200060L});
+        public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000070000060L});
+        public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000000200000L});
+        public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000070400060L});
+        public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000004400000L});
+        public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x00FFFC00782001E0L,0x0000008207A1F600L});
+        public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x00FFFC00702001E0L,0x0000008207A1F600L});
+        public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000070000160L});
+        public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000080000002L});
+        public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x00FFFC00706001E0L,0x0000008207A1F600L});
+        public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x00FFFC07702001E2L,0x0000008207A1F600L});
+        public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000700000002L});
+        public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000001800180000L});
+        public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000001800080000L});
+        public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000006000000002L});
+        public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0000010004000000L});
+        public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000800L});
         public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000000000200002L});
         public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000000000400000L,0x0000000010000000L});
         public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000000004000000L});
         public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0000000000000000L,0x0000000000020000L});
-        public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x00FFFC8070A001E0L,0x000000C207A5F600L});
+        public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x00FFFC0070A001E0L,0x000000C207A5F600L});
         public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000000004000000L,0x0000000000040000L});
-        public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x00FFFC8070A001E0L,0x000000C207A1F600L});
+        public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x00FFFC0070A001E0L,0x000000C207A1F600L});
         public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0000000000000002L,0x0000000000080000L});
-        public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x00FFFC80702001E0L,0x000000C207A1F600L});
+        public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x00FFFC00702001E0L,0x000000C207A1F600L});
         public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x0000000004000000L,0x0000000000100000L});
         public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x0000000000000060L});
         public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0000000000000000L,0x0000000000040000L});
-        public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x00FFFC80702001E0L,0x000000C207A5F600L});
+        public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x00FFFC00702001E0L,0x000000C207A5F600L});
         public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x0000000000000000L,0x0000000000400000L});
         public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x0000000008800000L});
         public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x0000000000000102L});
         public static final BitSet FOLLOW_48 = new BitSet(new long[]{0x0000000000000002L,0x0000000010000000L});
         public static final BitSet FOLLOW_49 = new BitSet(new long[]{0x0000000000000002L,0x0000000000020000L});
         public static final BitSet FOLLOW_50 = new BitSet(new long[]{0xFF90018008060002L,0x00000000000001FFL});
-        public static final BitSet FOLLOW_51 = new BitSet(new long[]{0x00FFFC80702001E0L,0x0000008207A1F600L});
-        public static final BitSet FOLLOW_52 = new BitSet(new long[]{0x0000000000200002L,0x0000000018020000L});
-        public static final BitSet FOLLOW_53 = new BitSet(new long[]{0x0000000000000002L,0x0000000008020000L});
-        public static final BitSet FOLLOW_54 = new BitSet(new long[]{0x0000000000000002L,0x0000000008000000L});
-        public static final BitSet FOLLOW_55 = new BitSet(new long[]{0x0000000100000000L});
-        public static final BitSet FOLLOW_56 = new BitSet(new long[]{0x0000000070000160L,0x0000000000040000L});
-        public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x00FFFE8070E001E0L,0x000000C207A1F600L});
-        public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x0000000004400000L,0x0000000180000000L});
-        public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x0000000004000000L,0x0000000020000000L});
-        public static final BitSet FOLLOW_60 = new BitSet(new long[]{0x0000000000800002L,0x0000000040400000L});
-        public static final BitSet FOLLOW_61 = new BitSet(new long[]{0x0000000008000002L});
-        public static final BitSet FOLLOW_62 = new BitSet(new long[]{0x0000000008000002L,0x0000000000400000L});
-        public static final BitSet FOLLOW_63 = new BitSet(new long[]{0x0000000000000000L,0x0000000040400000L});
-        public static final BitSet FOLLOW_64 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L});
-        public static final BitSet FOLLOW_65 = new BitSet(new long[]{0x00FFFE80702001E0L,0x000000C207A1F600L});
-        public static final BitSet FOLLOW_66 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_67 = new BitSet(new long[]{0x0000000000000000L,0x0000000400000000L});
-        public static final BitSet FOLLOW_68 = new BitSet(new long[]{0x0000000000000000L,0x0000002800000000L});
-        public static final BitSet FOLLOW_69 = new BitSet(new long[]{0x0000000000000000L,0x0000001000000000L});
-        public static final BitSet FOLLOW_70 = new BitSet(new long[]{0x0000000004000000L,0x0000000040000000L});
-        public static final BitSet FOLLOW_71 = new BitSet(new long[]{0x0000000008A00000L});
-        public static final BitSet FOLLOW_72 = new BitSet(new long[]{0x0080000000000080L});
-        public static final BitSet FOLLOW_73 = new BitSet(new long[]{0x0280020000000080L});
-        public static final BitSet FOLLOW_74 = new BitSet(new long[]{0x0000000000000000L,0x0000030020000000L});
-        public static final BitSet FOLLOW_75 = new BitSet(new long[]{0x0000000000000000L,0x0000000020000000L});
-        public static final BitSet FOLLOW_76 = new BitSet(new long[]{0x0000000004000002L,0x0000000010000000L});
-        public static final BitSet FOLLOW_77 = new BitSet(new long[]{0x000FFE8070200060L,0x000000000001F600L});
-        public static final BitSet FOLLOW_78 = new BitSet(new long[]{0x0000000000000002L,0x0000040000000000L});
-        public static final BitSet FOLLOW_79 = new BitSet(new long[]{0x0000000000000002L,0x0000080000000000L});
+        public static final BitSet FOLLOW_51 = new BitSet(new long[]{0x0000000000200002L,0x0000000018020000L});
+        public static final BitSet FOLLOW_52 = new BitSet(new long[]{0x0000000000000002L,0x0000000008020000L});
+        public static final BitSet FOLLOW_53 = new BitSet(new long[]{0x0000000000000002L,0x0000000008000000L});
+        public static final BitSet FOLLOW_54 = new BitSet(new long[]{0x0000000100000000L});
+        public static final BitSet FOLLOW_55 = new BitSet(new long[]{0x0000000070000160L,0x0000000000040000L});
+        public static final BitSet FOLLOW_56 = new BitSet(new long[]{0x00FFFE0070E001E0L,0x000000C207A1F600L});
+        public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x0000000004400000L,0x0000000180000000L});
+        public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x0000000004000000L,0x0000000020000000L});
+        public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x0000000000800002L,0x0000000040400000L});
+        public static final BitSet FOLLOW_60 = new BitSet(new long[]{0x0000000008000002L});
+        public static final BitSet FOLLOW_61 = new BitSet(new long[]{0x0000000008000002L,0x0000000000400000L});
+        public static final BitSet FOLLOW_62 = new BitSet(new long[]{0x0000000000000000L,0x0000000040400000L});
+        public static final BitSet FOLLOW_63 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L});
+        public static final BitSet FOLLOW_64 = new BitSet(new long[]{0x00FFFE00702001E0L,0x000000C207A1F600L});
+        public static final BitSet FOLLOW_65 = new BitSet(new long[]{0x0000000000800002L});
+        public static final BitSet FOLLOW_66 = new BitSet(new long[]{0x0000000000000000L,0x0000000400000000L});
+        public static final BitSet FOLLOW_67 = new BitSet(new long[]{0x0000000000000000L,0x0000002800000000L});
+        public static final BitSet FOLLOW_68 = new BitSet(new long[]{0x0000000000000000L,0x0000001000000000L});
+        public static final BitSet FOLLOW_69 = new BitSet(new long[]{0x0000000004000000L,0x0000000040000000L});
+        public static final BitSet FOLLOW_70 = new BitSet(new long[]{0x0000000008A00000L});
+        public static final BitSet FOLLOW_71 = new BitSet(new long[]{0x0080000000000080L});
+        public static final BitSet FOLLOW_72 = new BitSet(new long[]{0x0280020000000080L});
+        public static final BitSet FOLLOW_73 = new BitSet(new long[]{0x0000000000000000L,0x0000030020000000L});
+        public static final BitSet FOLLOW_74 = new BitSet(new long[]{0x0000000000000000L,0x0000000020000000L});
+        public static final BitSet FOLLOW_75 = new BitSet(new long[]{0x0000000004000002L,0x0000000010000000L});
+        public static final BitSet FOLLOW_76 = new BitSet(new long[]{0x00FFFE00702001E0L,0x0000008207A1F600L});
+        public static final BitSet FOLLOW_77 = new BitSet(new long[]{0x0000000000000002L,0x0000040000000000L});
+        public static final BitSet FOLLOW_78 = new BitSet(new long[]{0x0000000000000002L,0x0000080000000000L});
     }
 
 
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/serializer/AbstractCompleteOCLSemanticSequencer.java b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/serializer/AbstractCompleteOCLSemanticSequencer.java
index da38d48..10de139 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/serializer/AbstractCompleteOCLSemanticSequencer.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/serializer/AbstractCompleteOCLSemanticSequencer.java
@@ -167,6 +167,10 @@
 					sequence_URIPathNameCS(context, (PathNameCS) semanticObject);
 					return;
 				}
+				else if (rule == grammarAccess.getUnreservedPathNameCSRule()) {
+					sequence_UnreservedPathNameCS(context, (PathNameCS) semanticObject);
+					return;
+				}
 				else break;
 			case BaseCSPackage.PRIMITIVE_TYPE_REF_CS:
 				if (rule == grammarAccess.getTypedRefCSRule()
@@ -451,7 +455,7 @@
 	 *     (
 	 *         ownedSignature=TemplateSignatureCS?
 	 *         selfName=UnrestrictedName?
-	 *         ownedPathName=PathNameCS
+	 *         ownedPathName=UnreservedPathNameCS
 	 *         (ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+
 	 *     )
 	 */
@@ -570,7 +574,7 @@
 	 * Constraint:
 	 *     (
 	 *         ownedSignature=TemplateSignatureCS?
-	 *         ownedPathName=PathNameCS
+	 *         ownedPathName=UnreservedPathNameCS
 	 *         (ownedParameters+=ParameterCS ownedParameters+=ParameterCS*)?
 	 *         ownedType=TypeExpCS?
 	 *         (ownedPreconditions+=ConstraintCS | ownedPostconditions+=ConstraintCS | ownedBodies+=SpecificationCS)*
@@ -586,7 +590,7 @@
 	 *     PackageDeclarationCS returns PackageDeclarationCS
 	 *
 	 * Constraint:
-	 *     (ownedPathName=PathNameCS ownedInvariants+=ConstraintCS* ownedContexts+=ContextDeclCS*)
+	 *     (ownedPathName=UnreservedPathNameCS ownedInvariants+=ConstraintCS* ownedContexts+=ContextDeclCS*)
 	 */
 	protected void sequence_PackageDeclarationCS(ISerializationContext context, PackageDeclarationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
@@ -611,7 +615,7 @@
 	 *     PropertyContextDeclCS returns PropertyContextDeclCS
 	 *
 	 * Constraint:
-	 *     (ownedPathName=PathNameCS ownedType=TypeExpCS (ownedDefaultExpressions+=SpecificationCS | ownedDefaultExpressions+=SpecificationCS)*)
+	 *     (ownedPathName=UnreservedPathNameCS ownedType=TypeExpCS (ownedDefaultExpressions+=SpecificationCS | ownedDefaultExpressions+=SpecificationCS)*)
 	 */
 	protected void sequence_PropertyContextDeclCS(ISerializationContext context, PropertyContextDeclCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/serializer/AbstractCompleteOCLSyntacticSequencer.java b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/serializer/AbstractCompleteOCLSyntacticSequencer.java
index 79e543a..bdc39f1 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/serializer/AbstractCompleteOCLSyntacticSequencer.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/serializer/AbstractCompleteOCLSyntacticSequencer.java
@@ -159,7 +159,7 @@
 	 * This ambiguous syntax occurs at:
 	 *     ownedBodies+=SpecificationCS 'body' (ambiguity) ':' ownedBodies+=SpecificationCS
 	 *     ownedParameters+=ParameterCS ')' ':' 'body' (ambiguity) ':' ownedBodies+=SpecificationCS
-	 *     ownedPathName=PathNameCS '(' ')' ':' 'body' (ambiguity) ':' ownedBodies+=SpecificationCS
+	 *     ownedPathName=UnreservedPathNameCS '(' ')' ':' 'body' (ambiguity) ':' ownedBodies+=SpecificationCS
 	 *     ownedPostconditions+=ConstraintCS 'body' (ambiguity) ':' ownedBodies+=SpecificationCS
 	 *     ownedPreconditions+=ConstraintCS 'body' (ambiguity) ':' ownedBodies+=SpecificationCS
 	 *     ownedType=TypeExpCS 'body' (ambiguity) ':' ownedBodies+=SpecificationCS
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/services/CompleteOCLGrammarAccess.java b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/services/CompleteOCLGrammarAccess.java
index bb98da5..f4a915a 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/services/CompleteOCLGrammarAccess.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/services/CompleteOCLGrammarAccess.java
@@ -103,7 +103,7 @@
 		private final Assignment cSelfNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cSelfNameUnrestrictedNameParserRuleCall_2_0 = (RuleCall)cSelfNameAssignment_2.eContents().get(0);
 		private final Assignment cOwnedPathNameAssignment_3 = (Assignment)cGroup.eContents().get(3);
-		private final RuleCall cOwnedPathNamePathNameCSParserRuleCall_3_0 = (RuleCall)cOwnedPathNameAssignment_3.eContents().get(0);
+		private final RuleCall cOwnedPathNameUnreservedPathNameCSParserRuleCall_3_0 = (RuleCall)cOwnedPathNameAssignment_3.eContents().get(0);
 		private final Alternatives cAlternatives_4 = (Alternatives)cGroup.eContents().get(4);
 		private final Group cGroup_4_0 = (Group)cAlternatives_4.eContents().get(0);
 		private final Keyword cInvKeyword_4_0_0 = (Keyword)cGroup_4_0.eContents().get(0);
@@ -114,11 +114,11 @@
 
 		//ClassifierContextDeclCS:
 		//	'context' ownedSignature=TemplateSignatureCS? selfName=UnrestrictedName?
-		//	ownedPathName=PathNameCS ('inv' ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+;
+		//	ownedPathName=UnreservedPathNameCS ('inv' ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+;
 		@Override public ParserRule getRule() { return rule; }
 
 		//'context' ownedSignature=TemplateSignatureCS? selfName=UnrestrictedName?
-		//ownedPathName=PathNameCS ('inv' ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+
+		//ownedPathName=UnreservedPathNameCS ('inv' ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+
 		public Group getGroup() { return cGroup; }
 
 		//'context'
@@ -136,11 +136,11 @@
 		//UnrestrictedName
 		public RuleCall getSelfNameUnrestrictedNameParserRuleCall_2_0() { return cSelfNameUnrestrictedNameParserRuleCall_2_0; }
 
-		//ownedPathName=PathNameCS
+		//ownedPathName=UnreservedPathNameCS
 		public Assignment getOwnedPathNameAssignment_3() { return cOwnedPathNameAssignment_3; }
 
-		//PathNameCS
-		public RuleCall getOwnedPathNamePathNameCSParserRuleCall_3_0() { return cOwnedPathNamePathNameCSParserRuleCall_3_0; }
+		//UnreservedPathNameCS
+		public RuleCall getOwnedPathNameUnreservedPathNameCSParserRuleCall_3_0() { return cOwnedPathNameUnreservedPathNameCSParserRuleCall_3_0; }
 
 		//('inv' ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+
 		public Alternatives getAlternatives_4() { return cAlternatives_4; }
@@ -189,7 +189,8 @@
 		// * expression to be evaluated to provide an error message.
 		// */
 		//ConstraintCS base::ConstraintCS:
-		//	(name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS ')')?)? ':' ownedSpecification=SpecificationCS;
+		//	(name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS ')')?)? ':' ownedSpecification=SpecificationCS
+		//;
 		@Override public ParserRule getRule() { return rule; }
 
 		//(name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS ')')?)? ':' ownedSpecification=SpecificationCS
@@ -582,7 +583,7 @@
 		private final Assignment cOwnedSignatureAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final RuleCall cOwnedSignatureTemplateSignatureCSParserRuleCall_1_0 = (RuleCall)cOwnedSignatureAssignment_1.eContents().get(0);
 		private final Assignment cOwnedPathNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
-		private final RuleCall cOwnedPathNamePathNameCSParserRuleCall_2_0 = (RuleCall)cOwnedPathNameAssignment_2.eContents().get(0);
+		private final RuleCall cOwnedPathNameUnreservedPathNameCSParserRuleCall_2_0 = (RuleCall)cOwnedPathNameAssignment_2.eContents().get(0);
 		private final Keyword cLeftParenthesisKeyword_3 = (Keyword)cGroup.eContents().get(3);
 		private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
 		private final Assignment cOwnedParametersAssignment_4_0 = (Assignment)cGroup_4.eContents().get(0);
@@ -628,13 +629,13 @@
 		// * For compatibility with invariants the body expression may have a name that is never used.
 		// */
 		//OperationContextDeclCS:
-		//	'context' ownedSignature=TemplateSignatureCS? ownedPathName=PathNameCS
+		//	'context' ownedSignature=TemplateSignatureCS? ownedPathName=UnreservedPathNameCS
 		//	'(' (ownedParameters+=ParameterCS (',' ownedParameters+=ParameterCS)*)? ')' ':' ownedType=TypeExpCS? ('pre'
 		//	ownedPreconditions+=ConstraintCS | 'post' ownedPostconditions+=ConstraintCS | 'body' UnrestrictedName? ':'
 		//	ownedBodies+=SpecificationCS)*;
 		@Override public ParserRule getRule() { return rule; }
 
-		//'context' ownedSignature=TemplateSignatureCS? ownedPathName=PathNameCS
+		//'context' ownedSignature=TemplateSignatureCS? ownedPathName=UnreservedPathNameCS
 		//'(' (ownedParameters+=ParameterCS (',' ownedParameters+=ParameterCS)*)? ')' ':' ownedType=TypeExpCS? ('pre'
 		//ownedPreconditions+=ConstraintCS | 'post' ownedPostconditions+=ConstraintCS | 'body' UnrestrictedName? ':'
 		//ownedBodies+=SpecificationCS)*
@@ -649,11 +650,11 @@
 		//TemplateSignatureCS
 		public RuleCall getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0() { return cOwnedSignatureTemplateSignatureCSParserRuleCall_1_0; }
 
-		//ownedPathName=PathNameCS
+		//ownedPathName=UnreservedPathNameCS
 		public Assignment getOwnedPathNameAssignment_2() { return cOwnedPathNameAssignment_2; }
 
-		//PathNameCS
-		public RuleCall getOwnedPathNamePathNameCSParserRuleCall_2_0() { return cOwnedPathNamePathNameCSParserRuleCall_2_0; }
+		//UnreservedPathNameCS
+		public RuleCall getOwnedPathNameUnreservedPathNameCSParserRuleCall_2_0() { return cOwnedPathNameUnreservedPathNameCSParserRuleCall_2_0; }
 
 		//'('
 		public Keyword getLeftParenthesisKeyword_3() { return cLeftParenthesisKeyword_3; }
@@ -743,7 +744,7 @@
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Keyword cPackageKeyword_0 = (Keyword)cGroup.eContents().get(0);
 		private final Assignment cOwnedPathNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cOwnedPathNamePathNameCSParserRuleCall_1_0 = (RuleCall)cOwnedPathNameAssignment_1.eContents().get(0);
+		private final RuleCall cOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0 = (RuleCall)cOwnedPathNameAssignment_1.eContents().get(0);
 		private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
 		private final Keyword cInvKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
 		private final Assignment cOwnedInvariantsAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
@@ -753,21 +754,22 @@
 		private final Keyword cEndpackageKeyword_4 = (Keyword)cGroup.eContents().get(4);
 
 		//PackageDeclarationCS:
-		//	'package' ownedPathName=PathNameCS ('inv' ownedInvariants+=ConstraintCS)* ownedContexts+=ContextDeclCS* 'endpackage'
-		//;
+		//	'package' ownedPathName=UnreservedPathNameCS ('inv' ownedInvariants+=ConstraintCS)* ownedContexts+=ContextDeclCS*
+		//	'endpackage';
 		@Override public ParserRule getRule() { return rule; }
 
-		//'package' ownedPathName=PathNameCS ('inv' ownedInvariants+=ConstraintCS)* ownedContexts+=ContextDeclCS* 'endpackage'
+		//'package' ownedPathName=UnreservedPathNameCS ('inv' ownedInvariants+=ConstraintCS)* ownedContexts+=ContextDeclCS*
+		//'endpackage'
 		public Group getGroup() { return cGroup; }
 
 		//'package'
 		public Keyword getPackageKeyword_0() { return cPackageKeyword_0; }
 
-		//ownedPathName=PathNameCS
+		//ownedPathName=UnreservedPathNameCS
 		public Assignment getOwnedPathNameAssignment_1() { return cOwnedPathNameAssignment_1; }
 
-		//PathNameCS
-		public RuleCall getOwnedPathNamePathNameCSParserRuleCall_1_0() { return cOwnedPathNamePathNameCSParserRuleCall_1_0; }
+		//UnreservedPathNameCS
+		public RuleCall getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0() { return cOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0; }
 
 		//('inv' ownedInvariants+=ConstraintCS)*
 		public Group getGroup_2() { return cGroup_2; }
@@ -832,7 +834,7 @@
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Keyword cContextKeyword_0 = (Keyword)cGroup.eContents().get(0);
 		private final Assignment cOwnedPathNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cOwnedPathNamePathNameCSParserRuleCall_1_0 = (RuleCall)cOwnedPathNameAssignment_1.eContents().get(0);
+		private final RuleCall cOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0 = (RuleCall)cOwnedPathNameAssignment_1.eContents().get(0);
 		private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
 		private final Assignment cOwnedTypeAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cOwnedTypeTypeExpCSParserRuleCall_3_0 = (RuleCall)cOwnedTypeAssignment_3.eContents().get(0);
@@ -874,22 +876,22 @@
 		// * NB. RoyalAndLoyal gratuitously names its derived values.
 		// */
 		//PropertyContextDeclCS:
-		//	'context' ownedPathName=PathNameCS ':' ownedType=TypeExpCS ('derive' UnrestrictedName? ':'
+		//	'context' ownedPathName=UnreservedPathNameCS ':' ownedType=TypeExpCS ('derive' UnrestrictedName? ':'
 		//	ownedDefaultExpressions+=SpecificationCS | 'init' UnrestrictedName? ':' ownedDefaultExpressions+=SpecificationCS)*;
 		@Override public ParserRule getRule() { return rule; }
 
-		//'context' ownedPathName=PathNameCS ':' ownedType=TypeExpCS ('derive' UnrestrictedName? ':'
+		//'context' ownedPathName=UnreservedPathNameCS ':' ownedType=TypeExpCS ('derive' UnrestrictedName? ':'
 		//ownedDefaultExpressions+=SpecificationCS | 'init' UnrestrictedName? ':' ownedDefaultExpressions+=SpecificationCS)*
 		public Group getGroup() { return cGroup; }
 
 		//'context'
 		public Keyword getContextKeyword_0() { return cContextKeyword_0; }
 
-		//ownedPathName=PathNameCS
+		//ownedPathName=UnreservedPathNameCS
 		public Assignment getOwnedPathNameAssignment_1() { return cOwnedPathNameAssignment_1; }
 
-		//PathNameCS
-		public RuleCall getOwnedPathNamePathNameCSParserRuleCall_1_0() { return cOwnedPathNamePathNameCSParserRuleCall_1_0; }
+		//UnreservedPathNameCS
+		public RuleCall getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0() { return cOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0; }
 
 		//':'
 		public Keyword getColonKeyword_2() { return cColonKeyword_2; }
@@ -1380,7 +1382,7 @@
 
 	//ClassifierContextDeclCS:
 	//	'context' ownedSignature=TemplateSignatureCS? selfName=UnrestrictedName?
-	//	ownedPathName=PathNameCS ('inv' ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+;
+	//	ownedPathName=UnreservedPathNameCS ('inv' ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+;
 	public ClassifierContextDeclCSElements getClassifierContextDeclCSAccess() {
 		return pClassifierContextDeclCS;
 	}
@@ -1399,7 +1401,8 @@
 	// * expression to be evaluated to provide an error message.
 	// */
 	//ConstraintCS base::ConstraintCS:
-	//	(name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS ')')?)? ':' ownedSpecification=SpecificationCS;
+	//	(name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS ')')?)? ':' ownedSpecification=SpecificationCS
+	//;
 	public ConstraintCSElements getConstraintCSAccess() {
 		return pConstraintCS;
 	}
@@ -1517,7 +1520,7 @@
 	// * For compatibility with invariants the body expression may have a name that is never used.
 	// */
 	//OperationContextDeclCS:
-	//	'context' ownedSignature=TemplateSignatureCS? ownedPathName=PathNameCS
+	//	'context' ownedSignature=TemplateSignatureCS? ownedPathName=UnreservedPathNameCS
 	//	'(' (ownedParameters+=ParameterCS (',' ownedParameters+=ParameterCS)*)? ')' ':' ownedType=TypeExpCS? ('pre'
 	//	ownedPreconditions+=ConstraintCS | 'post' ownedPostconditions+=ConstraintCS | 'body' UnrestrictedName? ':'
 	//	ownedBodies+=SpecificationCS)*;
@@ -1530,8 +1533,8 @@
 	}
 
 	//PackageDeclarationCS:
-	//	'package' ownedPathName=PathNameCS ('inv' ownedInvariants+=ConstraintCS)* ownedContexts+=ContextDeclCS* 'endpackage'
-	//;
+	//	'package' ownedPathName=UnreservedPathNameCS ('inv' ownedInvariants+=ConstraintCS)* ownedContexts+=ContextDeclCS*
+	//	'endpackage';
 	public PackageDeclarationCSElements getPackageDeclarationCSAccess() {
 		return pPackageDeclarationCS;
 	}
@@ -1574,7 +1577,7 @@
 	// * NB. RoyalAndLoyal gratuitously names its derived values.
 	// */
 	//PropertyContextDeclCS:
-	//	'context' ownedPathName=PathNameCS ':' ownedType=TypeExpCS ('derive' UnrestrictedName? ':'
+	//	'context' ownedPathName=UnreservedPathNameCS ':' ownedType=TypeExpCS ('derive' UnrestrictedName? ':'
 	//	ownedDefaultExpressions+=SpecificationCS | 'init' UnrestrictedName? ':' ownedDefaultExpressions+=SpecificationCS)*;
 	public PropertyContextDeclCSElements getPropertyContextDeclCSAccess() {
 		return pPropertyContextDeclCS;
@@ -1881,8 +1884,8 @@
 	}
 
 	//CollectionTypeCS:
-	//	name=CollectionTypeIdentifier ('(' ownedType=TypeExpWithoutMultiplicityCS ownedCollectionMultiplicity=MultiplicityCS?
-	//	')')?;
+	//	name=CollectionTypeIdentifier ('(' ownedType=TypeExpWithoutMultiplicityCS ownedCollectionMultiplicity=MultiplicityCS
+	//	? ')')?;
 	public EssentialOCLGrammarAccess.CollectionTypeCSElements getCollectionTypeCSAccess() {
 		return gaEssentialOCL.getCollectionTypeCSAccess();
 	}
@@ -2461,6 +2464,16 @@
 		return getPathNameCSAccess().getRule();
 	}
 
+	//UnreservedPathNameCS PathNameCS:
+	//	ownedPathElements+=NextPathElementCS ('::' ownedPathElements+=NextPathElementCS)*;
+	public BaseGrammarAccess.UnreservedPathNameCSElements getUnreservedPathNameCSAccess() {
+		return gaBase.getUnreservedPathNameCSAccess();
+	}
+
+	public ParserRule getUnreservedPathNameCSRule() {
+		return getUnreservedPathNameCSAccess().getRule();
+	}
+
 	//FirstPathElementCS PathElementCS:
 	//	referredElement=[pivot::NamedElement|super::UnrestrictedName];
 	public BaseGrammarAccess.FirstPathElementCSElements getFirstPathElementCSAccess() {
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/EssentialOCLParser.java b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/EssentialOCLParser.java
index 14ae7b0..656f219 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/EssentialOCLParser.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/EssentialOCLParser.java
@@ -168,6 +168,8 @@
 					put(grammarAccess.getMultiplicityCSAccess().getGroup(), "rule__MultiplicityCS__Group__0");
 					put(grammarAccess.getPathNameCSAccess().getGroup(), "rule__PathNameCS__Group__0");
 					put(grammarAccess.getPathNameCSAccess().getGroup_1(), "rule__PathNameCS__Group_1__0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getGroup(), "rule__UnreservedPathNameCS__Group__0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getGroup_1(), "rule__UnreservedPathNameCS__Group_1__0");
 					put(grammarAccess.getTemplateBindingCSAccess().getGroup(), "rule__TemplateBindingCS__Group__0");
 					put(grammarAccess.getTemplateBindingCSAccess().getGroup_1(), "rule__TemplateBindingCS__Group_1__0");
 					put(grammarAccess.getTemplateSignatureCSAccess().getGroup(), "rule__TemplateSignatureCS__Group__0");
@@ -300,6 +302,8 @@
 					put(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment(), "rule__MultiplicityStringCS__StringBoundsAssignment");
 					put(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0(), "rule__PathNameCS__OwnedPathElementsAssignment_0");
 					put(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1(), "rule__PathNameCS__OwnedPathElementsAssignment_1_1");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_0(), "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_1_1(), "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1");
 					put(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment(), "rule__FirstPathElementCS__ReferredElementAssignment");
 					put(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment(), "rule__NextPathElementCS__ReferredElementAssignment");
 					put(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0(), "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0");
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/internal/InternalEssentialOCL.g b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/internal/InternalEssentialOCL.g
index d9599a9..247608f 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/internal/InternalEssentialOCL.g
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/internal/InternalEssentialOCL.g
@@ -1953,6 +1953,8 @@
 
 
 
+
+
 // Entry rule entryRuleFirstPathElementCS
 entryRuleFirstPathElementCS
 :
@@ -11341,6 +11343,8 @@
 
 
 
+
+
 rule__TemplateBindingCS__Group__0
     @init {
 		int stackSize = keepStackSize();
@@ -13894,6 +13898,8 @@
 	restoreStackSize(stackSize);
 }
 
+
+
 rule__FirstPathElementCS__ReferredElementAssignment
     @init {
 		int stackSize = keepStackSize();
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/internal/InternalEssentialOCLLexer.java b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/internal/InternalEssentialOCLLexer.java
index 19cfb55..3531909 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/internal/InternalEssentialOCLLexer.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/internal/InternalEssentialOCLLexer.java
@@ -1638,8 +1638,8 @@
     // $ANTLR start "RULE_ESCAPED_CHARACTER"
     public final void mRULE_ESCAPED_CHARACTER() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:14088:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
-            // InternalEssentialOCL.g:14088:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+            // InternalEssentialOCL.g:14094:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
+            // InternalEssentialOCL.g:14094:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
             match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -1663,8 +1663,8 @@
     // $ANTLR start "RULE_LETTER_CHARACTER"
     public final void mRULE_LETTER_CHARACTER() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:14090:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
-            // InternalEssentialOCL.g:14090:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
+            // InternalEssentialOCL.g:14096:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
+            // InternalEssentialOCL.g:14096:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
             {
             if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
                 input.consume();
@@ -1689,11 +1689,11 @@
         try {
             int _type = RULE_DOUBLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:14092:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
-            // InternalEssentialOCL.g:14092:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+            // InternalEssentialOCL.g:14098:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
+            // InternalEssentialOCL.g:14098:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
             match('\"');
-            // InternalEssentialOCL.g:14092:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
+            // InternalEssentialOCL.g:14098:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
                 int alt1=3;
@@ -1709,14 +1709,14 @@
 
                 switch (alt1) {
             	case 1 :
-            	    // InternalEssentialOCL.g:14092:34: RULE_ESCAPED_CHARACTER
+            	    // InternalEssentialOCL.g:14098:34: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalEssentialOCL.g:14092:57: ~ ( ( '\\\\' | '\"' ) )
+            	    // InternalEssentialOCL.g:14098:57: ~ ( ( '\\\\' | '\"' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -1753,11 +1753,11 @@
         try {
             int _type = RULE_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:14094:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            // InternalEssentialOCL.g:14094:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+            // InternalEssentialOCL.g:14100:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // InternalEssentialOCL.g:14100:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
             match('\'');
-            // InternalEssentialOCL.g:14094:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
+            // InternalEssentialOCL.g:14100:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
                 int alt2=3;
@@ -1773,14 +1773,14 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // InternalEssentialOCL.g:14094:35: RULE_ESCAPED_CHARACTER
+            	    // InternalEssentialOCL.g:14100:35: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalEssentialOCL.g:14094:58: ~ ( ( '\\\\' | '\\'' ) )
+            	    // InternalEssentialOCL.g:14100:58: ~ ( ( '\\\\' | '\\'' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -1817,12 +1817,12 @@
         try {
             int _type = RULE_ML_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:14096:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
-            // InternalEssentialOCL.g:14096:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
+            // InternalEssentialOCL.g:14102:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
+            // InternalEssentialOCL.g:14102:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
             match("/'");
 
-            // InternalEssentialOCL.g:14096:38: ( options {greedy=false; } : . )*
+            // InternalEssentialOCL.g:14102:38: ( options {greedy=false; } : . )*
             loop3:
             do {
                 int alt3=2;
@@ -1847,7 +1847,7 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // InternalEssentialOCL.g:14096:66: .
+            	    // InternalEssentialOCL.g:14102:66: .
             	    {
             	    matchAny();
 
@@ -1877,11 +1877,11 @@
         try {
             int _type = RULE_SIMPLE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:14098:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
-            // InternalEssentialOCL.g:14098:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalEssentialOCL.g:14104:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
+            // InternalEssentialOCL.g:14104:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
             mRULE_LETTER_CHARACTER();
-            // InternalEssentialOCL.g:14098:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalEssentialOCL.g:14104:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
                 int alt4=2;
@@ -1930,8 +1930,8 @@
         try {
             int _type = RULE_ESCAPED_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:14100:17: ( '_' RULE_SINGLE_QUOTED_STRING )
-            // InternalEssentialOCL.g:14100:19: '_' RULE_SINGLE_QUOTED_STRING
+            // InternalEssentialOCL.g:14106:17: ( '_' RULE_SINGLE_QUOTED_STRING )
+            // InternalEssentialOCL.g:14106:19: '_' RULE_SINGLE_QUOTED_STRING
             {
             match('_');
             mRULE_SINGLE_QUOTED_STRING();
@@ -1951,10 +1951,10 @@
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:14102:10: ( ( '0' .. '9' )+ )
-            // InternalEssentialOCL.g:14102:12: ( '0' .. '9' )+
+            // InternalEssentialOCL.g:14108:10: ( ( '0' .. '9' )+ )
+            // InternalEssentialOCL.g:14108:12: ( '0' .. '9' )+
             {
-            // InternalEssentialOCL.g:14102:12: ( '0' .. '9' )+
+            // InternalEssentialOCL.g:14108:12: ( '0' .. '9' )+
             int cnt5=0;
             loop5:
             do {
@@ -1968,7 +1968,7 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // InternalEssentialOCL.g:14102:13: '0' .. '9'
+            	    // InternalEssentialOCL.g:14108:13: '0' .. '9'
             	    {
             	    matchRange('0','9');
 
@@ -2000,12 +2000,12 @@
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:14104:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // InternalEssentialOCL.g:14104:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // InternalEssentialOCL.g:14110:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // InternalEssentialOCL.g:14110:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*");
 
-            // InternalEssentialOCL.g:14104:24: ( options {greedy=false; } : . )*
+            // InternalEssentialOCL.g:14110:24: ( options {greedy=false; } : . )*
             loop6:
             do {
                 int alt6=2;
@@ -2030,7 +2030,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // InternalEssentialOCL.g:14104:52: .
+            	    // InternalEssentialOCL.g:14110:52: .
             	    {
             	    matchAny();
 
@@ -2060,12 +2060,12 @@
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:14106:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // InternalEssentialOCL.g:14106:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // InternalEssentialOCL.g:14112:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // InternalEssentialOCL.g:14112:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("--");
 
-            // InternalEssentialOCL.g:14106:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // InternalEssentialOCL.g:14112:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
             do {
                 int alt7=2;
@@ -2078,7 +2078,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // InternalEssentialOCL.g:14106:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // InternalEssentialOCL.g:14112:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2098,7 +2098,7 @@
                 }
             } while (true);
 
-            // InternalEssentialOCL.g:14106:40: ( ( '\\r' )? '\\n' )?
+            // InternalEssentialOCL.g:14112:40: ( ( '\\r' )? '\\n' )?
             int alt9=2;
             int LA9_0 = input.LA(1);
 
@@ -2107,9 +2107,9 @@
             }
             switch (alt9) {
                 case 1 :
-                    // InternalEssentialOCL.g:14106:41: ( '\\r' )? '\\n'
+                    // InternalEssentialOCL.g:14112:41: ( '\\r' )? '\\n'
                     {
-                    // InternalEssentialOCL.g:14106:41: ( '\\r' )?
+                    // InternalEssentialOCL.g:14112:41: ( '\\r' )?
                     int alt8=2;
                     int LA8_0 = input.LA(1);
 
@@ -2118,7 +2118,7 @@
                     }
                     switch (alt8) {
                         case 1 :
-                            // InternalEssentialOCL.g:14106:41: '\\r'
+                            // InternalEssentialOCL.g:14112:41: '\\r'
                             {
                             match('\r');
 
@@ -2150,10 +2150,10 @@
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:14108:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // InternalEssentialOCL.g:14108:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalEssentialOCL.g:14114:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // InternalEssentialOCL.g:14114:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // InternalEssentialOCL.g:14108:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalEssentialOCL.g:14114:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt10=0;
             loop10:
             do {
@@ -2207,8 +2207,8 @@
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:14110:16: ( . )
-            // InternalEssentialOCL.g:14110:18: .
+            // InternalEssentialOCL.g:14116:16: ( . )
+            // InternalEssentialOCL.g:14116:18: .
             {
             matchAny();
 
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/internal/InternalEssentialOCLParser.java b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/internal/InternalEssentialOCLParser.java
index f89694c..b08b47d 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/internal/InternalEssentialOCLParser.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/antlr/internal/InternalEssentialOCLParser.java
@@ -5860,11 +5860,11 @@
 
 
     // $ANTLR start "entryRuleFirstPathElementCS"
-    // InternalEssentialOCL.g:1957:1: entryRuleFirstPathElementCS : ruleFirstPathElementCS EOF ;
+    // InternalEssentialOCL.g:1959:1: entryRuleFirstPathElementCS : ruleFirstPathElementCS EOF ;
     public final void entryRuleFirstPathElementCS() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:1958:1: ( ruleFirstPathElementCS EOF )
-            // InternalEssentialOCL.g:1959:1: ruleFirstPathElementCS EOF
+            // InternalEssentialOCL.g:1960:1: ( ruleFirstPathElementCS EOF )
+            // InternalEssentialOCL.g:1961:1: ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSRule());
@@ -5894,23 +5894,23 @@
 
 
     // $ANTLR start "ruleFirstPathElementCS"
-    // InternalEssentialOCL.g:1966:1: ruleFirstPathElementCS : ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) ;
+    // InternalEssentialOCL.g:1968:1: ruleFirstPathElementCS : ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) ;
     public final void ruleFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:1970:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
-            // InternalEssentialOCL.g:1971:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
+            // InternalEssentialOCL.g:1972:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
+            // InternalEssentialOCL.g:1973:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
             {
-            // InternalEssentialOCL.g:1971:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
-            // InternalEssentialOCL.g:1972:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
+            // InternalEssentialOCL.g:1973:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
+            // InternalEssentialOCL.g:1974:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
-            // InternalEssentialOCL.g:1973:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
-            // InternalEssentialOCL.g:1973:2: rule__FirstPathElementCS__ReferredElementAssignment
+            // InternalEssentialOCL.g:1975:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
+            // InternalEssentialOCL.g:1975:2: rule__FirstPathElementCS__ReferredElementAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__FirstPathElementCS__ReferredElementAssignment();
@@ -5945,11 +5945,11 @@
 
 
     // $ANTLR start "entryRuleNextPathElementCS"
-    // InternalEssentialOCL.g:1985:1: entryRuleNextPathElementCS : ruleNextPathElementCS EOF ;
+    // InternalEssentialOCL.g:1987:1: entryRuleNextPathElementCS : ruleNextPathElementCS EOF ;
     public final void entryRuleNextPathElementCS() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:1986:1: ( ruleNextPathElementCS EOF )
-            // InternalEssentialOCL.g:1987:1: ruleNextPathElementCS EOF
+            // InternalEssentialOCL.g:1988:1: ( ruleNextPathElementCS EOF )
+            // InternalEssentialOCL.g:1989:1: ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSRule());
@@ -5979,23 +5979,23 @@
 
 
     // $ANTLR start "ruleNextPathElementCS"
-    // InternalEssentialOCL.g:1994:1: ruleNextPathElementCS : ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) ;
+    // InternalEssentialOCL.g:1996:1: ruleNextPathElementCS : ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) ;
     public final void ruleNextPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:1998:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
-            // InternalEssentialOCL.g:1999:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
+            // InternalEssentialOCL.g:2000:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
+            // InternalEssentialOCL.g:2001:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
             {
-            // InternalEssentialOCL.g:1999:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
-            // InternalEssentialOCL.g:2000:1: ( rule__NextPathElementCS__ReferredElementAssignment )
+            // InternalEssentialOCL.g:2001:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
+            // InternalEssentialOCL.g:2002:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
-            // InternalEssentialOCL.g:2001:1: ( rule__NextPathElementCS__ReferredElementAssignment )
-            // InternalEssentialOCL.g:2001:2: rule__NextPathElementCS__ReferredElementAssignment
+            // InternalEssentialOCL.g:2003:1: ( rule__NextPathElementCS__ReferredElementAssignment )
+            // InternalEssentialOCL.g:2003:2: rule__NextPathElementCS__ReferredElementAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NextPathElementCS__ReferredElementAssignment();
@@ -6030,11 +6030,11 @@
 
 
     // $ANTLR start "entryRuleTemplateBindingCS"
-    // InternalEssentialOCL.g:2013:1: entryRuleTemplateBindingCS : ruleTemplateBindingCS EOF ;
+    // InternalEssentialOCL.g:2015:1: entryRuleTemplateBindingCS : ruleTemplateBindingCS EOF ;
     public final void entryRuleTemplateBindingCS() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2014:1: ( ruleTemplateBindingCS EOF )
-            // InternalEssentialOCL.g:2015:1: ruleTemplateBindingCS EOF
+            // InternalEssentialOCL.g:2016:1: ( ruleTemplateBindingCS EOF )
+            // InternalEssentialOCL.g:2017:1: ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSRule());
@@ -6064,23 +6064,23 @@
 
 
     // $ANTLR start "ruleTemplateBindingCS"
-    // InternalEssentialOCL.g:2022:1: ruleTemplateBindingCS : ( ( rule__TemplateBindingCS__Group__0 ) ) ;
+    // InternalEssentialOCL.g:2024:1: ruleTemplateBindingCS : ( ( rule__TemplateBindingCS__Group__0 ) ) ;
     public final void ruleTemplateBindingCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2026:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
-            // InternalEssentialOCL.g:2027:1: ( ( rule__TemplateBindingCS__Group__0 ) )
+            // InternalEssentialOCL.g:2028:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
+            // InternalEssentialOCL.g:2029:1: ( ( rule__TemplateBindingCS__Group__0 ) )
             {
-            // InternalEssentialOCL.g:2027:1: ( ( rule__TemplateBindingCS__Group__0 ) )
-            // InternalEssentialOCL.g:2028:1: ( rule__TemplateBindingCS__Group__0 )
+            // InternalEssentialOCL.g:2029:1: ( ( rule__TemplateBindingCS__Group__0 ) )
+            // InternalEssentialOCL.g:2030:1: ( rule__TemplateBindingCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
-            // InternalEssentialOCL.g:2029:1: ( rule__TemplateBindingCS__Group__0 )
-            // InternalEssentialOCL.g:2029:2: rule__TemplateBindingCS__Group__0
+            // InternalEssentialOCL.g:2031:1: ( rule__TemplateBindingCS__Group__0 )
+            // InternalEssentialOCL.g:2031:2: rule__TemplateBindingCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group__0();
@@ -6115,11 +6115,11 @@
 
 
     // $ANTLR start "entryRuleTemplateParameterSubstitutionCS"
-    // InternalEssentialOCL.g:2041:1: entryRuleTemplateParameterSubstitutionCS : ruleTemplateParameterSubstitutionCS EOF ;
+    // InternalEssentialOCL.g:2043:1: entryRuleTemplateParameterSubstitutionCS : ruleTemplateParameterSubstitutionCS EOF ;
     public final void entryRuleTemplateParameterSubstitutionCS() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2042:1: ( ruleTemplateParameterSubstitutionCS EOF )
-            // InternalEssentialOCL.g:2043:1: ruleTemplateParameterSubstitutionCS EOF
+            // InternalEssentialOCL.g:2044:1: ( ruleTemplateParameterSubstitutionCS EOF )
+            // InternalEssentialOCL.g:2045:1: ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSRule());
@@ -6149,23 +6149,23 @@
 
 
     // $ANTLR start "ruleTemplateParameterSubstitutionCS"
-    // InternalEssentialOCL.g:2050:1: ruleTemplateParameterSubstitutionCS : ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) ;
+    // InternalEssentialOCL.g:2052:1: ruleTemplateParameterSubstitutionCS : ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) ;
     public final void ruleTemplateParameterSubstitutionCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2054:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
-            // InternalEssentialOCL.g:2055:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
+            // InternalEssentialOCL.g:2056:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
+            // InternalEssentialOCL.g:2057:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
             {
-            // InternalEssentialOCL.g:2055:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
-            // InternalEssentialOCL.g:2056:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
+            // InternalEssentialOCL.g:2057:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
+            // InternalEssentialOCL.g:2058:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
-            // InternalEssentialOCL.g:2057:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
-            // InternalEssentialOCL.g:2057:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
+            // InternalEssentialOCL.g:2059:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
+            // InternalEssentialOCL.g:2059:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment();
@@ -6200,11 +6200,11 @@
 
 
     // $ANTLR start "entryRuleTypeParameterCS"
-    // InternalEssentialOCL.g:2071:1: entryRuleTypeParameterCS : ruleTypeParameterCS EOF ;
+    // InternalEssentialOCL.g:2073:1: entryRuleTypeParameterCS : ruleTypeParameterCS EOF ;
     public final void entryRuleTypeParameterCS() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2072:1: ( ruleTypeParameterCS EOF )
-            // InternalEssentialOCL.g:2073:1: ruleTypeParameterCS EOF
+            // InternalEssentialOCL.g:2074:1: ( ruleTypeParameterCS EOF )
+            // InternalEssentialOCL.g:2075:1: ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSRule());
@@ -6234,23 +6234,23 @@
 
 
     // $ANTLR start "ruleTypeParameterCS"
-    // InternalEssentialOCL.g:2080:1: ruleTypeParameterCS : ( ( rule__TypeParameterCS__Group__0 ) ) ;
+    // InternalEssentialOCL.g:2082:1: ruleTypeParameterCS : ( ( rule__TypeParameterCS__Group__0 ) ) ;
     public final void ruleTypeParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2084:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
-            // InternalEssentialOCL.g:2085:1: ( ( rule__TypeParameterCS__Group__0 ) )
+            // InternalEssentialOCL.g:2086:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
+            // InternalEssentialOCL.g:2087:1: ( ( rule__TypeParameterCS__Group__0 ) )
             {
-            // InternalEssentialOCL.g:2085:1: ( ( rule__TypeParameterCS__Group__0 ) )
-            // InternalEssentialOCL.g:2086:1: ( rule__TypeParameterCS__Group__0 )
+            // InternalEssentialOCL.g:2087:1: ( ( rule__TypeParameterCS__Group__0 ) )
+            // InternalEssentialOCL.g:2088:1: ( rule__TypeParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
-            // InternalEssentialOCL.g:2087:1: ( rule__TypeParameterCS__Group__0 )
-            // InternalEssentialOCL.g:2087:2: rule__TypeParameterCS__Group__0
+            // InternalEssentialOCL.g:2089:1: ( rule__TypeParameterCS__Group__0 )
+            // InternalEssentialOCL.g:2089:2: rule__TypeParameterCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group__0();
@@ -6285,11 +6285,11 @@
 
 
     // $ANTLR start "entryRuleTypeRefCS"
-    // InternalEssentialOCL.g:2099:1: entryRuleTypeRefCS : ruleTypeRefCS EOF ;
+    // InternalEssentialOCL.g:2101:1: entryRuleTypeRefCS : ruleTypeRefCS EOF ;
     public final void entryRuleTypeRefCS() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2100:1: ( ruleTypeRefCS EOF )
-            // InternalEssentialOCL.g:2101:1: ruleTypeRefCS EOF
+            // InternalEssentialOCL.g:2102:1: ( ruleTypeRefCS EOF )
+            // InternalEssentialOCL.g:2103:1: ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeRefCSRule());
@@ -6319,23 +6319,23 @@
 
 
     // $ANTLR start "ruleTypeRefCS"
-    // InternalEssentialOCL.g:2108:1: ruleTypeRefCS : ( ( rule__TypeRefCS__Alternatives ) ) ;
+    // InternalEssentialOCL.g:2110:1: ruleTypeRefCS : ( ( rule__TypeRefCS__Alternatives ) ) ;
     public final void ruleTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2112:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
-            // InternalEssentialOCL.g:2113:1: ( ( rule__TypeRefCS__Alternatives ) )
+            // InternalEssentialOCL.g:2114:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
+            // InternalEssentialOCL.g:2115:1: ( ( rule__TypeRefCS__Alternatives ) )
             {
-            // InternalEssentialOCL.g:2113:1: ( ( rule__TypeRefCS__Alternatives ) )
-            // InternalEssentialOCL.g:2114:1: ( rule__TypeRefCS__Alternatives )
+            // InternalEssentialOCL.g:2115:1: ( ( rule__TypeRefCS__Alternatives ) )
+            // InternalEssentialOCL.g:2116:1: ( rule__TypeRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
-            // InternalEssentialOCL.g:2115:1: ( rule__TypeRefCS__Alternatives )
-            // InternalEssentialOCL.g:2115:2: rule__TypeRefCS__Alternatives
+            // InternalEssentialOCL.g:2117:1: ( rule__TypeRefCS__Alternatives )
+            // InternalEssentialOCL.g:2117:2: rule__TypeRefCS__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeRefCS__Alternatives();
@@ -6370,11 +6370,11 @@
 
 
     // $ANTLR start "entryRuleTypedRefCS"
-    // InternalEssentialOCL.g:2127:1: entryRuleTypedRefCS : ruleTypedRefCS EOF ;
+    // InternalEssentialOCL.g:2129:1: entryRuleTypedRefCS : ruleTypedRefCS EOF ;
     public final void entryRuleTypedRefCS() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2128:1: ( ruleTypedRefCS EOF )
-            // InternalEssentialOCL.g:2129:1: ruleTypedRefCS EOF
+            // InternalEssentialOCL.g:2130:1: ( ruleTypedRefCS EOF )
+            // InternalEssentialOCL.g:2131:1: ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedRefCSRule());
@@ -6404,17 +6404,17 @@
 
 
     // $ANTLR start "ruleTypedRefCS"
-    // InternalEssentialOCL.g:2136:1: ruleTypedRefCS : ( ruleTypedTypeRefCS ) ;
+    // InternalEssentialOCL.g:2138:1: ruleTypedRefCS : ( ruleTypedTypeRefCS ) ;
     public final void ruleTypedRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2140:2: ( ( ruleTypedTypeRefCS ) )
-            // InternalEssentialOCL.g:2141:1: ( ruleTypedTypeRefCS )
+            // InternalEssentialOCL.g:2142:2: ( ( ruleTypedTypeRefCS ) )
+            // InternalEssentialOCL.g:2143:1: ( ruleTypedTypeRefCS )
             {
-            // InternalEssentialOCL.g:2141:1: ( ruleTypedTypeRefCS )
-            // InternalEssentialOCL.g:2142:1: ruleTypedTypeRefCS
+            // InternalEssentialOCL.g:2143:1: ( ruleTypedTypeRefCS )
+            // InternalEssentialOCL.g:2144:1: ruleTypedTypeRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall());
@@ -6449,11 +6449,11 @@
 
 
     // $ANTLR start "entryRuleTypedTypeRefCS"
-    // InternalEssentialOCL.g:2155:1: entryRuleTypedTypeRefCS : ruleTypedTypeRefCS EOF ;
+    // InternalEssentialOCL.g:2157:1: entryRuleTypedTypeRefCS : ruleTypedTypeRefCS EOF ;
     public final void entryRuleTypedTypeRefCS() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2156:1: ( ruleTypedTypeRefCS EOF )
-            // InternalEssentialOCL.g:2157:1: ruleTypedTypeRefCS EOF
+            // InternalEssentialOCL.g:2158:1: ( ruleTypedTypeRefCS EOF )
+            // InternalEssentialOCL.g:2159:1: ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSRule());
@@ -6483,23 +6483,23 @@
 
 
     // $ANTLR start "ruleTypedTypeRefCS"
-    // InternalEssentialOCL.g:2164:1: ruleTypedTypeRefCS : ( ( rule__TypedTypeRefCS__Group__0 ) ) ;
+    // InternalEssentialOCL.g:2166:1: ruleTypedTypeRefCS : ( ( rule__TypedTypeRefCS__Group__0 ) ) ;
     public final void ruleTypedTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2168:2: ( ( ( rule__TypedTypeRefCS__Group__0 ) ) )
-            // InternalEssentialOCL.g:2169:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
+            // InternalEssentialOCL.g:2170:2: ( ( ( rule__TypedTypeRefCS__Group__0 ) ) )
+            // InternalEssentialOCL.g:2171:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
             {
-            // InternalEssentialOCL.g:2169:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
-            // InternalEssentialOCL.g:2170:1: ( rule__TypedTypeRefCS__Group__0 )
+            // InternalEssentialOCL.g:2171:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
+            // InternalEssentialOCL.g:2172:1: ( rule__TypedTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getGroup());
             }
-            // InternalEssentialOCL.g:2171:1: ( rule__TypedTypeRefCS__Group__0 )
-            // InternalEssentialOCL.g:2171:2: rule__TypedTypeRefCS__Group__0
+            // InternalEssentialOCL.g:2173:1: ( rule__TypedTypeRefCS__Group__0 )
+            // InternalEssentialOCL.g:2173:2: rule__TypedTypeRefCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group__0();
@@ -6534,11 +6534,11 @@
 
 
     // $ANTLR start "entryRuleWildcardTypeRefCS"
-    // InternalEssentialOCL.g:2183:1: entryRuleWildcardTypeRefCS : ruleWildcardTypeRefCS EOF ;
+    // InternalEssentialOCL.g:2185:1: entryRuleWildcardTypeRefCS : ruleWildcardTypeRefCS EOF ;
     public final void entryRuleWildcardTypeRefCS() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2184:1: ( ruleWildcardTypeRefCS EOF )
-            // InternalEssentialOCL.g:2185:1: ruleWildcardTypeRefCS EOF
+            // InternalEssentialOCL.g:2186:1: ( ruleWildcardTypeRefCS EOF )
+            // InternalEssentialOCL.g:2187:1: ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSRule());
@@ -6568,23 +6568,23 @@
 
 
     // $ANTLR start "ruleWildcardTypeRefCS"
-    // InternalEssentialOCL.g:2192:1: ruleWildcardTypeRefCS : ( ( rule__WildcardTypeRefCS__Group__0 ) ) ;
+    // InternalEssentialOCL.g:2194:1: ruleWildcardTypeRefCS : ( ( rule__WildcardTypeRefCS__Group__0 ) ) ;
     public final void ruleWildcardTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2196:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
-            // InternalEssentialOCL.g:2197:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
+            // InternalEssentialOCL.g:2198:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
+            // InternalEssentialOCL.g:2199:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
             {
-            // InternalEssentialOCL.g:2197:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
-            // InternalEssentialOCL.g:2198:1: ( rule__WildcardTypeRefCS__Group__0 )
+            // InternalEssentialOCL.g:2199:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
+            // InternalEssentialOCL.g:2200:1: ( rule__WildcardTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
-            // InternalEssentialOCL.g:2199:1: ( rule__WildcardTypeRefCS__Group__0 )
-            // InternalEssentialOCL.g:2199:2: rule__WildcardTypeRefCS__Group__0
+            // InternalEssentialOCL.g:2201:1: ( rule__WildcardTypeRefCS__Group__0 )
+            // InternalEssentialOCL.g:2201:2: rule__WildcardTypeRefCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group__0();
@@ -6619,11 +6619,11 @@
 
 
     // $ANTLR start "entryRuleID"
-    // InternalEssentialOCL.g:2211:1: entryRuleID : ruleID EOF ;
+    // InternalEssentialOCL.g:2213:1: entryRuleID : ruleID EOF ;
     public final void entryRuleID() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2212:1: ( ruleID EOF )
-            // InternalEssentialOCL.g:2213:1: ruleID EOF
+            // InternalEssentialOCL.g:2214:1: ( ruleID EOF )
+            // InternalEssentialOCL.g:2215:1: ruleID EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIDRule());
@@ -6653,23 +6653,23 @@
 
 
     // $ANTLR start "ruleID"
-    // InternalEssentialOCL.g:2220:1: ruleID : ( ( rule__ID__Alternatives ) ) ;
+    // InternalEssentialOCL.g:2222:1: ruleID : ( ( rule__ID__Alternatives ) ) ;
     public final void ruleID() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2224:2: ( ( ( rule__ID__Alternatives ) ) )
-            // InternalEssentialOCL.g:2225:1: ( ( rule__ID__Alternatives ) )
+            // InternalEssentialOCL.g:2226:2: ( ( ( rule__ID__Alternatives ) ) )
+            // InternalEssentialOCL.g:2227:1: ( ( rule__ID__Alternatives ) )
             {
-            // InternalEssentialOCL.g:2225:1: ( ( rule__ID__Alternatives ) )
-            // InternalEssentialOCL.g:2226:1: ( rule__ID__Alternatives )
+            // InternalEssentialOCL.g:2227:1: ( ( rule__ID__Alternatives ) )
+            // InternalEssentialOCL.g:2228:1: ( rule__ID__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIDAccess().getAlternatives());
             }
-            // InternalEssentialOCL.g:2227:1: ( rule__ID__Alternatives )
-            // InternalEssentialOCL.g:2227:2: rule__ID__Alternatives
+            // InternalEssentialOCL.g:2229:1: ( rule__ID__Alternatives )
+            // InternalEssentialOCL.g:2229:2: rule__ID__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ID__Alternatives();
@@ -6704,11 +6704,11 @@
 
 
     // $ANTLR start "entryRuleIdentifier"
-    // InternalEssentialOCL.g:2239:1: entryRuleIdentifier : ruleIdentifier EOF ;
+    // InternalEssentialOCL.g:2241:1: entryRuleIdentifier : ruleIdentifier EOF ;
     public final void entryRuleIdentifier() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2240:1: ( ruleIdentifier EOF )
-            // InternalEssentialOCL.g:2241:1: ruleIdentifier EOF
+            // InternalEssentialOCL.g:2242:1: ( ruleIdentifier EOF )
+            // InternalEssentialOCL.g:2243:1: ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIdentifierRule());
@@ -6738,17 +6738,17 @@
 
 
     // $ANTLR start "ruleIdentifier"
-    // InternalEssentialOCL.g:2248:1: ruleIdentifier : ( ruleID ) ;
+    // InternalEssentialOCL.g:2250:1: ruleIdentifier : ( ruleID ) ;
     public final void ruleIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2252:2: ( ( ruleID ) )
-            // InternalEssentialOCL.g:2253:1: ( ruleID )
+            // InternalEssentialOCL.g:2254:2: ( ( ruleID ) )
+            // InternalEssentialOCL.g:2255:1: ( ruleID )
             {
-            // InternalEssentialOCL.g:2253:1: ( ruleID )
-            // InternalEssentialOCL.g:2254:1: ruleID
+            // InternalEssentialOCL.g:2255:1: ( ruleID )
+            // InternalEssentialOCL.g:2256:1: ruleID
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
@@ -6783,11 +6783,11 @@
 
 
     // $ANTLR start "entryRuleLOWER"
-    // InternalEssentialOCL.g:2267:1: entryRuleLOWER : ruleLOWER EOF ;
+    // InternalEssentialOCL.g:2269:1: entryRuleLOWER : ruleLOWER EOF ;
     public final void entryRuleLOWER() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2268:1: ( ruleLOWER EOF )
-            // InternalEssentialOCL.g:2269:1: ruleLOWER EOF
+            // InternalEssentialOCL.g:2270:1: ( ruleLOWER EOF )
+            // InternalEssentialOCL.g:2271:1: ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLOWERRule());
@@ -6817,17 +6817,17 @@
 
 
     // $ANTLR start "ruleLOWER"
-    // InternalEssentialOCL.g:2276:1: ruleLOWER : ( RULE_INT ) ;
+    // InternalEssentialOCL.g:2278:1: ruleLOWER : ( RULE_INT ) ;
     public final void ruleLOWER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2280:2: ( ( RULE_INT ) )
-            // InternalEssentialOCL.g:2281:1: ( RULE_INT )
+            // InternalEssentialOCL.g:2282:2: ( ( RULE_INT ) )
+            // InternalEssentialOCL.g:2283:1: ( RULE_INT )
             {
-            // InternalEssentialOCL.g:2281:1: ( RULE_INT )
-            // InternalEssentialOCL.g:2282:1: RULE_INT
+            // InternalEssentialOCL.g:2283:1: ( RULE_INT )
+            // InternalEssentialOCL.g:2284:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
@@ -6858,11 +6858,11 @@
 
 
     // $ANTLR start "entryRuleNUMBER_LITERAL"
-    // InternalEssentialOCL.g:2295:1: entryRuleNUMBER_LITERAL : ruleNUMBER_LITERAL EOF ;
+    // InternalEssentialOCL.g:2297:1: entryRuleNUMBER_LITERAL : ruleNUMBER_LITERAL EOF ;
     public final void entryRuleNUMBER_LITERAL() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2296:1: ( ruleNUMBER_LITERAL EOF )
-            // InternalEssentialOCL.g:2297:1: ruleNUMBER_LITERAL EOF
+            // InternalEssentialOCL.g:2298:1: ( ruleNUMBER_LITERAL EOF )
+            // InternalEssentialOCL.g:2299:1: ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNUMBER_LITERALRule());
@@ -6892,17 +6892,17 @@
 
 
     // $ANTLR start "ruleNUMBER_LITERAL"
-    // InternalEssentialOCL.g:2304:1: ruleNUMBER_LITERAL : ( RULE_INT ) ;
+    // InternalEssentialOCL.g:2306:1: ruleNUMBER_LITERAL : ( RULE_INT ) ;
     public final void ruleNUMBER_LITERAL() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2308:2: ( ( RULE_INT ) )
-            // InternalEssentialOCL.g:2309:1: ( RULE_INT )
+            // InternalEssentialOCL.g:2310:2: ( ( RULE_INT ) )
+            // InternalEssentialOCL.g:2311:1: ( RULE_INT )
             {
-            // InternalEssentialOCL.g:2309:1: ( RULE_INT )
-            // InternalEssentialOCL.g:2310:1: RULE_INT
+            // InternalEssentialOCL.g:2311:1: ( RULE_INT )
+            // InternalEssentialOCL.g:2312:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
@@ -6933,11 +6933,11 @@
 
 
     // $ANTLR start "entryRuleStringLiteral"
-    // InternalEssentialOCL.g:2323:1: entryRuleStringLiteral : ruleStringLiteral EOF ;
+    // InternalEssentialOCL.g:2325:1: entryRuleStringLiteral : ruleStringLiteral EOF ;
     public final void entryRuleStringLiteral() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2324:1: ( ruleStringLiteral EOF )
-            // InternalEssentialOCL.g:2325:1: ruleStringLiteral EOF
+            // InternalEssentialOCL.g:2326:1: ( ruleStringLiteral EOF )
+            // InternalEssentialOCL.g:2327:1: ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStringLiteralRule());
@@ -6967,17 +6967,17 @@
 
 
     // $ANTLR start "ruleStringLiteral"
-    // InternalEssentialOCL.g:2332:1: ruleStringLiteral : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalEssentialOCL.g:2334:1: ruleStringLiteral : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void ruleStringLiteral() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2336:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalEssentialOCL.g:2337:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalEssentialOCL.g:2338:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalEssentialOCL.g:2339:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalEssentialOCL.g:2337:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalEssentialOCL.g:2338:1: RULE_SINGLE_QUOTED_STRING
+            // InternalEssentialOCL.g:2339:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalEssentialOCL.g:2340:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
@@ -7008,11 +7008,11 @@
 
 
     // $ANTLR start "entryRuleUPPER"
-    // InternalEssentialOCL.g:2351:1: entryRuleUPPER : ruleUPPER EOF ;
+    // InternalEssentialOCL.g:2353:1: entryRuleUPPER : ruleUPPER EOF ;
     public final void entryRuleUPPER() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2352:1: ( ruleUPPER EOF )
-            // InternalEssentialOCL.g:2353:1: ruleUPPER EOF
+            // InternalEssentialOCL.g:2354:1: ( ruleUPPER EOF )
+            // InternalEssentialOCL.g:2355:1: ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUPPERRule());
@@ -7042,23 +7042,23 @@
 
 
     // $ANTLR start "ruleUPPER"
-    // InternalEssentialOCL.g:2360:1: ruleUPPER : ( ( rule__UPPER__Alternatives ) ) ;
+    // InternalEssentialOCL.g:2362:1: ruleUPPER : ( ( rule__UPPER__Alternatives ) ) ;
     public final void ruleUPPER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2364:2: ( ( ( rule__UPPER__Alternatives ) ) )
-            // InternalEssentialOCL.g:2365:1: ( ( rule__UPPER__Alternatives ) )
+            // InternalEssentialOCL.g:2366:2: ( ( ( rule__UPPER__Alternatives ) ) )
+            // InternalEssentialOCL.g:2367:1: ( ( rule__UPPER__Alternatives ) )
             {
-            // InternalEssentialOCL.g:2365:1: ( ( rule__UPPER__Alternatives ) )
-            // InternalEssentialOCL.g:2366:1: ( rule__UPPER__Alternatives )
+            // InternalEssentialOCL.g:2367:1: ( ( rule__UPPER__Alternatives ) )
+            // InternalEssentialOCL.g:2368:1: ( rule__UPPER__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUPPERAccess().getAlternatives());
             }
-            // InternalEssentialOCL.g:2367:1: ( rule__UPPER__Alternatives )
-            // InternalEssentialOCL.g:2367:2: rule__UPPER__Alternatives
+            // InternalEssentialOCL.g:2369:1: ( rule__UPPER__Alternatives )
+            // InternalEssentialOCL.g:2369:2: rule__UPPER__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__UPPER__Alternatives();
@@ -7093,11 +7093,11 @@
 
 
     // $ANTLR start "entryRuleURI"
-    // InternalEssentialOCL.g:2379:1: entryRuleURI : ruleURI EOF ;
+    // InternalEssentialOCL.g:2381:1: entryRuleURI : ruleURI EOF ;
     public final void entryRuleURI() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:2380:1: ( ruleURI EOF )
-            // InternalEssentialOCL.g:2381:1: ruleURI EOF
+            // InternalEssentialOCL.g:2382:1: ( ruleURI EOF )
+            // InternalEssentialOCL.g:2383:1: ruleURI EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIRule());
@@ -7127,17 +7127,17 @@
 
 
     // $ANTLR start "ruleURI"
-    // InternalEssentialOCL.g:2388:1: ruleURI : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalEssentialOCL.g:2390:1: ruleURI : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void ruleURI() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2392:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalEssentialOCL.g:2393:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalEssentialOCL.g:2394:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalEssentialOCL.g:2395:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalEssentialOCL.g:2393:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalEssentialOCL.g:2394:1: RULE_SINGLE_QUOTED_STRING
+            // InternalEssentialOCL.g:2395:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalEssentialOCL.g:2396:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
@@ -7168,13 +7168,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLUnaryOperatorName__Alternatives"
-    // InternalEssentialOCL.g:2408:1: rule__EssentialOCLUnaryOperatorName__Alternatives : ( ( '-' ) | ( 'not' ) | ( 'not2' ) );
+    // InternalEssentialOCL.g:2410:1: rule__EssentialOCLUnaryOperatorName__Alternatives : ( ( '-' ) | ( 'not' ) | ( 'not2' ) );
     public final void rule__EssentialOCLUnaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2412:1: ( ( '-' ) | ( 'not' ) | ( 'not2' ) )
+            // InternalEssentialOCL.g:2414:1: ( ( '-' ) | ( 'not' ) | ( 'not2' ) )
             int alt2=3;
             switch ( input.LA(1) ) {
             case 16:
@@ -7202,10 +7202,10 @@
 
             switch (alt2) {
                 case 1 :
-                    // InternalEssentialOCL.g:2413:1: ( '-' )
+                    // InternalEssentialOCL.g:2415:1: ( '-' )
                     {
-                    // InternalEssentialOCL.g:2413:1: ( '-' )
-                    // InternalEssentialOCL.g:2414:1: '-'
+                    // InternalEssentialOCL.g:2415:1: ( '-' )
+                    // InternalEssentialOCL.g:2416:1: '-'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
@@ -7221,10 +7221,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2421:6: ( 'not' )
+                    // InternalEssentialOCL.g:2423:6: ( 'not' )
                     {
-                    // InternalEssentialOCL.g:2421:6: ( 'not' )
-                    // InternalEssentialOCL.g:2422:1: 'not'
+                    // InternalEssentialOCL.g:2423:6: ( 'not' )
+                    // InternalEssentialOCL.g:2424:1: 'not'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
@@ -7240,10 +7240,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:2429:6: ( 'not2' )
+                    // InternalEssentialOCL.g:2431:6: ( 'not2' )
                     {
-                    // InternalEssentialOCL.g:2429:6: ( 'not2' )
-                    // InternalEssentialOCL.g:2430:1: 'not2'
+                    // InternalEssentialOCL.g:2431:6: ( 'not2' )
+                    // InternalEssentialOCL.g:2432:1: 'not2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNot2Keyword_2());
@@ -7276,13 +7276,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLInfixOperatorName__Alternatives"
-    // InternalEssentialOCL.g:2442:1: rule__EssentialOCLInfixOperatorName__Alternatives : ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) );
+    // InternalEssentialOCL.g:2444:1: rule__EssentialOCLInfixOperatorName__Alternatives : ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) );
     public final void rule__EssentialOCLInfixOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2446:1: ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) )
+            // InternalEssentialOCL.g:2448:1: ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) )
             int alt3=18;
             switch ( input.LA(1) ) {
             case 19:
@@ -7385,10 +7385,10 @@
 
             switch (alt3) {
                 case 1 :
-                    // InternalEssentialOCL.g:2447:1: ( '*' )
+                    // InternalEssentialOCL.g:2449:1: ( '*' )
                     {
-                    // InternalEssentialOCL.g:2447:1: ( '*' )
-                    // InternalEssentialOCL.g:2448:1: '*'
+                    // InternalEssentialOCL.g:2449:1: ( '*' )
+                    // InternalEssentialOCL.g:2450:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
@@ -7404,10 +7404,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2455:6: ( '/' )
+                    // InternalEssentialOCL.g:2457:6: ( '/' )
                     {
-                    // InternalEssentialOCL.g:2455:6: ( '/' )
-                    // InternalEssentialOCL.g:2456:1: '/'
+                    // InternalEssentialOCL.g:2457:6: ( '/' )
+                    // InternalEssentialOCL.g:2458:1: '/'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
@@ -7423,10 +7423,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:2463:6: ( '+' )
+                    // InternalEssentialOCL.g:2465:6: ( '+' )
                     {
-                    // InternalEssentialOCL.g:2463:6: ( '+' )
-                    // InternalEssentialOCL.g:2464:1: '+'
+                    // InternalEssentialOCL.g:2465:6: ( '+' )
+                    // InternalEssentialOCL.g:2466:1: '+'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
@@ -7442,10 +7442,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalEssentialOCL.g:2471:6: ( '-' )
+                    // InternalEssentialOCL.g:2473:6: ( '-' )
                     {
-                    // InternalEssentialOCL.g:2471:6: ( '-' )
-                    // InternalEssentialOCL.g:2472:1: '-'
+                    // InternalEssentialOCL.g:2473:6: ( '-' )
+                    // InternalEssentialOCL.g:2474:1: '-'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
@@ -7461,10 +7461,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalEssentialOCL.g:2479:6: ( '>' )
+                    // InternalEssentialOCL.g:2481:6: ( '>' )
                     {
-                    // InternalEssentialOCL.g:2479:6: ( '>' )
-                    // InternalEssentialOCL.g:2480:1: '>'
+                    // InternalEssentialOCL.g:2481:6: ( '>' )
+                    // InternalEssentialOCL.g:2482:1: '>'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
@@ -7480,10 +7480,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalEssentialOCL.g:2487:6: ( '<' )
+                    // InternalEssentialOCL.g:2489:6: ( '<' )
                     {
-                    // InternalEssentialOCL.g:2487:6: ( '<' )
-                    // InternalEssentialOCL.g:2488:1: '<'
+                    // InternalEssentialOCL.g:2489:6: ( '<' )
+                    // InternalEssentialOCL.g:2490:1: '<'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
@@ -7499,10 +7499,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalEssentialOCL.g:2495:6: ( '>=' )
+                    // InternalEssentialOCL.g:2497:6: ( '>=' )
                     {
-                    // InternalEssentialOCL.g:2495:6: ( '>=' )
-                    // InternalEssentialOCL.g:2496:1: '>='
+                    // InternalEssentialOCL.g:2497:6: ( '>=' )
+                    // InternalEssentialOCL.g:2498:1: '>='
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
@@ -7518,10 +7518,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalEssentialOCL.g:2503:6: ( '<=' )
+                    // InternalEssentialOCL.g:2505:6: ( '<=' )
                     {
-                    // InternalEssentialOCL.g:2503:6: ( '<=' )
-                    // InternalEssentialOCL.g:2504:1: '<='
+                    // InternalEssentialOCL.g:2505:6: ( '<=' )
+                    // InternalEssentialOCL.g:2506:1: '<='
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
@@ -7537,10 +7537,10 @@
                     }
                     break;
                 case 9 :
-                    // InternalEssentialOCL.g:2511:6: ( '=' )
+                    // InternalEssentialOCL.g:2513:6: ( '=' )
                     {
-                    // InternalEssentialOCL.g:2511:6: ( '=' )
-                    // InternalEssentialOCL.g:2512:1: '='
+                    // InternalEssentialOCL.g:2513:6: ( '=' )
+                    // InternalEssentialOCL.g:2514:1: '='
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
@@ -7556,10 +7556,10 @@
                     }
                     break;
                 case 10 :
-                    // InternalEssentialOCL.g:2519:6: ( '<>' )
+                    // InternalEssentialOCL.g:2521:6: ( '<>' )
                     {
-                    // InternalEssentialOCL.g:2519:6: ( '<>' )
-                    // InternalEssentialOCL.g:2520:1: '<>'
+                    // InternalEssentialOCL.g:2521:6: ( '<>' )
+                    // InternalEssentialOCL.g:2522:1: '<>'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
@@ -7575,10 +7575,10 @@
                     }
                     break;
                 case 11 :
-                    // InternalEssentialOCL.g:2527:6: ( 'and' )
+                    // InternalEssentialOCL.g:2529:6: ( 'and' )
                     {
-                    // InternalEssentialOCL.g:2527:6: ( 'and' )
-                    // InternalEssentialOCL.g:2528:1: 'and'
+                    // InternalEssentialOCL.g:2529:6: ( 'and' )
+                    // InternalEssentialOCL.g:2530:1: 'and'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
@@ -7594,10 +7594,10 @@
                     }
                     break;
                 case 12 :
-                    // InternalEssentialOCL.g:2535:6: ( 'and2' )
+                    // InternalEssentialOCL.g:2537:6: ( 'and2' )
                     {
-                    // InternalEssentialOCL.g:2535:6: ( 'and2' )
-                    // InternalEssentialOCL.g:2536:1: 'and2'
+                    // InternalEssentialOCL.g:2537:6: ( 'and2' )
+                    // InternalEssentialOCL.g:2538:1: 'and2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAnd2Keyword_11());
@@ -7613,10 +7613,10 @@
                     }
                     break;
                 case 13 :
-                    // InternalEssentialOCL.g:2543:6: ( 'implies' )
+                    // InternalEssentialOCL.g:2545:6: ( 'implies' )
                     {
-                    // InternalEssentialOCL.g:2543:6: ( 'implies' )
-                    // InternalEssentialOCL.g:2544:1: 'implies'
+                    // InternalEssentialOCL.g:2545:6: ( 'implies' )
+                    // InternalEssentialOCL.g:2546:1: 'implies'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_12());
@@ -7632,10 +7632,10 @@
                     }
                     break;
                 case 14 :
-                    // InternalEssentialOCL.g:2551:6: ( 'implies2' )
+                    // InternalEssentialOCL.g:2553:6: ( 'implies2' )
                     {
-                    // InternalEssentialOCL.g:2551:6: ( 'implies2' )
-                    // InternalEssentialOCL.g:2552:1: 'implies2'
+                    // InternalEssentialOCL.g:2553:6: ( 'implies2' )
+                    // InternalEssentialOCL.g:2554:1: 'implies2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImplies2Keyword_13());
@@ -7651,10 +7651,10 @@
                     }
                     break;
                 case 15 :
-                    // InternalEssentialOCL.g:2559:6: ( 'or' )
+                    // InternalEssentialOCL.g:2561:6: ( 'or' )
                     {
-                    // InternalEssentialOCL.g:2559:6: ( 'or' )
-                    // InternalEssentialOCL.g:2560:1: 'or'
+                    // InternalEssentialOCL.g:2561:6: ( 'or' )
+                    // InternalEssentialOCL.g:2562:1: 'or'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_14());
@@ -7670,10 +7670,10 @@
                     }
                     break;
                 case 16 :
-                    // InternalEssentialOCL.g:2567:6: ( 'or2' )
+                    // InternalEssentialOCL.g:2569:6: ( 'or2' )
                     {
-                    // InternalEssentialOCL.g:2567:6: ( 'or2' )
-                    // InternalEssentialOCL.g:2568:1: 'or2'
+                    // InternalEssentialOCL.g:2569:6: ( 'or2' )
+                    // InternalEssentialOCL.g:2570:1: 'or2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOr2Keyword_15());
@@ -7689,10 +7689,10 @@
                     }
                     break;
                 case 17 :
-                    // InternalEssentialOCL.g:2575:6: ( 'xor' )
+                    // InternalEssentialOCL.g:2577:6: ( 'xor' )
                     {
-                    // InternalEssentialOCL.g:2575:6: ( 'xor' )
-                    // InternalEssentialOCL.g:2576:1: 'xor'
+                    // InternalEssentialOCL.g:2577:6: ( 'xor' )
+                    // InternalEssentialOCL.g:2578:1: 'xor'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_16());
@@ -7708,10 +7708,10 @@
                     }
                     break;
                 case 18 :
-                    // InternalEssentialOCL.g:2583:6: ( 'xor2' )
+                    // InternalEssentialOCL.g:2585:6: ( 'xor2' )
                     {
-                    // InternalEssentialOCL.g:2583:6: ( 'xor2' )
-                    // InternalEssentialOCL.g:2584:1: 'xor2'
+                    // InternalEssentialOCL.g:2585:6: ( 'xor2' )
+                    // InternalEssentialOCL.g:2586:1: 'xor2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXor2Keyword_17());
@@ -7744,13 +7744,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLNavigationOperatorName__Alternatives"
-    // InternalEssentialOCL.g:2596:1: rule__EssentialOCLNavigationOperatorName__Alternatives : ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) );
+    // InternalEssentialOCL.g:2598:1: rule__EssentialOCLNavigationOperatorName__Alternatives : ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) );
     public final void rule__EssentialOCLNavigationOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2600:1: ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) )
+            // InternalEssentialOCL.g:2602:1: ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) )
             int alt4=4;
             switch ( input.LA(1) ) {
             case 36:
@@ -7783,10 +7783,10 @@
 
             switch (alt4) {
                 case 1 :
-                    // InternalEssentialOCL.g:2601:1: ( '.' )
+                    // InternalEssentialOCL.g:2603:1: ( '.' )
                     {
-                    // InternalEssentialOCL.g:2601:1: ( '.' )
-                    // InternalEssentialOCL.g:2602:1: '.'
+                    // InternalEssentialOCL.g:2603:1: ( '.' )
+                    // InternalEssentialOCL.g:2604:1: '.'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
@@ -7802,10 +7802,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2609:6: ( '->' )
+                    // InternalEssentialOCL.g:2611:6: ( '->' )
                     {
-                    // InternalEssentialOCL.g:2609:6: ( '->' )
-                    // InternalEssentialOCL.g:2610:1: '->'
+                    // InternalEssentialOCL.g:2611:6: ( '->' )
+                    // InternalEssentialOCL.g:2612:1: '->'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
@@ -7821,10 +7821,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:2617:6: ( '?.' )
+                    // InternalEssentialOCL.g:2619:6: ( '?.' )
                     {
-                    // InternalEssentialOCL.g:2617:6: ( '?.' )
-                    // InternalEssentialOCL.g:2618:1: '?.'
+                    // InternalEssentialOCL.g:2619:6: ( '?.' )
+                    // InternalEssentialOCL.g:2620:1: '?.'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
@@ -7840,10 +7840,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalEssentialOCL.g:2625:6: ( '?->' )
+                    // InternalEssentialOCL.g:2627:6: ( '?->' )
                     {
-                    // InternalEssentialOCL.g:2625:6: ( '?->' )
-                    // InternalEssentialOCL.g:2626:1: '?->'
+                    // InternalEssentialOCL.g:2627:6: ( '?->' )
+                    // InternalEssentialOCL.g:2628:1: '?->'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
@@ -7876,13 +7876,13 @@
 
 
     // $ANTLR start "rule__BinaryOperatorName__Alternatives"
-    // InternalEssentialOCL.g:2638:1: rule__BinaryOperatorName__Alternatives : ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) );
+    // InternalEssentialOCL.g:2640:1: rule__BinaryOperatorName__Alternatives : ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) );
     public final void rule__BinaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2642:1: ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) )
+            // InternalEssentialOCL.g:2644:1: ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) )
             int alt5=2;
             int LA5_0 = input.LA(1);
 
@@ -7901,10 +7901,10 @@
             }
             switch (alt5) {
                 case 1 :
-                    // InternalEssentialOCL.g:2643:1: ( ruleInfixOperatorName )
+                    // InternalEssentialOCL.g:2645:1: ( ruleInfixOperatorName )
                     {
-                    // InternalEssentialOCL.g:2643:1: ( ruleInfixOperatorName )
-                    // InternalEssentialOCL.g:2644:1: ruleInfixOperatorName
+                    // InternalEssentialOCL.g:2645:1: ( ruleInfixOperatorName )
+                    // InternalEssentialOCL.g:2646:1: ruleInfixOperatorName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
@@ -7924,10 +7924,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2649:6: ( ruleNavigationOperatorName )
+                    // InternalEssentialOCL.g:2651:6: ( ruleNavigationOperatorName )
                     {
-                    // InternalEssentialOCL.g:2649:6: ( ruleNavigationOperatorName )
-                    // InternalEssentialOCL.g:2650:1: ruleNavigationOperatorName
+                    // InternalEssentialOCL.g:2651:6: ( ruleNavigationOperatorName )
+                    // InternalEssentialOCL.g:2652:1: ruleNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
@@ -7964,13 +7964,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLUnreservedName__Alternatives"
-    // InternalEssentialOCL.g:2660:1: rule__EssentialOCLUnreservedName__Alternatives : ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) );
+    // InternalEssentialOCL.g:2662:1: rule__EssentialOCLUnreservedName__Alternatives : ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) );
     public final void rule__EssentialOCLUnreservedName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2664:1: ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) )
+            // InternalEssentialOCL.g:2666:1: ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) )
             int alt6=5;
             switch ( input.LA(1) ) {
             case RULE_SIMPLE_ID:
@@ -8020,10 +8020,10 @@
 
             switch (alt6) {
                 case 1 :
-                    // InternalEssentialOCL.g:2665:1: ( ruleUnrestrictedName )
+                    // InternalEssentialOCL.g:2667:1: ( ruleUnrestrictedName )
                     {
-                    // InternalEssentialOCL.g:2665:1: ( ruleUnrestrictedName )
-                    // InternalEssentialOCL.g:2666:1: ruleUnrestrictedName
+                    // InternalEssentialOCL.g:2667:1: ( ruleUnrestrictedName )
+                    // InternalEssentialOCL.g:2668:1: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
@@ -8043,10 +8043,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2671:6: ( ruleCollectionTypeIdentifier )
+                    // InternalEssentialOCL.g:2673:6: ( ruleCollectionTypeIdentifier )
                     {
-                    // InternalEssentialOCL.g:2671:6: ( ruleCollectionTypeIdentifier )
-                    // InternalEssentialOCL.g:2672:1: ruleCollectionTypeIdentifier
+                    // InternalEssentialOCL.g:2673:6: ( ruleCollectionTypeIdentifier )
+                    // InternalEssentialOCL.g:2674:1: ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
@@ -8066,10 +8066,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:2677:6: ( rulePrimitiveTypeIdentifier )
+                    // InternalEssentialOCL.g:2679:6: ( rulePrimitiveTypeIdentifier )
                     {
-                    // InternalEssentialOCL.g:2677:6: ( rulePrimitiveTypeIdentifier )
-                    // InternalEssentialOCL.g:2678:1: rulePrimitiveTypeIdentifier
+                    // InternalEssentialOCL.g:2679:6: ( rulePrimitiveTypeIdentifier )
+                    // InternalEssentialOCL.g:2680:1: rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
@@ -8089,10 +8089,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalEssentialOCL.g:2683:6: ( 'Map' )
+                    // InternalEssentialOCL.g:2685:6: ( 'Map' )
                     {
-                    // InternalEssentialOCL.g:2683:6: ( 'Map' )
-                    // InternalEssentialOCL.g:2684:1: 'Map'
+                    // InternalEssentialOCL.g:2685:6: ( 'Map' )
+                    // InternalEssentialOCL.g:2686:1: 'Map'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
@@ -8108,10 +8108,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalEssentialOCL.g:2691:6: ( 'Tuple' )
+                    // InternalEssentialOCL.g:2693:6: ( 'Tuple' )
                     {
-                    // InternalEssentialOCL.g:2691:6: ( 'Tuple' )
-                    // InternalEssentialOCL.g:2692:1: 'Tuple'
+                    // InternalEssentialOCL.g:2693:6: ( 'Tuple' )
+                    // InternalEssentialOCL.g:2694:1: 'Tuple'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
@@ -8144,13 +8144,13 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Alternatives"
-    // InternalEssentialOCL.g:2704:1: rule__URIFirstPathElementCS__Alternatives : ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) );
+    // InternalEssentialOCL.g:2706:1: rule__URIFirstPathElementCS__Alternatives : ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) );
     public final void rule__URIFirstPathElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2708:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) )
+            // InternalEssentialOCL.g:2710:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) )
             int alt7=2;
             int LA7_0 = input.LA(1);
 
@@ -8169,16 +8169,16 @@
             }
             switch (alt7) {
                 case 1 :
-                    // InternalEssentialOCL.g:2709:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
+                    // InternalEssentialOCL.g:2711:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
                     {
-                    // InternalEssentialOCL.g:2709:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
-                    // InternalEssentialOCL.g:2710:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
+                    // InternalEssentialOCL.g:2711:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
+                    // InternalEssentialOCL.g:2712:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0());
                     }
-                    // InternalEssentialOCL.g:2711:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
-                    // InternalEssentialOCL.g:2711:2: rule__URIFirstPathElementCS__ReferredElementAssignment_0
+                    // InternalEssentialOCL.g:2713:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
+                    // InternalEssentialOCL.g:2713:2: rule__URIFirstPathElementCS__ReferredElementAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__URIFirstPathElementCS__ReferredElementAssignment_0();
@@ -8198,16 +8198,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2715:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
+                    // InternalEssentialOCL.g:2717:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
                     {
-                    // InternalEssentialOCL.g:2715:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
-                    // InternalEssentialOCL.g:2716:1: ( rule__URIFirstPathElementCS__Group_1__0 )
+                    // InternalEssentialOCL.g:2717:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
+                    // InternalEssentialOCL.g:2718:1: ( rule__URIFirstPathElementCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1());
                     }
-                    // InternalEssentialOCL.g:2717:1: ( rule__URIFirstPathElementCS__Group_1__0 )
-                    // InternalEssentialOCL.g:2717:2: rule__URIFirstPathElementCS__Group_1__0
+                    // InternalEssentialOCL.g:2719:1: ( rule__URIFirstPathElementCS__Group_1__0 )
+                    // InternalEssentialOCL.g:2719:2: rule__URIFirstPathElementCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__URIFirstPathElementCS__Group_1__0();
@@ -8244,13 +8244,13 @@
 
 
     // $ANTLR start "rule__PrimitiveTypeIdentifier__Alternatives"
-    // InternalEssentialOCL.g:2726:1: rule__PrimitiveTypeIdentifier__Alternatives : ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) );
+    // InternalEssentialOCL.g:2728:1: rule__PrimitiveTypeIdentifier__Alternatives : ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) );
     public final void rule__PrimitiveTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2730:1: ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) )
+            // InternalEssentialOCL.g:2732:1: ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) )
             int alt8=8;
             switch ( input.LA(1) ) {
             case 42:
@@ -8303,10 +8303,10 @@
 
             switch (alt8) {
                 case 1 :
-                    // InternalEssentialOCL.g:2731:1: ( 'Boolean' )
+                    // InternalEssentialOCL.g:2733:1: ( 'Boolean' )
                     {
-                    // InternalEssentialOCL.g:2731:1: ( 'Boolean' )
-                    // InternalEssentialOCL.g:2732:1: 'Boolean'
+                    // InternalEssentialOCL.g:2733:1: ( 'Boolean' )
+                    // InternalEssentialOCL.g:2734:1: 'Boolean'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
@@ -8322,10 +8322,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2739:6: ( 'Integer' )
+                    // InternalEssentialOCL.g:2741:6: ( 'Integer' )
                     {
-                    // InternalEssentialOCL.g:2739:6: ( 'Integer' )
-                    // InternalEssentialOCL.g:2740:1: 'Integer'
+                    // InternalEssentialOCL.g:2741:6: ( 'Integer' )
+                    // InternalEssentialOCL.g:2742:1: 'Integer'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
@@ -8341,10 +8341,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:2747:6: ( 'Real' )
+                    // InternalEssentialOCL.g:2749:6: ( 'Real' )
                     {
-                    // InternalEssentialOCL.g:2747:6: ( 'Real' )
-                    // InternalEssentialOCL.g:2748:1: 'Real'
+                    // InternalEssentialOCL.g:2749:6: ( 'Real' )
+                    // InternalEssentialOCL.g:2750:1: 'Real'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
@@ -8360,10 +8360,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalEssentialOCL.g:2755:6: ( 'String' )
+                    // InternalEssentialOCL.g:2757:6: ( 'String' )
                     {
-                    // InternalEssentialOCL.g:2755:6: ( 'String' )
-                    // InternalEssentialOCL.g:2756:1: 'String'
+                    // InternalEssentialOCL.g:2757:6: ( 'String' )
+                    // InternalEssentialOCL.g:2758:1: 'String'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
@@ -8379,10 +8379,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalEssentialOCL.g:2763:6: ( 'UnlimitedNatural' )
+                    // InternalEssentialOCL.g:2765:6: ( 'UnlimitedNatural' )
                     {
-                    // InternalEssentialOCL.g:2763:6: ( 'UnlimitedNatural' )
-                    // InternalEssentialOCL.g:2764:1: 'UnlimitedNatural'
+                    // InternalEssentialOCL.g:2765:6: ( 'UnlimitedNatural' )
+                    // InternalEssentialOCL.g:2766:1: 'UnlimitedNatural'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
@@ -8398,10 +8398,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalEssentialOCL.g:2771:6: ( 'OclAny' )
+                    // InternalEssentialOCL.g:2773:6: ( 'OclAny' )
                     {
-                    // InternalEssentialOCL.g:2771:6: ( 'OclAny' )
-                    // InternalEssentialOCL.g:2772:1: 'OclAny'
+                    // InternalEssentialOCL.g:2773:6: ( 'OclAny' )
+                    // InternalEssentialOCL.g:2774:1: 'OclAny'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
@@ -8417,10 +8417,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalEssentialOCL.g:2779:6: ( 'OclInvalid' )
+                    // InternalEssentialOCL.g:2781:6: ( 'OclInvalid' )
                     {
-                    // InternalEssentialOCL.g:2779:6: ( 'OclInvalid' )
-                    // InternalEssentialOCL.g:2780:1: 'OclInvalid'
+                    // InternalEssentialOCL.g:2781:6: ( 'OclInvalid' )
+                    // InternalEssentialOCL.g:2782:1: 'OclInvalid'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
@@ -8436,10 +8436,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalEssentialOCL.g:2787:6: ( 'OclVoid' )
+                    // InternalEssentialOCL.g:2789:6: ( 'OclVoid' )
                     {
-                    // InternalEssentialOCL.g:2787:6: ( 'OclVoid' )
-                    // InternalEssentialOCL.g:2788:1: 'OclVoid'
+                    // InternalEssentialOCL.g:2789:6: ( 'OclVoid' )
+                    // InternalEssentialOCL.g:2790:1: 'OclVoid'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
@@ -8472,13 +8472,13 @@
 
 
     // $ANTLR start "rule__CollectionTypeIdentifier__Alternatives"
-    // InternalEssentialOCL.g:2800:1: rule__CollectionTypeIdentifier__Alternatives : ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) );
+    // InternalEssentialOCL.g:2802:1: rule__CollectionTypeIdentifier__Alternatives : ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) );
     public final void rule__CollectionTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2804:1: ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) )
+            // InternalEssentialOCL.g:2806:1: ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) )
             int alt9=5;
             switch ( input.LA(1) ) {
             case 50:
@@ -8516,10 +8516,10 @@
 
             switch (alt9) {
                 case 1 :
-                    // InternalEssentialOCL.g:2805:1: ( 'Set' )
+                    // InternalEssentialOCL.g:2807:1: ( 'Set' )
                     {
-                    // InternalEssentialOCL.g:2805:1: ( 'Set' )
-                    // InternalEssentialOCL.g:2806:1: 'Set'
+                    // InternalEssentialOCL.g:2807:1: ( 'Set' )
+                    // InternalEssentialOCL.g:2808:1: 'Set'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
@@ -8535,10 +8535,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2813:6: ( 'Bag' )
+                    // InternalEssentialOCL.g:2815:6: ( 'Bag' )
                     {
-                    // InternalEssentialOCL.g:2813:6: ( 'Bag' )
-                    // InternalEssentialOCL.g:2814:1: 'Bag'
+                    // InternalEssentialOCL.g:2815:6: ( 'Bag' )
+                    // InternalEssentialOCL.g:2816:1: 'Bag'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
@@ -8554,10 +8554,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:2821:6: ( 'Sequence' )
+                    // InternalEssentialOCL.g:2823:6: ( 'Sequence' )
                     {
-                    // InternalEssentialOCL.g:2821:6: ( 'Sequence' )
-                    // InternalEssentialOCL.g:2822:1: 'Sequence'
+                    // InternalEssentialOCL.g:2823:6: ( 'Sequence' )
+                    // InternalEssentialOCL.g:2824:1: 'Sequence'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
@@ -8573,10 +8573,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalEssentialOCL.g:2829:6: ( 'Collection' )
+                    // InternalEssentialOCL.g:2831:6: ( 'Collection' )
                     {
-                    // InternalEssentialOCL.g:2829:6: ( 'Collection' )
-                    // InternalEssentialOCL.g:2830:1: 'Collection'
+                    // InternalEssentialOCL.g:2831:6: ( 'Collection' )
+                    // InternalEssentialOCL.g:2832:1: 'Collection'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
@@ -8592,10 +8592,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalEssentialOCL.g:2837:6: ( 'OrderedSet' )
+                    // InternalEssentialOCL.g:2839:6: ( 'OrderedSet' )
                     {
-                    // InternalEssentialOCL.g:2837:6: ( 'OrderedSet' )
-                    // InternalEssentialOCL.g:2838:1: 'OrderedSet'
+                    // InternalEssentialOCL.g:2839:6: ( 'OrderedSet' )
+                    // InternalEssentialOCL.g:2840:1: 'OrderedSet'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
@@ -8628,13 +8628,13 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Alternatives"
-    // InternalEssentialOCL.g:2850:1: rule__CollectionLiteralPartCS__Alternatives : ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) );
+    // InternalEssentialOCL.g:2852:1: rule__CollectionLiteralPartCS__Alternatives : ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) );
     public final void rule__CollectionLiteralPartCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2854:1: ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) )
+            // InternalEssentialOCL.g:2856:1: ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) )
             int alt10=2;
             switch ( input.LA(1) ) {
             case RULE_INT:
@@ -8724,16 +8724,16 @@
 
             switch (alt10) {
                 case 1 :
-                    // InternalEssentialOCL.g:2855:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
+                    // InternalEssentialOCL.g:2857:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
                     {
-                    // InternalEssentialOCL.g:2855:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
-                    // InternalEssentialOCL.g:2856:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
+                    // InternalEssentialOCL.g:2857:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
+                    // InternalEssentialOCL.g:2858:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0());
                     }
-                    // InternalEssentialOCL.g:2857:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
-                    // InternalEssentialOCL.g:2857:2: rule__CollectionLiteralPartCS__Group_0__0
+                    // InternalEssentialOCL.g:2859:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
+                    // InternalEssentialOCL.g:2859:2: rule__CollectionLiteralPartCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralPartCS__Group_0__0();
@@ -8753,16 +8753,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2861:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
+                    // InternalEssentialOCL.g:2863:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
                     {
-                    // InternalEssentialOCL.g:2861:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
-                    // InternalEssentialOCL.g:2862:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
+                    // InternalEssentialOCL.g:2863:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
+                    // InternalEssentialOCL.g:2864:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1());
                     }
-                    // InternalEssentialOCL.g:2863:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
-                    // InternalEssentialOCL.g:2863:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1
+                    // InternalEssentialOCL.g:2865:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
+                    // InternalEssentialOCL.g:2865:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1();
@@ -8799,13 +8799,13 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Alternatives"
-    // InternalEssentialOCL.g:2872:1: rule__ShadowPartCS__Alternatives : ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) );
+    // InternalEssentialOCL.g:2874:1: rule__ShadowPartCS__Alternatives : ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) );
     public final void rule__ShadowPartCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2876:1: ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) )
+            // InternalEssentialOCL.g:2878:1: ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) )
             int alt11=2;
             int LA11_0 = input.LA(1);
 
@@ -8824,16 +8824,16 @@
             }
             switch (alt11) {
                 case 1 :
-                    // InternalEssentialOCL.g:2877:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
+                    // InternalEssentialOCL.g:2879:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
                     {
-                    // InternalEssentialOCL.g:2877:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
-                    // InternalEssentialOCL.g:2878:1: ( rule__ShadowPartCS__Group_0__0 )
+                    // InternalEssentialOCL.g:2879:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
+                    // InternalEssentialOCL.g:2880:1: ( rule__ShadowPartCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getGroup_0());
                     }
-                    // InternalEssentialOCL.g:2879:1: ( rule__ShadowPartCS__Group_0__0 )
-                    // InternalEssentialOCL.g:2879:2: rule__ShadowPartCS__Group_0__0
+                    // InternalEssentialOCL.g:2881:1: ( rule__ShadowPartCS__Group_0__0 )
+                    // InternalEssentialOCL.g:2881:2: rule__ShadowPartCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ShadowPartCS__Group_0__0();
@@ -8853,16 +8853,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2883:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
+                    // InternalEssentialOCL.g:2885:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
                     {
-                    // InternalEssentialOCL.g:2883:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
-                    // InternalEssentialOCL.g:2884:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
+                    // InternalEssentialOCL.g:2885:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
+                    // InternalEssentialOCL.g:2886:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_1());
                     }
-                    // InternalEssentialOCL.g:2885:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
-                    // InternalEssentialOCL.g:2885:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_1
+                    // InternalEssentialOCL.g:2887:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
+                    // InternalEssentialOCL.g:2887:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ShadowPartCS__OwnedInitExpressionAssignment_1();
@@ -8899,13 +8899,13 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0"
-    // InternalEssentialOCL.g:2894:1: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
+    // InternalEssentialOCL.g:2896:1: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
     public final void rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2898:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
+            // InternalEssentialOCL.g:2900:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt12=2;
             switch ( input.LA(1) ) {
             case RULE_INT:
@@ -8995,10 +8995,10 @@
 
             switch (alt12) {
                 case 1 :
-                    // InternalEssentialOCL.g:2899:1: ( ruleExpCS )
+                    // InternalEssentialOCL.g:2901:1: ( ruleExpCS )
                     {
-                    // InternalEssentialOCL.g:2899:1: ( ruleExpCS )
-                    // InternalEssentialOCL.g:2900:1: ruleExpCS
+                    // InternalEssentialOCL.g:2901:1: ( ruleExpCS )
+                    // InternalEssentialOCL.g:2902:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_2_0_0());
@@ -9018,10 +9018,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2905:6: ( rulePatternExpCS )
+                    // InternalEssentialOCL.g:2907:6: ( rulePatternExpCS )
                     {
-                    // InternalEssentialOCL.g:2905:6: ( rulePatternExpCS )
-                    // InternalEssentialOCL.g:2906:1: rulePatternExpCS
+                    // InternalEssentialOCL.g:2907:6: ( rulePatternExpCS )
+                    // InternalEssentialOCL.g:2908:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_0_2_0_1());
@@ -9058,13 +9058,13 @@
 
 
     // $ANTLR start "rule__PrimitiveLiteralExpCS__Alternatives"
-    // InternalEssentialOCL.g:2916:1: rule__PrimitiveLiteralExpCS__Alternatives : ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) );
+    // InternalEssentialOCL.g:2918:1: rule__PrimitiveLiteralExpCS__Alternatives : ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) );
     public final void rule__PrimitiveLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2920:1: ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) )
+            // InternalEssentialOCL.g:2922:1: ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) )
             int alt13=6;
             switch ( input.LA(1) ) {
             case RULE_INT:
@@ -9108,10 +9108,10 @@
 
             switch (alt13) {
                 case 1 :
-                    // InternalEssentialOCL.g:2921:1: ( ruleNumberLiteralExpCS )
+                    // InternalEssentialOCL.g:2923:1: ( ruleNumberLiteralExpCS )
                     {
-                    // InternalEssentialOCL.g:2921:1: ( ruleNumberLiteralExpCS )
-                    // InternalEssentialOCL.g:2922:1: ruleNumberLiteralExpCS
+                    // InternalEssentialOCL.g:2923:1: ( ruleNumberLiteralExpCS )
+                    // InternalEssentialOCL.g:2924:1: ruleNumberLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
@@ -9131,10 +9131,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2927:6: ( ruleStringLiteralExpCS )
+                    // InternalEssentialOCL.g:2929:6: ( ruleStringLiteralExpCS )
                     {
-                    // InternalEssentialOCL.g:2927:6: ( ruleStringLiteralExpCS )
-                    // InternalEssentialOCL.g:2928:1: ruleStringLiteralExpCS
+                    // InternalEssentialOCL.g:2929:6: ( ruleStringLiteralExpCS )
+                    // InternalEssentialOCL.g:2930:1: ruleStringLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
@@ -9154,10 +9154,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:2933:6: ( ruleBooleanLiteralExpCS )
+                    // InternalEssentialOCL.g:2935:6: ( ruleBooleanLiteralExpCS )
                     {
-                    // InternalEssentialOCL.g:2933:6: ( ruleBooleanLiteralExpCS )
-                    // InternalEssentialOCL.g:2934:1: ruleBooleanLiteralExpCS
+                    // InternalEssentialOCL.g:2935:6: ( ruleBooleanLiteralExpCS )
+                    // InternalEssentialOCL.g:2936:1: ruleBooleanLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
@@ -9177,10 +9177,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalEssentialOCL.g:2939:6: ( ruleUnlimitedNaturalLiteralExpCS )
+                    // InternalEssentialOCL.g:2941:6: ( ruleUnlimitedNaturalLiteralExpCS )
                     {
-                    // InternalEssentialOCL.g:2939:6: ( ruleUnlimitedNaturalLiteralExpCS )
-                    // InternalEssentialOCL.g:2940:1: ruleUnlimitedNaturalLiteralExpCS
+                    // InternalEssentialOCL.g:2941:6: ( ruleUnlimitedNaturalLiteralExpCS )
+                    // InternalEssentialOCL.g:2942:1: ruleUnlimitedNaturalLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
@@ -9200,10 +9200,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalEssentialOCL.g:2945:6: ( ruleInvalidLiteralExpCS )
+                    // InternalEssentialOCL.g:2947:6: ( ruleInvalidLiteralExpCS )
                     {
-                    // InternalEssentialOCL.g:2945:6: ( ruleInvalidLiteralExpCS )
-                    // InternalEssentialOCL.g:2946:1: ruleInvalidLiteralExpCS
+                    // InternalEssentialOCL.g:2947:6: ( ruleInvalidLiteralExpCS )
+                    // InternalEssentialOCL.g:2948:1: ruleInvalidLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
@@ -9223,10 +9223,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalEssentialOCL.g:2951:6: ( ruleNullLiteralExpCS )
+                    // InternalEssentialOCL.g:2953:6: ( ruleNullLiteralExpCS )
                     {
-                    // InternalEssentialOCL.g:2951:6: ( ruleNullLiteralExpCS )
-                    // InternalEssentialOCL.g:2952:1: ruleNullLiteralExpCS
+                    // InternalEssentialOCL.g:2953:6: ( ruleNullLiteralExpCS )
+                    // InternalEssentialOCL.g:2954:1: ruleNullLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
@@ -9263,13 +9263,13 @@
 
 
     // $ANTLR start "rule__BooleanLiteralExpCS__Alternatives"
-    // InternalEssentialOCL.g:2962:1: rule__BooleanLiteralExpCS__Alternatives : ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) );
+    // InternalEssentialOCL.g:2964:1: rule__BooleanLiteralExpCS__Alternatives : ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) );
     public final void rule__BooleanLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2966:1: ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) )
+            // InternalEssentialOCL.g:2968:1: ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) )
             int alt14=2;
             int LA14_0 = input.LA(1);
 
@@ -9288,16 +9288,16 @@
             }
             switch (alt14) {
                 case 1 :
-                    // InternalEssentialOCL.g:2967:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
+                    // InternalEssentialOCL.g:2969:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
                     {
-                    // InternalEssentialOCL.g:2967:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
-                    // InternalEssentialOCL.g:2968:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
+                    // InternalEssentialOCL.g:2969:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
+                    // InternalEssentialOCL.g:2970:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0());
                     }
-                    // InternalEssentialOCL.g:2969:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
-                    // InternalEssentialOCL.g:2969:2: rule__BooleanLiteralExpCS__SymbolAssignment_0
+                    // InternalEssentialOCL.g:2971:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
+                    // InternalEssentialOCL.g:2971:2: rule__BooleanLiteralExpCS__SymbolAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__BooleanLiteralExpCS__SymbolAssignment_0();
@@ -9317,16 +9317,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2973:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
+                    // InternalEssentialOCL.g:2975:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
                     {
-                    // InternalEssentialOCL.g:2973:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
-                    // InternalEssentialOCL.g:2974:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
+                    // InternalEssentialOCL.g:2975:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
+                    // InternalEssentialOCL.g:2976:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1());
                     }
-                    // InternalEssentialOCL.g:2975:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
-                    // InternalEssentialOCL.g:2975:2: rule__BooleanLiteralExpCS__SymbolAssignment_1
+                    // InternalEssentialOCL.g:2977:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
+                    // InternalEssentialOCL.g:2977:2: rule__BooleanLiteralExpCS__SymbolAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__BooleanLiteralExpCS__SymbolAssignment_1();
@@ -9363,13 +9363,13 @@
 
 
     // $ANTLR start "rule__TypeLiteralCS__Alternatives"
-    // InternalEssentialOCL.g:2984:1: rule__TypeLiteralCS__Alternatives : ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) );
+    // InternalEssentialOCL.g:2986:1: rule__TypeLiteralCS__Alternatives : ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) );
     public final void rule__TypeLiteralCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:2988:1: ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) )
+            // InternalEssentialOCL.g:2990:1: ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) )
             int alt15=4;
             switch ( input.LA(1) ) {
             case 42:
@@ -9413,10 +9413,10 @@
 
             switch (alt15) {
                 case 1 :
-                    // InternalEssentialOCL.g:2989:1: ( rulePrimitiveTypeCS )
+                    // InternalEssentialOCL.g:2991:1: ( rulePrimitiveTypeCS )
                     {
-                    // InternalEssentialOCL.g:2989:1: ( rulePrimitiveTypeCS )
-                    // InternalEssentialOCL.g:2990:1: rulePrimitiveTypeCS
+                    // InternalEssentialOCL.g:2991:1: ( rulePrimitiveTypeCS )
+                    // InternalEssentialOCL.g:2992:1: rulePrimitiveTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
@@ -9436,10 +9436,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:2995:6: ( ruleCollectionTypeCS )
+                    // InternalEssentialOCL.g:2997:6: ( ruleCollectionTypeCS )
                     {
-                    // InternalEssentialOCL.g:2995:6: ( ruleCollectionTypeCS )
-                    // InternalEssentialOCL.g:2996:1: ruleCollectionTypeCS
+                    // InternalEssentialOCL.g:2997:6: ( ruleCollectionTypeCS )
+                    // InternalEssentialOCL.g:2998:1: ruleCollectionTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
@@ -9459,10 +9459,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:3001:6: ( ruleMapTypeCS )
+                    // InternalEssentialOCL.g:3003:6: ( ruleMapTypeCS )
                     {
-                    // InternalEssentialOCL.g:3001:6: ( ruleMapTypeCS )
-                    // InternalEssentialOCL.g:3002:1: ruleMapTypeCS
+                    // InternalEssentialOCL.g:3003:6: ( ruleMapTypeCS )
+                    // InternalEssentialOCL.g:3004:1: ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
@@ -9482,10 +9482,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalEssentialOCL.g:3007:6: ( ruleTupleTypeCS )
+                    // InternalEssentialOCL.g:3009:6: ( ruleTupleTypeCS )
                     {
-                    // InternalEssentialOCL.g:3007:6: ( ruleTupleTypeCS )
-                    // InternalEssentialOCL.g:3008:1: ruleTupleTypeCS
+                    // InternalEssentialOCL.g:3009:6: ( ruleTupleTypeCS )
+                    // InternalEssentialOCL.g:3010:1: ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
@@ -9522,21 +9522,21 @@
 
 
     // $ANTLR start "rule__TypeExpWithoutMultiplicityCS__Alternatives"
-    // InternalEssentialOCL.g:3018:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );
+    // InternalEssentialOCL.g:3020:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );
     public final void rule__TypeExpWithoutMultiplicityCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3022:1: ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) )
+            // InternalEssentialOCL.g:3024:1: ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) )
             int alt16=3;
             alt16 = dfa16.predict(input);
             switch (alt16) {
                 case 1 :
-                    // InternalEssentialOCL.g:3023:1: ( ruleTypeNameExpCS )
+                    // InternalEssentialOCL.g:3025:1: ( ruleTypeNameExpCS )
                     {
-                    // InternalEssentialOCL.g:3023:1: ( ruleTypeNameExpCS )
-                    // InternalEssentialOCL.g:3024:1: ruleTypeNameExpCS
+                    // InternalEssentialOCL.g:3025:1: ( ruleTypeNameExpCS )
+                    // InternalEssentialOCL.g:3026:1: ruleTypeNameExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeNameExpCSParserRuleCall_0());
@@ -9556,10 +9556,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3029:6: ( ruleTypeLiteralCS )
+                    // InternalEssentialOCL.g:3031:6: ( ruleTypeLiteralCS )
                     {
-                    // InternalEssentialOCL.g:3029:6: ( ruleTypeLiteralCS )
-                    // InternalEssentialOCL.g:3030:1: ruleTypeLiteralCS
+                    // InternalEssentialOCL.g:3031:6: ( ruleTypeLiteralCS )
+                    // InternalEssentialOCL.g:3032:1: ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_1());
@@ -9579,10 +9579,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:3035:6: ( ruleCollectionPatternCS )
+                    // InternalEssentialOCL.g:3037:6: ( ruleCollectionPatternCS )
                     {
-                    // InternalEssentialOCL.g:3035:6: ( ruleCollectionPatternCS )
-                    // InternalEssentialOCL.g:3036:1: ruleCollectionPatternCS
+                    // InternalEssentialOCL.g:3037:6: ( ruleCollectionPatternCS )
+                    // InternalEssentialOCL.g:3038:1: ruleCollectionPatternCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getCollectionPatternCSParserRuleCall_2());
@@ -9619,27 +9619,27 @@
 
 
     // $ANTLR start "rule__ExpCS__Alternatives"
-    // InternalEssentialOCL.g:3046:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );
+    // InternalEssentialOCL.g:3048:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );
     public final void rule__ExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3050:1: ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) )
+            // InternalEssentialOCL.g:3052:1: ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) )
             int alt17=2;
             alt17 = dfa17.predict(input);
             switch (alt17) {
                 case 1 :
-                    // InternalEssentialOCL.g:3051:1: ( ( rule__ExpCS__Group_0__0 ) )
+                    // InternalEssentialOCL.g:3053:1: ( ( rule__ExpCS__Group_0__0 ) )
                     {
-                    // InternalEssentialOCL.g:3051:1: ( ( rule__ExpCS__Group_0__0 ) )
-                    // InternalEssentialOCL.g:3052:1: ( rule__ExpCS__Group_0__0 )
+                    // InternalEssentialOCL.g:3053:1: ( ( rule__ExpCS__Group_0__0 ) )
+                    // InternalEssentialOCL.g:3054:1: ( rule__ExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getExpCSAccess().getGroup_0());
                     }
-                    // InternalEssentialOCL.g:3053:1: ( rule__ExpCS__Group_0__0 )
-                    // InternalEssentialOCL.g:3053:2: rule__ExpCS__Group_0__0
+                    // InternalEssentialOCL.g:3055:1: ( rule__ExpCS__Group_0__0 )
+                    // InternalEssentialOCL.g:3055:2: rule__ExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ExpCS__Group_0__0();
@@ -9659,10 +9659,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3057:6: ( rulePrefixedLetExpCS )
+                    // InternalEssentialOCL.g:3059:6: ( rulePrefixedLetExpCS )
                     {
-                    // InternalEssentialOCL.g:3057:6: ( rulePrefixedLetExpCS )
-                    // InternalEssentialOCL.g:3058:1: rulePrefixedLetExpCS
+                    // InternalEssentialOCL.g:3059:6: ( rulePrefixedLetExpCS )
+                    // InternalEssentialOCL.g:3060:1: rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
@@ -9699,13 +9699,13 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Alternatives"
-    // InternalEssentialOCL.g:3068:1: rule__PrefixedLetExpCS__Alternatives : ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) );
+    // InternalEssentialOCL.g:3070:1: rule__PrefixedLetExpCS__Alternatives : ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) );
     public final void rule__PrefixedLetExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3072:1: ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) )
+            // InternalEssentialOCL.g:3074:1: ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) )
             int alt18=2;
             int LA18_0 = input.LA(1);
 
@@ -9724,16 +9724,16 @@
             }
             switch (alt18) {
                 case 1 :
-                    // InternalEssentialOCL.g:3073:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
+                    // InternalEssentialOCL.g:3075:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
                     {
-                    // InternalEssentialOCL.g:3073:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
-                    // InternalEssentialOCL.g:3074:1: ( rule__PrefixedLetExpCS__Group_0__0 )
+                    // InternalEssentialOCL.g:3075:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
+                    // InternalEssentialOCL.g:3076:1: ( rule__PrefixedLetExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0());
                     }
-                    // InternalEssentialOCL.g:3075:1: ( rule__PrefixedLetExpCS__Group_0__0 )
-                    // InternalEssentialOCL.g:3075:2: rule__PrefixedLetExpCS__Group_0__0
+                    // InternalEssentialOCL.g:3077:1: ( rule__PrefixedLetExpCS__Group_0__0 )
+                    // InternalEssentialOCL.g:3077:2: rule__PrefixedLetExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PrefixedLetExpCS__Group_0__0();
@@ -9753,10 +9753,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3079:6: ( ruleLetExpCS )
+                    // InternalEssentialOCL.g:3081:6: ( ruleLetExpCS )
                     {
-                    // InternalEssentialOCL.g:3079:6: ( ruleLetExpCS )
-                    // InternalEssentialOCL.g:3080:1: ruleLetExpCS
+                    // InternalEssentialOCL.g:3081:6: ( ruleLetExpCS )
+                    // InternalEssentialOCL.g:3082:1: ruleLetExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
@@ -9793,13 +9793,13 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Alternatives"
-    // InternalEssentialOCL.g:3090:1: rule__PrefixedPrimaryExpCS__Alternatives : ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) );
+    // InternalEssentialOCL.g:3092:1: rule__PrefixedPrimaryExpCS__Alternatives : ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) );
     public final void rule__PrefixedPrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3094:1: ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) )
+            // InternalEssentialOCL.g:3096:1: ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) )
             int alt19=2;
             int LA19_0 = input.LA(1);
 
@@ -9818,16 +9818,16 @@
             }
             switch (alt19) {
                 case 1 :
-                    // InternalEssentialOCL.g:3095:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
+                    // InternalEssentialOCL.g:3097:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
                     {
-                    // InternalEssentialOCL.g:3095:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
-                    // InternalEssentialOCL.g:3096:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
+                    // InternalEssentialOCL.g:3097:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
+                    // InternalEssentialOCL.g:3098:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0());
                     }
-                    // InternalEssentialOCL.g:3097:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
-                    // InternalEssentialOCL.g:3097:2: rule__PrefixedPrimaryExpCS__Group_0__0
+                    // InternalEssentialOCL.g:3099:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
+                    // InternalEssentialOCL.g:3099:2: rule__PrefixedPrimaryExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PrefixedPrimaryExpCS__Group_0__0();
@@ -9847,10 +9847,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3101:6: ( rulePrimaryExpCS )
+                    // InternalEssentialOCL.g:3103:6: ( rulePrimaryExpCS )
                     {
-                    // InternalEssentialOCL.g:3101:6: ( rulePrimaryExpCS )
-                    // InternalEssentialOCL.g:3102:1: rulePrimaryExpCS
+                    // InternalEssentialOCL.g:3103:6: ( rulePrimaryExpCS )
+                    // InternalEssentialOCL.g:3104:1: rulePrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
@@ -9887,21 +9887,21 @@
 
 
     // $ANTLR start "rule__PrimaryExpCS__Alternatives"
-    // InternalEssentialOCL.g:3112:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );
+    // InternalEssentialOCL.g:3114:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );
     public final void rule__PrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3116:1: ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) )
+            // InternalEssentialOCL.g:3118:1: ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) )
             int alt20=10;
             alt20 = dfa20.predict(input);
             switch (alt20) {
                 case 1 :
-                    // InternalEssentialOCL.g:3117:1: ( ruleNestedExpCS )
+                    // InternalEssentialOCL.g:3119:1: ( ruleNestedExpCS )
                     {
-                    // InternalEssentialOCL.g:3117:1: ( ruleNestedExpCS )
-                    // InternalEssentialOCL.g:3118:1: ruleNestedExpCS
+                    // InternalEssentialOCL.g:3119:1: ( ruleNestedExpCS )
+                    // InternalEssentialOCL.g:3120:1: ruleNestedExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
@@ -9921,10 +9921,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3123:6: ( ruleIfExpCS )
+                    // InternalEssentialOCL.g:3125:6: ( ruleIfExpCS )
                     {
-                    // InternalEssentialOCL.g:3123:6: ( ruleIfExpCS )
-                    // InternalEssentialOCL.g:3124:1: ruleIfExpCS
+                    // InternalEssentialOCL.g:3125:6: ( ruleIfExpCS )
+                    // InternalEssentialOCL.g:3126:1: ruleIfExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
@@ -9944,10 +9944,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:3129:6: ( ruleSelfExpCS )
+                    // InternalEssentialOCL.g:3131:6: ( ruleSelfExpCS )
                     {
-                    // InternalEssentialOCL.g:3129:6: ( ruleSelfExpCS )
-                    // InternalEssentialOCL.g:3130:1: ruleSelfExpCS
+                    // InternalEssentialOCL.g:3131:6: ( ruleSelfExpCS )
+                    // InternalEssentialOCL.g:3132:1: ruleSelfExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
@@ -9967,10 +9967,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalEssentialOCL.g:3135:6: ( rulePrimitiveLiteralExpCS )
+                    // InternalEssentialOCL.g:3137:6: ( rulePrimitiveLiteralExpCS )
                     {
-                    // InternalEssentialOCL.g:3135:6: ( rulePrimitiveLiteralExpCS )
-                    // InternalEssentialOCL.g:3136:1: rulePrimitiveLiteralExpCS
+                    // InternalEssentialOCL.g:3137:6: ( rulePrimitiveLiteralExpCS )
+                    // InternalEssentialOCL.g:3138:1: rulePrimitiveLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
@@ -9990,10 +9990,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalEssentialOCL.g:3141:6: ( ruleTupleLiteralExpCS )
+                    // InternalEssentialOCL.g:3143:6: ( ruleTupleLiteralExpCS )
                     {
-                    // InternalEssentialOCL.g:3141:6: ( ruleTupleLiteralExpCS )
-                    // InternalEssentialOCL.g:3142:1: ruleTupleLiteralExpCS
+                    // InternalEssentialOCL.g:3143:6: ( ruleTupleLiteralExpCS )
+                    // InternalEssentialOCL.g:3144:1: ruleTupleLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
@@ -10013,10 +10013,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalEssentialOCL.g:3147:6: ( ruleMapLiteralExpCS )
+                    // InternalEssentialOCL.g:3149:6: ( ruleMapLiteralExpCS )
                     {
-                    // InternalEssentialOCL.g:3147:6: ( ruleMapLiteralExpCS )
-                    // InternalEssentialOCL.g:3148:1: ruleMapLiteralExpCS
+                    // InternalEssentialOCL.g:3149:6: ( ruleMapLiteralExpCS )
+                    // InternalEssentialOCL.g:3150:1: ruleMapLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
@@ -10036,10 +10036,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalEssentialOCL.g:3153:6: ( ruleCollectionLiteralExpCS )
+                    // InternalEssentialOCL.g:3155:6: ( ruleCollectionLiteralExpCS )
                     {
-                    // InternalEssentialOCL.g:3153:6: ( ruleCollectionLiteralExpCS )
-                    // InternalEssentialOCL.g:3154:1: ruleCollectionLiteralExpCS
+                    // InternalEssentialOCL.g:3155:6: ( ruleCollectionLiteralExpCS )
+                    // InternalEssentialOCL.g:3156:1: ruleCollectionLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
@@ -10059,10 +10059,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalEssentialOCL.g:3159:6: ( ruleLambdaLiteralExpCS )
+                    // InternalEssentialOCL.g:3161:6: ( ruleLambdaLiteralExpCS )
                     {
-                    // InternalEssentialOCL.g:3159:6: ( ruleLambdaLiteralExpCS )
-                    // InternalEssentialOCL.g:3160:1: ruleLambdaLiteralExpCS
+                    // InternalEssentialOCL.g:3161:6: ( ruleLambdaLiteralExpCS )
+                    // InternalEssentialOCL.g:3162:1: ruleLambdaLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
@@ -10082,10 +10082,10 @@
                     }
                     break;
                 case 9 :
-                    // InternalEssentialOCL.g:3165:6: ( ruleTypeLiteralExpCS )
+                    // InternalEssentialOCL.g:3167:6: ( ruleTypeLiteralExpCS )
                     {
-                    // InternalEssentialOCL.g:3165:6: ( ruleTypeLiteralExpCS )
-                    // InternalEssentialOCL.g:3166:1: ruleTypeLiteralExpCS
+                    // InternalEssentialOCL.g:3167:6: ( ruleTypeLiteralExpCS )
+                    // InternalEssentialOCL.g:3168:1: ruleTypeLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
@@ -10105,10 +10105,10 @@
                     }
                     break;
                 case 10 :
-                    // InternalEssentialOCL.g:3171:6: ( ruleNameExpCS )
+                    // InternalEssentialOCL.g:3173:6: ( ruleNameExpCS )
                     {
-                    // InternalEssentialOCL.g:3171:6: ( ruleNameExpCS )
-                    // InternalEssentialOCL.g:3172:1: ruleNameExpCS
+                    // InternalEssentialOCL.g:3173:6: ( ruleNameExpCS )
+                    // InternalEssentialOCL.g:3174:1: ruleNameExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
@@ -10145,13 +10145,13 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0"
-    // InternalEssentialOCL.g:3182:1: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 : ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) );
+    // InternalEssentialOCL.g:3184:1: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 : ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) );
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3186:1: ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) )
+            // InternalEssentialOCL.g:3188:1: ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) )
             int alt21=3;
             switch ( input.LA(1) ) {
             case 59:
@@ -10179,10 +10179,10 @@
 
             switch (alt21) {
                 case 1 :
-                    // InternalEssentialOCL.g:3187:1: ( ruleNavigatingCommaArgCS )
+                    // InternalEssentialOCL.g:3189:1: ( ruleNavigatingCommaArgCS )
                     {
-                    // InternalEssentialOCL.g:3187:1: ( ruleNavigatingCommaArgCS )
-                    // InternalEssentialOCL.g:3188:1: ruleNavigatingCommaArgCS
+                    // InternalEssentialOCL.g:3189:1: ( ruleNavigatingCommaArgCS )
+                    // InternalEssentialOCL.g:3190:1: ruleNavigatingCommaArgCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0_0());
@@ -10202,10 +10202,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3193:6: ( ruleNavigatingSemiArgCS )
+                    // InternalEssentialOCL.g:3195:6: ( ruleNavigatingSemiArgCS )
                     {
-                    // InternalEssentialOCL.g:3193:6: ( ruleNavigatingSemiArgCS )
-                    // InternalEssentialOCL.g:3194:1: ruleNavigatingSemiArgCS
+                    // InternalEssentialOCL.g:3195:6: ( ruleNavigatingSemiArgCS )
+                    // InternalEssentialOCL.g:3196:1: ruleNavigatingSemiArgCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_1_0_1());
@@ -10225,10 +10225,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:3199:6: ( ruleNavigatingBarArgCS )
+                    // InternalEssentialOCL.g:3201:6: ( ruleNavigatingBarArgCS )
                     {
-                    // InternalEssentialOCL.g:3199:6: ( ruleNavigatingBarArgCS )
-                    // InternalEssentialOCL.g:3200:1: ruleNavigatingBarArgCS
+                    // InternalEssentialOCL.g:3201:6: ( ruleNavigatingBarArgCS )
+                    // InternalEssentialOCL.g:3202:1: ruleNavigatingBarArgCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_1_0_2());
@@ -10265,13 +10265,13 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Alternatives"
-    // InternalEssentialOCL.g:3210:1: rule__NavigatingArgCS__Alternatives : ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) );
+    // InternalEssentialOCL.g:3212:1: rule__NavigatingArgCS__Alternatives : ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) );
     public final void rule__NavigatingArgCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3214:1: ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) )
+            // InternalEssentialOCL.g:3216:1: ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) )
             int alt22=2;
             int LA22_0 = input.LA(1);
 
@@ -10290,16 +10290,16 @@
             }
             switch (alt22) {
                 case 1 :
-                    // InternalEssentialOCL.g:3215:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
+                    // InternalEssentialOCL.g:3217:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
                     {
-                    // InternalEssentialOCL.g:3215:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
-                    // InternalEssentialOCL.g:3216:1: ( rule__NavigatingArgCS__Group_0__0 )
+                    // InternalEssentialOCL.g:3217:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
+                    // InternalEssentialOCL.g:3218:1: ( rule__NavigatingArgCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0());
                     }
-                    // InternalEssentialOCL.g:3217:1: ( rule__NavigatingArgCS__Group_0__0 )
-                    // InternalEssentialOCL.g:3217:2: rule__NavigatingArgCS__Group_0__0
+                    // InternalEssentialOCL.g:3219:1: ( rule__NavigatingArgCS__Group_0__0 )
+                    // InternalEssentialOCL.g:3219:2: rule__NavigatingArgCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0__0();
@@ -10319,16 +10319,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3221:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
+                    // InternalEssentialOCL.g:3223:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
                     {
-                    // InternalEssentialOCL.g:3221:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
-                    // InternalEssentialOCL.g:3222:1: ( rule__NavigatingArgCS__Group_1__0 )
+                    // InternalEssentialOCL.g:3223:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
+                    // InternalEssentialOCL.g:3224:1: ( rule__NavigatingArgCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_1());
                     }
-                    // InternalEssentialOCL.g:3223:1: ( rule__NavigatingArgCS__Group_1__0 )
-                    // InternalEssentialOCL.g:3223:2: rule__NavigatingArgCS__Group_1__0
+                    // InternalEssentialOCL.g:3225:1: ( rule__NavigatingArgCS__Group_1__0 )
+                    // InternalEssentialOCL.g:3225:2: rule__NavigatingArgCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_1__0();
@@ -10365,13 +10365,13 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Alternatives_0_1"
-    // InternalEssentialOCL.g:3232:1: rule__NavigatingArgCS__Alternatives_0_1 : ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) );
+    // InternalEssentialOCL.g:3234:1: rule__NavigatingArgCS__Alternatives_0_1 : ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) );
     public final void rule__NavigatingArgCS__Alternatives_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3236:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) )
+            // InternalEssentialOCL.g:3238:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) )
             int alt23=3;
             switch ( input.LA(1) ) {
             case 66:
@@ -10427,16 +10427,16 @@
 
             switch (alt23) {
                 case 1 :
-                    // InternalEssentialOCL.g:3237:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+                    // InternalEssentialOCL.g:3239:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
                     {
-                    // InternalEssentialOCL.g:3237:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
-                    // InternalEssentialOCL.g:3238:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+                    // InternalEssentialOCL.g:3239:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+                    // InternalEssentialOCL.g:3240:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
                     }
-                    // InternalEssentialOCL.g:3239:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
-                    // InternalEssentialOCL.g:3239:2: rule__NavigatingArgCS__Group_0_1_0__0
+                    // InternalEssentialOCL.g:3241:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+                    // InternalEssentialOCL.g:3241:2: rule__NavigatingArgCS__Group_0_1_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_0__0();
@@ -10456,16 +10456,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3243:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+                    // InternalEssentialOCL.g:3245:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
                     {
-                    // InternalEssentialOCL.g:3243:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
-                    // InternalEssentialOCL.g:3244:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+                    // InternalEssentialOCL.g:3245:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+                    // InternalEssentialOCL.g:3246:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
                     }
-                    // InternalEssentialOCL.g:3245:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
-                    // InternalEssentialOCL.g:3245:2: rule__NavigatingArgCS__Group_0_1_1__0
+                    // InternalEssentialOCL.g:3247:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+                    // InternalEssentialOCL.g:3247:2: rule__NavigatingArgCS__Group_0_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_1__0();
@@ -10485,16 +10485,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:3249:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
+                    // InternalEssentialOCL.g:3251:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
                     {
-                    // InternalEssentialOCL.g:3249:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
-                    // InternalEssentialOCL.g:3250:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
+                    // InternalEssentialOCL.g:3251:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
+                    // InternalEssentialOCL.g:3252:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_2());
                     }
-                    // InternalEssentialOCL.g:3251:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
-                    // InternalEssentialOCL.g:3251:2: rule__NavigatingArgCS__Group_0_1_2__0
+                    // InternalEssentialOCL.g:3253:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
+                    // InternalEssentialOCL.g:3253:2: rule__NavigatingArgCS__Group_0_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_2__0();
@@ -10531,13 +10531,13 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Alternatives_2"
-    // InternalEssentialOCL.g:3260:1: rule__NavigatingCommaArgCS__Alternatives_2 : ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) );
+    // InternalEssentialOCL.g:3262:1: rule__NavigatingCommaArgCS__Alternatives_2 : ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) );
     public final void rule__NavigatingCommaArgCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3264:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) )
+            // InternalEssentialOCL.g:3266:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) )
             int alt24=3;
             switch ( input.LA(1) ) {
             case 66:
@@ -10593,16 +10593,16 @@
 
             switch (alt24) {
                 case 1 :
-                    // InternalEssentialOCL.g:3265:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+                    // InternalEssentialOCL.g:3267:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
                     {
-                    // InternalEssentialOCL.g:3265:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
-                    // InternalEssentialOCL.g:3266:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+                    // InternalEssentialOCL.g:3267:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+                    // InternalEssentialOCL.g:3268:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
                     }
-                    // InternalEssentialOCL.g:3267:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
-                    // InternalEssentialOCL.g:3267:2: rule__NavigatingCommaArgCS__Group_2_0__0
+                    // InternalEssentialOCL.g:3269:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+                    // InternalEssentialOCL.g:3269:2: rule__NavigatingCommaArgCS__Group_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_0__0();
@@ -10622,16 +10622,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3271:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+                    // InternalEssentialOCL.g:3273:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
                     {
-                    // InternalEssentialOCL.g:3271:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
-                    // InternalEssentialOCL.g:3272:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+                    // InternalEssentialOCL.g:3273:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+                    // InternalEssentialOCL.g:3274:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
                     }
-                    // InternalEssentialOCL.g:3273:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
-                    // InternalEssentialOCL.g:3273:2: rule__NavigatingCommaArgCS__Group_2_1__0
+                    // InternalEssentialOCL.g:3275:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+                    // InternalEssentialOCL.g:3275:2: rule__NavigatingCommaArgCS__Group_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_1__0();
@@ -10651,16 +10651,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:3277:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
+                    // InternalEssentialOCL.g:3279:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
                     {
-                    // InternalEssentialOCL.g:3277:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
-                    // InternalEssentialOCL.g:3278:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
+                    // InternalEssentialOCL.g:3279:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
+                    // InternalEssentialOCL.g:3280:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_2());
                     }
-                    // InternalEssentialOCL.g:3279:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
-                    // InternalEssentialOCL.g:3279:2: rule__NavigatingCommaArgCS__Group_2_2__0
+                    // InternalEssentialOCL.g:3281:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
+                    // InternalEssentialOCL.g:3281:2: rule__NavigatingCommaArgCS__Group_2_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_2__0();
@@ -10697,13 +10697,13 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedConditionAlternatives_1_0"
-    // InternalEssentialOCL.g:3288:1: rule__IfExpCS__OwnedConditionAlternatives_1_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
+    // InternalEssentialOCL.g:3290:1: rule__IfExpCS__OwnedConditionAlternatives_1_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
     public final void rule__IfExpCS__OwnedConditionAlternatives_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3292:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
+            // InternalEssentialOCL.g:3294:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt25=2;
             switch ( input.LA(1) ) {
             case RULE_INT:
@@ -10793,10 +10793,10 @@
 
             switch (alt25) {
                 case 1 :
-                    // InternalEssentialOCL.g:3293:1: ( ruleExpCS )
+                    // InternalEssentialOCL.g:3295:1: ( ruleExpCS )
                     {
-                    // InternalEssentialOCL.g:3293:1: ( ruleExpCS )
-                    // InternalEssentialOCL.g:3294:1: ruleExpCS
+                    // InternalEssentialOCL.g:3295:1: ( ruleExpCS )
+                    // InternalEssentialOCL.g:3296:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
@@ -10816,10 +10816,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3299:6: ( rulePatternExpCS )
+                    // InternalEssentialOCL.g:3301:6: ( rulePatternExpCS )
                     {
-                    // InternalEssentialOCL.g:3299:6: ( rulePatternExpCS )
-                    // InternalEssentialOCL.g:3300:1: rulePatternExpCS
+                    // InternalEssentialOCL.g:3301:6: ( rulePatternExpCS )
+                    // InternalEssentialOCL.g:3302:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
@@ -10856,13 +10856,13 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Alternatives_1"
-    // InternalEssentialOCL.g:3310:1: rule__MultiplicityCS__Alternatives_1 : ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) );
+    // InternalEssentialOCL.g:3312:1: rule__MultiplicityCS__Alternatives_1 : ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) );
     public final void rule__MultiplicityCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3314:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
+            // InternalEssentialOCL.g:3316:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
             int alt26=2;
             int LA26_0 = input.LA(1);
 
@@ -10881,10 +10881,10 @@
             }
             switch (alt26) {
                 case 1 :
-                    // InternalEssentialOCL.g:3315:1: ( ruleMultiplicityBoundsCS )
+                    // InternalEssentialOCL.g:3317:1: ( ruleMultiplicityBoundsCS )
                     {
-                    // InternalEssentialOCL.g:3315:1: ( ruleMultiplicityBoundsCS )
-                    // InternalEssentialOCL.g:3316:1: ruleMultiplicityBoundsCS
+                    // InternalEssentialOCL.g:3317:1: ( ruleMultiplicityBoundsCS )
+                    // InternalEssentialOCL.g:3318:1: ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
@@ -10904,10 +10904,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3321:6: ( ruleMultiplicityStringCS )
+                    // InternalEssentialOCL.g:3323:6: ( ruleMultiplicityStringCS )
                     {
-                    // InternalEssentialOCL.g:3321:6: ( ruleMultiplicityStringCS )
-                    // InternalEssentialOCL.g:3322:1: ruleMultiplicityStringCS
+                    // InternalEssentialOCL.g:3323:6: ( ruleMultiplicityStringCS )
+                    // InternalEssentialOCL.g:3324:1: ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
@@ -10944,13 +10944,13 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Alternatives_2"
-    // InternalEssentialOCL.g:3332:1: rule__MultiplicityCS__Alternatives_2 : ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) );
+    // InternalEssentialOCL.g:3334:1: rule__MultiplicityCS__Alternatives_2 : ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) );
     public final void rule__MultiplicityCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3336:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
+            // InternalEssentialOCL.g:3338:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
             int alt27=2;
             int LA27_0 = input.LA(1);
 
@@ -10969,10 +10969,10 @@
             }
             switch (alt27) {
                 case 1 :
-                    // InternalEssentialOCL.g:3337:1: ( '|?' )
+                    // InternalEssentialOCL.g:3339:1: ( '|?' )
                     {
-                    // InternalEssentialOCL.g:3337:1: ( '|?' )
-                    // InternalEssentialOCL.g:3338:1: '|?'
+                    // InternalEssentialOCL.g:3339:1: ( '|?' )
+                    // InternalEssentialOCL.g:3340:1: '|?'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
@@ -10988,16 +10988,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3345:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
+                    // InternalEssentialOCL.g:3347:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
                     {
-                    // InternalEssentialOCL.g:3345:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
-                    // InternalEssentialOCL.g:3346:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
+                    // InternalEssentialOCL.g:3347:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
+                    // InternalEssentialOCL.g:3348:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
-                    // InternalEssentialOCL.g:3347:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
-                    // InternalEssentialOCL.g:3347:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
+                    // InternalEssentialOCL.g:3349:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
+                    // InternalEssentialOCL.g:3349:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityCS__IsNullFreeAssignment_2_1();
@@ -11034,13 +11034,13 @@
 
 
     // $ANTLR start "rule__MultiplicityStringCS__StringBoundsAlternatives_0"
-    // InternalEssentialOCL.g:3356:1: rule__MultiplicityStringCS__StringBoundsAlternatives_0 : ( ( '*' ) | ( '+' ) | ( '?' ) );
+    // InternalEssentialOCL.g:3358:1: rule__MultiplicityStringCS__StringBoundsAlternatives_0 : ( ( '*' ) | ( '+' ) | ( '?' ) );
     public final void rule__MultiplicityStringCS__StringBoundsAlternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3360:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
+            // InternalEssentialOCL.g:3362:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
             int alt28=3;
             switch ( input.LA(1) ) {
             case 19:
@@ -11068,10 +11068,10 @@
 
             switch (alt28) {
                 case 1 :
-                    // InternalEssentialOCL.g:3361:1: ( '*' )
+                    // InternalEssentialOCL.g:3363:1: ( '*' )
                     {
-                    // InternalEssentialOCL.g:3361:1: ( '*' )
-                    // InternalEssentialOCL.g:3362:1: '*'
+                    // InternalEssentialOCL.g:3363:1: ( '*' )
+                    // InternalEssentialOCL.g:3364:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
@@ -11087,10 +11087,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3369:6: ( '+' )
+                    // InternalEssentialOCL.g:3371:6: ( '+' )
                     {
-                    // InternalEssentialOCL.g:3369:6: ( '+' )
-                    // InternalEssentialOCL.g:3370:1: '+'
+                    // InternalEssentialOCL.g:3371:6: ( '+' )
+                    // InternalEssentialOCL.g:3372:1: '+'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
@@ -11106,10 +11106,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalEssentialOCL.g:3377:6: ( '?' )
+                    // InternalEssentialOCL.g:3379:6: ( '?' )
                     {
-                    // InternalEssentialOCL.g:3377:6: ( '?' )
-                    // InternalEssentialOCL.g:3378:1: '?'
+                    // InternalEssentialOCL.g:3379:6: ( '?' )
+                    // InternalEssentialOCL.g:3380:1: '?'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
@@ -11142,13 +11142,13 @@
 
 
     // $ANTLR start "rule__TypeRefCS__Alternatives"
-    // InternalEssentialOCL.g:3390:1: rule__TypeRefCS__Alternatives : ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) );
+    // InternalEssentialOCL.g:3392:1: rule__TypeRefCS__Alternatives : ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) );
     public final void rule__TypeRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3394:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
+            // InternalEssentialOCL.g:3396:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
             int alt29=2;
             int LA29_0 = input.LA(1);
 
@@ -11167,10 +11167,10 @@
             }
             switch (alt29) {
                 case 1 :
-                    // InternalEssentialOCL.g:3395:1: ( ruleTypedRefCS )
+                    // InternalEssentialOCL.g:3397:1: ( ruleTypedRefCS )
                     {
-                    // InternalEssentialOCL.g:3395:1: ( ruleTypedRefCS )
-                    // InternalEssentialOCL.g:3396:1: ruleTypedRefCS
+                    // InternalEssentialOCL.g:3397:1: ( ruleTypedRefCS )
+                    // InternalEssentialOCL.g:3398:1: ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
@@ -11190,10 +11190,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3401:6: ( ruleWildcardTypeRefCS )
+                    // InternalEssentialOCL.g:3403:6: ( ruleWildcardTypeRefCS )
                     {
-                    // InternalEssentialOCL.g:3401:6: ( ruleWildcardTypeRefCS )
-                    // InternalEssentialOCL.g:3402:1: ruleWildcardTypeRefCS
+                    // InternalEssentialOCL.g:3403:6: ( ruleWildcardTypeRefCS )
+                    // InternalEssentialOCL.g:3404:1: ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
@@ -11230,13 +11230,13 @@
 
 
     // $ANTLR start "rule__ID__Alternatives"
-    // InternalEssentialOCL.g:3412:1: rule__ID__Alternatives : ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) );
+    // InternalEssentialOCL.g:3414:1: rule__ID__Alternatives : ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) );
     public final void rule__ID__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3416:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
+            // InternalEssentialOCL.g:3418:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
             int alt30=2;
             int LA30_0 = input.LA(1);
 
@@ -11255,10 +11255,10 @@
             }
             switch (alt30) {
                 case 1 :
-                    // InternalEssentialOCL.g:3417:1: ( RULE_SIMPLE_ID )
+                    // InternalEssentialOCL.g:3419:1: ( RULE_SIMPLE_ID )
                     {
-                    // InternalEssentialOCL.g:3417:1: ( RULE_SIMPLE_ID )
-                    // InternalEssentialOCL.g:3418:1: RULE_SIMPLE_ID
+                    // InternalEssentialOCL.g:3419:1: ( RULE_SIMPLE_ID )
+                    // InternalEssentialOCL.g:3420:1: RULE_SIMPLE_ID
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
@@ -11274,10 +11274,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3423:6: ( RULE_ESCAPED_ID )
+                    // InternalEssentialOCL.g:3425:6: ( RULE_ESCAPED_ID )
                     {
-                    // InternalEssentialOCL.g:3423:6: ( RULE_ESCAPED_ID )
-                    // InternalEssentialOCL.g:3424:1: RULE_ESCAPED_ID
+                    // InternalEssentialOCL.g:3425:6: ( RULE_ESCAPED_ID )
+                    // InternalEssentialOCL.g:3426:1: RULE_ESCAPED_ID
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
@@ -11310,13 +11310,13 @@
 
 
     // $ANTLR start "rule__UPPER__Alternatives"
-    // InternalEssentialOCL.g:3434:1: rule__UPPER__Alternatives : ( ( RULE_INT ) | ( '*' ) );
+    // InternalEssentialOCL.g:3436:1: rule__UPPER__Alternatives : ( ( RULE_INT ) | ( '*' ) );
     public final void rule__UPPER__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3438:1: ( ( RULE_INT ) | ( '*' ) )
+            // InternalEssentialOCL.g:3440:1: ( ( RULE_INT ) | ( '*' ) )
             int alt31=2;
             int LA31_0 = input.LA(1);
 
@@ -11335,10 +11335,10 @@
             }
             switch (alt31) {
                 case 1 :
-                    // InternalEssentialOCL.g:3439:1: ( RULE_INT )
+                    // InternalEssentialOCL.g:3441:1: ( RULE_INT )
                     {
-                    // InternalEssentialOCL.g:3439:1: ( RULE_INT )
-                    // InternalEssentialOCL.g:3440:1: RULE_INT
+                    // InternalEssentialOCL.g:3441:1: ( RULE_INT )
+                    // InternalEssentialOCL.g:3442:1: RULE_INT
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
@@ -11354,10 +11354,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:3445:6: ( '*' )
+                    // InternalEssentialOCL.g:3447:6: ( '*' )
                     {
-                    // InternalEssentialOCL.g:3445:6: ( '*' )
-                    // InternalEssentialOCL.g:3446:1: '*'
+                    // InternalEssentialOCL.g:3447:6: ( '*' )
+                    // InternalEssentialOCL.g:3448:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
@@ -11390,14 +11390,14 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__0"
-    // InternalEssentialOCL.g:3462:1: rule__URIFirstPathElementCS__Group_1__0 : rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 ;
+    // InternalEssentialOCL.g:3464:1: rule__URIFirstPathElementCS__Group_1__0 : rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 ;
     public final void rule__URIFirstPathElementCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3466:1: ( rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 )
-            // InternalEssentialOCL.g:3467:2: rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1
+            // InternalEssentialOCL.g:3468:1: ( rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 )
+            // InternalEssentialOCL.g:3469:2: rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_4);
             rule__URIFirstPathElementCS__Group_1__0__Impl();
@@ -11428,23 +11428,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:3474:1: rule__URIFirstPathElementCS__Group_1__0__Impl : ( () ) ;
+    // InternalEssentialOCL.g:3476:1: rule__URIFirstPathElementCS__Group_1__0__Impl : ( () ) ;
     public final void rule__URIFirstPathElementCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3478:1: ( ( () ) )
-            // InternalEssentialOCL.g:3479:1: ( () )
+            // InternalEssentialOCL.g:3480:1: ( ( () ) )
+            // InternalEssentialOCL.g:3481:1: ( () )
             {
-            // InternalEssentialOCL.g:3479:1: ( () )
-            // InternalEssentialOCL.g:3480:1: ()
+            // InternalEssentialOCL.g:3481:1: ( () )
+            // InternalEssentialOCL.g:3482:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0());
             }
-            // InternalEssentialOCL.g:3481:1: ()
-            // InternalEssentialOCL.g:3483:1:
+            // InternalEssentialOCL.g:3483:1: ()
+            // InternalEssentialOCL.g:3485:1:
             {
             }
 
@@ -11469,14 +11469,14 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__1"
-    // InternalEssentialOCL.g:3493:1: rule__URIFirstPathElementCS__Group_1__1 : rule__URIFirstPathElementCS__Group_1__1__Impl ;
+    // InternalEssentialOCL.g:3495:1: rule__URIFirstPathElementCS__Group_1__1 : rule__URIFirstPathElementCS__Group_1__1__Impl ;
     public final void rule__URIFirstPathElementCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3497:1: ( rule__URIFirstPathElementCS__Group_1__1__Impl )
-            // InternalEssentialOCL.g:3498:2: rule__URIFirstPathElementCS__Group_1__1__Impl
+            // InternalEssentialOCL.g:3499:1: ( rule__URIFirstPathElementCS__Group_1__1__Impl )
+            // InternalEssentialOCL.g:3500:2: rule__URIFirstPathElementCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIFirstPathElementCS__Group_1__1__Impl();
@@ -11502,23 +11502,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:3504:1: rule__URIFirstPathElementCS__Group_1__1__Impl : ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) ;
+    // InternalEssentialOCL.g:3506:1: rule__URIFirstPathElementCS__Group_1__1__Impl : ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) ;
     public final void rule__URIFirstPathElementCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3508:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) )
-            // InternalEssentialOCL.g:3509:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
+            // InternalEssentialOCL.g:3510:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) )
+            // InternalEssentialOCL.g:3511:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
             {
-            // InternalEssentialOCL.g:3509:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
-            // InternalEssentialOCL.g:3510:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
+            // InternalEssentialOCL.g:3511:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
+            // InternalEssentialOCL.g:3512:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1());
             }
-            // InternalEssentialOCL.g:3511:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
-            // InternalEssentialOCL.g:3511:2: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1
+            // InternalEssentialOCL.g:3513:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
+            // InternalEssentialOCL.g:3513:2: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIFirstPathElementCS__ReferredElementAssignment_1_1();
@@ -11553,14 +11553,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__0"
-    // InternalEssentialOCL.g:3525:1: rule__CollectionTypeCS__Group__0 : rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 ;
+    // InternalEssentialOCL.g:3527:1: rule__CollectionTypeCS__Group__0 : rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 ;
     public final void rule__CollectionTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3529:1: ( rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 )
-            // InternalEssentialOCL.g:3530:2: rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1
+            // InternalEssentialOCL.g:3531:1: ( rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 )
+            // InternalEssentialOCL.g:3532:2: rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_5);
             rule__CollectionTypeCS__Group__0__Impl();
@@ -11591,23 +11591,23 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__0__Impl"
-    // InternalEssentialOCL.g:3537:1: rule__CollectionTypeCS__Group__0__Impl : ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:3539:1: rule__CollectionTypeCS__Group__0__Impl : ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) ;
     public final void rule__CollectionTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3541:1: ( ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) )
-            // InternalEssentialOCL.g:3542:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:3543:1: ( ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) )
+            // InternalEssentialOCL.g:3544:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:3542:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
-            // InternalEssentialOCL.g:3543:1: ( rule__CollectionTypeCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:3544:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:3545:1: ( rule__CollectionTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0());
             }
-            // InternalEssentialOCL.g:3544:1: ( rule__CollectionTypeCS__NameAssignment_0 )
-            // InternalEssentialOCL.g:3544:2: rule__CollectionTypeCS__NameAssignment_0
+            // InternalEssentialOCL.g:3546:1: ( rule__CollectionTypeCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:3546:2: rule__CollectionTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__NameAssignment_0();
@@ -11642,14 +11642,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__1"
-    // InternalEssentialOCL.g:3554:1: rule__CollectionTypeCS__Group__1 : rule__CollectionTypeCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:3556:1: rule__CollectionTypeCS__Group__1 : rule__CollectionTypeCS__Group__1__Impl ;
     public final void rule__CollectionTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3558:1: ( rule__CollectionTypeCS__Group__1__Impl )
-            // InternalEssentialOCL.g:3559:2: rule__CollectionTypeCS__Group__1__Impl
+            // InternalEssentialOCL.g:3560:1: ( rule__CollectionTypeCS__Group__1__Impl )
+            // InternalEssentialOCL.g:3561:2: rule__CollectionTypeCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__Group__1__Impl();
@@ -11675,22 +11675,22 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__1__Impl"
-    // InternalEssentialOCL.g:3565:1: rule__CollectionTypeCS__Group__1__Impl : ( ( rule__CollectionTypeCS__Group_1__0 )? ) ;
+    // InternalEssentialOCL.g:3567:1: rule__CollectionTypeCS__Group__1__Impl : ( ( rule__CollectionTypeCS__Group_1__0 )? ) ;
     public final void rule__CollectionTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3569:1: ( ( ( rule__CollectionTypeCS__Group_1__0 )? ) )
-            // InternalEssentialOCL.g:3570:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:3571:1: ( ( ( rule__CollectionTypeCS__Group_1__0 )? ) )
+            // InternalEssentialOCL.g:3572:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
             {
-            // InternalEssentialOCL.g:3570:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
-            // InternalEssentialOCL.g:3571:1: ( rule__CollectionTypeCS__Group_1__0 )?
+            // InternalEssentialOCL.g:3572:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:3573:1: ( rule__CollectionTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getGroup_1());
             }
-            // InternalEssentialOCL.g:3572:1: ( rule__CollectionTypeCS__Group_1__0 )?
+            // InternalEssentialOCL.g:3574:1: ( rule__CollectionTypeCS__Group_1__0 )?
             int alt32=2;
             int LA32_0 = input.LA(1);
 
@@ -11699,7 +11699,7 @@
             }
             switch (alt32) {
                 case 1 :
-                    // InternalEssentialOCL.g:3572:2: rule__CollectionTypeCS__Group_1__0
+                    // InternalEssentialOCL.g:3574:2: rule__CollectionTypeCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionTypeCS__Group_1__0();
@@ -11737,14 +11737,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__0"
-    // InternalEssentialOCL.g:3586:1: rule__CollectionTypeCS__Group_1__0 : rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 ;
+    // InternalEssentialOCL.g:3588:1: rule__CollectionTypeCS__Group_1__0 : rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 ;
     public final void rule__CollectionTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3590:1: ( rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 )
-            // InternalEssentialOCL.g:3591:2: rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1
+            // InternalEssentialOCL.g:3592:1: ( rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 )
+            // InternalEssentialOCL.g:3593:2: rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__CollectionTypeCS__Group_1__0__Impl();
@@ -11775,17 +11775,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:3598:1: rule__CollectionTypeCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalEssentialOCL.g:3600:1: rule__CollectionTypeCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__CollectionTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3602:1: ( ( '(' ) )
-            // InternalEssentialOCL.g:3603:1: ( '(' )
+            // InternalEssentialOCL.g:3604:1: ( ( '(' ) )
+            // InternalEssentialOCL.g:3605:1: ( '(' )
             {
-            // InternalEssentialOCL.g:3603:1: ( '(' )
-            // InternalEssentialOCL.g:3604:1: '('
+            // InternalEssentialOCL.g:3605:1: ( '(' )
+            // InternalEssentialOCL.g:3606:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -11816,14 +11816,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__1"
-    // InternalEssentialOCL.g:3617:1: rule__CollectionTypeCS__Group_1__1 : rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 ;
+    // InternalEssentialOCL.g:3619:1: rule__CollectionTypeCS__Group_1__1 : rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 ;
     public final void rule__CollectionTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3621:1: ( rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 )
-            // InternalEssentialOCL.g:3622:2: rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2
+            // InternalEssentialOCL.g:3623:1: ( rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 )
+            // InternalEssentialOCL.g:3624:2: rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__CollectionTypeCS__Group_1__1__Impl();
@@ -11854,23 +11854,23 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:3629:1: rule__CollectionTypeCS__Group_1__1__Impl : ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalEssentialOCL.g:3631:1: rule__CollectionTypeCS__Group_1__1__Impl : ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__CollectionTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3633:1: ( ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalEssentialOCL.g:3634:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
+            // InternalEssentialOCL.g:3635:1: ( ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalEssentialOCL.g:3636:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalEssentialOCL.g:3634:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
-            // InternalEssentialOCL.g:3635:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
+            // InternalEssentialOCL.g:3636:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
+            // InternalEssentialOCL.g:3637:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalEssentialOCL.g:3636:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
-            // InternalEssentialOCL.g:3636:2: rule__CollectionTypeCS__OwnedTypeAssignment_1_1
+            // InternalEssentialOCL.g:3638:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
+            // InternalEssentialOCL.g:3638:2: rule__CollectionTypeCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__OwnedTypeAssignment_1_1();
@@ -11905,14 +11905,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__2"
-    // InternalEssentialOCL.g:3646:1: rule__CollectionTypeCS__Group_1__2 : rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 ;
+    // InternalEssentialOCL.g:3648:1: rule__CollectionTypeCS__Group_1__2 : rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 ;
     public final void rule__CollectionTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3650:1: ( rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 )
-            // InternalEssentialOCL.g:3651:2: rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3
+            // InternalEssentialOCL.g:3652:1: ( rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 )
+            // InternalEssentialOCL.g:3653:2: rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__CollectionTypeCS__Group_1__2__Impl();
@@ -11943,22 +11943,22 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__2__Impl"
-    // InternalEssentialOCL.g:3658:1: rule__CollectionTypeCS__Group_1__2__Impl : ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) ;
+    // InternalEssentialOCL.g:3660:1: rule__CollectionTypeCS__Group_1__2__Impl : ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) ;
     public final void rule__CollectionTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3662:1: ( ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) )
-            // InternalEssentialOCL.g:3663:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
+            // InternalEssentialOCL.g:3664:1: ( ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) )
+            // InternalEssentialOCL.g:3665:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
             {
-            // InternalEssentialOCL.g:3663:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
-            // InternalEssentialOCL.g:3664:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
+            // InternalEssentialOCL.g:3665:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
+            // InternalEssentialOCL.g:3666:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedCollectionMultiplicityAssignment_1_2());
             }
-            // InternalEssentialOCL.g:3665:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
+            // InternalEssentialOCL.g:3667:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
             int alt33=2;
             int LA33_0 = input.LA(1);
 
@@ -11967,7 +11967,7 @@
             }
             switch (alt33) {
                 case 1 :
-                    // InternalEssentialOCL.g:3665:2: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2
+                    // InternalEssentialOCL.g:3667:2: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2();
@@ -12005,14 +12005,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__3"
-    // InternalEssentialOCL.g:3675:1: rule__CollectionTypeCS__Group_1__3 : rule__CollectionTypeCS__Group_1__3__Impl ;
+    // InternalEssentialOCL.g:3677:1: rule__CollectionTypeCS__Group_1__3 : rule__CollectionTypeCS__Group_1__3__Impl ;
     public final void rule__CollectionTypeCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3679:1: ( rule__CollectionTypeCS__Group_1__3__Impl )
-            // InternalEssentialOCL.g:3680:2: rule__CollectionTypeCS__Group_1__3__Impl
+            // InternalEssentialOCL.g:3681:1: ( rule__CollectionTypeCS__Group_1__3__Impl )
+            // InternalEssentialOCL.g:3682:2: rule__CollectionTypeCS__Group_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__Group_1__3__Impl();
@@ -12038,17 +12038,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__3__Impl"
-    // InternalEssentialOCL.g:3686:1: rule__CollectionTypeCS__Group_1__3__Impl : ( ')' ) ;
+    // InternalEssentialOCL.g:3688:1: rule__CollectionTypeCS__Group_1__3__Impl : ( ')' ) ;
     public final void rule__CollectionTypeCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3690:1: ( ( ')' ) )
-            // InternalEssentialOCL.g:3691:1: ( ')' )
+            // InternalEssentialOCL.g:3692:1: ( ( ')' ) )
+            // InternalEssentialOCL.g:3693:1: ( ')' )
             {
-            // InternalEssentialOCL.g:3691:1: ( ')' )
-            // InternalEssentialOCL.g:3692:1: ')'
+            // InternalEssentialOCL.g:3693:1: ( ')' )
+            // InternalEssentialOCL.g:3694:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_3());
@@ -12079,14 +12079,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__0"
-    // InternalEssentialOCL.g:3713:1: rule__MapTypeCS__Group__0 : rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 ;
+    // InternalEssentialOCL.g:3715:1: rule__MapTypeCS__Group__0 : rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 ;
     public final void rule__MapTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3717:1: ( rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 )
-            // InternalEssentialOCL.g:3718:2: rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1
+            // InternalEssentialOCL.g:3719:1: ( rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 )
+            // InternalEssentialOCL.g:3720:2: rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_5);
             rule__MapTypeCS__Group__0__Impl();
@@ -12117,23 +12117,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__0__Impl"
-    // InternalEssentialOCL.g:3725:1: rule__MapTypeCS__Group__0__Impl : ( ( rule__MapTypeCS__NameAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:3727:1: rule__MapTypeCS__Group__0__Impl : ( ( rule__MapTypeCS__NameAssignment_0 ) ) ;
     public final void rule__MapTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3729:1: ( ( ( rule__MapTypeCS__NameAssignment_0 ) ) )
-            // InternalEssentialOCL.g:3730:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:3731:1: ( ( ( rule__MapTypeCS__NameAssignment_0 ) ) )
+            // InternalEssentialOCL.g:3732:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:3730:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
-            // InternalEssentialOCL.g:3731:1: ( rule__MapTypeCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:3732:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:3733:1: ( rule__MapTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getNameAssignment_0());
             }
-            // InternalEssentialOCL.g:3732:1: ( rule__MapTypeCS__NameAssignment_0 )
-            // InternalEssentialOCL.g:3732:2: rule__MapTypeCS__NameAssignment_0
+            // InternalEssentialOCL.g:3734:1: ( rule__MapTypeCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:3734:2: rule__MapTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__NameAssignment_0();
@@ -12168,14 +12168,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__1"
-    // InternalEssentialOCL.g:3742:1: rule__MapTypeCS__Group__1 : rule__MapTypeCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:3744:1: rule__MapTypeCS__Group__1 : rule__MapTypeCS__Group__1__Impl ;
     public final void rule__MapTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3746:1: ( rule__MapTypeCS__Group__1__Impl )
-            // InternalEssentialOCL.g:3747:2: rule__MapTypeCS__Group__1__Impl
+            // InternalEssentialOCL.g:3748:1: ( rule__MapTypeCS__Group__1__Impl )
+            // InternalEssentialOCL.g:3749:2: rule__MapTypeCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__Group__1__Impl();
@@ -12201,22 +12201,22 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__1__Impl"
-    // InternalEssentialOCL.g:3753:1: rule__MapTypeCS__Group__1__Impl : ( ( rule__MapTypeCS__Group_1__0 )? ) ;
+    // InternalEssentialOCL.g:3755:1: rule__MapTypeCS__Group__1__Impl : ( ( rule__MapTypeCS__Group_1__0 )? ) ;
     public final void rule__MapTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3757:1: ( ( ( rule__MapTypeCS__Group_1__0 )? ) )
-            // InternalEssentialOCL.g:3758:1: ( ( rule__MapTypeCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:3759:1: ( ( ( rule__MapTypeCS__Group_1__0 )? ) )
+            // InternalEssentialOCL.g:3760:1: ( ( rule__MapTypeCS__Group_1__0 )? )
             {
-            // InternalEssentialOCL.g:3758:1: ( ( rule__MapTypeCS__Group_1__0 )? )
-            // InternalEssentialOCL.g:3759:1: ( rule__MapTypeCS__Group_1__0 )?
+            // InternalEssentialOCL.g:3760:1: ( ( rule__MapTypeCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:3761:1: ( rule__MapTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getGroup_1());
             }
-            // InternalEssentialOCL.g:3760:1: ( rule__MapTypeCS__Group_1__0 )?
+            // InternalEssentialOCL.g:3762:1: ( rule__MapTypeCS__Group_1__0 )?
             int alt34=2;
             int LA34_0 = input.LA(1);
 
@@ -12225,7 +12225,7 @@
             }
             switch (alt34) {
                 case 1 :
-                    // InternalEssentialOCL.g:3760:2: rule__MapTypeCS__Group_1__0
+                    // InternalEssentialOCL.g:3762:2: rule__MapTypeCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MapTypeCS__Group_1__0();
@@ -12263,14 +12263,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__0"
-    // InternalEssentialOCL.g:3774:1: rule__MapTypeCS__Group_1__0 : rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 ;
+    // InternalEssentialOCL.g:3776:1: rule__MapTypeCS__Group_1__0 : rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 ;
     public final void rule__MapTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3778:1: ( rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 )
-            // InternalEssentialOCL.g:3779:2: rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1
+            // InternalEssentialOCL.g:3780:1: ( rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 )
+            // InternalEssentialOCL.g:3781:2: rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__MapTypeCS__Group_1__0__Impl();
@@ -12301,17 +12301,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:3786:1: rule__MapTypeCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalEssentialOCL.g:3788:1: rule__MapTypeCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__MapTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3790:1: ( ( '(' ) )
-            // InternalEssentialOCL.g:3791:1: ( '(' )
+            // InternalEssentialOCL.g:3792:1: ( ( '(' ) )
+            // InternalEssentialOCL.g:3793:1: ( '(' )
             {
-            // InternalEssentialOCL.g:3791:1: ( '(' )
-            // InternalEssentialOCL.g:3792:1: '('
+            // InternalEssentialOCL.g:3793:1: ( '(' )
+            // InternalEssentialOCL.g:3794:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -12342,14 +12342,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__1"
-    // InternalEssentialOCL.g:3805:1: rule__MapTypeCS__Group_1__1 : rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 ;
+    // InternalEssentialOCL.g:3807:1: rule__MapTypeCS__Group_1__1 : rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 ;
     public final void rule__MapTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3809:1: ( rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 )
-            // InternalEssentialOCL.g:3810:2: rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2
+            // InternalEssentialOCL.g:3811:1: ( rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 )
+            // InternalEssentialOCL.g:3812:2: rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_8);
             rule__MapTypeCS__Group_1__1__Impl();
@@ -12380,23 +12380,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:3817:1: rule__MapTypeCS__Group_1__1__Impl : ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) ;
+    // InternalEssentialOCL.g:3819:1: rule__MapTypeCS__Group_1__1__Impl : ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) ;
     public final void rule__MapTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3821:1: ( ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) )
-            // InternalEssentialOCL.g:3822:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
+            // InternalEssentialOCL.g:3823:1: ( ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) )
+            // InternalEssentialOCL.g:3824:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
             {
-            // InternalEssentialOCL.g:3822:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
-            // InternalEssentialOCL.g:3823:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
+            // InternalEssentialOCL.g:3824:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
+            // InternalEssentialOCL.g:3825:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1());
             }
-            // InternalEssentialOCL.g:3824:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
-            // InternalEssentialOCL.g:3824:2: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1
+            // InternalEssentialOCL.g:3826:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
+            // InternalEssentialOCL.g:3826:2: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__OwnedKeyTypeAssignment_1_1();
@@ -12431,14 +12431,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__2"
-    // InternalEssentialOCL.g:3834:1: rule__MapTypeCS__Group_1__2 : rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 ;
+    // InternalEssentialOCL.g:3836:1: rule__MapTypeCS__Group_1__2 : rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 ;
     public final void rule__MapTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3838:1: ( rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 )
-            // InternalEssentialOCL.g:3839:2: rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3
+            // InternalEssentialOCL.g:3840:1: ( rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 )
+            // InternalEssentialOCL.g:3841:2: rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__MapTypeCS__Group_1__2__Impl();
@@ -12469,17 +12469,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__2__Impl"
-    // InternalEssentialOCL.g:3846:1: rule__MapTypeCS__Group_1__2__Impl : ( ',' ) ;
+    // InternalEssentialOCL.g:3848:1: rule__MapTypeCS__Group_1__2__Impl : ( ',' ) ;
     public final void rule__MapTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3850:1: ( ( ',' ) )
-            // InternalEssentialOCL.g:3851:1: ( ',' )
+            // InternalEssentialOCL.g:3852:1: ( ( ',' ) )
+            // InternalEssentialOCL.g:3853:1: ( ',' )
             {
-            // InternalEssentialOCL.g:3851:1: ( ',' )
-            // InternalEssentialOCL.g:3852:1: ','
+            // InternalEssentialOCL.g:3853:1: ( ',' )
+            // InternalEssentialOCL.g:3854:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
@@ -12510,14 +12510,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__3"
-    // InternalEssentialOCL.g:3865:1: rule__MapTypeCS__Group_1__3 : rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 ;
+    // InternalEssentialOCL.g:3867:1: rule__MapTypeCS__Group_1__3 : rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 ;
     public final void rule__MapTypeCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3869:1: ( rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 )
-            // InternalEssentialOCL.g:3870:2: rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4
+            // InternalEssentialOCL.g:3871:1: ( rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 )
+            // InternalEssentialOCL.g:3872:2: rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4
             {
             pushFollow(FollowSets000.FOLLOW_9);
             rule__MapTypeCS__Group_1__3__Impl();
@@ -12548,23 +12548,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__3__Impl"
-    // InternalEssentialOCL.g:3877:1: rule__MapTypeCS__Group_1__3__Impl : ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) ;
+    // InternalEssentialOCL.g:3879:1: rule__MapTypeCS__Group_1__3__Impl : ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) ;
     public final void rule__MapTypeCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3881:1: ( ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) )
-            // InternalEssentialOCL.g:3882:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
+            // InternalEssentialOCL.g:3883:1: ( ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) )
+            // InternalEssentialOCL.g:3884:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
             {
-            // InternalEssentialOCL.g:3882:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
-            // InternalEssentialOCL.g:3883:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
+            // InternalEssentialOCL.g:3884:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
+            // InternalEssentialOCL.g:3885:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3());
             }
-            // InternalEssentialOCL.g:3884:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
-            // InternalEssentialOCL.g:3884:2: rule__MapTypeCS__OwnedValueTypeAssignment_1_3
+            // InternalEssentialOCL.g:3886:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
+            // InternalEssentialOCL.g:3886:2: rule__MapTypeCS__OwnedValueTypeAssignment_1_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__OwnedValueTypeAssignment_1_3();
@@ -12599,14 +12599,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__4"
-    // InternalEssentialOCL.g:3894:1: rule__MapTypeCS__Group_1__4 : rule__MapTypeCS__Group_1__4__Impl ;
+    // InternalEssentialOCL.g:3896:1: rule__MapTypeCS__Group_1__4 : rule__MapTypeCS__Group_1__4__Impl ;
     public final void rule__MapTypeCS__Group_1__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3898:1: ( rule__MapTypeCS__Group_1__4__Impl )
-            // InternalEssentialOCL.g:3899:2: rule__MapTypeCS__Group_1__4__Impl
+            // InternalEssentialOCL.g:3900:1: ( rule__MapTypeCS__Group_1__4__Impl )
+            // InternalEssentialOCL.g:3901:2: rule__MapTypeCS__Group_1__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__Group_1__4__Impl();
@@ -12632,17 +12632,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__4__Impl"
-    // InternalEssentialOCL.g:3905:1: rule__MapTypeCS__Group_1__4__Impl : ( ')' ) ;
+    // InternalEssentialOCL.g:3907:1: rule__MapTypeCS__Group_1__4__Impl : ( ')' ) ;
     public final void rule__MapTypeCS__Group_1__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3909:1: ( ( ')' ) )
-            // InternalEssentialOCL.g:3910:1: ( ')' )
+            // InternalEssentialOCL.g:3911:1: ( ( ')' ) )
+            // InternalEssentialOCL.g:3912:1: ( ')' )
             {
-            // InternalEssentialOCL.g:3910:1: ( ')' )
-            // InternalEssentialOCL.g:3911:1: ')'
+            // InternalEssentialOCL.g:3912:1: ( ')' )
+            // InternalEssentialOCL.g:3913:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
@@ -12673,14 +12673,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__0"
-    // InternalEssentialOCL.g:3934:1: rule__TupleTypeCS__Group__0 : rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 ;
+    // InternalEssentialOCL.g:3936:1: rule__TupleTypeCS__Group__0 : rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 ;
     public final void rule__TupleTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3938:1: ( rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 )
-            // InternalEssentialOCL.g:3939:2: rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1
+            // InternalEssentialOCL.g:3940:1: ( rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 )
+            // InternalEssentialOCL.g:3941:2: rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_5);
             rule__TupleTypeCS__Group__0__Impl();
@@ -12711,23 +12711,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__0__Impl"
-    // InternalEssentialOCL.g:3946:1: rule__TupleTypeCS__Group__0__Impl : ( ( rule__TupleTypeCS__NameAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:3948:1: rule__TupleTypeCS__Group__0__Impl : ( ( rule__TupleTypeCS__NameAssignment_0 ) ) ;
     public final void rule__TupleTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3950:1: ( ( ( rule__TupleTypeCS__NameAssignment_0 ) ) )
-            // InternalEssentialOCL.g:3951:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:3952:1: ( ( ( rule__TupleTypeCS__NameAssignment_0 ) ) )
+            // InternalEssentialOCL.g:3953:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:3951:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
-            // InternalEssentialOCL.g:3952:1: ( rule__TupleTypeCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:3953:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:3954:1: ( rule__TupleTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0());
             }
-            // InternalEssentialOCL.g:3953:1: ( rule__TupleTypeCS__NameAssignment_0 )
-            // InternalEssentialOCL.g:3953:2: rule__TupleTypeCS__NameAssignment_0
+            // InternalEssentialOCL.g:3955:1: ( rule__TupleTypeCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:3955:2: rule__TupleTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__NameAssignment_0();
@@ -12762,14 +12762,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__1"
-    // InternalEssentialOCL.g:3963:1: rule__TupleTypeCS__Group__1 : rule__TupleTypeCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:3965:1: rule__TupleTypeCS__Group__1 : rule__TupleTypeCS__Group__1__Impl ;
     public final void rule__TupleTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3967:1: ( rule__TupleTypeCS__Group__1__Impl )
-            // InternalEssentialOCL.g:3968:2: rule__TupleTypeCS__Group__1__Impl
+            // InternalEssentialOCL.g:3969:1: ( rule__TupleTypeCS__Group__1__Impl )
+            // InternalEssentialOCL.g:3970:2: rule__TupleTypeCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group__1__Impl();
@@ -12795,22 +12795,22 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__1__Impl"
-    // InternalEssentialOCL.g:3974:1: rule__TupleTypeCS__Group__1__Impl : ( ( rule__TupleTypeCS__Group_1__0 )? ) ;
+    // InternalEssentialOCL.g:3976:1: rule__TupleTypeCS__Group__1__Impl : ( ( rule__TupleTypeCS__Group_1__0 )? ) ;
     public final void rule__TupleTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3978:1: ( ( ( rule__TupleTypeCS__Group_1__0 )? ) )
-            // InternalEssentialOCL.g:3979:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:3980:1: ( ( ( rule__TupleTypeCS__Group_1__0 )? ) )
+            // InternalEssentialOCL.g:3981:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
             {
-            // InternalEssentialOCL.g:3979:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
-            // InternalEssentialOCL.g:3980:1: ( rule__TupleTypeCS__Group_1__0 )?
+            // InternalEssentialOCL.g:3981:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:3982:1: ( rule__TupleTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getGroup_1());
             }
-            // InternalEssentialOCL.g:3981:1: ( rule__TupleTypeCS__Group_1__0 )?
+            // InternalEssentialOCL.g:3983:1: ( rule__TupleTypeCS__Group_1__0 )?
             int alt35=2;
             int LA35_0 = input.LA(1);
 
@@ -12819,7 +12819,7 @@
             }
             switch (alt35) {
                 case 1 :
-                    // InternalEssentialOCL.g:3981:2: rule__TupleTypeCS__Group_1__0
+                    // InternalEssentialOCL.g:3983:2: rule__TupleTypeCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TupleTypeCS__Group_1__0();
@@ -12857,14 +12857,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__0"
-    // InternalEssentialOCL.g:3995:1: rule__TupleTypeCS__Group_1__0 : rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 ;
+    // InternalEssentialOCL.g:3997:1: rule__TupleTypeCS__Group_1__0 : rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 ;
     public final void rule__TupleTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:3999:1: ( rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 )
-            // InternalEssentialOCL.g:4000:2: rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1
+            // InternalEssentialOCL.g:4001:1: ( rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 )
+            // InternalEssentialOCL.g:4002:2: rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__TupleTypeCS__Group_1__0__Impl();
@@ -12895,17 +12895,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:4007:1: rule__TupleTypeCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalEssentialOCL.g:4009:1: rule__TupleTypeCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__TupleTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4011:1: ( ( '(' ) )
-            // InternalEssentialOCL.g:4012:1: ( '(' )
+            // InternalEssentialOCL.g:4013:1: ( ( '(' ) )
+            // InternalEssentialOCL.g:4014:1: ( '(' )
             {
-            // InternalEssentialOCL.g:4012:1: ( '(' )
-            // InternalEssentialOCL.g:4013:1: '('
+            // InternalEssentialOCL.g:4014:1: ( '(' )
+            // InternalEssentialOCL.g:4015:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -12936,14 +12936,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__1"
-    // InternalEssentialOCL.g:4026:1: rule__TupleTypeCS__Group_1__1 : rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 ;
+    // InternalEssentialOCL.g:4028:1: rule__TupleTypeCS__Group_1__1 : rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 ;
     public final void rule__TupleTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4030:1: ( rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 )
-            // InternalEssentialOCL.g:4031:2: rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2
+            // InternalEssentialOCL.g:4032:1: ( rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 )
+            // InternalEssentialOCL.g:4033:2: rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__TupleTypeCS__Group_1__1__Impl();
@@ -12974,22 +12974,22 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:4038:1: rule__TupleTypeCS__Group_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1__0 )? ) ;
+    // InternalEssentialOCL.g:4040:1: rule__TupleTypeCS__Group_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1__0 )? ) ;
     public final void rule__TupleTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4042:1: ( ( ( rule__TupleTypeCS__Group_1_1__0 )? ) )
-            // InternalEssentialOCL.g:4043:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
+            // InternalEssentialOCL.g:4044:1: ( ( ( rule__TupleTypeCS__Group_1_1__0 )? ) )
+            // InternalEssentialOCL.g:4045:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
             {
-            // InternalEssentialOCL.g:4043:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
-            // InternalEssentialOCL.g:4044:1: ( rule__TupleTypeCS__Group_1_1__0 )?
+            // InternalEssentialOCL.g:4045:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
+            // InternalEssentialOCL.g:4046:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1());
             }
-            // InternalEssentialOCL.g:4045:1: ( rule__TupleTypeCS__Group_1_1__0 )?
+            // InternalEssentialOCL.g:4047:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             int alt36=2;
             int LA36_0 = input.LA(1);
 
@@ -12998,7 +12998,7 @@
             }
             switch (alt36) {
                 case 1 :
-                    // InternalEssentialOCL.g:4045:2: rule__TupleTypeCS__Group_1_1__0
+                    // InternalEssentialOCL.g:4047:2: rule__TupleTypeCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TupleTypeCS__Group_1_1__0();
@@ -13036,14 +13036,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__2"
-    // InternalEssentialOCL.g:4055:1: rule__TupleTypeCS__Group_1__2 : rule__TupleTypeCS__Group_1__2__Impl ;
+    // InternalEssentialOCL.g:4057:1: rule__TupleTypeCS__Group_1__2 : rule__TupleTypeCS__Group_1__2__Impl ;
     public final void rule__TupleTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4059:1: ( rule__TupleTypeCS__Group_1__2__Impl )
-            // InternalEssentialOCL.g:4060:2: rule__TupleTypeCS__Group_1__2__Impl
+            // InternalEssentialOCL.g:4061:1: ( rule__TupleTypeCS__Group_1__2__Impl )
+            // InternalEssentialOCL.g:4062:2: rule__TupleTypeCS__Group_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group_1__2__Impl();
@@ -13069,17 +13069,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__2__Impl"
-    // InternalEssentialOCL.g:4066:1: rule__TupleTypeCS__Group_1__2__Impl : ( ')' ) ;
+    // InternalEssentialOCL.g:4068:1: rule__TupleTypeCS__Group_1__2__Impl : ( ')' ) ;
     public final void rule__TupleTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4070:1: ( ( ')' ) )
-            // InternalEssentialOCL.g:4071:1: ( ')' )
+            // InternalEssentialOCL.g:4072:1: ( ( ')' ) )
+            // InternalEssentialOCL.g:4073:1: ( ')' )
             {
-            // InternalEssentialOCL.g:4071:1: ( ')' )
-            // InternalEssentialOCL.g:4072:1: ')'
+            // InternalEssentialOCL.g:4073:1: ( ')' )
+            // InternalEssentialOCL.g:4074:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
@@ -13110,14 +13110,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__0"
-    // InternalEssentialOCL.g:4091:1: rule__TupleTypeCS__Group_1_1__0 : rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 ;
+    // InternalEssentialOCL.g:4093:1: rule__TupleTypeCS__Group_1_1__0 : rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 ;
     public final void rule__TupleTypeCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4095:1: ( rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 )
-            // InternalEssentialOCL.g:4096:2: rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1
+            // InternalEssentialOCL.g:4097:1: ( rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 )
+            // InternalEssentialOCL.g:4098:2: rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_8);
             rule__TupleTypeCS__Group_1_1__0__Impl();
@@ -13148,23 +13148,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__0__Impl"
-    // InternalEssentialOCL.g:4103:1: rule__TupleTypeCS__Group_1_1__0__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) ;
+    // InternalEssentialOCL.g:4105:1: rule__TupleTypeCS__Group_1_1__0__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) ;
     public final void rule__TupleTypeCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4107:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) )
-            // InternalEssentialOCL.g:4108:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
+            // InternalEssentialOCL.g:4109:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) )
+            // InternalEssentialOCL.g:4110:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
             {
-            // InternalEssentialOCL.g:4108:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
-            // InternalEssentialOCL.g:4109:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
+            // InternalEssentialOCL.g:4110:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
+            // InternalEssentialOCL.g:4111:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0());
             }
-            // InternalEssentialOCL.g:4110:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
-            // InternalEssentialOCL.g:4110:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0
+            // InternalEssentialOCL.g:4112:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
+            // InternalEssentialOCL.g:4112:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__OwnedPartsAssignment_1_1_0();
@@ -13199,14 +13199,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__1"
-    // InternalEssentialOCL.g:4120:1: rule__TupleTypeCS__Group_1_1__1 : rule__TupleTypeCS__Group_1_1__1__Impl ;
+    // InternalEssentialOCL.g:4122:1: rule__TupleTypeCS__Group_1_1__1 : rule__TupleTypeCS__Group_1_1__1__Impl ;
     public final void rule__TupleTypeCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4124:1: ( rule__TupleTypeCS__Group_1_1__1__Impl )
-            // InternalEssentialOCL.g:4125:2: rule__TupleTypeCS__Group_1_1__1__Impl
+            // InternalEssentialOCL.g:4126:1: ( rule__TupleTypeCS__Group_1_1__1__Impl )
+            // InternalEssentialOCL.g:4127:2: rule__TupleTypeCS__Group_1_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group_1_1__1__Impl();
@@ -13232,22 +13232,22 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__1__Impl"
-    // InternalEssentialOCL.g:4131:1: rule__TupleTypeCS__Group_1_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) ;
+    // InternalEssentialOCL.g:4133:1: rule__TupleTypeCS__Group_1_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) ;
     public final void rule__TupleTypeCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4135:1: ( ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) )
-            // InternalEssentialOCL.g:4136:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
+            // InternalEssentialOCL.g:4137:1: ( ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) )
+            // InternalEssentialOCL.g:4138:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
             {
-            // InternalEssentialOCL.g:4136:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
-            // InternalEssentialOCL.g:4137:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
+            // InternalEssentialOCL.g:4138:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
+            // InternalEssentialOCL.g:4139:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1());
             }
-            // InternalEssentialOCL.g:4138:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
+            // InternalEssentialOCL.g:4140:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             loop37:
             do {
                 int alt37=2;
@@ -13260,7 +13260,7 @@
 
                 switch (alt37) {
             	case 1 :
-            	    // InternalEssentialOCL.g:4138:2: rule__TupleTypeCS__Group_1_1_1__0
+            	    // InternalEssentialOCL.g:4140:2: rule__TupleTypeCS__Group_1_1_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_11);
             	    rule__TupleTypeCS__Group_1_1_1__0();
@@ -13301,14 +13301,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__0"
-    // InternalEssentialOCL.g:4152:1: rule__TupleTypeCS__Group_1_1_1__0 : rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 ;
+    // InternalEssentialOCL.g:4154:1: rule__TupleTypeCS__Group_1_1_1__0 : rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 ;
     public final void rule__TupleTypeCS__Group_1_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4156:1: ( rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 )
-            // InternalEssentialOCL.g:4157:2: rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1
+            // InternalEssentialOCL.g:4158:1: ( rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 )
+            // InternalEssentialOCL.g:4159:2: rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__TupleTypeCS__Group_1_1_1__0__Impl();
@@ -13339,17 +13339,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__0__Impl"
-    // InternalEssentialOCL.g:4164:1: rule__TupleTypeCS__Group_1_1_1__0__Impl : ( ',' ) ;
+    // InternalEssentialOCL.g:4166:1: rule__TupleTypeCS__Group_1_1_1__0__Impl : ( ',' ) ;
     public final void rule__TupleTypeCS__Group_1_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4168:1: ( ( ',' ) )
-            // InternalEssentialOCL.g:4169:1: ( ',' )
+            // InternalEssentialOCL.g:4170:1: ( ( ',' ) )
+            // InternalEssentialOCL.g:4171:1: ( ',' )
             {
-            // InternalEssentialOCL.g:4169:1: ( ',' )
-            // InternalEssentialOCL.g:4170:1: ','
+            // InternalEssentialOCL.g:4171:1: ( ',' )
+            // InternalEssentialOCL.g:4172:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
@@ -13380,14 +13380,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__1"
-    // InternalEssentialOCL.g:4183:1: rule__TupleTypeCS__Group_1_1_1__1 : rule__TupleTypeCS__Group_1_1_1__1__Impl ;
+    // InternalEssentialOCL.g:4185:1: rule__TupleTypeCS__Group_1_1_1__1 : rule__TupleTypeCS__Group_1_1_1__1__Impl ;
     public final void rule__TupleTypeCS__Group_1_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4187:1: ( rule__TupleTypeCS__Group_1_1_1__1__Impl )
-            // InternalEssentialOCL.g:4188:2: rule__TupleTypeCS__Group_1_1_1__1__Impl
+            // InternalEssentialOCL.g:4189:1: ( rule__TupleTypeCS__Group_1_1_1__1__Impl )
+            // InternalEssentialOCL.g:4190:2: rule__TupleTypeCS__Group_1_1_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group_1_1_1__1__Impl();
@@ -13413,23 +13413,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__1__Impl"
-    // InternalEssentialOCL.g:4194:1: rule__TupleTypeCS__Group_1_1_1__1__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) ;
+    // InternalEssentialOCL.g:4196:1: rule__TupleTypeCS__Group_1_1_1__1__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) ;
     public final void rule__TupleTypeCS__Group_1_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4198:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) )
-            // InternalEssentialOCL.g:4199:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
+            // InternalEssentialOCL.g:4200:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) )
+            // InternalEssentialOCL.g:4201:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
             {
-            // InternalEssentialOCL.g:4199:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
-            // InternalEssentialOCL.g:4200:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
+            // InternalEssentialOCL.g:4201:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
+            // InternalEssentialOCL.g:4202:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1());
             }
-            // InternalEssentialOCL.g:4201:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
-            // InternalEssentialOCL.g:4201:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1
+            // InternalEssentialOCL.g:4203:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
+            // InternalEssentialOCL.g:4203:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1();
@@ -13464,14 +13464,14 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__0"
-    // InternalEssentialOCL.g:4215:1: rule__TuplePartCS__Group__0 : rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 ;
+    // InternalEssentialOCL.g:4217:1: rule__TuplePartCS__Group__0 : rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 ;
     public final void rule__TuplePartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4219:1: ( rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 )
-            // InternalEssentialOCL.g:4220:2: rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1
+            // InternalEssentialOCL.g:4221:1: ( rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 )
+            // InternalEssentialOCL.g:4222:2: rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__TuplePartCS__Group__0__Impl();
@@ -13502,23 +13502,23 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__0__Impl"
-    // InternalEssentialOCL.g:4227:1: rule__TuplePartCS__Group__0__Impl : ( ( rule__TuplePartCS__NameAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:4229:1: rule__TuplePartCS__Group__0__Impl : ( ( rule__TuplePartCS__NameAssignment_0 ) ) ;
     public final void rule__TuplePartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4231:1: ( ( ( rule__TuplePartCS__NameAssignment_0 ) ) )
-            // InternalEssentialOCL.g:4232:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:4233:1: ( ( ( rule__TuplePartCS__NameAssignment_0 ) ) )
+            // InternalEssentialOCL.g:4234:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:4232:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
-            // InternalEssentialOCL.g:4233:1: ( rule__TuplePartCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:4234:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:4235:1: ( rule__TuplePartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getNameAssignment_0());
             }
-            // InternalEssentialOCL.g:4234:1: ( rule__TuplePartCS__NameAssignment_0 )
-            // InternalEssentialOCL.g:4234:2: rule__TuplePartCS__NameAssignment_0
+            // InternalEssentialOCL.g:4236:1: ( rule__TuplePartCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:4236:2: rule__TuplePartCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TuplePartCS__NameAssignment_0();
@@ -13553,14 +13553,14 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__1"
-    // InternalEssentialOCL.g:4244:1: rule__TuplePartCS__Group__1 : rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 ;
+    // InternalEssentialOCL.g:4246:1: rule__TuplePartCS__Group__1 : rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 ;
     public final void rule__TuplePartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4248:1: ( rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 )
-            // InternalEssentialOCL.g:4249:2: rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2
+            // InternalEssentialOCL.g:4250:1: ( rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 )
+            // InternalEssentialOCL.g:4251:2: rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__TuplePartCS__Group__1__Impl();
@@ -13591,17 +13591,17 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__1__Impl"
-    // InternalEssentialOCL.g:4256:1: rule__TuplePartCS__Group__1__Impl : ( ':' ) ;
+    // InternalEssentialOCL.g:4258:1: rule__TuplePartCS__Group__1__Impl : ( ':' ) ;
     public final void rule__TuplePartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4260:1: ( ( ':' ) )
-            // InternalEssentialOCL.g:4261:1: ( ':' )
+            // InternalEssentialOCL.g:4262:1: ( ( ':' ) )
+            // InternalEssentialOCL.g:4263:1: ( ':' )
             {
-            // InternalEssentialOCL.g:4261:1: ( ':' )
-            // InternalEssentialOCL.g:4262:1: ':'
+            // InternalEssentialOCL.g:4263:1: ( ':' )
+            // InternalEssentialOCL.g:4264:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
@@ -13632,14 +13632,14 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__2"
-    // InternalEssentialOCL.g:4275:1: rule__TuplePartCS__Group__2 : rule__TuplePartCS__Group__2__Impl ;
+    // InternalEssentialOCL.g:4277:1: rule__TuplePartCS__Group__2 : rule__TuplePartCS__Group__2__Impl ;
     public final void rule__TuplePartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4279:1: ( rule__TuplePartCS__Group__2__Impl )
-            // InternalEssentialOCL.g:4280:2: rule__TuplePartCS__Group__2__Impl
+            // InternalEssentialOCL.g:4281:1: ( rule__TuplePartCS__Group__2__Impl )
+            // InternalEssentialOCL.g:4282:2: rule__TuplePartCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TuplePartCS__Group__2__Impl();
@@ -13665,23 +13665,23 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__2__Impl"
-    // InternalEssentialOCL.g:4286:1: rule__TuplePartCS__Group__2__Impl : ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) ;
+    // InternalEssentialOCL.g:4288:1: rule__TuplePartCS__Group__2__Impl : ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) ;
     public final void rule__TuplePartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4290:1: ( ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) )
-            // InternalEssentialOCL.g:4291:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
+            // InternalEssentialOCL.g:4292:1: ( ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) )
+            // InternalEssentialOCL.g:4293:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
             {
-            // InternalEssentialOCL.g:4291:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
-            // InternalEssentialOCL.g:4292:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
+            // InternalEssentialOCL.g:4293:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
+            // InternalEssentialOCL.g:4294:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2());
             }
-            // InternalEssentialOCL.g:4293:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
-            // InternalEssentialOCL.g:4293:2: rule__TuplePartCS__OwnedTypeAssignment_2
+            // InternalEssentialOCL.g:4295:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
+            // InternalEssentialOCL.g:4295:2: rule__TuplePartCS__OwnedTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TuplePartCS__OwnedTypeAssignment_2();
@@ -13716,14 +13716,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__0"
-    // InternalEssentialOCL.g:4309:1: rule__CollectionLiteralExpCS__Group__0 : rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 ;
+    // InternalEssentialOCL.g:4311:1: rule__CollectionLiteralExpCS__Group__0 : rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 ;
     public final void rule__CollectionLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4313:1: ( rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 )
-            // InternalEssentialOCL.g:4314:2: rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1
+            // InternalEssentialOCL.g:4315:1: ( rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 )
+            // InternalEssentialOCL.g:4316:2: rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__CollectionLiteralExpCS__Group__0__Impl();
@@ -13754,23 +13754,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:4321:1: rule__CollectionLiteralExpCS__Group__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:4323:1: rule__CollectionLiteralExpCS__Group__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
     public final void rule__CollectionLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4325:1: ( ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) )
-            // InternalEssentialOCL.g:4326:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalEssentialOCL.g:4327:1: ( ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) )
+            // InternalEssentialOCL.g:4328:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:4326:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
-            // InternalEssentialOCL.g:4327:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalEssentialOCL.g:4328:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalEssentialOCL.g:4329:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
-            // InternalEssentialOCL.g:4328:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
-            // InternalEssentialOCL.g:4328:2: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0
+            // InternalEssentialOCL.g:4330:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalEssentialOCL.g:4330:2: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__OwnedTypeAssignment_0();
@@ -13805,14 +13805,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__1"
-    // InternalEssentialOCL.g:4338:1: rule__CollectionLiteralExpCS__Group__1 : rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 ;
+    // InternalEssentialOCL.g:4340:1: rule__CollectionLiteralExpCS__Group__1 : rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 ;
     public final void rule__CollectionLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4342:1: ( rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 )
-            // InternalEssentialOCL.g:4343:2: rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2
+            // InternalEssentialOCL.g:4344:1: ( rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 )
+            // InternalEssentialOCL.g:4345:2: rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__CollectionLiteralExpCS__Group__1__Impl();
@@ -13843,17 +13843,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:4350:1: rule__CollectionLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalEssentialOCL.g:4352:1: rule__CollectionLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__CollectionLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4354:1: ( ( '{' ) )
-            // InternalEssentialOCL.g:4355:1: ( '{' )
+            // InternalEssentialOCL.g:4356:1: ( ( '{' ) )
+            // InternalEssentialOCL.g:4357:1: ( '{' )
             {
-            // InternalEssentialOCL.g:4355:1: ( '{' )
-            // InternalEssentialOCL.g:4356:1: '{'
+            // InternalEssentialOCL.g:4357:1: ( '{' )
+            // InternalEssentialOCL.g:4358:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -13884,14 +13884,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__2"
-    // InternalEssentialOCL.g:4369:1: rule__CollectionLiteralExpCS__Group__2 : rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 ;
+    // InternalEssentialOCL.g:4371:1: rule__CollectionLiteralExpCS__Group__2 : rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 ;
     public final void rule__CollectionLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4373:1: ( rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 )
-            // InternalEssentialOCL.g:4374:2: rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3
+            // InternalEssentialOCL.g:4375:1: ( rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 )
+            // InternalEssentialOCL.g:4376:2: rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__CollectionLiteralExpCS__Group__2__Impl();
@@ -13922,22 +13922,22 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__2__Impl"
-    // InternalEssentialOCL.g:4381:1: rule__CollectionLiteralExpCS__Group__2__Impl : ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) ;
+    // InternalEssentialOCL.g:4383:1: rule__CollectionLiteralExpCS__Group__2__Impl : ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) ;
     public final void rule__CollectionLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4385:1: ( ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) )
-            // InternalEssentialOCL.g:4386:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:4387:1: ( ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) )
+            // InternalEssentialOCL.g:4388:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
             {
-            // InternalEssentialOCL.g:4386:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
-            // InternalEssentialOCL.g:4387:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
+            // InternalEssentialOCL.g:4388:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:4389:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2());
             }
-            // InternalEssentialOCL.g:4388:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
+            // InternalEssentialOCL.g:4390:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             int alt38=2;
             int LA38_0 = input.LA(1);
 
@@ -13946,7 +13946,7 @@
             }
             switch (alt38) {
                 case 1 :
-                    // InternalEssentialOCL.g:4388:2: rule__CollectionLiteralExpCS__Group_2__0
+                    // InternalEssentialOCL.g:4390:2: rule__CollectionLiteralExpCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralExpCS__Group_2__0();
@@ -13984,14 +13984,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__3"
-    // InternalEssentialOCL.g:4398:1: rule__CollectionLiteralExpCS__Group__3 : rule__CollectionLiteralExpCS__Group__3__Impl ;
+    // InternalEssentialOCL.g:4400:1: rule__CollectionLiteralExpCS__Group__3 : rule__CollectionLiteralExpCS__Group__3__Impl ;
     public final void rule__CollectionLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4402:1: ( rule__CollectionLiteralExpCS__Group__3__Impl )
-            // InternalEssentialOCL.g:4403:2: rule__CollectionLiteralExpCS__Group__3__Impl
+            // InternalEssentialOCL.g:4404:1: ( rule__CollectionLiteralExpCS__Group__3__Impl )
+            // InternalEssentialOCL.g:4405:2: rule__CollectionLiteralExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__Group__3__Impl();
@@ -14017,17 +14017,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__3__Impl"
-    // InternalEssentialOCL.g:4409:1: rule__CollectionLiteralExpCS__Group__3__Impl : ( '}' ) ;
+    // InternalEssentialOCL.g:4411:1: rule__CollectionLiteralExpCS__Group__3__Impl : ( '}' ) ;
     public final void rule__CollectionLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4413:1: ( ( '}' ) )
-            // InternalEssentialOCL.g:4414:1: ( '}' )
+            // InternalEssentialOCL.g:4415:1: ( ( '}' ) )
+            // InternalEssentialOCL.g:4416:1: ( '}' )
             {
-            // InternalEssentialOCL.g:4414:1: ( '}' )
-            // InternalEssentialOCL.g:4415:1: '}'
+            // InternalEssentialOCL.g:4416:1: ( '}' )
+            // InternalEssentialOCL.g:4417:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
@@ -14058,14 +14058,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__0"
-    // InternalEssentialOCL.g:4436:1: rule__CollectionLiteralExpCS__Group_2__0 : rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 ;
+    // InternalEssentialOCL.g:4438:1: rule__CollectionLiteralExpCS__Group_2__0 : rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 ;
     public final void rule__CollectionLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4440:1: ( rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 )
-            // InternalEssentialOCL.g:4441:2: rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1
+            // InternalEssentialOCL.g:4442:1: ( rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 )
+            // InternalEssentialOCL.g:4443:2: rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_8);
             rule__CollectionLiteralExpCS__Group_2__0__Impl();
@@ -14096,23 +14096,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__0__Impl"
-    // InternalEssentialOCL.g:4448:1: rule__CollectionLiteralExpCS__Group_2__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalEssentialOCL.g:4450:1: rule__CollectionLiteralExpCS__Group_2__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__CollectionLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4452:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalEssentialOCL.g:4453:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalEssentialOCL.g:4454:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalEssentialOCL.g:4455:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalEssentialOCL.g:4453:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
-            // InternalEssentialOCL.g:4454:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalEssentialOCL.g:4455:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalEssentialOCL.g:4456:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalEssentialOCL.g:4455:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
-            // InternalEssentialOCL.g:4455:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0
+            // InternalEssentialOCL.g:4457:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalEssentialOCL.g:4457:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0();
@@ -14147,14 +14147,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__1"
-    // InternalEssentialOCL.g:4465:1: rule__CollectionLiteralExpCS__Group_2__1 : rule__CollectionLiteralExpCS__Group_2__1__Impl ;
+    // InternalEssentialOCL.g:4467:1: rule__CollectionLiteralExpCS__Group_2__1 : rule__CollectionLiteralExpCS__Group_2__1__Impl ;
     public final void rule__CollectionLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4469:1: ( rule__CollectionLiteralExpCS__Group_2__1__Impl )
-            // InternalEssentialOCL.g:4470:2: rule__CollectionLiteralExpCS__Group_2__1__Impl
+            // InternalEssentialOCL.g:4471:1: ( rule__CollectionLiteralExpCS__Group_2__1__Impl )
+            // InternalEssentialOCL.g:4472:2: rule__CollectionLiteralExpCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__Group_2__1__Impl();
@@ -14180,22 +14180,22 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__1__Impl"
-    // InternalEssentialOCL.g:4476:1: rule__CollectionLiteralExpCS__Group_2__1__Impl : ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) ;
+    // InternalEssentialOCL.g:4478:1: rule__CollectionLiteralExpCS__Group_2__1__Impl : ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) ;
     public final void rule__CollectionLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4480:1: ( ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) )
-            // InternalEssentialOCL.g:4481:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
+            // InternalEssentialOCL.g:4482:1: ( ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) )
+            // InternalEssentialOCL.g:4483:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
             {
-            // InternalEssentialOCL.g:4481:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
-            // InternalEssentialOCL.g:4482:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
+            // InternalEssentialOCL.g:4483:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
+            // InternalEssentialOCL.g:4484:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1());
             }
-            // InternalEssentialOCL.g:4483:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
+            // InternalEssentialOCL.g:4485:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             loop39:
             do {
                 int alt39=2;
@@ -14208,7 +14208,7 @@
 
                 switch (alt39) {
             	case 1 :
-            	    // InternalEssentialOCL.g:4483:2: rule__CollectionLiteralExpCS__Group_2_1__0
+            	    // InternalEssentialOCL.g:4485:2: rule__CollectionLiteralExpCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_11);
             	    rule__CollectionLiteralExpCS__Group_2_1__0();
@@ -14249,14 +14249,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__0"
-    // InternalEssentialOCL.g:4497:1: rule__CollectionLiteralExpCS__Group_2_1__0 : rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 ;
+    // InternalEssentialOCL.g:4499:1: rule__CollectionLiteralExpCS__Group_2_1__0 : rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4501:1: ( rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 )
-            // InternalEssentialOCL.g:4502:2: rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1
+            // InternalEssentialOCL.g:4503:1: ( rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 )
+            // InternalEssentialOCL.g:4504:2: rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__CollectionLiteralExpCS__Group_2_1__0__Impl();
@@ -14287,17 +14287,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__0__Impl"
-    // InternalEssentialOCL.g:4509:1: rule__CollectionLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalEssentialOCL.g:4511:1: rule__CollectionLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4513:1: ( ( ',' ) )
-            // InternalEssentialOCL.g:4514:1: ( ',' )
+            // InternalEssentialOCL.g:4515:1: ( ( ',' ) )
+            // InternalEssentialOCL.g:4516:1: ( ',' )
             {
-            // InternalEssentialOCL.g:4514:1: ( ',' )
-            // InternalEssentialOCL.g:4515:1: ','
+            // InternalEssentialOCL.g:4516:1: ( ',' )
+            // InternalEssentialOCL.g:4517:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
@@ -14328,14 +14328,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__1"
-    // InternalEssentialOCL.g:4528:1: rule__CollectionLiteralExpCS__Group_2_1__1 : rule__CollectionLiteralExpCS__Group_2_1__1__Impl ;
+    // InternalEssentialOCL.g:4530:1: rule__CollectionLiteralExpCS__Group_2_1__1 : rule__CollectionLiteralExpCS__Group_2_1__1__Impl ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4532:1: ( rule__CollectionLiteralExpCS__Group_2_1__1__Impl )
-            // InternalEssentialOCL.g:4533:2: rule__CollectionLiteralExpCS__Group_2_1__1__Impl
+            // InternalEssentialOCL.g:4534:1: ( rule__CollectionLiteralExpCS__Group_2_1__1__Impl )
+            // InternalEssentialOCL.g:4535:2: rule__CollectionLiteralExpCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__Group_2_1__1__Impl();
@@ -14361,23 +14361,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__1__Impl"
-    // InternalEssentialOCL.g:4539:1: rule__CollectionLiteralExpCS__Group_2_1__1__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalEssentialOCL.g:4541:1: rule__CollectionLiteralExpCS__Group_2_1__1__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4543:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalEssentialOCL.g:4544:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalEssentialOCL.g:4545:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalEssentialOCL.g:4546:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalEssentialOCL.g:4544:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalEssentialOCL.g:4545:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalEssentialOCL.g:4546:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalEssentialOCL.g:4547:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalEssentialOCL.g:4546:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
-            // InternalEssentialOCL.g:4546:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1
+            // InternalEssentialOCL.g:4548:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalEssentialOCL.g:4548:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1();
@@ -14412,14 +14412,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__0"
-    // InternalEssentialOCL.g:4560:1: rule__CollectionLiteralPartCS__Group_0__0 : rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 ;
+    // InternalEssentialOCL.g:4562:1: rule__CollectionLiteralPartCS__Group_0__0 : rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 ;
     public final void rule__CollectionLiteralPartCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4564:1: ( rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 )
-            // InternalEssentialOCL.g:4565:2: rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1
+            // InternalEssentialOCL.g:4566:1: ( rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 )
+            // InternalEssentialOCL.g:4567:2: rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_17);
             rule__CollectionLiteralPartCS__Group_0__0__Impl();
@@ -14450,23 +14450,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__0__Impl"
-    // InternalEssentialOCL.g:4572:1: rule__CollectionLiteralPartCS__Group_0__0__Impl : ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) ;
+    // InternalEssentialOCL.g:4574:1: rule__CollectionLiteralPartCS__Group_0__0__Impl : ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) ;
     public final void rule__CollectionLiteralPartCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4576:1: ( ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) )
-            // InternalEssentialOCL.g:4577:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
+            // InternalEssentialOCL.g:4578:1: ( ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) )
+            // InternalEssentialOCL.g:4579:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
             {
-            // InternalEssentialOCL.g:4577:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
-            // InternalEssentialOCL.g:4578:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
+            // InternalEssentialOCL.g:4579:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
+            // InternalEssentialOCL.g:4580:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0());
             }
-            // InternalEssentialOCL.g:4579:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
-            // InternalEssentialOCL.g:4579:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0
+            // InternalEssentialOCL.g:4581:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
+            // InternalEssentialOCL.g:4581:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0();
@@ -14501,14 +14501,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__1"
-    // InternalEssentialOCL.g:4589:1: rule__CollectionLiteralPartCS__Group_0__1 : rule__CollectionLiteralPartCS__Group_0__1__Impl ;
+    // InternalEssentialOCL.g:4591:1: rule__CollectionLiteralPartCS__Group_0__1 : rule__CollectionLiteralPartCS__Group_0__1__Impl ;
     public final void rule__CollectionLiteralPartCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4593:1: ( rule__CollectionLiteralPartCS__Group_0__1__Impl )
-            // InternalEssentialOCL.g:4594:2: rule__CollectionLiteralPartCS__Group_0__1__Impl
+            // InternalEssentialOCL.g:4595:1: ( rule__CollectionLiteralPartCS__Group_0__1__Impl )
+            // InternalEssentialOCL.g:4596:2: rule__CollectionLiteralPartCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__Group_0__1__Impl();
@@ -14534,22 +14534,22 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__1__Impl"
-    // InternalEssentialOCL.g:4600:1: rule__CollectionLiteralPartCS__Group_0__1__Impl : ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) ;
+    // InternalEssentialOCL.g:4602:1: rule__CollectionLiteralPartCS__Group_0__1__Impl : ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) ;
     public final void rule__CollectionLiteralPartCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4604:1: ( ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) )
-            // InternalEssentialOCL.g:4605:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
+            // InternalEssentialOCL.g:4606:1: ( ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) )
+            // InternalEssentialOCL.g:4607:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
             {
-            // InternalEssentialOCL.g:4605:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
-            // InternalEssentialOCL.g:4606:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
+            // InternalEssentialOCL.g:4607:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
+            // InternalEssentialOCL.g:4608:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1());
             }
-            // InternalEssentialOCL.g:4607:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
+            // InternalEssentialOCL.g:4609:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             int alt40=2;
             int LA40_0 = input.LA(1);
 
@@ -14558,7 +14558,7 @@
             }
             switch (alt40) {
                 case 1 :
-                    // InternalEssentialOCL.g:4607:2: rule__CollectionLiteralPartCS__Group_0_1__0
+                    // InternalEssentialOCL.g:4609:2: rule__CollectionLiteralPartCS__Group_0_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralPartCS__Group_0_1__0();
@@ -14596,14 +14596,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__0"
-    // InternalEssentialOCL.g:4621:1: rule__CollectionLiteralPartCS__Group_0_1__0 : rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 ;
+    // InternalEssentialOCL.g:4623:1: rule__CollectionLiteralPartCS__Group_0_1__0 : rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4625:1: ( rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 )
-            // InternalEssentialOCL.g:4626:2: rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1
+            // InternalEssentialOCL.g:4627:1: ( rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 )
+            // InternalEssentialOCL.g:4628:2: rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__CollectionLiteralPartCS__Group_0_1__0__Impl();
@@ -14634,17 +14634,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__0__Impl"
-    // InternalEssentialOCL.g:4633:1: rule__CollectionLiteralPartCS__Group_0_1__0__Impl : ( '..' ) ;
+    // InternalEssentialOCL.g:4635:1: rule__CollectionLiteralPartCS__Group_0_1__0__Impl : ( '..' ) ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4637:1: ( ( '..' ) )
-            // InternalEssentialOCL.g:4638:1: ( '..' )
+            // InternalEssentialOCL.g:4639:1: ( ( '..' ) )
+            // InternalEssentialOCL.g:4640:1: ( '..' )
             {
-            // InternalEssentialOCL.g:4638:1: ( '..' )
-            // InternalEssentialOCL.g:4639:1: '..'
+            // InternalEssentialOCL.g:4640:1: ( '..' )
+            // InternalEssentialOCL.g:4641:1: '..'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
@@ -14675,14 +14675,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__1"
-    // InternalEssentialOCL.g:4652:1: rule__CollectionLiteralPartCS__Group_0_1__1 : rule__CollectionLiteralPartCS__Group_0_1__1__Impl ;
+    // InternalEssentialOCL.g:4654:1: rule__CollectionLiteralPartCS__Group_0_1__1 : rule__CollectionLiteralPartCS__Group_0_1__1__Impl ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4656:1: ( rule__CollectionLiteralPartCS__Group_0_1__1__Impl )
-            // InternalEssentialOCL.g:4657:2: rule__CollectionLiteralPartCS__Group_0_1__1__Impl
+            // InternalEssentialOCL.g:4658:1: ( rule__CollectionLiteralPartCS__Group_0_1__1__Impl )
+            // InternalEssentialOCL.g:4659:2: rule__CollectionLiteralPartCS__Group_0_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__Group_0_1__1__Impl();
@@ -14708,23 +14708,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__1__Impl"
-    // InternalEssentialOCL.g:4663:1: rule__CollectionLiteralPartCS__Group_0_1__1__Impl : ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) ;
+    // InternalEssentialOCL.g:4665:1: rule__CollectionLiteralPartCS__Group_0_1__1__Impl : ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4667:1: ( ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) )
-            // InternalEssentialOCL.g:4668:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
+            // InternalEssentialOCL.g:4669:1: ( ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) )
+            // InternalEssentialOCL.g:4670:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
             {
-            // InternalEssentialOCL.g:4668:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
-            // InternalEssentialOCL.g:4669:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
+            // InternalEssentialOCL.g:4670:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
+            // InternalEssentialOCL.g:4671:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1());
             }
-            // InternalEssentialOCL.g:4670:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
-            // InternalEssentialOCL.g:4670:2: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1
+            // InternalEssentialOCL.g:4672:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
+            // InternalEssentialOCL.g:4672:2: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1();
@@ -14759,14 +14759,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__0"
-    // InternalEssentialOCL.g:4684:1: rule__CollectionPatternCS__Group__0 : rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 ;
+    // InternalEssentialOCL.g:4686:1: rule__CollectionPatternCS__Group__0 : rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 ;
     public final void rule__CollectionPatternCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4688:1: ( rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 )
-            // InternalEssentialOCL.g:4689:2: rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1
+            // InternalEssentialOCL.g:4690:1: ( rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 )
+            // InternalEssentialOCL.g:4691:2: rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__CollectionPatternCS__Group__0__Impl();
@@ -14797,23 +14797,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__0__Impl"
-    // InternalEssentialOCL.g:4696:1: rule__CollectionPatternCS__Group__0__Impl : ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:4698:1: rule__CollectionPatternCS__Group__0__Impl : ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) ;
     public final void rule__CollectionPatternCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4700:1: ( ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) )
-            // InternalEssentialOCL.g:4701:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
+            // InternalEssentialOCL.g:4702:1: ( ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) )
+            // InternalEssentialOCL.g:4703:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:4701:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
-            // InternalEssentialOCL.g:4702:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
+            // InternalEssentialOCL.g:4703:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
+            // InternalEssentialOCL.g:4704:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0());
             }
-            // InternalEssentialOCL.g:4703:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
-            // InternalEssentialOCL.g:4703:2: rule__CollectionPatternCS__OwnedTypeAssignment_0
+            // InternalEssentialOCL.g:4705:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
+            // InternalEssentialOCL.g:4705:2: rule__CollectionPatternCS__OwnedTypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__OwnedTypeAssignment_0();
@@ -14848,14 +14848,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__1"
-    // InternalEssentialOCL.g:4713:1: rule__CollectionPatternCS__Group__1 : rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 ;
+    // InternalEssentialOCL.g:4715:1: rule__CollectionPatternCS__Group__1 : rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 ;
     public final void rule__CollectionPatternCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4717:1: ( rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 )
-            // InternalEssentialOCL.g:4718:2: rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2
+            // InternalEssentialOCL.g:4719:1: ( rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 )
+            // InternalEssentialOCL.g:4720:2: rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__CollectionPatternCS__Group__1__Impl();
@@ -14886,17 +14886,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__1__Impl"
-    // InternalEssentialOCL.g:4725:1: rule__CollectionPatternCS__Group__1__Impl : ( '{' ) ;
+    // InternalEssentialOCL.g:4727:1: rule__CollectionPatternCS__Group__1__Impl : ( '{' ) ;
     public final void rule__CollectionPatternCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4729:1: ( ( '{' ) )
-            // InternalEssentialOCL.g:4730:1: ( '{' )
+            // InternalEssentialOCL.g:4731:1: ( ( '{' ) )
+            // InternalEssentialOCL.g:4732:1: ( '{' )
             {
-            // InternalEssentialOCL.g:4730:1: ( '{' )
-            // InternalEssentialOCL.g:4731:1: '{'
+            // InternalEssentialOCL.g:4732:1: ( '{' )
+            // InternalEssentialOCL.g:4733:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
@@ -14927,14 +14927,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__2"
-    // InternalEssentialOCL.g:4744:1: rule__CollectionPatternCS__Group__2 : rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 ;
+    // InternalEssentialOCL.g:4746:1: rule__CollectionPatternCS__Group__2 : rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 ;
     public final void rule__CollectionPatternCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4748:1: ( rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 )
-            // InternalEssentialOCL.g:4749:2: rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3
+            // InternalEssentialOCL.g:4750:1: ( rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 )
+            // InternalEssentialOCL.g:4751:2: rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__CollectionPatternCS__Group__2__Impl();
@@ -14965,22 +14965,22 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__2__Impl"
-    // InternalEssentialOCL.g:4756:1: rule__CollectionPatternCS__Group__2__Impl : ( ( rule__CollectionPatternCS__Group_2__0 )? ) ;
+    // InternalEssentialOCL.g:4758:1: rule__CollectionPatternCS__Group__2__Impl : ( ( rule__CollectionPatternCS__Group_2__0 )? ) ;
     public final void rule__CollectionPatternCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4760:1: ( ( ( rule__CollectionPatternCS__Group_2__0 )? ) )
-            // InternalEssentialOCL.g:4761:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:4762:1: ( ( ( rule__CollectionPatternCS__Group_2__0 )? ) )
+            // InternalEssentialOCL.g:4763:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
             {
-            // InternalEssentialOCL.g:4761:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
-            // InternalEssentialOCL.g:4762:1: ( rule__CollectionPatternCS__Group_2__0 )?
+            // InternalEssentialOCL.g:4763:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:4764:1: ( rule__CollectionPatternCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getGroup_2());
             }
-            // InternalEssentialOCL.g:4763:1: ( rule__CollectionPatternCS__Group_2__0 )?
+            // InternalEssentialOCL.g:4765:1: ( rule__CollectionPatternCS__Group_2__0 )?
             int alt41=2;
             int LA41_0 = input.LA(1);
 
@@ -14989,7 +14989,7 @@
             }
             switch (alt41) {
                 case 1 :
-                    // InternalEssentialOCL.g:4763:2: rule__CollectionPatternCS__Group_2__0
+                    // InternalEssentialOCL.g:4765:2: rule__CollectionPatternCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionPatternCS__Group_2__0();
@@ -15027,14 +15027,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__3"
-    // InternalEssentialOCL.g:4773:1: rule__CollectionPatternCS__Group__3 : rule__CollectionPatternCS__Group__3__Impl ;
+    // InternalEssentialOCL.g:4775:1: rule__CollectionPatternCS__Group__3 : rule__CollectionPatternCS__Group__3__Impl ;
     public final void rule__CollectionPatternCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4777:1: ( rule__CollectionPatternCS__Group__3__Impl )
-            // InternalEssentialOCL.g:4778:2: rule__CollectionPatternCS__Group__3__Impl
+            // InternalEssentialOCL.g:4779:1: ( rule__CollectionPatternCS__Group__3__Impl )
+            // InternalEssentialOCL.g:4780:2: rule__CollectionPatternCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group__3__Impl();
@@ -15060,17 +15060,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__3__Impl"
-    // InternalEssentialOCL.g:4784:1: rule__CollectionPatternCS__Group__3__Impl : ( '}' ) ;
+    // InternalEssentialOCL.g:4786:1: rule__CollectionPatternCS__Group__3__Impl : ( '}' ) ;
     public final void rule__CollectionPatternCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4788:1: ( ( '}' ) )
-            // InternalEssentialOCL.g:4789:1: ( '}' )
+            // InternalEssentialOCL.g:4790:1: ( ( '}' ) )
+            // InternalEssentialOCL.g:4791:1: ( '}' )
             {
-            // InternalEssentialOCL.g:4789:1: ( '}' )
-            // InternalEssentialOCL.g:4790:1: '}'
+            // InternalEssentialOCL.g:4791:1: ( '}' )
+            // InternalEssentialOCL.g:4792:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
@@ -15101,14 +15101,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__0"
-    // InternalEssentialOCL.g:4811:1: rule__CollectionPatternCS__Group_2__0 : rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 ;
+    // InternalEssentialOCL.g:4813:1: rule__CollectionPatternCS__Group_2__0 : rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 ;
     public final void rule__CollectionPatternCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4815:1: ( rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 )
-            // InternalEssentialOCL.g:4816:2: rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1
+            // InternalEssentialOCL.g:4817:1: ( rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 )
+            // InternalEssentialOCL.g:4818:2: rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_19);
             rule__CollectionPatternCS__Group_2__0__Impl();
@@ -15139,23 +15139,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__0__Impl"
-    // InternalEssentialOCL.g:4823:1: rule__CollectionPatternCS__Group_2__0__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalEssentialOCL.g:4825:1: rule__CollectionPatternCS__Group_2__0__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__CollectionPatternCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4827:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalEssentialOCL.g:4828:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
+            // InternalEssentialOCL.g:4829:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalEssentialOCL.g:4830:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalEssentialOCL.g:4828:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
-            // InternalEssentialOCL.g:4829:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
+            // InternalEssentialOCL.g:4830:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
+            // InternalEssentialOCL.g:4831:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalEssentialOCL.g:4830:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
-            // InternalEssentialOCL.g:4830:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_0
+            // InternalEssentialOCL.g:4832:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
+            // InternalEssentialOCL.g:4832:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__OwnedPartsAssignment_2_0();
@@ -15190,14 +15190,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__1"
-    // InternalEssentialOCL.g:4840:1: rule__CollectionPatternCS__Group_2__1 : rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 ;
+    // InternalEssentialOCL.g:4842:1: rule__CollectionPatternCS__Group_2__1 : rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 ;
     public final void rule__CollectionPatternCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4844:1: ( rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 )
-            // InternalEssentialOCL.g:4845:2: rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2
+            // InternalEssentialOCL.g:4846:1: ( rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 )
+            // InternalEssentialOCL.g:4847:2: rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_19);
             rule__CollectionPatternCS__Group_2__1__Impl();
@@ -15228,22 +15228,22 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__1__Impl"
-    // InternalEssentialOCL.g:4852:1: rule__CollectionPatternCS__Group_2__1__Impl : ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) ;
+    // InternalEssentialOCL.g:4854:1: rule__CollectionPatternCS__Group_2__1__Impl : ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) ;
     public final void rule__CollectionPatternCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4856:1: ( ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) )
-            // InternalEssentialOCL.g:4857:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
+            // InternalEssentialOCL.g:4858:1: ( ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) )
+            // InternalEssentialOCL.g:4859:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
             {
-            // InternalEssentialOCL.g:4857:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
-            // InternalEssentialOCL.g:4858:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
+            // InternalEssentialOCL.g:4859:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
+            // InternalEssentialOCL.g:4860:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1());
             }
-            // InternalEssentialOCL.g:4859:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
+            // InternalEssentialOCL.g:4861:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             loop42:
             do {
                 int alt42=2;
@@ -15256,7 +15256,7 @@
 
                 switch (alt42) {
             	case 1 :
-            	    // InternalEssentialOCL.g:4859:2: rule__CollectionPatternCS__Group_2_1__0
+            	    // InternalEssentialOCL.g:4861:2: rule__CollectionPatternCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_11);
             	    rule__CollectionPatternCS__Group_2_1__0();
@@ -15297,14 +15297,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__2"
-    // InternalEssentialOCL.g:4869:1: rule__CollectionPatternCS__Group_2__2 : rule__CollectionPatternCS__Group_2__2__Impl ;
+    // InternalEssentialOCL.g:4871:1: rule__CollectionPatternCS__Group_2__2 : rule__CollectionPatternCS__Group_2__2__Impl ;
     public final void rule__CollectionPatternCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4873:1: ( rule__CollectionPatternCS__Group_2__2__Impl )
-            // InternalEssentialOCL.g:4874:2: rule__CollectionPatternCS__Group_2__2__Impl
+            // InternalEssentialOCL.g:4875:1: ( rule__CollectionPatternCS__Group_2__2__Impl )
+            // InternalEssentialOCL.g:4876:2: rule__CollectionPatternCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2__2__Impl();
@@ -15330,23 +15330,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__2__Impl"
-    // InternalEssentialOCL.g:4880:1: rule__CollectionPatternCS__Group_2__2__Impl : ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) ;
+    // InternalEssentialOCL.g:4882:1: rule__CollectionPatternCS__Group_2__2__Impl : ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) ;
     public final void rule__CollectionPatternCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4884:1: ( ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) )
-            // InternalEssentialOCL.g:4885:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
+            // InternalEssentialOCL.g:4886:1: ( ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) )
+            // InternalEssentialOCL.g:4887:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
             {
-            // InternalEssentialOCL.g:4885:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
-            // InternalEssentialOCL.g:4886:1: ( rule__CollectionPatternCS__Group_2_2__0 )
+            // InternalEssentialOCL.g:4887:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
+            // InternalEssentialOCL.g:4888:1: ( rule__CollectionPatternCS__Group_2_2__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2());
             }
-            // InternalEssentialOCL.g:4887:1: ( rule__CollectionPatternCS__Group_2_2__0 )
-            // InternalEssentialOCL.g:4887:2: rule__CollectionPatternCS__Group_2_2__0
+            // InternalEssentialOCL.g:4889:1: ( rule__CollectionPatternCS__Group_2_2__0 )
+            // InternalEssentialOCL.g:4889:2: rule__CollectionPatternCS__Group_2_2__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2_2__0();
@@ -15381,14 +15381,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__0"
-    // InternalEssentialOCL.g:4903:1: rule__CollectionPatternCS__Group_2_1__0 : rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 ;
+    // InternalEssentialOCL.g:4905:1: rule__CollectionPatternCS__Group_2_1__0 : rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 ;
     public final void rule__CollectionPatternCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4907:1: ( rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 )
-            // InternalEssentialOCL.g:4908:2: rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1
+            // InternalEssentialOCL.g:4909:1: ( rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 )
+            // InternalEssentialOCL.g:4910:2: rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__CollectionPatternCS__Group_2_1__0__Impl();
@@ -15419,17 +15419,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__0__Impl"
-    // InternalEssentialOCL.g:4915:1: rule__CollectionPatternCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalEssentialOCL.g:4917:1: rule__CollectionPatternCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CollectionPatternCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4919:1: ( ( ',' ) )
-            // InternalEssentialOCL.g:4920:1: ( ',' )
+            // InternalEssentialOCL.g:4921:1: ( ( ',' ) )
+            // InternalEssentialOCL.g:4922:1: ( ',' )
             {
-            // InternalEssentialOCL.g:4920:1: ( ',' )
-            // InternalEssentialOCL.g:4921:1: ','
+            // InternalEssentialOCL.g:4922:1: ( ',' )
+            // InternalEssentialOCL.g:4923:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
@@ -15460,14 +15460,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__1"
-    // InternalEssentialOCL.g:4934:1: rule__CollectionPatternCS__Group_2_1__1 : rule__CollectionPatternCS__Group_2_1__1__Impl ;
+    // InternalEssentialOCL.g:4936:1: rule__CollectionPatternCS__Group_2_1__1 : rule__CollectionPatternCS__Group_2_1__1__Impl ;
     public final void rule__CollectionPatternCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4938:1: ( rule__CollectionPatternCS__Group_2_1__1__Impl )
-            // InternalEssentialOCL.g:4939:2: rule__CollectionPatternCS__Group_2_1__1__Impl
+            // InternalEssentialOCL.g:4940:1: ( rule__CollectionPatternCS__Group_2_1__1__Impl )
+            // InternalEssentialOCL.g:4941:2: rule__CollectionPatternCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2_1__1__Impl();
@@ -15493,23 +15493,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__1__Impl"
-    // InternalEssentialOCL.g:4945:1: rule__CollectionPatternCS__Group_2_1__1__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalEssentialOCL.g:4947:1: rule__CollectionPatternCS__Group_2_1__1__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__CollectionPatternCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4949:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalEssentialOCL.g:4950:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalEssentialOCL.g:4951:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalEssentialOCL.g:4952:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalEssentialOCL.g:4950:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalEssentialOCL.g:4951:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
+            // InternalEssentialOCL.g:4952:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalEssentialOCL.g:4953:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalEssentialOCL.g:4952:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
-            // InternalEssentialOCL.g:4952:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1
+            // InternalEssentialOCL.g:4954:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
+            // InternalEssentialOCL.g:4954:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1();
@@ -15544,14 +15544,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__0"
-    // InternalEssentialOCL.g:4966:1: rule__CollectionPatternCS__Group_2_2__0 : rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 ;
+    // InternalEssentialOCL.g:4968:1: rule__CollectionPatternCS__Group_2_2__0 : rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 ;
     public final void rule__CollectionPatternCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4970:1: ( rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 )
-            // InternalEssentialOCL.g:4971:2: rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1
+            // InternalEssentialOCL.g:4972:1: ( rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 )
+            // InternalEssentialOCL.g:4973:2: rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__CollectionPatternCS__Group_2_2__0__Impl();
@@ -15582,17 +15582,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__0__Impl"
-    // InternalEssentialOCL.g:4978:1: rule__CollectionPatternCS__Group_2_2__0__Impl : ( '++' ) ;
+    // InternalEssentialOCL.g:4980:1: rule__CollectionPatternCS__Group_2_2__0__Impl : ( '++' ) ;
     public final void rule__CollectionPatternCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:4982:1: ( ( '++' ) )
-            // InternalEssentialOCL.g:4983:1: ( '++' )
+            // InternalEssentialOCL.g:4984:1: ( ( '++' ) )
+            // InternalEssentialOCL.g:4985:1: ( '++' )
             {
-            // InternalEssentialOCL.g:4983:1: ( '++' )
-            // InternalEssentialOCL.g:4984:1: '++'
+            // InternalEssentialOCL.g:4985:1: ( '++' )
+            // InternalEssentialOCL.g:4986:1: '++'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
@@ -15623,14 +15623,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__1"
-    // InternalEssentialOCL.g:4997:1: rule__CollectionPatternCS__Group_2_2__1 : rule__CollectionPatternCS__Group_2_2__1__Impl ;
+    // InternalEssentialOCL.g:4999:1: rule__CollectionPatternCS__Group_2_2__1 : rule__CollectionPatternCS__Group_2_2__1__Impl ;
     public final void rule__CollectionPatternCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5001:1: ( rule__CollectionPatternCS__Group_2_2__1__Impl )
-            // InternalEssentialOCL.g:5002:2: rule__CollectionPatternCS__Group_2_2__1__Impl
+            // InternalEssentialOCL.g:5003:1: ( rule__CollectionPatternCS__Group_2_2__1__Impl )
+            // InternalEssentialOCL.g:5004:2: rule__CollectionPatternCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2_2__1__Impl();
@@ -15656,23 +15656,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__1__Impl"
-    // InternalEssentialOCL.g:5008:1: rule__CollectionPatternCS__Group_2_2__1__Impl : ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) ;
+    // InternalEssentialOCL.g:5010:1: rule__CollectionPatternCS__Group_2_2__1__Impl : ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) ;
     public final void rule__CollectionPatternCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5012:1: ( ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) )
-            // InternalEssentialOCL.g:5013:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
+            // InternalEssentialOCL.g:5014:1: ( ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) )
+            // InternalEssentialOCL.g:5015:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
             {
-            // InternalEssentialOCL.g:5013:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
-            // InternalEssentialOCL.g:5014:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
+            // InternalEssentialOCL.g:5015:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
+            // InternalEssentialOCL.g:5016:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1());
             }
-            // InternalEssentialOCL.g:5015:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
-            // InternalEssentialOCL.g:5015:2: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1
+            // InternalEssentialOCL.g:5017:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
+            // InternalEssentialOCL.g:5017:2: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1();
@@ -15707,14 +15707,14 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__0"
-    // InternalEssentialOCL.g:5029:1: rule__ShadowPartCS__Group_0__0 : rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 ;
+    // InternalEssentialOCL.g:5031:1: rule__ShadowPartCS__Group_0__0 : rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 ;
     public final void rule__ShadowPartCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5033:1: ( rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 )
-            // InternalEssentialOCL.g:5034:2: rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1
+            // InternalEssentialOCL.g:5035:1: ( rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 )
+            // InternalEssentialOCL.g:5036:2: rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_20);
             rule__ShadowPartCS__Group_0__0__Impl();
@@ -15745,23 +15745,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__0__Impl"
-    // InternalEssentialOCL.g:5041:1: rule__ShadowPartCS__Group_0__0__Impl : ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) ;
+    // InternalEssentialOCL.g:5043:1: rule__ShadowPartCS__Group_0__0__Impl : ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) ;
     public final void rule__ShadowPartCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5045:1: ( ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) )
-            // InternalEssentialOCL.g:5046:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
+            // InternalEssentialOCL.g:5047:1: ( ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) )
+            // InternalEssentialOCL.g:5048:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
             {
-            // InternalEssentialOCL.g:5046:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
-            // InternalEssentialOCL.g:5047:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
+            // InternalEssentialOCL.g:5048:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
+            // InternalEssentialOCL.g:5049:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0_0());
             }
-            // InternalEssentialOCL.g:5048:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
-            // InternalEssentialOCL.g:5048:2: rule__ShadowPartCS__ReferredPropertyAssignment_0_0
+            // InternalEssentialOCL.g:5050:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
+            // InternalEssentialOCL.g:5050:2: rule__ShadowPartCS__ReferredPropertyAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__ReferredPropertyAssignment_0_0();
@@ -15796,14 +15796,14 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__1"
-    // InternalEssentialOCL.g:5058:1: rule__ShadowPartCS__Group_0__1 : rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 ;
+    // InternalEssentialOCL.g:5060:1: rule__ShadowPartCS__Group_0__1 : rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 ;
     public final void rule__ShadowPartCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5062:1: ( rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 )
-            // InternalEssentialOCL.g:5063:2: rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2
+            // InternalEssentialOCL.g:5064:1: ( rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 )
+            // InternalEssentialOCL.g:5065:2: rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__ShadowPartCS__Group_0__1__Impl();
@@ -15834,17 +15834,17 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__1__Impl"
-    // InternalEssentialOCL.g:5070:1: rule__ShadowPartCS__Group_0__1__Impl : ( '=' ) ;
+    // InternalEssentialOCL.g:5072:1: rule__ShadowPartCS__Group_0__1__Impl : ( '=' ) ;
     public final void rule__ShadowPartCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5074:1: ( ( '=' ) )
-            // InternalEssentialOCL.g:5075:1: ( '=' )
+            // InternalEssentialOCL.g:5076:1: ( ( '=' ) )
+            // InternalEssentialOCL.g:5077:1: ( '=' )
             {
-            // InternalEssentialOCL.g:5075:1: ( '=' )
-            // InternalEssentialOCL.g:5076:1: '='
+            // InternalEssentialOCL.g:5077:1: ( '=' )
+            // InternalEssentialOCL.g:5078:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_0_1());
@@ -15875,14 +15875,14 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__2"
-    // InternalEssentialOCL.g:5089:1: rule__ShadowPartCS__Group_0__2 : rule__ShadowPartCS__Group_0__2__Impl ;
+    // InternalEssentialOCL.g:5091:1: rule__ShadowPartCS__Group_0__2 : rule__ShadowPartCS__Group_0__2__Impl ;
     public final void rule__ShadowPartCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5093:1: ( rule__ShadowPartCS__Group_0__2__Impl )
-            // InternalEssentialOCL.g:5094:2: rule__ShadowPartCS__Group_0__2__Impl
+            // InternalEssentialOCL.g:5095:1: ( rule__ShadowPartCS__Group_0__2__Impl )
+            // InternalEssentialOCL.g:5096:2: rule__ShadowPartCS__Group_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__Group_0__2__Impl();
@@ -15908,23 +15908,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__2__Impl"
-    // InternalEssentialOCL.g:5100:1: rule__ShadowPartCS__Group_0__2__Impl : ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) ;
+    // InternalEssentialOCL.g:5102:1: rule__ShadowPartCS__Group_0__2__Impl : ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) ;
     public final void rule__ShadowPartCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5104:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) )
-            // InternalEssentialOCL.g:5105:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
+            // InternalEssentialOCL.g:5106:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) )
+            // InternalEssentialOCL.g:5107:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
             {
-            // InternalEssentialOCL.g:5105:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
-            // InternalEssentialOCL.g:5106:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
+            // InternalEssentialOCL.g:5107:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
+            // InternalEssentialOCL.g:5108:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_0_2());
             }
-            // InternalEssentialOCL.g:5107:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
-            // InternalEssentialOCL.g:5107:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2
+            // InternalEssentialOCL.g:5109:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
+            // InternalEssentialOCL.g:5109:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2();
@@ -15959,14 +15959,14 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__0"
-    // InternalEssentialOCL.g:5123:1: rule__PatternExpCS__Group__0 : rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 ;
+    // InternalEssentialOCL.g:5125:1: rule__PatternExpCS__Group__0 : rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 ;
     public final void rule__PatternExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5127:1: ( rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 )
-            // InternalEssentialOCL.g:5128:2: rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1
+            // InternalEssentialOCL.g:5129:1: ( rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 )
+            // InternalEssentialOCL.g:5130:2: rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__PatternExpCS__Group__0__Impl();
@@ -15997,22 +15997,22 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:5135:1: rule__PatternExpCS__Group__0__Impl : ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) ;
+    // InternalEssentialOCL.g:5137:1: rule__PatternExpCS__Group__0__Impl : ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) ;
     public final void rule__PatternExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5139:1: ( ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) )
-            // InternalEssentialOCL.g:5140:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
+            // InternalEssentialOCL.g:5141:1: ( ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) )
+            // InternalEssentialOCL.g:5142:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
             {
-            // InternalEssentialOCL.g:5140:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
-            // InternalEssentialOCL.g:5141:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
+            // InternalEssentialOCL.g:5142:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
+            // InternalEssentialOCL.g:5143:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0());
             }
-            // InternalEssentialOCL.g:5142:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
+            // InternalEssentialOCL.g:5144:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             int alt43=2;
             int LA43_0 = input.LA(1);
 
@@ -16021,7 +16021,7 @@
             }
             switch (alt43) {
                 case 1 :
-                    // InternalEssentialOCL.g:5142:2: rule__PatternExpCS__PatternVariableNameAssignment_0
+                    // InternalEssentialOCL.g:5144:2: rule__PatternExpCS__PatternVariableNameAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PatternExpCS__PatternVariableNameAssignment_0();
@@ -16059,14 +16059,14 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__1"
-    // InternalEssentialOCL.g:5152:1: rule__PatternExpCS__Group__1 : rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 ;
+    // InternalEssentialOCL.g:5154:1: rule__PatternExpCS__Group__1 : rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 ;
     public final void rule__PatternExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5156:1: ( rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 )
-            // InternalEssentialOCL.g:5157:2: rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2
+            // InternalEssentialOCL.g:5158:1: ( rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 )
+            // InternalEssentialOCL.g:5159:2: rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__PatternExpCS__Group__1__Impl();
@@ -16097,17 +16097,17 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:5164:1: rule__PatternExpCS__Group__1__Impl : ( ':' ) ;
+    // InternalEssentialOCL.g:5166:1: rule__PatternExpCS__Group__1__Impl : ( ':' ) ;
     public final void rule__PatternExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5168:1: ( ( ':' ) )
-            // InternalEssentialOCL.g:5169:1: ( ':' )
+            // InternalEssentialOCL.g:5170:1: ( ( ':' ) )
+            // InternalEssentialOCL.g:5171:1: ( ':' )
             {
-            // InternalEssentialOCL.g:5169:1: ( ':' )
-            // InternalEssentialOCL.g:5170:1: ':'
+            // InternalEssentialOCL.g:5171:1: ( ':' )
+            // InternalEssentialOCL.g:5172:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
@@ -16138,14 +16138,14 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__2"
-    // InternalEssentialOCL.g:5183:1: rule__PatternExpCS__Group__2 : rule__PatternExpCS__Group__2__Impl ;
+    // InternalEssentialOCL.g:5185:1: rule__PatternExpCS__Group__2 : rule__PatternExpCS__Group__2__Impl ;
     public final void rule__PatternExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5187:1: ( rule__PatternExpCS__Group__2__Impl )
-            // InternalEssentialOCL.g:5188:2: rule__PatternExpCS__Group__2__Impl
+            // InternalEssentialOCL.g:5189:1: ( rule__PatternExpCS__Group__2__Impl )
+            // InternalEssentialOCL.g:5190:2: rule__PatternExpCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PatternExpCS__Group__2__Impl();
@@ -16171,23 +16171,23 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__2__Impl"
-    // InternalEssentialOCL.g:5194:1: rule__PatternExpCS__Group__2__Impl : ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) ;
+    // InternalEssentialOCL.g:5196:1: rule__PatternExpCS__Group__2__Impl : ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) ;
     public final void rule__PatternExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5198:1: ( ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) )
-            // InternalEssentialOCL.g:5199:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
+            // InternalEssentialOCL.g:5200:1: ( ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) )
+            // InternalEssentialOCL.g:5201:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
             {
-            // InternalEssentialOCL.g:5199:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
-            // InternalEssentialOCL.g:5200:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
+            // InternalEssentialOCL.g:5201:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
+            // InternalEssentialOCL.g:5202:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2());
             }
-            // InternalEssentialOCL.g:5201:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
-            // InternalEssentialOCL.g:5201:2: rule__PatternExpCS__OwnedPatternTypeAssignment_2
+            // InternalEssentialOCL.g:5203:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
+            // InternalEssentialOCL.g:5203:2: rule__PatternExpCS__OwnedPatternTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PatternExpCS__OwnedPatternTypeAssignment_2();
@@ -16222,14 +16222,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__0"
-    // InternalEssentialOCL.g:5217:1: rule__LambdaLiteralExpCS__Group__0 : rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 ;
+    // InternalEssentialOCL.g:5219:1: rule__LambdaLiteralExpCS__Group__0 : rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 ;
     public final void rule__LambdaLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5221:1: ( rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 )
-            // InternalEssentialOCL.g:5222:2: rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1
+            // InternalEssentialOCL.g:5223:1: ( rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 )
+            // InternalEssentialOCL.g:5224:2: rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__LambdaLiteralExpCS__Group__0__Impl();
@@ -16260,17 +16260,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:5229:1: rule__LambdaLiteralExpCS__Group__0__Impl : ( 'Lambda' ) ;
+    // InternalEssentialOCL.g:5231:1: rule__LambdaLiteralExpCS__Group__0__Impl : ( 'Lambda' ) ;
     public final void rule__LambdaLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5233:1: ( ( 'Lambda' ) )
-            // InternalEssentialOCL.g:5234:1: ( 'Lambda' )
+            // InternalEssentialOCL.g:5235:1: ( ( 'Lambda' ) )
+            // InternalEssentialOCL.g:5236:1: ( 'Lambda' )
             {
-            // InternalEssentialOCL.g:5234:1: ( 'Lambda' )
-            // InternalEssentialOCL.g:5235:1: 'Lambda'
+            // InternalEssentialOCL.g:5236:1: ( 'Lambda' )
+            // InternalEssentialOCL.g:5237:1: 'Lambda'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
@@ -16301,14 +16301,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__1"
-    // InternalEssentialOCL.g:5248:1: rule__LambdaLiteralExpCS__Group__1 : rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 ;
+    // InternalEssentialOCL.g:5250:1: rule__LambdaLiteralExpCS__Group__1 : rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 ;
     public final void rule__LambdaLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5252:1: ( rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 )
-            // InternalEssentialOCL.g:5253:2: rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2
+            // InternalEssentialOCL.g:5254:1: ( rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 )
+            // InternalEssentialOCL.g:5255:2: rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__LambdaLiteralExpCS__Group__1__Impl();
@@ -16339,17 +16339,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:5260:1: rule__LambdaLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalEssentialOCL.g:5262:1: rule__LambdaLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__LambdaLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5264:1: ( ( '{' ) )
-            // InternalEssentialOCL.g:5265:1: ( '{' )
+            // InternalEssentialOCL.g:5266:1: ( ( '{' ) )
+            // InternalEssentialOCL.g:5267:1: ( '{' )
             {
-            // InternalEssentialOCL.g:5265:1: ( '{' )
-            // InternalEssentialOCL.g:5266:1: '{'
+            // InternalEssentialOCL.g:5267:1: ( '{' )
+            // InternalEssentialOCL.g:5268:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -16380,14 +16380,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__2"
-    // InternalEssentialOCL.g:5279:1: rule__LambdaLiteralExpCS__Group__2 : rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 ;
+    // InternalEssentialOCL.g:5281:1: rule__LambdaLiteralExpCS__Group__2 : rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 ;
     public final void rule__LambdaLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5283:1: ( rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 )
-            // InternalEssentialOCL.g:5284:2: rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3
+            // InternalEssentialOCL.g:5285:1: ( rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 )
+            // InternalEssentialOCL.g:5286:2: rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_21);
             rule__LambdaLiteralExpCS__Group__2__Impl();
@@ -16418,23 +16418,23 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__2__Impl"
-    // InternalEssentialOCL.g:5291:1: rule__LambdaLiteralExpCS__Group__2__Impl : ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) ;
+    // InternalEssentialOCL.g:5293:1: rule__LambdaLiteralExpCS__Group__2__Impl : ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) ;
     public final void rule__LambdaLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5295:1: ( ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) )
-            // InternalEssentialOCL.g:5296:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
+            // InternalEssentialOCL.g:5297:1: ( ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) )
+            // InternalEssentialOCL.g:5298:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
             {
-            // InternalEssentialOCL.g:5296:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
-            // InternalEssentialOCL.g:5297:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
+            // InternalEssentialOCL.g:5298:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
+            // InternalEssentialOCL.g:5299:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2());
             }
-            // InternalEssentialOCL.g:5298:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
-            // InternalEssentialOCL.g:5298:2: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2
+            // InternalEssentialOCL.g:5300:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
+            // InternalEssentialOCL.g:5300:2: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2();
@@ -16469,14 +16469,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__3"
-    // InternalEssentialOCL.g:5308:1: rule__LambdaLiteralExpCS__Group__3 : rule__LambdaLiteralExpCS__Group__3__Impl ;
+    // InternalEssentialOCL.g:5310:1: rule__LambdaLiteralExpCS__Group__3 : rule__LambdaLiteralExpCS__Group__3__Impl ;
     public final void rule__LambdaLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5312:1: ( rule__LambdaLiteralExpCS__Group__3__Impl )
-            // InternalEssentialOCL.g:5313:2: rule__LambdaLiteralExpCS__Group__3__Impl
+            // InternalEssentialOCL.g:5314:1: ( rule__LambdaLiteralExpCS__Group__3__Impl )
+            // InternalEssentialOCL.g:5315:2: rule__LambdaLiteralExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaLiteralExpCS__Group__3__Impl();
@@ -16502,17 +16502,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__3__Impl"
-    // InternalEssentialOCL.g:5319:1: rule__LambdaLiteralExpCS__Group__3__Impl : ( '}' ) ;
+    // InternalEssentialOCL.g:5321:1: rule__LambdaLiteralExpCS__Group__3__Impl : ( '}' ) ;
     public final void rule__LambdaLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5323:1: ( ( '}' ) )
-            // InternalEssentialOCL.g:5324:1: ( '}' )
+            // InternalEssentialOCL.g:5325:1: ( ( '}' ) )
+            // InternalEssentialOCL.g:5326:1: ( '}' )
             {
-            // InternalEssentialOCL.g:5324:1: ( '}' )
-            // InternalEssentialOCL.g:5325:1: '}'
+            // InternalEssentialOCL.g:5326:1: ( '}' )
+            // InternalEssentialOCL.g:5327:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
@@ -16543,14 +16543,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__0"
-    // InternalEssentialOCL.g:5346:1: rule__MapLiteralExpCS__Group__0 : rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 ;
+    // InternalEssentialOCL.g:5348:1: rule__MapLiteralExpCS__Group__0 : rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 ;
     public final void rule__MapLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5350:1: ( rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 )
-            // InternalEssentialOCL.g:5351:2: rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1
+            // InternalEssentialOCL.g:5352:1: ( rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 )
+            // InternalEssentialOCL.g:5353:2: rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__MapLiteralExpCS__Group__0__Impl();
@@ -16581,23 +16581,23 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:5358:1: rule__MapLiteralExpCS__Group__0__Impl : ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:5360:1: rule__MapLiteralExpCS__Group__0__Impl : ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
     public final void rule__MapLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5362:1: ( ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) )
-            // InternalEssentialOCL.g:5363:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalEssentialOCL.g:5364:1: ( ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) )
+            // InternalEssentialOCL.g:5365:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:5363:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
-            // InternalEssentialOCL.g:5364:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalEssentialOCL.g:5365:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalEssentialOCL.g:5366:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
-            // InternalEssentialOCL.g:5365:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
-            // InternalEssentialOCL.g:5365:2: rule__MapLiteralExpCS__OwnedTypeAssignment_0
+            // InternalEssentialOCL.g:5367:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalEssentialOCL.g:5367:2: rule__MapLiteralExpCS__OwnedTypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__OwnedTypeAssignment_0();
@@ -16632,14 +16632,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__1"
-    // InternalEssentialOCL.g:5375:1: rule__MapLiteralExpCS__Group__1 : rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 ;
+    // InternalEssentialOCL.g:5377:1: rule__MapLiteralExpCS__Group__1 : rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 ;
     public final void rule__MapLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5379:1: ( rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 )
-            // InternalEssentialOCL.g:5380:2: rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2
+            // InternalEssentialOCL.g:5381:1: ( rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 )
+            // InternalEssentialOCL.g:5382:2: rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__MapLiteralExpCS__Group__1__Impl();
@@ -16670,17 +16670,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:5387:1: rule__MapLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalEssentialOCL.g:5389:1: rule__MapLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__MapLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5391:1: ( ( '{' ) )
-            // InternalEssentialOCL.g:5392:1: ( '{' )
+            // InternalEssentialOCL.g:5393:1: ( ( '{' ) )
+            // InternalEssentialOCL.g:5394:1: ( '{' )
             {
-            // InternalEssentialOCL.g:5392:1: ( '{' )
-            // InternalEssentialOCL.g:5393:1: '{'
+            // InternalEssentialOCL.g:5394:1: ( '{' )
+            // InternalEssentialOCL.g:5395:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -16711,14 +16711,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__2"
-    // InternalEssentialOCL.g:5406:1: rule__MapLiteralExpCS__Group__2 : rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 ;
+    // InternalEssentialOCL.g:5408:1: rule__MapLiteralExpCS__Group__2 : rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 ;
     public final void rule__MapLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5410:1: ( rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 )
-            // InternalEssentialOCL.g:5411:2: rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3
+            // InternalEssentialOCL.g:5412:1: ( rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 )
+            // InternalEssentialOCL.g:5413:2: rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__MapLiteralExpCS__Group__2__Impl();
@@ -16749,22 +16749,22 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__2__Impl"
-    // InternalEssentialOCL.g:5418:1: rule__MapLiteralExpCS__Group__2__Impl : ( ( rule__MapLiteralExpCS__Group_2__0 )? ) ;
+    // InternalEssentialOCL.g:5420:1: rule__MapLiteralExpCS__Group__2__Impl : ( ( rule__MapLiteralExpCS__Group_2__0 )? ) ;
     public final void rule__MapLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5422:1: ( ( ( rule__MapLiteralExpCS__Group_2__0 )? ) )
-            // InternalEssentialOCL.g:5423:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:5424:1: ( ( ( rule__MapLiteralExpCS__Group_2__0 )? ) )
+            // InternalEssentialOCL.g:5425:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
             {
-            // InternalEssentialOCL.g:5423:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
-            // InternalEssentialOCL.g:5424:1: ( rule__MapLiteralExpCS__Group_2__0 )?
+            // InternalEssentialOCL.g:5425:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:5426:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2());
             }
-            // InternalEssentialOCL.g:5425:1: ( rule__MapLiteralExpCS__Group_2__0 )?
+            // InternalEssentialOCL.g:5427:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             int alt44=2;
             int LA44_0 = input.LA(1);
 
@@ -16773,7 +16773,7 @@
             }
             switch (alt44) {
                 case 1 :
-                    // InternalEssentialOCL.g:5425:2: rule__MapLiteralExpCS__Group_2__0
+                    // InternalEssentialOCL.g:5427:2: rule__MapLiteralExpCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MapLiteralExpCS__Group_2__0();
@@ -16811,14 +16811,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__3"
-    // InternalEssentialOCL.g:5435:1: rule__MapLiteralExpCS__Group__3 : rule__MapLiteralExpCS__Group__3__Impl ;
+    // InternalEssentialOCL.g:5437:1: rule__MapLiteralExpCS__Group__3 : rule__MapLiteralExpCS__Group__3__Impl ;
     public final void rule__MapLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5439:1: ( rule__MapLiteralExpCS__Group__3__Impl )
-            // InternalEssentialOCL.g:5440:2: rule__MapLiteralExpCS__Group__3__Impl
+            // InternalEssentialOCL.g:5441:1: ( rule__MapLiteralExpCS__Group__3__Impl )
+            // InternalEssentialOCL.g:5442:2: rule__MapLiteralExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__Group__3__Impl();
@@ -16844,17 +16844,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__3__Impl"
-    // InternalEssentialOCL.g:5446:1: rule__MapLiteralExpCS__Group__3__Impl : ( '}' ) ;
+    // InternalEssentialOCL.g:5448:1: rule__MapLiteralExpCS__Group__3__Impl : ( '}' ) ;
     public final void rule__MapLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5450:1: ( ( '}' ) )
-            // InternalEssentialOCL.g:5451:1: ( '}' )
+            // InternalEssentialOCL.g:5452:1: ( ( '}' ) )
+            // InternalEssentialOCL.g:5453:1: ( '}' )
             {
-            // InternalEssentialOCL.g:5451:1: ( '}' )
-            // InternalEssentialOCL.g:5452:1: '}'
+            // InternalEssentialOCL.g:5453:1: ( '}' )
+            // InternalEssentialOCL.g:5454:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
@@ -16885,14 +16885,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__0"
-    // InternalEssentialOCL.g:5473:1: rule__MapLiteralExpCS__Group_2__0 : rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 ;
+    // InternalEssentialOCL.g:5475:1: rule__MapLiteralExpCS__Group_2__0 : rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 ;
     public final void rule__MapLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5477:1: ( rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 )
-            // InternalEssentialOCL.g:5478:2: rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1
+            // InternalEssentialOCL.g:5479:1: ( rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 )
+            // InternalEssentialOCL.g:5480:2: rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_8);
             rule__MapLiteralExpCS__Group_2__0__Impl();
@@ -16923,23 +16923,23 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__0__Impl"
-    // InternalEssentialOCL.g:5485:1: rule__MapLiteralExpCS__Group_2__0__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalEssentialOCL.g:5487:1: rule__MapLiteralExpCS__Group_2__0__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__MapLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5489:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalEssentialOCL.g:5490:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalEssentialOCL.g:5491:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalEssentialOCL.g:5492:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalEssentialOCL.g:5490:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
-            // InternalEssentialOCL.g:5491:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalEssentialOCL.g:5492:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalEssentialOCL.g:5493:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalEssentialOCL.g:5492:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
-            // InternalEssentialOCL.g:5492:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0
+            // InternalEssentialOCL.g:5494:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalEssentialOCL.g:5494:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__OwnedPartsAssignment_2_0();
@@ -16974,14 +16974,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__1"
-    // InternalEssentialOCL.g:5502:1: rule__MapLiteralExpCS__Group_2__1 : rule__MapLiteralExpCS__Group_2__1__Impl ;
+    // InternalEssentialOCL.g:5504:1: rule__MapLiteralExpCS__Group_2__1 : rule__MapLiteralExpCS__Group_2__1__Impl ;
     public final void rule__MapLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5506:1: ( rule__MapLiteralExpCS__Group_2__1__Impl )
-            // InternalEssentialOCL.g:5507:2: rule__MapLiteralExpCS__Group_2__1__Impl
+            // InternalEssentialOCL.g:5508:1: ( rule__MapLiteralExpCS__Group_2__1__Impl )
+            // InternalEssentialOCL.g:5509:2: rule__MapLiteralExpCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__Group_2__1__Impl();
@@ -17007,22 +17007,22 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__1__Impl"
-    // InternalEssentialOCL.g:5513:1: rule__MapLiteralExpCS__Group_2__1__Impl : ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) ;
+    // InternalEssentialOCL.g:5515:1: rule__MapLiteralExpCS__Group_2__1__Impl : ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) ;
     public final void rule__MapLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5517:1: ( ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) )
-            // InternalEssentialOCL.g:5518:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
+            // InternalEssentialOCL.g:5519:1: ( ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) )
+            // InternalEssentialOCL.g:5520:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
             {
-            // InternalEssentialOCL.g:5518:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
-            // InternalEssentialOCL.g:5519:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
+            // InternalEssentialOCL.g:5520:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
+            // InternalEssentialOCL.g:5521:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1());
             }
-            // InternalEssentialOCL.g:5520:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
+            // InternalEssentialOCL.g:5522:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             loop45:
             do {
                 int alt45=2;
@@ -17035,7 +17035,7 @@
 
                 switch (alt45) {
             	case 1 :
-            	    // InternalEssentialOCL.g:5520:2: rule__MapLiteralExpCS__Group_2_1__0
+            	    // InternalEssentialOCL.g:5522:2: rule__MapLiteralExpCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_11);
             	    rule__MapLiteralExpCS__Group_2_1__0();
@@ -17076,14 +17076,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__0"
-    // InternalEssentialOCL.g:5534:1: rule__MapLiteralExpCS__Group_2_1__0 : rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 ;
+    // InternalEssentialOCL.g:5536:1: rule__MapLiteralExpCS__Group_2_1__0 : rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 ;
     public final void rule__MapLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5538:1: ( rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 )
-            // InternalEssentialOCL.g:5539:2: rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1
+            // InternalEssentialOCL.g:5540:1: ( rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 )
+            // InternalEssentialOCL.g:5541:2: rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__MapLiteralExpCS__Group_2_1__0__Impl();
@@ -17114,17 +17114,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__0__Impl"
-    // InternalEssentialOCL.g:5546:1: rule__MapLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalEssentialOCL.g:5548:1: rule__MapLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__MapLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5550:1: ( ( ',' ) )
-            // InternalEssentialOCL.g:5551:1: ( ',' )
+            // InternalEssentialOCL.g:5552:1: ( ( ',' ) )
+            // InternalEssentialOCL.g:5553:1: ( ',' )
             {
-            // InternalEssentialOCL.g:5551:1: ( ',' )
-            // InternalEssentialOCL.g:5552:1: ','
+            // InternalEssentialOCL.g:5553:1: ( ',' )
+            // InternalEssentialOCL.g:5554:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
@@ -17155,14 +17155,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__1"
-    // InternalEssentialOCL.g:5565:1: rule__MapLiteralExpCS__Group_2_1__1 : rule__MapLiteralExpCS__Group_2_1__1__Impl ;
+    // InternalEssentialOCL.g:5567:1: rule__MapLiteralExpCS__Group_2_1__1 : rule__MapLiteralExpCS__Group_2_1__1__Impl ;
     public final void rule__MapLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5569:1: ( rule__MapLiteralExpCS__Group_2_1__1__Impl )
-            // InternalEssentialOCL.g:5570:2: rule__MapLiteralExpCS__Group_2_1__1__Impl
+            // InternalEssentialOCL.g:5571:1: ( rule__MapLiteralExpCS__Group_2_1__1__Impl )
+            // InternalEssentialOCL.g:5572:2: rule__MapLiteralExpCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__Group_2_1__1__Impl();
@@ -17188,23 +17188,23 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__1__Impl"
-    // InternalEssentialOCL.g:5576:1: rule__MapLiteralExpCS__Group_2_1__1__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalEssentialOCL.g:5578:1: rule__MapLiteralExpCS__Group_2_1__1__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__MapLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5580:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalEssentialOCL.g:5581:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalEssentialOCL.g:5582:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalEssentialOCL.g:5583:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalEssentialOCL.g:5581:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalEssentialOCL.g:5582:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalEssentialOCL.g:5583:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalEssentialOCL.g:5584:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalEssentialOCL.g:5583:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
-            // InternalEssentialOCL.g:5583:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1
+            // InternalEssentialOCL.g:5585:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalEssentialOCL.g:5585:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1();
@@ -17239,14 +17239,14 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__0"
-    // InternalEssentialOCL.g:5597:1: rule__MapLiteralPartCS__Group__0 : rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 ;
+    // InternalEssentialOCL.g:5599:1: rule__MapLiteralPartCS__Group__0 : rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 ;
     public final void rule__MapLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5601:1: ( rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 )
-            // InternalEssentialOCL.g:5602:2: rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1
+            // InternalEssentialOCL.g:5603:1: ( rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 )
+            // InternalEssentialOCL.g:5604:2: rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_23);
             rule__MapLiteralPartCS__Group__0__Impl();
@@ -17277,23 +17277,23 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__0__Impl"
-    // InternalEssentialOCL.g:5609:1: rule__MapLiteralPartCS__Group__0__Impl : ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:5611:1: rule__MapLiteralPartCS__Group__0__Impl : ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) ;
     public final void rule__MapLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5613:1: ( ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) )
-            // InternalEssentialOCL.g:5614:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
+            // InternalEssentialOCL.g:5615:1: ( ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) )
+            // InternalEssentialOCL.g:5616:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:5614:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
-            // InternalEssentialOCL.g:5615:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
+            // InternalEssentialOCL.g:5616:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
+            // InternalEssentialOCL.g:5617:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0());
             }
-            // InternalEssentialOCL.g:5616:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
-            // InternalEssentialOCL.g:5616:2: rule__MapLiteralPartCS__OwnedKeyAssignment_0
+            // InternalEssentialOCL.g:5618:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
+            // InternalEssentialOCL.g:5618:2: rule__MapLiteralPartCS__OwnedKeyAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralPartCS__OwnedKeyAssignment_0();
@@ -17328,14 +17328,14 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__1"
-    // InternalEssentialOCL.g:5626:1: rule__MapLiteralPartCS__Group__1 : rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 ;
+    // InternalEssentialOCL.g:5628:1: rule__MapLiteralPartCS__Group__1 : rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 ;
     public final void rule__MapLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5630:1: ( rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 )
-            // InternalEssentialOCL.g:5631:2: rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2
+            // InternalEssentialOCL.g:5632:1: ( rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 )
+            // InternalEssentialOCL.g:5633:2: rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__MapLiteralPartCS__Group__1__Impl();
@@ -17366,17 +17366,17 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__1__Impl"
-    // InternalEssentialOCL.g:5638:1: rule__MapLiteralPartCS__Group__1__Impl : ( '<-' ) ;
+    // InternalEssentialOCL.g:5640:1: rule__MapLiteralPartCS__Group__1__Impl : ( '<-' ) ;
     public final void rule__MapLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5642:1: ( ( '<-' ) )
-            // InternalEssentialOCL.g:5643:1: ( '<-' )
+            // InternalEssentialOCL.g:5644:1: ( ( '<-' ) )
+            // InternalEssentialOCL.g:5645:1: ( '<-' )
             {
-            // InternalEssentialOCL.g:5643:1: ( '<-' )
-            // InternalEssentialOCL.g:5644:1: '<-'
+            // InternalEssentialOCL.g:5645:1: ( '<-' )
+            // InternalEssentialOCL.g:5646:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
@@ -17407,14 +17407,14 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__2"
-    // InternalEssentialOCL.g:5657:1: rule__MapLiteralPartCS__Group__2 : rule__MapLiteralPartCS__Group__2__Impl ;
+    // InternalEssentialOCL.g:5659:1: rule__MapLiteralPartCS__Group__2 : rule__MapLiteralPartCS__Group__2__Impl ;
     public final void rule__MapLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5661:1: ( rule__MapLiteralPartCS__Group__2__Impl )
-            // InternalEssentialOCL.g:5662:2: rule__MapLiteralPartCS__Group__2__Impl
+            // InternalEssentialOCL.g:5663:1: ( rule__MapLiteralPartCS__Group__2__Impl )
+            // InternalEssentialOCL.g:5664:2: rule__MapLiteralPartCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralPartCS__Group__2__Impl();
@@ -17440,23 +17440,23 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__2__Impl"
-    // InternalEssentialOCL.g:5668:1: rule__MapLiteralPartCS__Group__2__Impl : ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) ;
+    // InternalEssentialOCL.g:5670:1: rule__MapLiteralPartCS__Group__2__Impl : ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) ;
     public final void rule__MapLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5672:1: ( ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) )
-            // InternalEssentialOCL.g:5673:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
+            // InternalEssentialOCL.g:5674:1: ( ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) )
+            // InternalEssentialOCL.g:5675:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
             {
-            // InternalEssentialOCL.g:5673:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
-            // InternalEssentialOCL.g:5674:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
+            // InternalEssentialOCL.g:5675:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
+            // InternalEssentialOCL.g:5676:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2());
             }
-            // InternalEssentialOCL.g:5675:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
-            // InternalEssentialOCL.g:5675:2: rule__MapLiteralPartCS__OwnedValueAssignment_2
+            // InternalEssentialOCL.g:5677:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
+            // InternalEssentialOCL.g:5677:2: rule__MapLiteralPartCS__OwnedValueAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralPartCS__OwnedValueAssignment_2();
@@ -17491,14 +17491,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__0"
-    // InternalEssentialOCL.g:5691:1: rule__TupleLiteralExpCS__Group__0 : rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 ;
+    // InternalEssentialOCL.g:5693:1: rule__TupleLiteralExpCS__Group__0 : rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 ;
     public final void rule__TupleLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5695:1: ( rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 )
-            // InternalEssentialOCL.g:5696:2: rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1
+            // InternalEssentialOCL.g:5697:1: ( rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 )
+            // InternalEssentialOCL.g:5698:2: rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__TupleLiteralExpCS__Group__0__Impl();
@@ -17529,17 +17529,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:5703:1: rule__TupleLiteralExpCS__Group__0__Impl : ( 'Tuple' ) ;
+    // InternalEssentialOCL.g:5705:1: rule__TupleLiteralExpCS__Group__0__Impl : ( 'Tuple' ) ;
     public final void rule__TupleLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5707:1: ( ( 'Tuple' ) )
-            // InternalEssentialOCL.g:5708:1: ( 'Tuple' )
+            // InternalEssentialOCL.g:5709:1: ( ( 'Tuple' ) )
+            // InternalEssentialOCL.g:5710:1: ( 'Tuple' )
             {
-            // InternalEssentialOCL.g:5708:1: ( 'Tuple' )
-            // InternalEssentialOCL.g:5709:1: 'Tuple'
+            // InternalEssentialOCL.g:5710:1: ( 'Tuple' )
+            // InternalEssentialOCL.g:5711:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
@@ -17570,14 +17570,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__1"
-    // InternalEssentialOCL.g:5722:1: rule__TupleLiteralExpCS__Group__1 : rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 ;
+    // InternalEssentialOCL.g:5724:1: rule__TupleLiteralExpCS__Group__1 : rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 ;
     public final void rule__TupleLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5726:1: ( rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 )
-            // InternalEssentialOCL.g:5727:2: rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2
+            // InternalEssentialOCL.g:5728:1: ( rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 )
+            // InternalEssentialOCL.g:5729:2: rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__TupleLiteralExpCS__Group__1__Impl();
@@ -17608,17 +17608,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:5734:1: rule__TupleLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalEssentialOCL.g:5736:1: rule__TupleLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__TupleLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5738:1: ( ( '{' ) )
-            // InternalEssentialOCL.g:5739:1: ( '{' )
+            // InternalEssentialOCL.g:5740:1: ( ( '{' ) )
+            // InternalEssentialOCL.g:5741:1: ( '{' )
             {
-            // InternalEssentialOCL.g:5739:1: ( '{' )
-            // InternalEssentialOCL.g:5740:1: '{'
+            // InternalEssentialOCL.g:5741:1: ( '{' )
+            // InternalEssentialOCL.g:5742:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -17649,14 +17649,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__2"
-    // InternalEssentialOCL.g:5753:1: rule__TupleLiteralExpCS__Group__2 : rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 ;
+    // InternalEssentialOCL.g:5755:1: rule__TupleLiteralExpCS__Group__2 : rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 ;
     public final void rule__TupleLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5757:1: ( rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 )
-            // InternalEssentialOCL.g:5758:2: rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3
+            // InternalEssentialOCL.g:5759:1: ( rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 )
+            // InternalEssentialOCL.g:5760:2: rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_24);
             rule__TupleLiteralExpCS__Group__2__Impl();
@@ -17687,23 +17687,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__2__Impl"
-    // InternalEssentialOCL.g:5765:1: rule__TupleLiteralExpCS__Group__2__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) ;
+    // InternalEssentialOCL.g:5767:1: rule__TupleLiteralExpCS__Group__2__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) ;
     public final void rule__TupleLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5769:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) )
-            // InternalEssentialOCL.g:5770:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
+            // InternalEssentialOCL.g:5771:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) )
+            // InternalEssentialOCL.g:5772:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
             {
-            // InternalEssentialOCL.g:5770:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
-            // InternalEssentialOCL.g:5771:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
+            // InternalEssentialOCL.g:5772:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
+            // InternalEssentialOCL.g:5773:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2());
             }
-            // InternalEssentialOCL.g:5772:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
-            // InternalEssentialOCL.g:5772:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_2
+            // InternalEssentialOCL.g:5774:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
+            // InternalEssentialOCL.g:5774:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__OwnedPartsAssignment_2();
@@ -17738,14 +17738,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__3"
-    // InternalEssentialOCL.g:5782:1: rule__TupleLiteralExpCS__Group__3 : rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 ;
+    // InternalEssentialOCL.g:5784:1: rule__TupleLiteralExpCS__Group__3 : rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 ;
     public final void rule__TupleLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5786:1: ( rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 )
-            // InternalEssentialOCL.g:5787:2: rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4
+            // InternalEssentialOCL.g:5788:1: ( rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 )
+            // InternalEssentialOCL.g:5789:2: rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_24);
             rule__TupleLiteralExpCS__Group__3__Impl();
@@ -17776,22 +17776,22 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__3__Impl"
-    // InternalEssentialOCL.g:5794:1: rule__TupleLiteralExpCS__Group__3__Impl : ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) ;
+    // InternalEssentialOCL.g:5796:1: rule__TupleLiteralExpCS__Group__3__Impl : ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) ;
     public final void rule__TupleLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5798:1: ( ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) )
-            // InternalEssentialOCL.g:5799:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
+            // InternalEssentialOCL.g:5800:1: ( ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) )
+            // InternalEssentialOCL.g:5801:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
             {
-            // InternalEssentialOCL.g:5799:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
-            // InternalEssentialOCL.g:5800:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
+            // InternalEssentialOCL.g:5801:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
+            // InternalEssentialOCL.g:5802:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3());
             }
-            // InternalEssentialOCL.g:5801:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
+            // InternalEssentialOCL.g:5803:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             loop46:
             do {
                 int alt46=2;
@@ -17804,7 +17804,7 @@
 
                 switch (alt46) {
             	case 1 :
-            	    // InternalEssentialOCL.g:5801:2: rule__TupleLiteralExpCS__Group_3__0
+            	    // InternalEssentialOCL.g:5803:2: rule__TupleLiteralExpCS__Group_3__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_11);
             	    rule__TupleLiteralExpCS__Group_3__0();
@@ -17845,14 +17845,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__4"
-    // InternalEssentialOCL.g:5811:1: rule__TupleLiteralExpCS__Group__4 : rule__TupleLiteralExpCS__Group__4__Impl ;
+    // InternalEssentialOCL.g:5813:1: rule__TupleLiteralExpCS__Group__4 : rule__TupleLiteralExpCS__Group__4__Impl ;
     public final void rule__TupleLiteralExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5815:1: ( rule__TupleLiteralExpCS__Group__4__Impl )
-            // InternalEssentialOCL.g:5816:2: rule__TupleLiteralExpCS__Group__4__Impl
+            // InternalEssentialOCL.g:5817:1: ( rule__TupleLiteralExpCS__Group__4__Impl )
+            // InternalEssentialOCL.g:5818:2: rule__TupleLiteralExpCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__Group__4__Impl();
@@ -17878,17 +17878,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__4__Impl"
-    // InternalEssentialOCL.g:5822:1: rule__TupleLiteralExpCS__Group__4__Impl : ( '}' ) ;
+    // InternalEssentialOCL.g:5824:1: rule__TupleLiteralExpCS__Group__4__Impl : ( '}' ) ;
     public final void rule__TupleLiteralExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5826:1: ( ( '}' ) )
-            // InternalEssentialOCL.g:5827:1: ( '}' )
+            // InternalEssentialOCL.g:5828:1: ( ( '}' ) )
+            // InternalEssentialOCL.g:5829:1: ( '}' )
             {
-            // InternalEssentialOCL.g:5827:1: ( '}' )
-            // InternalEssentialOCL.g:5828:1: '}'
+            // InternalEssentialOCL.g:5829:1: ( '}' )
+            // InternalEssentialOCL.g:5830:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
@@ -17919,14 +17919,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__0"
-    // InternalEssentialOCL.g:5851:1: rule__TupleLiteralExpCS__Group_3__0 : rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 ;
+    // InternalEssentialOCL.g:5853:1: rule__TupleLiteralExpCS__Group_3__0 : rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 ;
     public final void rule__TupleLiteralExpCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5855:1: ( rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 )
-            // InternalEssentialOCL.g:5856:2: rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1
+            // InternalEssentialOCL.g:5857:1: ( rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 )
+            // InternalEssentialOCL.g:5858:2: rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__TupleLiteralExpCS__Group_3__0__Impl();
@@ -17957,17 +17957,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__0__Impl"
-    // InternalEssentialOCL.g:5863:1: rule__TupleLiteralExpCS__Group_3__0__Impl : ( ',' ) ;
+    // InternalEssentialOCL.g:5865:1: rule__TupleLiteralExpCS__Group_3__0__Impl : ( ',' ) ;
     public final void rule__TupleLiteralExpCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5867:1: ( ( ',' ) )
-            // InternalEssentialOCL.g:5868:1: ( ',' )
+            // InternalEssentialOCL.g:5869:1: ( ( ',' ) )
+            // InternalEssentialOCL.g:5870:1: ( ',' )
             {
-            // InternalEssentialOCL.g:5868:1: ( ',' )
-            // InternalEssentialOCL.g:5869:1: ','
+            // InternalEssentialOCL.g:5870:1: ( ',' )
+            // InternalEssentialOCL.g:5871:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
@@ -17998,14 +17998,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__1"
-    // InternalEssentialOCL.g:5882:1: rule__TupleLiteralExpCS__Group_3__1 : rule__TupleLiteralExpCS__Group_3__1__Impl ;
+    // InternalEssentialOCL.g:5884:1: rule__TupleLiteralExpCS__Group_3__1 : rule__TupleLiteralExpCS__Group_3__1__Impl ;
     public final void rule__TupleLiteralExpCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5886:1: ( rule__TupleLiteralExpCS__Group_3__1__Impl )
-            // InternalEssentialOCL.g:5887:2: rule__TupleLiteralExpCS__Group_3__1__Impl
+            // InternalEssentialOCL.g:5888:1: ( rule__TupleLiteralExpCS__Group_3__1__Impl )
+            // InternalEssentialOCL.g:5889:2: rule__TupleLiteralExpCS__Group_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__Group_3__1__Impl();
@@ -18031,23 +18031,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__1__Impl"
-    // InternalEssentialOCL.g:5893:1: rule__TupleLiteralExpCS__Group_3__1__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) ;
+    // InternalEssentialOCL.g:5895:1: rule__TupleLiteralExpCS__Group_3__1__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) ;
     public final void rule__TupleLiteralExpCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5897:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) )
-            // InternalEssentialOCL.g:5898:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
+            // InternalEssentialOCL.g:5899:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) )
+            // InternalEssentialOCL.g:5900:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
             {
-            // InternalEssentialOCL.g:5898:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
-            // InternalEssentialOCL.g:5899:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
+            // InternalEssentialOCL.g:5900:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
+            // InternalEssentialOCL.g:5901:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1());
             }
-            // InternalEssentialOCL.g:5900:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
-            // InternalEssentialOCL.g:5900:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1
+            // InternalEssentialOCL.g:5902:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
+            // InternalEssentialOCL.g:5902:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1();
@@ -18082,14 +18082,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__0"
-    // InternalEssentialOCL.g:5914:1: rule__TupleLiteralPartCS__Group__0 : rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 ;
+    // InternalEssentialOCL.g:5916:1: rule__TupleLiteralPartCS__Group__0 : rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 ;
     public final void rule__TupleLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5918:1: ( rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 )
-            // InternalEssentialOCL.g:5919:2: rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1
+            // InternalEssentialOCL.g:5920:1: ( rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 )
+            // InternalEssentialOCL.g:5921:2: rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__TupleLiteralPartCS__Group__0__Impl();
@@ -18120,23 +18120,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__0__Impl"
-    // InternalEssentialOCL.g:5926:1: rule__TupleLiteralPartCS__Group__0__Impl : ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:5928:1: rule__TupleLiteralPartCS__Group__0__Impl : ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) ;
     public final void rule__TupleLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5930:1: ( ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) )
-            // InternalEssentialOCL.g:5931:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:5932:1: ( ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) )
+            // InternalEssentialOCL.g:5933:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:5931:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
-            // InternalEssentialOCL.g:5932:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:5933:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:5934:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0());
             }
-            // InternalEssentialOCL.g:5933:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
-            // InternalEssentialOCL.g:5933:2: rule__TupleLiteralPartCS__NameAssignment_0
+            // InternalEssentialOCL.g:5935:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:5935:2: rule__TupleLiteralPartCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__NameAssignment_0();
@@ -18171,14 +18171,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__1"
-    // InternalEssentialOCL.g:5943:1: rule__TupleLiteralPartCS__Group__1 : rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 ;
+    // InternalEssentialOCL.g:5945:1: rule__TupleLiteralPartCS__Group__1 : rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 ;
     public final void rule__TupleLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5947:1: ( rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 )
-            // InternalEssentialOCL.g:5948:2: rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2
+            // InternalEssentialOCL.g:5949:1: ( rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 )
+            // InternalEssentialOCL.g:5950:2: rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__TupleLiteralPartCS__Group__1__Impl();
@@ -18209,22 +18209,22 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__1__Impl"
-    // InternalEssentialOCL.g:5955:1: rule__TupleLiteralPartCS__Group__1__Impl : ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) ;
+    // InternalEssentialOCL.g:5957:1: rule__TupleLiteralPartCS__Group__1__Impl : ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) ;
     public final void rule__TupleLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5959:1: ( ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) )
-            // InternalEssentialOCL.g:5960:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:5961:1: ( ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) )
+            // InternalEssentialOCL.g:5962:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
             {
-            // InternalEssentialOCL.g:5960:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
-            // InternalEssentialOCL.g:5961:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
+            // InternalEssentialOCL.g:5962:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:5963:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1());
             }
-            // InternalEssentialOCL.g:5962:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
+            // InternalEssentialOCL.g:5964:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             int alt47=2;
             int LA47_0 = input.LA(1);
 
@@ -18233,7 +18233,7 @@
             }
             switch (alt47) {
                 case 1 :
-                    // InternalEssentialOCL.g:5962:2: rule__TupleLiteralPartCS__Group_1__0
+                    // InternalEssentialOCL.g:5964:2: rule__TupleLiteralPartCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TupleLiteralPartCS__Group_1__0();
@@ -18271,14 +18271,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__2"
-    // InternalEssentialOCL.g:5972:1: rule__TupleLiteralPartCS__Group__2 : rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 ;
+    // InternalEssentialOCL.g:5974:1: rule__TupleLiteralPartCS__Group__2 : rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 ;
     public final void rule__TupleLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5976:1: ( rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 )
-            // InternalEssentialOCL.g:5977:2: rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3
+            // InternalEssentialOCL.g:5978:1: ( rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 )
+            // InternalEssentialOCL.g:5979:2: rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__TupleLiteralPartCS__Group__2__Impl();
@@ -18309,17 +18309,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__2__Impl"
-    // InternalEssentialOCL.g:5984:1: rule__TupleLiteralPartCS__Group__2__Impl : ( '=' ) ;
+    // InternalEssentialOCL.g:5986:1: rule__TupleLiteralPartCS__Group__2__Impl : ( '=' ) ;
     public final void rule__TupleLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:5988:1: ( ( '=' ) )
-            // InternalEssentialOCL.g:5989:1: ( '=' )
+            // InternalEssentialOCL.g:5990:1: ( ( '=' ) )
+            // InternalEssentialOCL.g:5991:1: ( '=' )
             {
-            // InternalEssentialOCL.g:5989:1: ( '=' )
-            // InternalEssentialOCL.g:5990:1: '='
+            // InternalEssentialOCL.g:5991:1: ( '=' )
+            // InternalEssentialOCL.g:5992:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
@@ -18350,14 +18350,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__3"
-    // InternalEssentialOCL.g:6003:1: rule__TupleLiteralPartCS__Group__3 : rule__TupleLiteralPartCS__Group__3__Impl ;
+    // InternalEssentialOCL.g:6005:1: rule__TupleLiteralPartCS__Group__3 : rule__TupleLiteralPartCS__Group__3__Impl ;
     public final void rule__TupleLiteralPartCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6007:1: ( rule__TupleLiteralPartCS__Group__3__Impl )
-            // InternalEssentialOCL.g:6008:2: rule__TupleLiteralPartCS__Group__3__Impl
+            // InternalEssentialOCL.g:6009:1: ( rule__TupleLiteralPartCS__Group__3__Impl )
+            // InternalEssentialOCL.g:6010:2: rule__TupleLiteralPartCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__Group__3__Impl();
@@ -18383,23 +18383,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__3__Impl"
-    // InternalEssentialOCL.g:6014:1: rule__TupleLiteralPartCS__Group__3__Impl : ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) ;
+    // InternalEssentialOCL.g:6016:1: rule__TupleLiteralPartCS__Group__3__Impl : ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) ;
     public final void rule__TupleLiteralPartCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6018:1: ( ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) )
-            // InternalEssentialOCL.g:6019:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
+            // InternalEssentialOCL.g:6020:1: ( ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) )
+            // InternalEssentialOCL.g:6021:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
             {
-            // InternalEssentialOCL.g:6019:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
-            // InternalEssentialOCL.g:6020:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
+            // InternalEssentialOCL.g:6021:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
+            // InternalEssentialOCL.g:6022:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3());
             }
-            // InternalEssentialOCL.g:6021:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
-            // InternalEssentialOCL.g:6021:2: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3
+            // InternalEssentialOCL.g:6023:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
+            // InternalEssentialOCL.g:6023:2: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3();
@@ -18434,14 +18434,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__0"
-    // InternalEssentialOCL.g:6039:1: rule__TupleLiteralPartCS__Group_1__0 : rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 ;
+    // InternalEssentialOCL.g:6041:1: rule__TupleLiteralPartCS__Group_1__0 : rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 ;
     public final void rule__TupleLiteralPartCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6043:1: ( rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 )
-            // InternalEssentialOCL.g:6044:2: rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1
+            // InternalEssentialOCL.g:6045:1: ( rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 )
+            // InternalEssentialOCL.g:6046:2: rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__TupleLiteralPartCS__Group_1__0__Impl();
@@ -18472,17 +18472,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:6051:1: rule__TupleLiteralPartCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalEssentialOCL.g:6053:1: rule__TupleLiteralPartCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__TupleLiteralPartCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6055:1: ( ( ':' ) )
-            // InternalEssentialOCL.g:6056:1: ( ':' )
+            // InternalEssentialOCL.g:6057:1: ( ( ':' ) )
+            // InternalEssentialOCL.g:6058:1: ( ':' )
             {
-            // InternalEssentialOCL.g:6056:1: ( ':' )
-            // InternalEssentialOCL.g:6057:1: ':'
+            // InternalEssentialOCL.g:6058:1: ( ':' )
+            // InternalEssentialOCL.g:6059:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
@@ -18513,14 +18513,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__1"
-    // InternalEssentialOCL.g:6070:1: rule__TupleLiteralPartCS__Group_1__1 : rule__TupleLiteralPartCS__Group_1__1__Impl ;
+    // InternalEssentialOCL.g:6072:1: rule__TupleLiteralPartCS__Group_1__1 : rule__TupleLiteralPartCS__Group_1__1__Impl ;
     public final void rule__TupleLiteralPartCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6074:1: ( rule__TupleLiteralPartCS__Group_1__1__Impl )
-            // InternalEssentialOCL.g:6075:2: rule__TupleLiteralPartCS__Group_1__1__Impl
+            // InternalEssentialOCL.g:6076:1: ( rule__TupleLiteralPartCS__Group_1__1__Impl )
+            // InternalEssentialOCL.g:6077:2: rule__TupleLiteralPartCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__Group_1__1__Impl();
@@ -18546,23 +18546,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:6081:1: rule__TupleLiteralPartCS__Group_1__1__Impl : ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalEssentialOCL.g:6083:1: rule__TupleLiteralPartCS__Group_1__1__Impl : ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__TupleLiteralPartCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6085:1: ( ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalEssentialOCL.g:6086:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
+            // InternalEssentialOCL.g:6087:1: ( ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalEssentialOCL.g:6088:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalEssentialOCL.g:6086:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
-            // InternalEssentialOCL.g:6087:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
+            // InternalEssentialOCL.g:6088:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
+            // InternalEssentialOCL.g:6089:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalEssentialOCL.g:6088:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
-            // InternalEssentialOCL.g:6088:2: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1
+            // InternalEssentialOCL.g:6090:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
+            // InternalEssentialOCL.g:6090:2: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1();
@@ -18597,14 +18597,14 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__0"
-    // InternalEssentialOCL.g:6102:1: rule__UnlimitedNaturalLiteralExpCS__Group__0 : rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 ;
+    // InternalEssentialOCL.g:6104:1: rule__UnlimitedNaturalLiteralExpCS__Group__0 : rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6106:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 )
-            // InternalEssentialOCL.g:6107:2: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1
+            // InternalEssentialOCL.g:6108:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 )
+            // InternalEssentialOCL.g:6109:2: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl();
@@ -18635,23 +18635,23 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:6114:1: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl : ( () ) ;
+    // InternalEssentialOCL.g:6116:1: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl : ( () ) ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6118:1: ( ( () ) )
-            // InternalEssentialOCL.g:6119:1: ( () )
+            // InternalEssentialOCL.g:6120:1: ( ( () ) )
+            // InternalEssentialOCL.g:6121:1: ( () )
             {
-            // InternalEssentialOCL.g:6119:1: ( () )
-            // InternalEssentialOCL.g:6120:1: ()
+            // InternalEssentialOCL.g:6121:1: ( () )
+            // InternalEssentialOCL.g:6122:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0());
             }
-            // InternalEssentialOCL.g:6121:1: ()
-            // InternalEssentialOCL.g:6123:1:
+            // InternalEssentialOCL.g:6123:1: ()
+            // InternalEssentialOCL.g:6125:1:
             {
             }
 
@@ -18676,14 +18676,14 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__1"
-    // InternalEssentialOCL.g:6133:1: rule__UnlimitedNaturalLiteralExpCS__Group__1 : rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:6135:1: rule__UnlimitedNaturalLiteralExpCS__Group__1 : rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6137:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl )
-            // InternalEssentialOCL.g:6138:2: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl
+            // InternalEssentialOCL.g:6139:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl )
+            // InternalEssentialOCL.g:6140:2: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl();
@@ -18709,17 +18709,17 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:6144:1: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl : ( '*' ) ;
+    // InternalEssentialOCL.g:6146:1: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl : ( '*' ) ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6148:1: ( ( '*' ) )
-            // InternalEssentialOCL.g:6149:1: ( '*' )
+            // InternalEssentialOCL.g:6150:1: ( ( '*' ) )
+            // InternalEssentialOCL.g:6151:1: ( '*' )
             {
-            // InternalEssentialOCL.g:6149:1: ( '*' )
-            // InternalEssentialOCL.g:6150:1: '*'
+            // InternalEssentialOCL.g:6151:1: ( '*' )
+            // InternalEssentialOCL.g:6152:1: '*'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
@@ -18750,14 +18750,14 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__0"
-    // InternalEssentialOCL.g:6167:1: rule__InvalidLiteralExpCS__Group__0 : rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 ;
+    // InternalEssentialOCL.g:6169:1: rule__InvalidLiteralExpCS__Group__0 : rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 ;
     public final void rule__InvalidLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6171:1: ( rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 )
-            // InternalEssentialOCL.g:6172:2: rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1
+            // InternalEssentialOCL.g:6173:1: ( rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 )
+            // InternalEssentialOCL.g:6174:2: rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_27);
             rule__InvalidLiteralExpCS__Group__0__Impl();
@@ -18788,23 +18788,23 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:6179:1: rule__InvalidLiteralExpCS__Group__0__Impl : ( () ) ;
+    // InternalEssentialOCL.g:6181:1: rule__InvalidLiteralExpCS__Group__0__Impl : ( () ) ;
     public final void rule__InvalidLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6183:1: ( ( () ) )
-            // InternalEssentialOCL.g:6184:1: ( () )
+            // InternalEssentialOCL.g:6185:1: ( ( () ) )
+            // InternalEssentialOCL.g:6186:1: ( () )
             {
-            // InternalEssentialOCL.g:6184:1: ( () )
-            // InternalEssentialOCL.g:6185:1: ()
+            // InternalEssentialOCL.g:6186:1: ( () )
+            // InternalEssentialOCL.g:6187:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0());
             }
-            // InternalEssentialOCL.g:6186:1: ()
-            // InternalEssentialOCL.g:6188:1:
+            // InternalEssentialOCL.g:6188:1: ()
+            // InternalEssentialOCL.g:6190:1:
             {
             }
 
@@ -18829,14 +18829,14 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__1"
-    // InternalEssentialOCL.g:6198:1: rule__InvalidLiteralExpCS__Group__1 : rule__InvalidLiteralExpCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:6200:1: rule__InvalidLiteralExpCS__Group__1 : rule__InvalidLiteralExpCS__Group__1__Impl ;
     public final void rule__InvalidLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6202:1: ( rule__InvalidLiteralExpCS__Group__1__Impl )
-            // InternalEssentialOCL.g:6203:2: rule__InvalidLiteralExpCS__Group__1__Impl
+            // InternalEssentialOCL.g:6204:1: ( rule__InvalidLiteralExpCS__Group__1__Impl )
+            // InternalEssentialOCL.g:6205:2: rule__InvalidLiteralExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvalidLiteralExpCS__Group__1__Impl();
@@ -18862,17 +18862,17 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:6209:1: rule__InvalidLiteralExpCS__Group__1__Impl : ( 'invalid' ) ;
+    // InternalEssentialOCL.g:6211:1: rule__InvalidLiteralExpCS__Group__1__Impl : ( 'invalid' ) ;
     public final void rule__InvalidLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6213:1: ( ( 'invalid' ) )
-            // InternalEssentialOCL.g:6214:1: ( 'invalid' )
+            // InternalEssentialOCL.g:6215:1: ( ( 'invalid' ) )
+            // InternalEssentialOCL.g:6216:1: ( 'invalid' )
             {
-            // InternalEssentialOCL.g:6214:1: ( 'invalid' )
-            // InternalEssentialOCL.g:6215:1: 'invalid'
+            // InternalEssentialOCL.g:6216:1: ( 'invalid' )
+            // InternalEssentialOCL.g:6217:1: 'invalid'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
@@ -18903,14 +18903,14 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__0"
-    // InternalEssentialOCL.g:6232:1: rule__NullLiteralExpCS__Group__0 : rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 ;
+    // InternalEssentialOCL.g:6234:1: rule__NullLiteralExpCS__Group__0 : rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 ;
     public final void rule__NullLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6236:1: ( rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 )
-            // InternalEssentialOCL.g:6237:2: rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1
+            // InternalEssentialOCL.g:6238:1: ( rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 )
+            // InternalEssentialOCL.g:6239:2: rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__NullLiteralExpCS__Group__0__Impl();
@@ -18941,23 +18941,23 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:6244:1: rule__NullLiteralExpCS__Group__0__Impl : ( () ) ;
+    // InternalEssentialOCL.g:6246:1: rule__NullLiteralExpCS__Group__0__Impl : ( () ) ;
     public final void rule__NullLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6248:1: ( ( () ) )
-            // InternalEssentialOCL.g:6249:1: ( () )
+            // InternalEssentialOCL.g:6250:1: ( ( () ) )
+            // InternalEssentialOCL.g:6251:1: ( () )
             {
-            // InternalEssentialOCL.g:6249:1: ( () )
-            // InternalEssentialOCL.g:6250:1: ()
+            // InternalEssentialOCL.g:6251:1: ( () )
+            // InternalEssentialOCL.g:6252:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0());
             }
-            // InternalEssentialOCL.g:6251:1: ()
-            // InternalEssentialOCL.g:6253:1:
+            // InternalEssentialOCL.g:6253:1: ()
+            // InternalEssentialOCL.g:6255:1:
             {
             }
 
@@ -18982,14 +18982,14 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__1"
-    // InternalEssentialOCL.g:6263:1: rule__NullLiteralExpCS__Group__1 : rule__NullLiteralExpCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:6265:1: rule__NullLiteralExpCS__Group__1 : rule__NullLiteralExpCS__Group__1__Impl ;
     public final void rule__NullLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6267:1: ( rule__NullLiteralExpCS__Group__1__Impl )
-            // InternalEssentialOCL.g:6268:2: rule__NullLiteralExpCS__Group__1__Impl
+            // InternalEssentialOCL.g:6269:1: ( rule__NullLiteralExpCS__Group__1__Impl )
+            // InternalEssentialOCL.g:6270:2: rule__NullLiteralExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NullLiteralExpCS__Group__1__Impl();
@@ -19015,17 +19015,17 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:6274:1: rule__NullLiteralExpCS__Group__1__Impl : ( 'null' ) ;
+    // InternalEssentialOCL.g:6276:1: rule__NullLiteralExpCS__Group__1__Impl : ( 'null' ) ;
     public final void rule__NullLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6278:1: ( ( 'null' ) )
-            // InternalEssentialOCL.g:6279:1: ( 'null' )
+            // InternalEssentialOCL.g:6280:1: ( ( 'null' ) )
+            // InternalEssentialOCL.g:6281:1: ( 'null' )
             {
-            // InternalEssentialOCL.g:6279:1: ( 'null' )
-            // InternalEssentialOCL.g:6280:1: 'null'
+            // InternalEssentialOCL.g:6281:1: ( 'null' )
+            // InternalEssentialOCL.g:6282:1: 'null'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
@@ -19056,14 +19056,14 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__0"
-    // InternalEssentialOCL.g:6297:1: rule__TypeLiteralWithMultiplicityCS__Group__0 : rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 ;
+    // InternalEssentialOCL.g:6299:1: rule__TypeLiteralWithMultiplicityCS__Group__0 : rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6301:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 )
-            // InternalEssentialOCL.g:6302:2: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1
+            // InternalEssentialOCL.g:6303:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 )
+            // InternalEssentialOCL.g:6304:2: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_29);
             rule__TypeLiteralWithMultiplicityCS__Group__0__Impl();
@@ -19094,17 +19094,17 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__0__Impl"
-    // InternalEssentialOCL.g:6309:1: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl : ( ruleTypeLiteralCS ) ;
+    // InternalEssentialOCL.g:6311:1: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl : ( ruleTypeLiteralCS ) ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6313:1: ( ( ruleTypeLiteralCS ) )
-            // InternalEssentialOCL.g:6314:1: ( ruleTypeLiteralCS )
+            // InternalEssentialOCL.g:6315:1: ( ( ruleTypeLiteralCS ) )
+            // InternalEssentialOCL.g:6316:1: ( ruleTypeLiteralCS )
             {
-            // InternalEssentialOCL.g:6314:1: ( ruleTypeLiteralCS )
-            // InternalEssentialOCL.g:6315:1: ruleTypeLiteralCS
+            // InternalEssentialOCL.g:6316:1: ( ruleTypeLiteralCS )
+            // InternalEssentialOCL.g:6317:1: ruleTypeLiteralCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
@@ -19139,14 +19139,14 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__1"
-    // InternalEssentialOCL.g:6326:1: rule__TypeLiteralWithMultiplicityCS__Group__1 : rule__TypeLiteralWithMultiplicityCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:6328:1: rule__TypeLiteralWithMultiplicityCS__Group__1 : rule__TypeLiteralWithMultiplicityCS__Group__1__Impl ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6330:1: ( rule__TypeLiteralWithMultiplicityCS__Group__1__Impl )
-            // InternalEssentialOCL.g:6331:2: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl
+            // InternalEssentialOCL.g:6332:1: ( rule__TypeLiteralWithMultiplicityCS__Group__1__Impl )
+            // InternalEssentialOCL.g:6333:2: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeLiteralWithMultiplicityCS__Group__1__Impl();
@@ -19172,22 +19172,22 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__1__Impl"
-    // InternalEssentialOCL.g:6337:1: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl : ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) ;
+    // InternalEssentialOCL.g:6339:1: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl : ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6341:1: ( ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) )
-            // InternalEssentialOCL.g:6342:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalEssentialOCL.g:6343:1: ( ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) )
+            // InternalEssentialOCL.g:6344:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
             {
-            // InternalEssentialOCL.g:6342:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
-            // InternalEssentialOCL.g:6343:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
+            // InternalEssentialOCL.g:6344:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalEssentialOCL.g:6345:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1());
             }
-            // InternalEssentialOCL.g:6344:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
+            // InternalEssentialOCL.g:6346:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             int alt48=2;
             int LA48_0 = input.LA(1);
 
@@ -19196,7 +19196,7 @@
             }
             switch (alt48) {
                 case 1 :
-                    // InternalEssentialOCL.g:6344:2: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1
+                    // InternalEssentialOCL.g:6346:2: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1();
@@ -19234,14 +19234,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__0"
-    // InternalEssentialOCL.g:6358:1: rule__TypeNameExpCS__Group__0 : rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 ;
+    // InternalEssentialOCL.g:6360:1: rule__TypeNameExpCS__Group__0 : rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 ;
     public final void rule__TypeNameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6362:1: ( rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 )
-            // InternalEssentialOCL.g:6363:2: rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1
+            // InternalEssentialOCL.g:6364:1: ( rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 )
+            // InternalEssentialOCL.g:6365:2: rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__TypeNameExpCS__Group__0__Impl();
@@ -19272,23 +19272,23 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:6370:1: rule__TypeNameExpCS__Group__0__Impl : ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:6372:1: rule__TypeNameExpCS__Group__0__Impl : ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) ;
     public final void rule__TypeNameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6374:1: ( ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) )
-            // InternalEssentialOCL.g:6375:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalEssentialOCL.g:6376:1: ( ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) )
+            // InternalEssentialOCL.g:6377:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:6375:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
-            // InternalEssentialOCL.g:6376:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
+            // InternalEssentialOCL.g:6377:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalEssentialOCL.g:6378:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
-            // InternalEssentialOCL.g:6377:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
-            // InternalEssentialOCL.g:6377:2: rule__TypeNameExpCS__OwnedPathNameAssignment_0
+            // InternalEssentialOCL.g:6379:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
+            // InternalEssentialOCL.g:6379:2: rule__TypeNameExpCS__OwnedPathNameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__OwnedPathNameAssignment_0();
@@ -19323,14 +19323,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__1"
-    // InternalEssentialOCL.g:6387:1: rule__TypeNameExpCS__Group__1 : rule__TypeNameExpCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:6389:1: rule__TypeNameExpCS__Group__1 : rule__TypeNameExpCS__Group__1__Impl ;
     public final void rule__TypeNameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6391:1: ( rule__TypeNameExpCS__Group__1__Impl )
-            // InternalEssentialOCL.g:6392:2: rule__TypeNameExpCS__Group__1__Impl
+            // InternalEssentialOCL.g:6393:1: ( rule__TypeNameExpCS__Group__1__Impl )
+            // InternalEssentialOCL.g:6394:2: rule__TypeNameExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__Group__1__Impl();
@@ -19356,22 +19356,22 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:6398:1: rule__TypeNameExpCS__Group__1__Impl : ( ( rule__TypeNameExpCS__Group_1__0 )? ) ;
+    // InternalEssentialOCL.g:6400:1: rule__TypeNameExpCS__Group__1__Impl : ( ( rule__TypeNameExpCS__Group_1__0 )? ) ;
     public final void rule__TypeNameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6402:1: ( ( ( rule__TypeNameExpCS__Group_1__0 )? ) )
-            // InternalEssentialOCL.g:6403:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:6404:1: ( ( ( rule__TypeNameExpCS__Group_1__0 )? ) )
+            // InternalEssentialOCL.g:6405:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
             {
-            // InternalEssentialOCL.g:6403:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
-            // InternalEssentialOCL.g:6404:1: ( rule__TypeNameExpCS__Group_1__0 )?
+            // InternalEssentialOCL.g:6405:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:6406:1: ( rule__TypeNameExpCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getGroup_1());
             }
-            // InternalEssentialOCL.g:6405:1: ( rule__TypeNameExpCS__Group_1__0 )?
+            // InternalEssentialOCL.g:6407:1: ( rule__TypeNameExpCS__Group_1__0 )?
             int alt49=2;
             int LA49_0 = input.LA(1);
 
@@ -19380,7 +19380,7 @@
             }
             switch (alt49) {
                 case 1 :
-                    // InternalEssentialOCL.g:6405:2: rule__TypeNameExpCS__Group_1__0
+                    // InternalEssentialOCL.g:6407:2: rule__TypeNameExpCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeNameExpCS__Group_1__0();
@@ -19418,14 +19418,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__0"
-    // InternalEssentialOCL.g:6419:1: rule__TypeNameExpCS__Group_1__0 : rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 ;
+    // InternalEssentialOCL.g:6421:1: rule__TypeNameExpCS__Group_1__0 : rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 ;
     public final void rule__TypeNameExpCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6423:1: ( rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 )
-            // InternalEssentialOCL.g:6424:2: rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1
+            // InternalEssentialOCL.g:6425:1: ( rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 )
+            // InternalEssentialOCL.g:6426:2: rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__TypeNameExpCS__Group_1__0__Impl();
@@ -19456,23 +19456,23 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:6431:1: rule__TypeNameExpCS__Group_1__0__Impl : ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) ;
+    // InternalEssentialOCL.g:6433:1: rule__TypeNameExpCS__Group_1__0__Impl : ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) ;
     public final void rule__TypeNameExpCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6435:1: ( ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) )
-            // InternalEssentialOCL.g:6436:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
+            // InternalEssentialOCL.g:6437:1: ( ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) )
+            // InternalEssentialOCL.g:6438:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
             {
-            // InternalEssentialOCL.g:6436:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
-            // InternalEssentialOCL.g:6437:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
+            // InternalEssentialOCL.g:6438:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
+            // InternalEssentialOCL.g:6439:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0());
             }
-            // InternalEssentialOCL.g:6438:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
-            // InternalEssentialOCL.g:6438:2: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0
+            // InternalEssentialOCL.g:6440:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
+            // InternalEssentialOCL.g:6440:2: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0();
@@ -19507,14 +19507,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__1"
-    // InternalEssentialOCL.g:6448:1: rule__TypeNameExpCS__Group_1__1 : rule__TypeNameExpCS__Group_1__1__Impl ;
+    // InternalEssentialOCL.g:6450:1: rule__TypeNameExpCS__Group_1__1 : rule__TypeNameExpCS__Group_1__1__Impl ;
     public final void rule__TypeNameExpCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6452:1: ( rule__TypeNameExpCS__Group_1__1__Impl )
-            // InternalEssentialOCL.g:6453:2: rule__TypeNameExpCS__Group_1__1__Impl
+            // InternalEssentialOCL.g:6454:1: ( rule__TypeNameExpCS__Group_1__1__Impl )
+            // InternalEssentialOCL.g:6455:2: rule__TypeNameExpCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__Group_1__1__Impl();
@@ -19540,22 +19540,22 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:6459:1: rule__TypeNameExpCS__Group_1__1__Impl : ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) ;
+    // InternalEssentialOCL.g:6461:1: rule__TypeNameExpCS__Group_1__1__Impl : ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) ;
     public final void rule__TypeNameExpCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6463:1: ( ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) )
-            // InternalEssentialOCL.g:6464:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
+            // InternalEssentialOCL.g:6465:1: ( ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) )
+            // InternalEssentialOCL.g:6466:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
             {
-            // InternalEssentialOCL.g:6464:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
-            // InternalEssentialOCL.g:6465:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
+            // InternalEssentialOCL.g:6466:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
+            // InternalEssentialOCL.g:6467:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1());
             }
-            // InternalEssentialOCL.g:6466:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
+            // InternalEssentialOCL.g:6468:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             int alt50=2;
             int LA50_0 = input.LA(1);
 
@@ -19564,7 +19564,7 @@
             }
             switch (alt50) {
                 case 1 :
-                    // InternalEssentialOCL.g:6466:2: rule__TypeNameExpCS__Group_1_1__0
+                    // InternalEssentialOCL.g:6468:2: rule__TypeNameExpCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeNameExpCS__Group_1_1__0();
@@ -19602,14 +19602,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__0"
-    // InternalEssentialOCL.g:6480:1: rule__TypeNameExpCS__Group_1_1__0 : rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 ;
+    // InternalEssentialOCL.g:6482:1: rule__TypeNameExpCS__Group_1_1__0 : rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 ;
     public final void rule__TypeNameExpCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6484:1: ( rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 )
-            // InternalEssentialOCL.g:6485:2: rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1
+            // InternalEssentialOCL.g:6486:1: ( rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 )
+            // InternalEssentialOCL.g:6487:2: rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__TypeNameExpCS__Group_1_1__0__Impl();
@@ -19640,17 +19640,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__0__Impl"
-    // InternalEssentialOCL.g:6492:1: rule__TypeNameExpCS__Group_1_1__0__Impl : ( '{' ) ;
+    // InternalEssentialOCL.g:6494:1: rule__TypeNameExpCS__Group_1_1__0__Impl : ( '{' ) ;
     public final void rule__TypeNameExpCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6496:1: ( ( '{' ) )
-            // InternalEssentialOCL.g:6497:1: ( '{' )
+            // InternalEssentialOCL.g:6498:1: ( ( '{' ) )
+            // InternalEssentialOCL.g:6499:1: ( '{' )
             {
-            // InternalEssentialOCL.g:6497:1: ( '{' )
-            // InternalEssentialOCL.g:6498:1: '{'
+            // InternalEssentialOCL.g:6499:1: ( '{' )
+            // InternalEssentialOCL.g:6500:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
@@ -19681,14 +19681,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__1"
-    // InternalEssentialOCL.g:6511:1: rule__TypeNameExpCS__Group_1_1__1 : rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 ;
+    // InternalEssentialOCL.g:6513:1: rule__TypeNameExpCS__Group_1_1__1 : rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 ;
     public final void rule__TypeNameExpCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6515:1: ( rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 )
-            // InternalEssentialOCL.g:6516:2: rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2
+            // InternalEssentialOCL.g:6517:1: ( rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 )
+            // InternalEssentialOCL.g:6518:2: rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_21);
             rule__TypeNameExpCS__Group_1_1__1__Impl();
@@ -19719,23 +19719,23 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__1__Impl"
-    // InternalEssentialOCL.g:6523:1: rule__TypeNameExpCS__Group_1_1__1__Impl : ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) ;
+    // InternalEssentialOCL.g:6525:1: rule__TypeNameExpCS__Group_1_1__1__Impl : ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) ;
     public final void rule__TypeNameExpCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6527:1: ( ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) )
-            // InternalEssentialOCL.g:6528:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
+            // InternalEssentialOCL.g:6529:1: ( ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) )
+            // InternalEssentialOCL.g:6530:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
             {
-            // InternalEssentialOCL.g:6528:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
-            // InternalEssentialOCL.g:6529:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
+            // InternalEssentialOCL.g:6530:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
+            // InternalEssentialOCL.g:6531:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1());
             }
-            // InternalEssentialOCL.g:6530:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
-            // InternalEssentialOCL.g:6530:2: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1
+            // InternalEssentialOCL.g:6532:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
+            // InternalEssentialOCL.g:6532:2: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1();
@@ -19770,14 +19770,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__2"
-    // InternalEssentialOCL.g:6540:1: rule__TypeNameExpCS__Group_1_1__2 : rule__TypeNameExpCS__Group_1_1__2__Impl ;
+    // InternalEssentialOCL.g:6542:1: rule__TypeNameExpCS__Group_1_1__2 : rule__TypeNameExpCS__Group_1_1__2__Impl ;
     public final void rule__TypeNameExpCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6544:1: ( rule__TypeNameExpCS__Group_1_1__2__Impl )
-            // InternalEssentialOCL.g:6545:2: rule__TypeNameExpCS__Group_1_1__2__Impl
+            // InternalEssentialOCL.g:6546:1: ( rule__TypeNameExpCS__Group_1_1__2__Impl )
+            // InternalEssentialOCL.g:6547:2: rule__TypeNameExpCS__Group_1_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__Group_1_1__2__Impl();
@@ -19803,17 +19803,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__2__Impl"
-    // InternalEssentialOCL.g:6551:1: rule__TypeNameExpCS__Group_1_1__2__Impl : ( '}' ) ;
+    // InternalEssentialOCL.g:6553:1: rule__TypeNameExpCS__Group_1_1__2__Impl : ( '}' ) ;
     public final void rule__TypeNameExpCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6555:1: ( ( '}' ) )
-            // InternalEssentialOCL.g:6556:1: ( '}' )
+            // InternalEssentialOCL.g:6557:1: ( ( '}' ) )
+            // InternalEssentialOCL.g:6558:1: ( '}' )
             {
-            // InternalEssentialOCL.g:6556:1: ( '}' )
-            // InternalEssentialOCL.g:6557:1: '}'
+            // InternalEssentialOCL.g:6558:1: ( '}' )
+            // InternalEssentialOCL.g:6559:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
@@ -19844,14 +19844,14 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__0"
-    // InternalEssentialOCL.g:6576:1: rule__TypeExpCS__Group__0 : rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 ;
+    // InternalEssentialOCL.g:6578:1: rule__TypeExpCS__Group__0 : rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 ;
     public final void rule__TypeExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6580:1: ( rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 )
-            // InternalEssentialOCL.g:6581:2: rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1
+            // InternalEssentialOCL.g:6582:1: ( rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 )
+            // InternalEssentialOCL.g:6583:2: rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_29);
             rule__TypeExpCS__Group__0__Impl();
@@ -19882,17 +19882,17 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:6588:1: rule__TypeExpCS__Group__0__Impl : ( ruleTypeExpWithoutMultiplicityCS ) ;
+    // InternalEssentialOCL.g:6590:1: rule__TypeExpCS__Group__0__Impl : ( ruleTypeExpWithoutMultiplicityCS ) ;
     public final void rule__TypeExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6592:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
-            // InternalEssentialOCL.g:6593:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalEssentialOCL.g:6594:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
+            // InternalEssentialOCL.g:6595:1: ( ruleTypeExpWithoutMultiplicityCS )
             {
-            // InternalEssentialOCL.g:6593:1: ( ruleTypeExpWithoutMultiplicityCS )
-            // InternalEssentialOCL.g:6594:1: ruleTypeExpWithoutMultiplicityCS
+            // InternalEssentialOCL.g:6595:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalEssentialOCL.g:6596:1: ruleTypeExpWithoutMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeExpCSAccess().getTypeExpWithoutMultiplicityCSParserRuleCall_0());
@@ -19927,14 +19927,14 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__1"
-    // InternalEssentialOCL.g:6605:1: rule__TypeExpCS__Group__1 : rule__TypeExpCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:6607:1: rule__TypeExpCS__Group__1 : rule__TypeExpCS__Group__1__Impl ;
     public final void rule__TypeExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6609:1: ( rule__TypeExpCS__Group__1__Impl )
-            // InternalEssentialOCL.g:6610:2: rule__TypeExpCS__Group__1__Impl
+            // InternalEssentialOCL.g:6611:1: ( rule__TypeExpCS__Group__1__Impl )
+            // InternalEssentialOCL.g:6612:2: rule__TypeExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeExpCS__Group__1__Impl();
@@ -19960,22 +19960,22 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:6616:1: rule__TypeExpCS__Group__1__Impl : ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) ;
+    // InternalEssentialOCL.g:6618:1: rule__TypeExpCS__Group__1__Impl : ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) ;
     public final void rule__TypeExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6620:1: ( ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) )
-            // InternalEssentialOCL.g:6621:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalEssentialOCL.g:6622:1: ( ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) )
+            // InternalEssentialOCL.g:6623:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
             {
-            // InternalEssentialOCL.g:6621:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
-            // InternalEssentialOCL.g:6622:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
+            // InternalEssentialOCL.g:6623:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalEssentialOCL.g:6624:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1());
             }
-            // InternalEssentialOCL.g:6623:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
+            // InternalEssentialOCL.g:6625:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             int alt51=2;
             int LA51_0 = input.LA(1);
 
@@ -19984,7 +19984,7 @@
             }
             switch (alt51) {
                 case 1 :
-                    // InternalEssentialOCL.g:6623:2: rule__TypeExpCS__OwnedMultiplicityAssignment_1
+                    // InternalEssentialOCL.g:6625:2: rule__TypeExpCS__OwnedMultiplicityAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeExpCS__OwnedMultiplicityAssignment_1();
@@ -20022,14 +20022,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__0"
-    // InternalEssentialOCL.g:6637:1: rule__ExpCS__Group_0__0 : rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 ;
+    // InternalEssentialOCL.g:6639:1: rule__ExpCS__Group_0__0 : rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 ;
     public final void rule__ExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6641:1: ( rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 )
-            // InternalEssentialOCL.g:6642:2: rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1
+            // InternalEssentialOCL.g:6643:1: ( rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 )
+            // InternalEssentialOCL.g:6644:2: rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_30);
             rule__ExpCS__Group_0__0__Impl();
@@ -20060,17 +20060,17 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__0__Impl"
-    // InternalEssentialOCL.g:6649:1: rule__ExpCS__Group_0__0__Impl : ( rulePrefixedPrimaryExpCS ) ;
+    // InternalEssentialOCL.g:6651:1: rule__ExpCS__Group_0__0__Impl : ( rulePrefixedPrimaryExpCS ) ;
     public final void rule__ExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6653:1: ( ( rulePrefixedPrimaryExpCS ) )
-            // InternalEssentialOCL.g:6654:1: ( rulePrefixedPrimaryExpCS )
+            // InternalEssentialOCL.g:6655:1: ( ( rulePrefixedPrimaryExpCS ) )
+            // InternalEssentialOCL.g:6656:1: ( rulePrefixedPrimaryExpCS )
             {
-            // InternalEssentialOCL.g:6654:1: ( rulePrefixedPrimaryExpCS )
-            // InternalEssentialOCL.g:6655:1: rulePrefixedPrimaryExpCS
+            // InternalEssentialOCL.g:6656:1: ( rulePrefixedPrimaryExpCS )
+            // InternalEssentialOCL.g:6657:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
@@ -20105,14 +20105,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__1"
-    // InternalEssentialOCL.g:6666:1: rule__ExpCS__Group_0__1 : rule__ExpCS__Group_0__1__Impl ;
+    // InternalEssentialOCL.g:6668:1: rule__ExpCS__Group_0__1 : rule__ExpCS__Group_0__1__Impl ;
     public final void rule__ExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6670:1: ( rule__ExpCS__Group_0__1__Impl )
-            // InternalEssentialOCL.g:6671:2: rule__ExpCS__Group_0__1__Impl
+            // InternalEssentialOCL.g:6672:1: ( rule__ExpCS__Group_0__1__Impl )
+            // InternalEssentialOCL.g:6673:2: rule__ExpCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__Group_0__1__Impl();
@@ -20138,22 +20138,22 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__1__Impl"
-    // InternalEssentialOCL.g:6677:1: rule__ExpCS__Group_0__1__Impl : ( ( rule__ExpCS__Group_0_1__0 )? ) ;
+    // InternalEssentialOCL.g:6679:1: rule__ExpCS__Group_0__1__Impl : ( ( rule__ExpCS__Group_0_1__0 )? ) ;
     public final void rule__ExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6681:1: ( ( ( rule__ExpCS__Group_0_1__0 )? ) )
-            // InternalEssentialOCL.g:6682:1: ( ( rule__ExpCS__Group_0_1__0 )? )
+            // InternalEssentialOCL.g:6683:1: ( ( ( rule__ExpCS__Group_0_1__0 )? ) )
+            // InternalEssentialOCL.g:6684:1: ( ( rule__ExpCS__Group_0_1__0 )? )
             {
-            // InternalEssentialOCL.g:6682:1: ( ( rule__ExpCS__Group_0_1__0 )? )
-            // InternalEssentialOCL.g:6683:1: ( rule__ExpCS__Group_0_1__0 )?
+            // InternalEssentialOCL.g:6684:1: ( ( rule__ExpCS__Group_0_1__0 )? )
+            // InternalEssentialOCL.g:6685:1: ( rule__ExpCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getGroup_0_1());
             }
-            // InternalEssentialOCL.g:6684:1: ( rule__ExpCS__Group_0_1__0 )?
+            // InternalEssentialOCL.g:6686:1: ( rule__ExpCS__Group_0_1__0 )?
             int alt52=2;
             int LA52_0 = input.LA(1);
 
@@ -20162,7 +20162,7 @@
             }
             switch (alt52) {
                 case 1 :
-                    // InternalEssentialOCL.g:6684:2: rule__ExpCS__Group_0_1__0
+                    // InternalEssentialOCL.g:6686:2: rule__ExpCS__Group_0_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ExpCS__Group_0_1__0();
@@ -20200,14 +20200,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__0"
-    // InternalEssentialOCL.g:6698:1: rule__ExpCS__Group_0_1__0 : rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 ;
+    // InternalEssentialOCL.g:6700:1: rule__ExpCS__Group_0_1__0 : rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 ;
     public final void rule__ExpCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6702:1: ( rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 )
-            // InternalEssentialOCL.g:6703:2: rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1
+            // InternalEssentialOCL.g:6704:1: ( rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 )
+            // InternalEssentialOCL.g:6705:2: rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1
             {
             pushFollow(FollowSets000.FOLLOW_30);
             rule__ExpCS__Group_0_1__0__Impl();
@@ -20238,23 +20238,23 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__0__Impl"
-    // InternalEssentialOCL.g:6710:1: rule__ExpCS__Group_0_1__0__Impl : ( () ) ;
+    // InternalEssentialOCL.g:6712:1: rule__ExpCS__Group_0_1__0__Impl : ( () ) ;
     public final void rule__ExpCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6714:1: ( ( () ) )
-            // InternalEssentialOCL.g:6715:1: ( () )
+            // InternalEssentialOCL.g:6716:1: ( ( () ) )
+            // InternalEssentialOCL.g:6717:1: ( () )
             {
-            // InternalEssentialOCL.g:6715:1: ( () )
-            // InternalEssentialOCL.g:6716:1: ()
+            // InternalEssentialOCL.g:6717:1: ( () )
+            // InternalEssentialOCL.g:6718:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0());
             }
-            // InternalEssentialOCL.g:6717:1: ()
-            // InternalEssentialOCL.g:6719:1:
+            // InternalEssentialOCL.g:6719:1: ()
+            // InternalEssentialOCL.g:6721:1:
             {
             }
 
@@ -20279,14 +20279,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__1"
-    // InternalEssentialOCL.g:6729:1: rule__ExpCS__Group_0_1__1 : rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 ;
+    // InternalEssentialOCL.g:6731:1: rule__ExpCS__Group_0_1__1 : rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 ;
     public final void rule__ExpCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6733:1: ( rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 )
-            // InternalEssentialOCL.g:6734:2: rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2
+            // InternalEssentialOCL.g:6735:1: ( rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 )
+            // InternalEssentialOCL.g:6736:2: rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__ExpCS__Group_0_1__1__Impl();
@@ -20317,23 +20317,23 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__1__Impl"
-    // InternalEssentialOCL.g:6741:1: rule__ExpCS__Group_0_1__1__Impl : ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) ;
+    // InternalEssentialOCL.g:6743:1: rule__ExpCS__Group_0_1__1__Impl : ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) ;
     public final void rule__ExpCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6745:1: ( ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) )
-            // InternalEssentialOCL.g:6746:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
+            // InternalEssentialOCL.g:6747:1: ( ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) )
+            // InternalEssentialOCL.g:6748:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
             {
-            // InternalEssentialOCL.g:6746:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
-            // InternalEssentialOCL.g:6747:1: ( rule__ExpCS__NameAssignment_0_1_1 )
+            // InternalEssentialOCL.g:6748:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
+            // InternalEssentialOCL.g:6749:1: ( rule__ExpCS__NameAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1());
             }
-            // InternalEssentialOCL.g:6748:1: ( rule__ExpCS__NameAssignment_0_1_1 )
-            // InternalEssentialOCL.g:6748:2: rule__ExpCS__NameAssignment_0_1_1
+            // InternalEssentialOCL.g:6750:1: ( rule__ExpCS__NameAssignment_0_1_1 )
+            // InternalEssentialOCL.g:6750:2: rule__ExpCS__NameAssignment_0_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__NameAssignment_0_1_1();
@@ -20368,14 +20368,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__2"
-    // InternalEssentialOCL.g:6758:1: rule__ExpCS__Group_0_1__2 : rule__ExpCS__Group_0_1__2__Impl ;
+    // InternalEssentialOCL.g:6760:1: rule__ExpCS__Group_0_1__2 : rule__ExpCS__Group_0_1__2__Impl ;
     public final void rule__ExpCS__Group_0_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6762:1: ( rule__ExpCS__Group_0_1__2__Impl )
-            // InternalEssentialOCL.g:6763:2: rule__ExpCS__Group_0_1__2__Impl
+            // InternalEssentialOCL.g:6764:1: ( rule__ExpCS__Group_0_1__2__Impl )
+            // InternalEssentialOCL.g:6765:2: rule__ExpCS__Group_0_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__Group_0_1__2__Impl();
@@ -20401,23 +20401,23 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__2__Impl"
-    // InternalEssentialOCL.g:6769:1: rule__ExpCS__Group_0_1__2__Impl : ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) ;
+    // InternalEssentialOCL.g:6771:1: rule__ExpCS__Group_0_1__2__Impl : ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) ;
     public final void rule__ExpCS__Group_0_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6773:1: ( ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) )
-            // InternalEssentialOCL.g:6774:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
+            // InternalEssentialOCL.g:6775:1: ( ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) )
+            // InternalEssentialOCL.g:6776:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
             {
-            // InternalEssentialOCL.g:6774:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
-            // InternalEssentialOCL.g:6775:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
+            // InternalEssentialOCL.g:6776:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
+            // InternalEssentialOCL.g:6777:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2());
             }
-            // InternalEssentialOCL.g:6776:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
-            // InternalEssentialOCL.g:6776:2: rule__ExpCS__OwnedRightAssignment_0_1_2
+            // InternalEssentialOCL.g:6778:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
+            // InternalEssentialOCL.g:6778:2: rule__ExpCS__OwnedRightAssignment_0_1_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__OwnedRightAssignment_0_1_2();
@@ -20452,14 +20452,14 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__0"
-    // InternalEssentialOCL.g:6792:1: rule__PrefixedLetExpCS__Group_0__0 : rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 ;
+    // InternalEssentialOCL.g:6794:1: rule__PrefixedLetExpCS__Group_0__0 : rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 ;
     public final void rule__PrefixedLetExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6796:1: ( rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 )
-            // InternalEssentialOCL.g:6797:2: rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1
+            // InternalEssentialOCL.g:6798:1: ( rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 )
+            // InternalEssentialOCL.g:6799:2: rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_31);
             rule__PrefixedLetExpCS__Group_0__0__Impl();
@@ -20490,23 +20490,23 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__0__Impl"
-    // InternalEssentialOCL.g:6804:1: rule__PrefixedLetExpCS__Group_0__0__Impl : ( () ) ;
+    // InternalEssentialOCL.g:6806:1: rule__PrefixedLetExpCS__Group_0__0__Impl : ( () ) ;
     public final void rule__PrefixedLetExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6808:1: ( ( () ) )
-            // InternalEssentialOCL.g:6809:1: ( () )
+            // InternalEssentialOCL.g:6810:1: ( ( () ) )
+            // InternalEssentialOCL.g:6811:1: ( () )
             {
-            // InternalEssentialOCL.g:6809:1: ( () )
-            // InternalEssentialOCL.g:6810:1: ()
+            // InternalEssentialOCL.g:6811:1: ( () )
+            // InternalEssentialOCL.g:6812:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0());
             }
-            // InternalEssentialOCL.g:6811:1: ()
-            // InternalEssentialOCL.g:6813:1:
+            // InternalEssentialOCL.g:6813:1: ()
+            // InternalEssentialOCL.g:6815:1:
             {
             }
 
@@ -20531,14 +20531,14 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__1"
-    // InternalEssentialOCL.g:6823:1: rule__PrefixedLetExpCS__Group_0__1 : rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 ;
+    // InternalEssentialOCL.g:6825:1: rule__PrefixedLetExpCS__Group_0__1 : rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 ;
     public final void rule__PrefixedLetExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6827:1: ( rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 )
-            // InternalEssentialOCL.g:6828:2: rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2
+            // InternalEssentialOCL.g:6829:1: ( rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 )
+            // InternalEssentialOCL.g:6830:2: rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__PrefixedLetExpCS__Group_0__1__Impl();
@@ -20569,23 +20569,23 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__1__Impl"
-    // InternalEssentialOCL.g:6835:1: rule__PrefixedLetExpCS__Group_0__1__Impl : ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) ;
+    // InternalEssentialOCL.g:6837:1: rule__PrefixedLetExpCS__Group_0__1__Impl : ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) ;
     public final void rule__PrefixedLetExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6839:1: ( ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) )
-            // InternalEssentialOCL.g:6840:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
+            // InternalEssentialOCL.g:6841:1: ( ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) )
+            // InternalEssentialOCL.g:6842:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
             {
-            // InternalEssentialOCL.g:6840:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
-            // InternalEssentialOCL.g:6841:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
+            // InternalEssentialOCL.g:6842:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
+            // InternalEssentialOCL.g:6843:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1());
             }
-            // InternalEssentialOCL.g:6842:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
-            // InternalEssentialOCL.g:6842:2: rule__PrefixedLetExpCS__NameAssignment_0_1
+            // InternalEssentialOCL.g:6844:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
+            // InternalEssentialOCL.g:6844:2: rule__PrefixedLetExpCS__NameAssignment_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedLetExpCS__NameAssignment_0_1();
@@ -20620,14 +20620,14 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__2"
-    // InternalEssentialOCL.g:6852:1: rule__PrefixedLetExpCS__Group_0__2 : rule__PrefixedLetExpCS__Group_0__2__Impl ;
+    // InternalEssentialOCL.g:6854:1: rule__PrefixedLetExpCS__Group_0__2 : rule__PrefixedLetExpCS__Group_0__2__Impl ;
     public final void rule__PrefixedLetExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6856:1: ( rule__PrefixedLetExpCS__Group_0__2__Impl )
-            // InternalEssentialOCL.g:6857:2: rule__PrefixedLetExpCS__Group_0__2__Impl
+            // InternalEssentialOCL.g:6858:1: ( rule__PrefixedLetExpCS__Group_0__2__Impl )
+            // InternalEssentialOCL.g:6859:2: rule__PrefixedLetExpCS__Group_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedLetExpCS__Group_0__2__Impl();
@@ -20653,23 +20653,23 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__2__Impl"
-    // InternalEssentialOCL.g:6863:1: rule__PrefixedLetExpCS__Group_0__2__Impl : ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) ;
+    // InternalEssentialOCL.g:6865:1: rule__PrefixedLetExpCS__Group_0__2__Impl : ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) ;
     public final void rule__PrefixedLetExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6867:1: ( ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) )
-            // InternalEssentialOCL.g:6868:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalEssentialOCL.g:6869:1: ( ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) )
+            // InternalEssentialOCL.g:6870:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
             {
-            // InternalEssentialOCL.g:6868:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
-            // InternalEssentialOCL.g:6869:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
+            // InternalEssentialOCL.g:6870:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalEssentialOCL.g:6871:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2());
             }
-            // InternalEssentialOCL.g:6870:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
-            // InternalEssentialOCL.g:6870:2: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2
+            // InternalEssentialOCL.g:6872:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
+            // InternalEssentialOCL.g:6872:2: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedLetExpCS__OwnedRightAssignment_0_2();
@@ -20704,14 +20704,14 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__0"
-    // InternalEssentialOCL.g:6886:1: rule__PrefixedPrimaryExpCS__Group_0__0 : rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 ;
+    // InternalEssentialOCL.g:6888:1: rule__PrefixedPrimaryExpCS__Group_0__0 : rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6890:1: ( rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 )
-            // InternalEssentialOCL.g:6891:2: rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1
+            // InternalEssentialOCL.g:6892:1: ( rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 )
+            // InternalEssentialOCL.g:6893:2: rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_31);
             rule__PrefixedPrimaryExpCS__Group_0__0__Impl();
@@ -20742,23 +20742,23 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__0__Impl"
-    // InternalEssentialOCL.g:6898:1: rule__PrefixedPrimaryExpCS__Group_0__0__Impl : ( () ) ;
+    // InternalEssentialOCL.g:6900:1: rule__PrefixedPrimaryExpCS__Group_0__0__Impl : ( () ) ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6902:1: ( ( () ) )
-            // InternalEssentialOCL.g:6903:1: ( () )
+            // InternalEssentialOCL.g:6904:1: ( ( () ) )
+            // InternalEssentialOCL.g:6905:1: ( () )
             {
-            // InternalEssentialOCL.g:6903:1: ( () )
-            // InternalEssentialOCL.g:6904:1: ()
+            // InternalEssentialOCL.g:6905:1: ( () )
+            // InternalEssentialOCL.g:6906:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0());
             }
-            // InternalEssentialOCL.g:6905:1: ()
-            // InternalEssentialOCL.g:6907:1:
+            // InternalEssentialOCL.g:6907:1: ()
+            // InternalEssentialOCL.g:6909:1:
             {
             }
 
@@ -20783,14 +20783,14 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__1"
-    // InternalEssentialOCL.g:6917:1: rule__PrefixedPrimaryExpCS__Group_0__1 : rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 ;
+    // InternalEssentialOCL.g:6919:1: rule__PrefixedPrimaryExpCS__Group_0__1 : rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6921:1: ( rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 )
-            // InternalEssentialOCL.g:6922:2: rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2
+            // InternalEssentialOCL.g:6923:1: ( rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 )
+            // InternalEssentialOCL.g:6924:2: rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__PrefixedPrimaryExpCS__Group_0__1__Impl();
@@ -20821,23 +20821,23 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__1__Impl"
-    // InternalEssentialOCL.g:6929:1: rule__PrefixedPrimaryExpCS__Group_0__1__Impl : ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) ;
+    // InternalEssentialOCL.g:6931:1: rule__PrefixedPrimaryExpCS__Group_0__1__Impl : ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6933:1: ( ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) )
-            // InternalEssentialOCL.g:6934:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
+            // InternalEssentialOCL.g:6935:1: ( ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) )
+            // InternalEssentialOCL.g:6936:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
             {
-            // InternalEssentialOCL.g:6934:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
-            // InternalEssentialOCL.g:6935:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
+            // InternalEssentialOCL.g:6936:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
+            // InternalEssentialOCL.g:6937:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1());
             }
-            // InternalEssentialOCL.g:6936:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
-            // InternalEssentialOCL.g:6936:2: rule__PrefixedPrimaryExpCS__NameAssignment_0_1
+            // InternalEssentialOCL.g:6938:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
+            // InternalEssentialOCL.g:6938:2: rule__PrefixedPrimaryExpCS__NameAssignment_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedPrimaryExpCS__NameAssignment_0_1();
@@ -20872,14 +20872,14 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__2"
-    // InternalEssentialOCL.g:6946:1: rule__PrefixedPrimaryExpCS__Group_0__2 : rule__PrefixedPrimaryExpCS__Group_0__2__Impl ;
+    // InternalEssentialOCL.g:6948:1: rule__PrefixedPrimaryExpCS__Group_0__2 : rule__PrefixedPrimaryExpCS__Group_0__2__Impl ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6950:1: ( rule__PrefixedPrimaryExpCS__Group_0__2__Impl )
-            // InternalEssentialOCL.g:6951:2: rule__PrefixedPrimaryExpCS__Group_0__2__Impl
+            // InternalEssentialOCL.g:6952:1: ( rule__PrefixedPrimaryExpCS__Group_0__2__Impl )
+            // InternalEssentialOCL.g:6953:2: rule__PrefixedPrimaryExpCS__Group_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedPrimaryExpCS__Group_0__2__Impl();
@@ -20905,23 +20905,23 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__2__Impl"
-    // InternalEssentialOCL.g:6957:1: rule__PrefixedPrimaryExpCS__Group_0__2__Impl : ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) ;
+    // InternalEssentialOCL.g:6959:1: rule__PrefixedPrimaryExpCS__Group_0__2__Impl : ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6961:1: ( ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) )
-            // InternalEssentialOCL.g:6962:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalEssentialOCL.g:6963:1: ( ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) )
+            // InternalEssentialOCL.g:6964:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
             {
-            // InternalEssentialOCL.g:6962:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
-            // InternalEssentialOCL.g:6963:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
+            // InternalEssentialOCL.g:6964:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalEssentialOCL.g:6965:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2());
             }
-            // InternalEssentialOCL.g:6964:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
-            // InternalEssentialOCL.g:6964:2: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2
+            // InternalEssentialOCL.g:6966:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
+            // InternalEssentialOCL.g:6966:2: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2();
@@ -20956,14 +20956,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__0"
-    // InternalEssentialOCL.g:6980:1: rule__NameExpCS__Group__0 : rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 ;
+    // InternalEssentialOCL.g:6982:1: rule__NameExpCS__Group__0 : rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 ;
     public final void rule__NameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6984:1: ( rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 )
-            // InternalEssentialOCL.g:6985:2: rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1
+            // InternalEssentialOCL.g:6986:1: ( rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 )
+            // InternalEssentialOCL.g:6987:2: rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__NameExpCS__Group__0__Impl();
@@ -20994,23 +20994,23 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:6992:1: rule__NameExpCS__Group__0__Impl : ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:6994:1: rule__NameExpCS__Group__0__Impl : ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) ;
     public final void rule__NameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:6996:1: ( ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) )
-            // InternalEssentialOCL.g:6997:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalEssentialOCL.g:6998:1: ( ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) )
+            // InternalEssentialOCL.g:6999:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:6997:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
-            // InternalEssentialOCL.g:6998:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
+            // InternalEssentialOCL.g:6999:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalEssentialOCL.g:7000:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
-            // InternalEssentialOCL.g:6999:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
-            // InternalEssentialOCL.g:6999:2: rule__NameExpCS__OwnedPathNameAssignment_0
+            // InternalEssentialOCL.g:7001:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
+            // InternalEssentialOCL.g:7001:2: rule__NameExpCS__OwnedPathNameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__OwnedPathNameAssignment_0();
@@ -21045,14 +21045,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__1"
-    // InternalEssentialOCL.g:7009:1: rule__NameExpCS__Group__1 : rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 ;
+    // InternalEssentialOCL.g:7011:1: rule__NameExpCS__Group__1 : rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 ;
     public final void rule__NameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7013:1: ( rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 )
-            // InternalEssentialOCL.g:7014:2: rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2
+            // InternalEssentialOCL.g:7015:1: ( rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 )
+            // InternalEssentialOCL.g:7016:2: rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__NameExpCS__Group__1__Impl();
@@ -21083,22 +21083,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:7021:1: rule__NameExpCS__Group__1__Impl : ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) ;
+    // InternalEssentialOCL.g:7023:1: rule__NameExpCS__Group__1__Impl : ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) ;
     public final void rule__NameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7025:1: ( ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) )
-            // InternalEssentialOCL.g:7026:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
+            // InternalEssentialOCL.g:7027:1: ( ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) )
+            // InternalEssentialOCL.g:7028:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
             {
-            // InternalEssentialOCL.g:7026:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
-            // InternalEssentialOCL.g:7027:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
+            // InternalEssentialOCL.g:7028:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
+            // InternalEssentialOCL.g:7029:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1());
             }
-            // InternalEssentialOCL.g:7028:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
+            // InternalEssentialOCL.g:7030:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             loop53:
             do {
                 int alt53=2;
@@ -21111,7 +21111,7 @@
 
                 switch (alt53) {
             	case 1 :
-            	    // InternalEssentialOCL.g:7028:2: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1
+            	    // InternalEssentialOCL.g:7030:2: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_34);
             	    rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1();
@@ -21152,14 +21152,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__2"
-    // InternalEssentialOCL.g:7038:1: rule__NameExpCS__Group__2 : rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 ;
+    // InternalEssentialOCL.g:7040:1: rule__NameExpCS__Group__2 : rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 ;
     public final void rule__NameExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7042:1: ( rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 )
-            // InternalEssentialOCL.g:7043:2: rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3
+            // InternalEssentialOCL.g:7044:1: ( rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 )
+            // InternalEssentialOCL.g:7045:2: rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__NameExpCS__Group__2__Impl();
@@ -21190,22 +21190,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__2__Impl"
-    // InternalEssentialOCL.g:7050:1: rule__NameExpCS__Group__2__Impl : ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) ;
+    // InternalEssentialOCL.g:7052:1: rule__NameExpCS__Group__2__Impl : ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) ;
     public final void rule__NameExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7054:1: ( ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) )
-            // InternalEssentialOCL.g:7055:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
+            // InternalEssentialOCL.g:7056:1: ( ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) )
+            // InternalEssentialOCL.g:7057:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
             {
-            // InternalEssentialOCL.g:7055:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
-            // InternalEssentialOCL.g:7056:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
+            // InternalEssentialOCL.g:7057:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
+            // InternalEssentialOCL.g:7058:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2());
             }
-            // InternalEssentialOCL.g:7057:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
+            // InternalEssentialOCL.g:7059:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             int alt54=2;
             int LA54_0 = input.LA(1);
 
@@ -21214,7 +21214,7 @@
             }
             switch (alt54) {
                 case 1 :
-                    // InternalEssentialOCL.g:7057:2: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2
+                    // InternalEssentialOCL.g:7059:2: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2();
@@ -21252,14 +21252,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__3"
-    // InternalEssentialOCL.g:7067:1: rule__NameExpCS__Group__3 : rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 ;
+    // InternalEssentialOCL.g:7069:1: rule__NameExpCS__Group__3 : rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 ;
     public final void rule__NameExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7071:1: ( rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 )
-            // InternalEssentialOCL.g:7072:2: rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4
+            // InternalEssentialOCL.g:7073:1: ( rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 )
+            // InternalEssentialOCL.g:7074:2: rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__NameExpCS__Group__3__Impl();
@@ -21290,22 +21290,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__3__Impl"
-    // InternalEssentialOCL.g:7079:1: rule__NameExpCS__Group__3__Impl : ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) ;
+    // InternalEssentialOCL.g:7081:1: rule__NameExpCS__Group__3__Impl : ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) ;
     public final void rule__NameExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7083:1: ( ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) )
-            // InternalEssentialOCL.g:7084:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
+            // InternalEssentialOCL.g:7085:1: ( ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) )
+            // InternalEssentialOCL.g:7086:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
             {
-            // InternalEssentialOCL.g:7084:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
-            // InternalEssentialOCL.g:7085:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
+            // InternalEssentialOCL.g:7086:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
+            // InternalEssentialOCL.g:7087:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3());
             }
-            // InternalEssentialOCL.g:7086:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
+            // InternalEssentialOCL.g:7088:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             int alt55=2;
             int LA55_0 = input.LA(1);
 
@@ -21314,7 +21314,7 @@
             }
             switch (alt55) {
                 case 1 :
-                    // InternalEssentialOCL.g:7086:2: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3
+                    // InternalEssentialOCL.g:7088:2: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3();
@@ -21352,14 +21352,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__4"
-    // InternalEssentialOCL.g:7096:1: rule__NameExpCS__Group__4 : rule__NameExpCS__Group__4__Impl ;
+    // InternalEssentialOCL.g:7098:1: rule__NameExpCS__Group__4 : rule__NameExpCS__Group__4__Impl ;
     public final void rule__NameExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7100:1: ( rule__NameExpCS__Group__4__Impl )
-            // InternalEssentialOCL.g:7101:2: rule__NameExpCS__Group__4__Impl
+            // InternalEssentialOCL.g:7102:1: ( rule__NameExpCS__Group__4__Impl )
+            // InternalEssentialOCL.g:7103:2: rule__NameExpCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__Group__4__Impl();
@@ -21385,22 +21385,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__4__Impl"
-    // InternalEssentialOCL.g:7107:1: rule__NameExpCS__Group__4__Impl : ( ( rule__NameExpCS__Group_4__0 )? ) ;
+    // InternalEssentialOCL.g:7109:1: rule__NameExpCS__Group__4__Impl : ( ( rule__NameExpCS__Group_4__0 )? ) ;
     public final void rule__NameExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7111:1: ( ( ( rule__NameExpCS__Group_4__0 )? ) )
-            // InternalEssentialOCL.g:7112:1: ( ( rule__NameExpCS__Group_4__0 )? )
+            // InternalEssentialOCL.g:7113:1: ( ( ( rule__NameExpCS__Group_4__0 )? ) )
+            // InternalEssentialOCL.g:7114:1: ( ( rule__NameExpCS__Group_4__0 )? )
             {
-            // InternalEssentialOCL.g:7112:1: ( ( rule__NameExpCS__Group_4__0 )? )
-            // InternalEssentialOCL.g:7113:1: ( rule__NameExpCS__Group_4__0 )?
+            // InternalEssentialOCL.g:7114:1: ( ( rule__NameExpCS__Group_4__0 )? )
+            // InternalEssentialOCL.g:7115:1: ( rule__NameExpCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getGroup_4());
             }
-            // InternalEssentialOCL.g:7114:1: ( rule__NameExpCS__Group_4__0 )?
+            // InternalEssentialOCL.g:7116:1: ( rule__NameExpCS__Group_4__0 )?
             int alt56=2;
             int LA56_0 = input.LA(1);
 
@@ -21409,7 +21409,7 @@
             }
             switch (alt56) {
                 case 1 :
-                    // InternalEssentialOCL.g:7114:2: rule__NameExpCS__Group_4__0
+                    // InternalEssentialOCL.g:7116:2: rule__NameExpCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NameExpCS__Group_4__0();
@@ -21447,14 +21447,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__0"
-    // InternalEssentialOCL.g:7134:1: rule__NameExpCS__Group_4__0 : rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 ;
+    // InternalEssentialOCL.g:7136:1: rule__NameExpCS__Group_4__0 : rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 ;
     public final void rule__NameExpCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7138:1: ( rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 )
-            // InternalEssentialOCL.g:7139:2: rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1
+            // InternalEssentialOCL.g:7140:1: ( rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 )
+            // InternalEssentialOCL.g:7141:2: rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1
             {
             pushFollow(FollowSets000.FOLLOW_35);
             rule__NameExpCS__Group_4__0__Impl();
@@ -21485,23 +21485,23 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__0__Impl"
-    // InternalEssentialOCL.g:7146:1: rule__NameExpCS__Group_4__0__Impl : ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) ;
+    // InternalEssentialOCL.g:7148:1: rule__NameExpCS__Group_4__0__Impl : ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) ;
     public final void rule__NameExpCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7150:1: ( ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) )
-            // InternalEssentialOCL.g:7151:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
+            // InternalEssentialOCL.g:7152:1: ( ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) )
+            // InternalEssentialOCL.g:7153:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
             {
-            // InternalEssentialOCL.g:7151:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
-            // InternalEssentialOCL.g:7152:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
+            // InternalEssentialOCL.g:7153:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
+            // InternalEssentialOCL.g:7154:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0());
             }
-            // InternalEssentialOCL.g:7153:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
-            // InternalEssentialOCL.g:7153:2: rule__NameExpCS__IsPreAssignment_4_0
+            // InternalEssentialOCL.g:7155:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
+            // InternalEssentialOCL.g:7155:2: rule__NameExpCS__IsPreAssignment_4_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__IsPreAssignment_4_0();
@@ -21536,14 +21536,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__1"
-    // InternalEssentialOCL.g:7163:1: rule__NameExpCS__Group_4__1 : rule__NameExpCS__Group_4__1__Impl ;
+    // InternalEssentialOCL.g:7165:1: rule__NameExpCS__Group_4__1 : rule__NameExpCS__Group_4__1__Impl ;
     public final void rule__NameExpCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7167:1: ( rule__NameExpCS__Group_4__1__Impl )
-            // InternalEssentialOCL.g:7168:2: rule__NameExpCS__Group_4__1__Impl
+            // InternalEssentialOCL.g:7169:1: ( rule__NameExpCS__Group_4__1__Impl )
+            // InternalEssentialOCL.g:7170:2: rule__NameExpCS__Group_4__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__Group_4__1__Impl();
@@ -21569,17 +21569,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__1__Impl"
-    // InternalEssentialOCL.g:7174:1: rule__NameExpCS__Group_4__1__Impl : ( 'pre' ) ;
+    // InternalEssentialOCL.g:7176:1: rule__NameExpCS__Group_4__1__Impl : ( 'pre' ) ;
     public final void rule__NameExpCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7178:1: ( ( 'pre' ) )
-            // InternalEssentialOCL.g:7179:1: ( 'pre' )
+            // InternalEssentialOCL.g:7180:1: ( ( 'pre' ) )
+            // InternalEssentialOCL.g:7181:1: ( 'pre' )
             {
-            // InternalEssentialOCL.g:7179:1: ( 'pre' )
-            // InternalEssentialOCL.g:7180:1: 'pre'
+            // InternalEssentialOCL.g:7181:1: ( 'pre' )
+            // InternalEssentialOCL.g:7182:1: 'pre'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
@@ -21610,14 +21610,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__0"
-    // InternalEssentialOCL.g:7197:1: rule__CurlyBracketedClauseCS__Group__0 : rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 ;
+    // InternalEssentialOCL.g:7199:1: rule__CurlyBracketedClauseCS__Group__0 : rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 ;
     public final void rule__CurlyBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7201:1: ( rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 )
-            // InternalEssentialOCL.g:7202:2: rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1
+            // InternalEssentialOCL.g:7203:1: ( rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 )
+            // InternalEssentialOCL.g:7204:2: rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__CurlyBracketedClauseCS__Group__0__Impl();
@@ -21648,23 +21648,23 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__0__Impl"
-    // InternalEssentialOCL.g:7209:1: rule__CurlyBracketedClauseCS__Group__0__Impl : ( () ) ;
+    // InternalEssentialOCL.g:7211:1: rule__CurlyBracketedClauseCS__Group__0__Impl : ( () ) ;
     public final void rule__CurlyBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7213:1: ( ( () ) )
-            // InternalEssentialOCL.g:7214:1: ( () )
+            // InternalEssentialOCL.g:7215:1: ( ( () ) )
+            // InternalEssentialOCL.g:7216:1: ( () )
             {
-            // InternalEssentialOCL.g:7214:1: ( () )
-            // InternalEssentialOCL.g:7215:1: ()
+            // InternalEssentialOCL.g:7216:1: ( () )
+            // InternalEssentialOCL.g:7217:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0());
             }
-            // InternalEssentialOCL.g:7216:1: ()
-            // InternalEssentialOCL.g:7218:1:
+            // InternalEssentialOCL.g:7218:1: ()
+            // InternalEssentialOCL.g:7220:1:
             {
             }
 
@@ -21689,14 +21689,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__1"
-    // InternalEssentialOCL.g:7228:1: rule__CurlyBracketedClauseCS__Group__1 : rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 ;
+    // InternalEssentialOCL.g:7230:1: rule__CurlyBracketedClauseCS__Group__1 : rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 ;
     public final void rule__CurlyBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7232:1: ( rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 )
-            // InternalEssentialOCL.g:7233:2: rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2
+            // InternalEssentialOCL.g:7234:1: ( rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 )
+            // InternalEssentialOCL.g:7235:2: rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__CurlyBracketedClauseCS__Group__1__Impl();
@@ -21727,17 +21727,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__1__Impl"
-    // InternalEssentialOCL.g:7240:1: rule__CurlyBracketedClauseCS__Group__1__Impl : ( '{' ) ;
+    // InternalEssentialOCL.g:7242:1: rule__CurlyBracketedClauseCS__Group__1__Impl : ( '{' ) ;
     public final void rule__CurlyBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7244:1: ( ( '{' ) )
-            // InternalEssentialOCL.g:7245:1: ( '{' )
+            // InternalEssentialOCL.g:7246:1: ( ( '{' ) )
+            // InternalEssentialOCL.g:7247:1: ( '{' )
             {
-            // InternalEssentialOCL.g:7245:1: ( '{' )
-            // InternalEssentialOCL.g:7246:1: '{'
+            // InternalEssentialOCL.g:7247:1: ( '{' )
+            // InternalEssentialOCL.g:7248:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
@@ -21768,14 +21768,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__2"
-    // InternalEssentialOCL.g:7259:1: rule__CurlyBracketedClauseCS__Group__2 : rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 ;
+    // InternalEssentialOCL.g:7261:1: rule__CurlyBracketedClauseCS__Group__2 : rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 ;
     public final void rule__CurlyBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7263:1: ( rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 )
-            // InternalEssentialOCL.g:7264:2: rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3
+            // InternalEssentialOCL.g:7265:1: ( rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 )
+            // InternalEssentialOCL.g:7266:2: rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__CurlyBracketedClauseCS__Group__2__Impl();
@@ -21806,22 +21806,22 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__2__Impl"
-    // InternalEssentialOCL.g:7271:1: rule__CurlyBracketedClauseCS__Group__2__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) ;
+    // InternalEssentialOCL.g:7273:1: rule__CurlyBracketedClauseCS__Group__2__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) ;
     public final void rule__CurlyBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7275:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) )
-            // InternalEssentialOCL.g:7276:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:7277:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) )
+            // InternalEssentialOCL.g:7278:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
             {
-            // InternalEssentialOCL.g:7276:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
-            // InternalEssentialOCL.g:7277:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
+            // InternalEssentialOCL.g:7278:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:7279:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2());
             }
-            // InternalEssentialOCL.g:7278:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
+            // InternalEssentialOCL.g:7280:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
             int alt57=2;
             int LA57_0 = input.LA(1);
 
@@ -21830,7 +21830,7 @@
             }
             switch (alt57) {
                 case 1 :
-                    // InternalEssentialOCL.g:7278:2: rule__CurlyBracketedClauseCS__Group_2__0
+                    // InternalEssentialOCL.g:7280:2: rule__CurlyBracketedClauseCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CurlyBracketedClauseCS__Group_2__0();
@@ -21868,14 +21868,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__3"
-    // InternalEssentialOCL.g:7288:1: rule__CurlyBracketedClauseCS__Group__3 : rule__CurlyBracketedClauseCS__Group__3__Impl ;
+    // InternalEssentialOCL.g:7290:1: rule__CurlyBracketedClauseCS__Group__3 : rule__CurlyBracketedClauseCS__Group__3__Impl ;
     public final void rule__CurlyBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7292:1: ( rule__CurlyBracketedClauseCS__Group__3__Impl )
-            // InternalEssentialOCL.g:7293:2: rule__CurlyBracketedClauseCS__Group__3__Impl
+            // InternalEssentialOCL.g:7294:1: ( rule__CurlyBracketedClauseCS__Group__3__Impl )
+            // InternalEssentialOCL.g:7295:2: rule__CurlyBracketedClauseCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__Group__3__Impl();
@@ -21901,17 +21901,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__3__Impl"
-    // InternalEssentialOCL.g:7299:1: rule__CurlyBracketedClauseCS__Group__3__Impl : ( '}' ) ;
+    // InternalEssentialOCL.g:7301:1: rule__CurlyBracketedClauseCS__Group__3__Impl : ( '}' ) ;
     public final void rule__CurlyBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7303:1: ( ( '}' ) )
-            // InternalEssentialOCL.g:7304:1: ( '}' )
+            // InternalEssentialOCL.g:7305:1: ( ( '}' ) )
+            // InternalEssentialOCL.g:7306:1: ( '}' )
             {
-            // InternalEssentialOCL.g:7304:1: ( '}' )
-            // InternalEssentialOCL.g:7305:1: '}'
+            // InternalEssentialOCL.g:7306:1: ( '}' )
+            // InternalEssentialOCL.g:7307:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
@@ -21942,14 +21942,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__0"
-    // InternalEssentialOCL.g:7326:1: rule__CurlyBracketedClauseCS__Group_2__0 : rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 ;
+    // InternalEssentialOCL.g:7328:1: rule__CurlyBracketedClauseCS__Group_2__0 : rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 ;
     public final void rule__CurlyBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7330:1: ( rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 )
-            // InternalEssentialOCL.g:7331:2: rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1
+            // InternalEssentialOCL.g:7332:1: ( rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 )
+            // InternalEssentialOCL.g:7333:2: rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_8);
             rule__CurlyBracketedClauseCS__Group_2__0__Impl();
@@ -21980,23 +21980,23 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__0__Impl"
-    // InternalEssentialOCL.g:7338:1: rule__CurlyBracketedClauseCS__Group_2__0__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalEssentialOCL.g:7340:1: rule__CurlyBracketedClauseCS__Group_2__0__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7342:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalEssentialOCL.g:7343:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
+            // InternalEssentialOCL.g:7344:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalEssentialOCL.g:7345:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalEssentialOCL.g:7343:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
-            // InternalEssentialOCL.g:7344:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
+            // InternalEssentialOCL.g:7345:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
+            // InternalEssentialOCL.g:7346:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalEssentialOCL.g:7345:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
-            // InternalEssentialOCL.g:7345:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0
+            // InternalEssentialOCL.g:7347:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
+            // InternalEssentialOCL.g:7347:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0();
@@ -22031,14 +22031,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__1"
-    // InternalEssentialOCL.g:7355:1: rule__CurlyBracketedClauseCS__Group_2__1 : rule__CurlyBracketedClauseCS__Group_2__1__Impl ;
+    // InternalEssentialOCL.g:7357:1: rule__CurlyBracketedClauseCS__Group_2__1 : rule__CurlyBracketedClauseCS__Group_2__1__Impl ;
     public final void rule__CurlyBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7359:1: ( rule__CurlyBracketedClauseCS__Group_2__1__Impl )
-            // InternalEssentialOCL.g:7360:2: rule__CurlyBracketedClauseCS__Group_2__1__Impl
+            // InternalEssentialOCL.g:7361:1: ( rule__CurlyBracketedClauseCS__Group_2__1__Impl )
+            // InternalEssentialOCL.g:7362:2: rule__CurlyBracketedClauseCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__Group_2__1__Impl();
@@ -22064,22 +22064,22 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__1__Impl"
-    // InternalEssentialOCL.g:7366:1: rule__CurlyBracketedClauseCS__Group_2__1__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) ;
+    // InternalEssentialOCL.g:7368:1: rule__CurlyBracketedClauseCS__Group_2__1__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7370:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) )
-            // InternalEssentialOCL.g:7371:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
+            // InternalEssentialOCL.g:7372:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) )
+            // InternalEssentialOCL.g:7373:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
             {
-            // InternalEssentialOCL.g:7371:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
-            // InternalEssentialOCL.g:7372:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
+            // InternalEssentialOCL.g:7373:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
+            // InternalEssentialOCL.g:7374:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_1());
             }
-            // InternalEssentialOCL.g:7373:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
+            // InternalEssentialOCL.g:7375:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
             loop58:
             do {
                 int alt58=2;
@@ -22092,7 +22092,7 @@
 
                 switch (alt58) {
             	case 1 :
-            	    // InternalEssentialOCL.g:7373:2: rule__CurlyBracketedClauseCS__Group_2_1__0
+            	    // InternalEssentialOCL.g:7375:2: rule__CurlyBracketedClauseCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_11);
             	    rule__CurlyBracketedClauseCS__Group_2_1__0();
@@ -22133,14 +22133,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__0"
-    // InternalEssentialOCL.g:7387:1: rule__CurlyBracketedClauseCS__Group_2_1__0 : rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 ;
+    // InternalEssentialOCL.g:7389:1: rule__CurlyBracketedClauseCS__Group_2_1__0 : rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7391:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 )
-            // InternalEssentialOCL.g:7392:2: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1
+            // InternalEssentialOCL.g:7393:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 )
+            // InternalEssentialOCL.g:7394:2: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_37);
             rule__CurlyBracketedClauseCS__Group_2_1__0__Impl();
@@ -22171,17 +22171,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__0__Impl"
-    // InternalEssentialOCL.g:7399:1: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalEssentialOCL.g:7401:1: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7403:1: ( ( ',' ) )
-            // InternalEssentialOCL.g:7404:1: ( ',' )
+            // InternalEssentialOCL.g:7405:1: ( ( ',' ) )
+            // InternalEssentialOCL.g:7406:1: ( ',' )
             {
-            // InternalEssentialOCL.g:7404:1: ( ',' )
-            // InternalEssentialOCL.g:7405:1: ','
+            // InternalEssentialOCL.g:7406:1: ( ',' )
+            // InternalEssentialOCL.g:7407:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_1_0());
@@ -22212,14 +22212,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__1"
-    // InternalEssentialOCL.g:7418:1: rule__CurlyBracketedClauseCS__Group_2_1__1 : rule__CurlyBracketedClauseCS__Group_2_1__1__Impl ;
+    // InternalEssentialOCL.g:7420:1: rule__CurlyBracketedClauseCS__Group_2_1__1 : rule__CurlyBracketedClauseCS__Group_2_1__1__Impl ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7422:1: ( rule__CurlyBracketedClauseCS__Group_2_1__1__Impl )
-            // InternalEssentialOCL.g:7423:2: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl
+            // InternalEssentialOCL.g:7424:1: ( rule__CurlyBracketedClauseCS__Group_2_1__1__Impl )
+            // InternalEssentialOCL.g:7425:2: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__Group_2_1__1__Impl();
@@ -22245,23 +22245,23 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__1__Impl"
-    // InternalEssentialOCL.g:7429:1: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalEssentialOCL.g:7431:1: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7433:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalEssentialOCL.g:7434:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalEssentialOCL.g:7435:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalEssentialOCL.g:7436:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalEssentialOCL.g:7434:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalEssentialOCL.g:7435:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
+            // InternalEssentialOCL.g:7436:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalEssentialOCL.g:7437:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalEssentialOCL.g:7436:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
-            // InternalEssentialOCL.g:7436:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1
+            // InternalEssentialOCL.g:7438:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
+            // InternalEssentialOCL.g:7438:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1();
@@ -22296,14 +22296,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__0"
-    // InternalEssentialOCL.g:7450:1: rule__RoundBracketedClauseCS__Group__0 : rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 ;
+    // InternalEssentialOCL.g:7452:1: rule__RoundBracketedClauseCS__Group__0 : rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 ;
     public final void rule__RoundBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7454:1: ( rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 )
-            // InternalEssentialOCL.g:7455:2: rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1
+            // InternalEssentialOCL.g:7456:1: ( rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 )
+            // InternalEssentialOCL.g:7457:2: rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_5);
             rule__RoundBracketedClauseCS__Group__0__Impl();
@@ -22334,23 +22334,23 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__0__Impl"
-    // InternalEssentialOCL.g:7462:1: rule__RoundBracketedClauseCS__Group__0__Impl : ( () ) ;
+    // InternalEssentialOCL.g:7464:1: rule__RoundBracketedClauseCS__Group__0__Impl : ( () ) ;
     public final void rule__RoundBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7466:1: ( ( () ) )
-            // InternalEssentialOCL.g:7467:1: ( () )
+            // InternalEssentialOCL.g:7468:1: ( ( () ) )
+            // InternalEssentialOCL.g:7469:1: ( () )
             {
-            // InternalEssentialOCL.g:7467:1: ( () )
-            // InternalEssentialOCL.g:7468:1: ()
+            // InternalEssentialOCL.g:7469:1: ( () )
+            // InternalEssentialOCL.g:7470:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0());
             }
-            // InternalEssentialOCL.g:7469:1: ()
-            // InternalEssentialOCL.g:7471:1:
+            // InternalEssentialOCL.g:7471:1: ()
+            // InternalEssentialOCL.g:7473:1:
             {
             }
 
@@ -22375,14 +22375,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__1"
-    // InternalEssentialOCL.g:7481:1: rule__RoundBracketedClauseCS__Group__1 : rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 ;
+    // InternalEssentialOCL.g:7483:1: rule__RoundBracketedClauseCS__Group__1 : rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 ;
     public final void rule__RoundBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7485:1: ( rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 )
-            // InternalEssentialOCL.g:7486:2: rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2
+            // InternalEssentialOCL.g:7487:1: ( rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 )
+            // InternalEssentialOCL.g:7488:2: rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_38);
             rule__RoundBracketedClauseCS__Group__1__Impl();
@@ -22413,17 +22413,17 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__1__Impl"
-    // InternalEssentialOCL.g:7493:1: rule__RoundBracketedClauseCS__Group__1__Impl : ( '(' ) ;
+    // InternalEssentialOCL.g:7495:1: rule__RoundBracketedClauseCS__Group__1__Impl : ( '(' ) ;
     public final void rule__RoundBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7497:1: ( ( '(' ) )
-            // InternalEssentialOCL.g:7498:1: ( '(' )
+            // InternalEssentialOCL.g:7499:1: ( ( '(' ) )
+            // InternalEssentialOCL.g:7500:1: ( '(' )
             {
-            // InternalEssentialOCL.g:7498:1: ( '(' )
-            // InternalEssentialOCL.g:7499:1: '('
+            // InternalEssentialOCL.g:7500:1: ( '(' )
+            // InternalEssentialOCL.g:7501:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
@@ -22454,14 +22454,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__2"
-    // InternalEssentialOCL.g:7512:1: rule__RoundBracketedClauseCS__Group__2 : rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 ;
+    // InternalEssentialOCL.g:7514:1: rule__RoundBracketedClauseCS__Group__2 : rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 ;
     public final void rule__RoundBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7516:1: ( rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 )
-            // InternalEssentialOCL.g:7517:2: rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3
+            // InternalEssentialOCL.g:7518:1: ( rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 )
+            // InternalEssentialOCL.g:7519:2: rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_38);
             rule__RoundBracketedClauseCS__Group__2__Impl();
@@ -22492,22 +22492,22 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__2__Impl"
-    // InternalEssentialOCL.g:7524:1: rule__RoundBracketedClauseCS__Group__2__Impl : ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) ;
+    // InternalEssentialOCL.g:7526:1: rule__RoundBracketedClauseCS__Group__2__Impl : ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) ;
     public final void rule__RoundBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7528:1: ( ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) )
-            // InternalEssentialOCL.g:7529:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:7530:1: ( ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) )
+            // InternalEssentialOCL.g:7531:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
             {
-            // InternalEssentialOCL.g:7529:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
-            // InternalEssentialOCL.g:7530:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
+            // InternalEssentialOCL.g:7531:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:7532:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2());
             }
-            // InternalEssentialOCL.g:7531:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
+            // InternalEssentialOCL.g:7533:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             int alt59=2;
             int LA59_0 = input.LA(1);
 
@@ -22516,7 +22516,7 @@
             }
             switch (alt59) {
                 case 1 :
-                    // InternalEssentialOCL.g:7531:2: rule__RoundBracketedClauseCS__Group_2__0
+                    // InternalEssentialOCL.g:7533:2: rule__RoundBracketedClauseCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__RoundBracketedClauseCS__Group_2__0();
@@ -22554,14 +22554,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__3"
-    // InternalEssentialOCL.g:7541:1: rule__RoundBracketedClauseCS__Group__3 : rule__RoundBracketedClauseCS__Group__3__Impl ;
+    // InternalEssentialOCL.g:7543:1: rule__RoundBracketedClauseCS__Group__3 : rule__RoundBracketedClauseCS__Group__3__Impl ;
     public final void rule__RoundBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7545:1: ( rule__RoundBracketedClauseCS__Group__3__Impl )
-            // InternalEssentialOCL.g:7546:2: rule__RoundBracketedClauseCS__Group__3__Impl
+            // InternalEssentialOCL.g:7547:1: ( rule__RoundBracketedClauseCS__Group__3__Impl )
+            // InternalEssentialOCL.g:7548:2: rule__RoundBracketedClauseCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__Group__3__Impl();
@@ -22587,17 +22587,17 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__3__Impl"
-    // InternalEssentialOCL.g:7552:1: rule__RoundBracketedClauseCS__Group__3__Impl : ( ')' ) ;
+    // InternalEssentialOCL.g:7554:1: rule__RoundBracketedClauseCS__Group__3__Impl : ( ')' ) ;
     public final void rule__RoundBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7556:1: ( ( ')' ) )
-            // InternalEssentialOCL.g:7557:1: ( ')' )
+            // InternalEssentialOCL.g:7558:1: ( ( ')' ) )
+            // InternalEssentialOCL.g:7559:1: ( ')' )
             {
-            // InternalEssentialOCL.g:7557:1: ( ')' )
-            // InternalEssentialOCL.g:7558:1: ')'
+            // InternalEssentialOCL.g:7559:1: ( ')' )
+            // InternalEssentialOCL.g:7560:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
@@ -22628,14 +22628,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__0"
-    // InternalEssentialOCL.g:7579:1: rule__RoundBracketedClauseCS__Group_2__0 : rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 ;
+    // InternalEssentialOCL.g:7581:1: rule__RoundBracketedClauseCS__Group_2__0 : rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 ;
     public final void rule__RoundBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7583:1: ( rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 )
-            // InternalEssentialOCL.g:7584:2: rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1
+            // InternalEssentialOCL.g:7585:1: ( rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 )
+            // InternalEssentialOCL.g:7586:2: rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__RoundBracketedClauseCS__Group_2__0__Impl();
@@ -22666,23 +22666,23 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__0__Impl"
-    // InternalEssentialOCL.g:7591:1: rule__RoundBracketedClauseCS__Group_2__0__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) ;
+    // InternalEssentialOCL.g:7593:1: rule__RoundBracketedClauseCS__Group_2__0__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) ;
     public final void rule__RoundBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7595:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) )
-            // InternalEssentialOCL.g:7596:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
+            // InternalEssentialOCL.g:7597:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) )
+            // InternalEssentialOCL.g:7598:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
             {
-            // InternalEssentialOCL.g:7596:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
-            // InternalEssentialOCL.g:7597:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
+            // InternalEssentialOCL.g:7598:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
+            // InternalEssentialOCL.g:7599:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0());
             }
-            // InternalEssentialOCL.g:7598:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
-            // InternalEssentialOCL.g:7598:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0
+            // InternalEssentialOCL.g:7600:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
+            // InternalEssentialOCL.g:7600:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0();
@@ -22717,14 +22717,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__1"
-    // InternalEssentialOCL.g:7608:1: rule__RoundBracketedClauseCS__Group_2__1 : rule__RoundBracketedClauseCS__Group_2__1__Impl ;
+    // InternalEssentialOCL.g:7610:1: rule__RoundBracketedClauseCS__Group_2__1 : rule__RoundBracketedClauseCS__Group_2__1__Impl ;
     public final void rule__RoundBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7612:1: ( rule__RoundBracketedClauseCS__Group_2__1__Impl )
-            // InternalEssentialOCL.g:7613:2: rule__RoundBracketedClauseCS__Group_2__1__Impl
+            // InternalEssentialOCL.g:7614:1: ( rule__RoundBracketedClauseCS__Group_2__1__Impl )
+            // InternalEssentialOCL.g:7615:2: rule__RoundBracketedClauseCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__Group_2__1__Impl();
@@ -22750,22 +22750,22 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__1__Impl"
-    // InternalEssentialOCL.g:7619:1: rule__RoundBracketedClauseCS__Group_2__1__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) ;
+    // InternalEssentialOCL.g:7621:1: rule__RoundBracketedClauseCS__Group_2__1__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) ;
     public final void rule__RoundBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7623:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) )
-            // InternalEssentialOCL.g:7624:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
+            // InternalEssentialOCL.g:7625:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) )
+            // InternalEssentialOCL.g:7626:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
             {
-            // InternalEssentialOCL.g:7624:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
-            // InternalEssentialOCL.g:7625:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
+            // InternalEssentialOCL.g:7626:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
+            // InternalEssentialOCL.g:7627:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1());
             }
-            // InternalEssentialOCL.g:7626:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
+            // InternalEssentialOCL.g:7628:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             loop60:
             do {
                 int alt60=2;
@@ -22778,7 +22778,7 @@
 
                 switch (alt60) {
             	case 1 :
-            	    // InternalEssentialOCL.g:7626:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1
+            	    // InternalEssentialOCL.g:7628:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_40);
             	    rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1();
@@ -22819,14 +22819,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__0"
-    // InternalEssentialOCL.g:7640:1: rule__SquareBracketedClauseCS__Group__0 : rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 ;
+    // InternalEssentialOCL.g:7642:1: rule__SquareBracketedClauseCS__Group__0 : rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 ;
     public final void rule__SquareBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7644:1: ( rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 )
-            // InternalEssentialOCL.g:7645:2: rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1
+            // InternalEssentialOCL.g:7646:1: ( rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 )
+            // InternalEssentialOCL.g:7647:2: rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__SquareBracketedClauseCS__Group__0__Impl();
@@ -22857,17 +22857,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__0__Impl"
-    // InternalEssentialOCL.g:7652:1: rule__SquareBracketedClauseCS__Group__0__Impl : ( '[' ) ;
+    // InternalEssentialOCL.g:7654:1: rule__SquareBracketedClauseCS__Group__0__Impl : ( '[' ) ;
     public final void rule__SquareBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7656:1: ( ( '[' ) )
-            // InternalEssentialOCL.g:7657:1: ( '[' )
+            // InternalEssentialOCL.g:7658:1: ( ( '[' ) )
+            // InternalEssentialOCL.g:7659:1: ( '[' )
             {
-            // InternalEssentialOCL.g:7657:1: ( '[' )
-            // InternalEssentialOCL.g:7658:1: '['
+            // InternalEssentialOCL.g:7659:1: ( '[' )
+            // InternalEssentialOCL.g:7660:1: '['
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
@@ -22898,14 +22898,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__1"
-    // InternalEssentialOCL.g:7671:1: rule__SquareBracketedClauseCS__Group__1 : rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 ;
+    // InternalEssentialOCL.g:7673:1: rule__SquareBracketedClauseCS__Group__1 : rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 ;
     public final void rule__SquareBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7675:1: ( rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 )
-            // InternalEssentialOCL.g:7676:2: rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2
+            // InternalEssentialOCL.g:7677:1: ( rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 )
+            // InternalEssentialOCL.g:7678:2: rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_41);
             rule__SquareBracketedClauseCS__Group__1__Impl();
@@ -22936,23 +22936,23 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__1__Impl"
-    // InternalEssentialOCL.g:7683:1: rule__SquareBracketedClauseCS__Group__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) ;
+    // InternalEssentialOCL.g:7685:1: rule__SquareBracketedClauseCS__Group__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) ;
     public final void rule__SquareBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7687:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) )
-            // InternalEssentialOCL.g:7688:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
+            // InternalEssentialOCL.g:7689:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) )
+            // InternalEssentialOCL.g:7690:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
             {
-            // InternalEssentialOCL.g:7688:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
-            // InternalEssentialOCL.g:7689:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
+            // InternalEssentialOCL.g:7690:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
+            // InternalEssentialOCL.g:7691:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1());
             }
-            // InternalEssentialOCL.g:7690:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
-            // InternalEssentialOCL.g:7690:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1
+            // InternalEssentialOCL.g:7692:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
+            // InternalEssentialOCL.g:7692:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__OwnedTermsAssignment_1();
@@ -22987,14 +22987,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__2"
-    // InternalEssentialOCL.g:7700:1: rule__SquareBracketedClauseCS__Group__2 : rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 ;
+    // InternalEssentialOCL.g:7702:1: rule__SquareBracketedClauseCS__Group__2 : rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 ;
     public final void rule__SquareBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7704:1: ( rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 )
-            // InternalEssentialOCL.g:7705:2: rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3
+            // InternalEssentialOCL.g:7706:1: ( rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 )
+            // InternalEssentialOCL.g:7707:2: rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_41);
             rule__SquareBracketedClauseCS__Group__2__Impl();
@@ -23025,22 +23025,22 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__2__Impl"
-    // InternalEssentialOCL.g:7712:1: rule__SquareBracketedClauseCS__Group__2__Impl : ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) ;
+    // InternalEssentialOCL.g:7714:1: rule__SquareBracketedClauseCS__Group__2__Impl : ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) ;
     public final void rule__SquareBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7716:1: ( ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) )
-            // InternalEssentialOCL.g:7717:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
+            // InternalEssentialOCL.g:7718:1: ( ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) )
+            // InternalEssentialOCL.g:7719:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
             {
-            // InternalEssentialOCL.g:7717:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
-            // InternalEssentialOCL.g:7718:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
+            // InternalEssentialOCL.g:7719:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
+            // InternalEssentialOCL.g:7720:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2());
             }
-            // InternalEssentialOCL.g:7719:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
+            // InternalEssentialOCL.g:7721:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             loop61:
             do {
                 int alt61=2;
@@ -23053,7 +23053,7 @@
 
                 switch (alt61) {
             	case 1 :
-            	    // InternalEssentialOCL.g:7719:2: rule__SquareBracketedClauseCS__Group_2__0
+            	    // InternalEssentialOCL.g:7721:2: rule__SquareBracketedClauseCS__Group_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_11);
             	    rule__SquareBracketedClauseCS__Group_2__0();
@@ -23094,14 +23094,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__3"
-    // InternalEssentialOCL.g:7729:1: rule__SquareBracketedClauseCS__Group__3 : rule__SquareBracketedClauseCS__Group__3__Impl ;
+    // InternalEssentialOCL.g:7731:1: rule__SquareBracketedClauseCS__Group__3 : rule__SquareBracketedClauseCS__Group__3__Impl ;
     public final void rule__SquareBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7733:1: ( rule__SquareBracketedClauseCS__Group__3__Impl )
-            // InternalEssentialOCL.g:7734:2: rule__SquareBracketedClauseCS__Group__3__Impl
+            // InternalEssentialOCL.g:7735:1: ( rule__SquareBracketedClauseCS__Group__3__Impl )
+            // InternalEssentialOCL.g:7736:2: rule__SquareBracketedClauseCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__Group__3__Impl();
@@ -23127,17 +23127,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__3__Impl"
-    // InternalEssentialOCL.g:7740:1: rule__SquareBracketedClauseCS__Group__3__Impl : ( ']' ) ;
+    // InternalEssentialOCL.g:7742:1: rule__SquareBracketedClauseCS__Group__3__Impl : ( ']' ) ;
     public final void rule__SquareBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7744:1: ( ( ']' ) )
-            // InternalEssentialOCL.g:7745:1: ( ']' )
+            // InternalEssentialOCL.g:7746:1: ( ( ']' ) )
+            // InternalEssentialOCL.g:7747:1: ( ']' )
             {
-            // InternalEssentialOCL.g:7745:1: ( ']' )
-            // InternalEssentialOCL.g:7746:1: ']'
+            // InternalEssentialOCL.g:7747:1: ( ']' )
+            // InternalEssentialOCL.g:7748:1: ']'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
@@ -23168,14 +23168,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__0"
-    // InternalEssentialOCL.g:7767:1: rule__SquareBracketedClauseCS__Group_2__0 : rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 ;
+    // InternalEssentialOCL.g:7769:1: rule__SquareBracketedClauseCS__Group_2__0 : rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 ;
     public final void rule__SquareBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7771:1: ( rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 )
-            // InternalEssentialOCL.g:7772:2: rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1
+            // InternalEssentialOCL.g:7773:1: ( rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 )
+            // InternalEssentialOCL.g:7774:2: rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__SquareBracketedClauseCS__Group_2__0__Impl();
@@ -23206,17 +23206,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__0__Impl"
-    // InternalEssentialOCL.g:7779:1: rule__SquareBracketedClauseCS__Group_2__0__Impl : ( ',' ) ;
+    // InternalEssentialOCL.g:7781:1: rule__SquareBracketedClauseCS__Group_2__0__Impl : ( ',' ) ;
     public final void rule__SquareBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7783:1: ( ( ',' ) )
-            // InternalEssentialOCL.g:7784:1: ( ',' )
+            // InternalEssentialOCL.g:7785:1: ( ( ',' ) )
+            // InternalEssentialOCL.g:7786:1: ( ',' )
             {
-            // InternalEssentialOCL.g:7784:1: ( ',' )
-            // InternalEssentialOCL.g:7785:1: ','
+            // InternalEssentialOCL.g:7786:1: ( ',' )
+            // InternalEssentialOCL.g:7787:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
@@ -23247,14 +23247,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__1"
-    // InternalEssentialOCL.g:7798:1: rule__SquareBracketedClauseCS__Group_2__1 : rule__SquareBracketedClauseCS__Group_2__1__Impl ;
+    // InternalEssentialOCL.g:7800:1: rule__SquareBracketedClauseCS__Group_2__1 : rule__SquareBracketedClauseCS__Group_2__1__Impl ;
     public final void rule__SquareBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7802:1: ( rule__SquareBracketedClauseCS__Group_2__1__Impl )
-            // InternalEssentialOCL.g:7803:2: rule__SquareBracketedClauseCS__Group_2__1__Impl
+            // InternalEssentialOCL.g:7804:1: ( rule__SquareBracketedClauseCS__Group_2__1__Impl )
+            // InternalEssentialOCL.g:7805:2: rule__SquareBracketedClauseCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__Group_2__1__Impl();
@@ -23280,23 +23280,23 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__1__Impl"
-    // InternalEssentialOCL.g:7809:1: rule__SquareBracketedClauseCS__Group_2__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) ;
+    // InternalEssentialOCL.g:7811:1: rule__SquareBracketedClauseCS__Group_2__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) ;
     public final void rule__SquareBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7813:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) )
-            // InternalEssentialOCL.g:7814:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
+            // InternalEssentialOCL.g:7815:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) )
+            // InternalEssentialOCL.g:7816:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
             {
-            // InternalEssentialOCL.g:7814:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
-            // InternalEssentialOCL.g:7815:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
+            // InternalEssentialOCL.g:7816:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
+            // InternalEssentialOCL.g:7817:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1());
             }
-            // InternalEssentialOCL.g:7816:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
-            // InternalEssentialOCL.g:7816:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1
+            // InternalEssentialOCL.g:7818:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
+            // InternalEssentialOCL.g:7818:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1();
@@ -23331,14 +23331,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__0"
-    // InternalEssentialOCL.g:7830:1: rule__NavigatingArgCS__Group_0__0 : rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 ;
+    // InternalEssentialOCL.g:7832:1: rule__NavigatingArgCS__Group_0__0 : rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 ;
     public final void rule__NavigatingArgCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7834:1: ( rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 )
-            // InternalEssentialOCL.g:7835:2: rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1
+            // InternalEssentialOCL.g:7836:1: ( rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 )
+            // InternalEssentialOCL.g:7837:2: rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_42);
             rule__NavigatingArgCS__Group_0__0__Impl();
@@ -23369,23 +23369,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__0__Impl"
-    // InternalEssentialOCL.g:7842:1: rule__NavigatingArgCS__Group_0__0__Impl : ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) ;
+    // InternalEssentialOCL.g:7844:1: rule__NavigatingArgCS__Group_0__0__Impl : ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) ;
     public final void rule__NavigatingArgCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7846:1: ( ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) )
-            // InternalEssentialOCL.g:7847:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
+            // InternalEssentialOCL.g:7848:1: ( ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) )
+            // InternalEssentialOCL.g:7849:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
             {
-            // InternalEssentialOCL.g:7847:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
-            // InternalEssentialOCL.g:7848:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
+            // InternalEssentialOCL.g:7849:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
+            // InternalEssentialOCL.g:7850:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0());
             }
-            // InternalEssentialOCL.g:7849:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
-            // InternalEssentialOCL.g:7849:2: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0
+            // InternalEssentialOCL.g:7851:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
+            // InternalEssentialOCL.g:7851:2: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0();
@@ -23420,14 +23420,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__1"
-    // InternalEssentialOCL.g:7859:1: rule__NavigatingArgCS__Group_0__1 : rule__NavigatingArgCS__Group_0__1__Impl ;
+    // InternalEssentialOCL.g:7861:1: rule__NavigatingArgCS__Group_0__1 : rule__NavigatingArgCS__Group_0__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7863:1: ( rule__NavigatingArgCS__Group_0__1__Impl )
-            // InternalEssentialOCL.g:7864:2: rule__NavigatingArgCS__Group_0__1__Impl
+            // InternalEssentialOCL.g:7865:1: ( rule__NavigatingArgCS__Group_0__1__Impl )
+            // InternalEssentialOCL.g:7866:2: rule__NavigatingArgCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0__1__Impl();
@@ -23453,22 +23453,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__1__Impl"
-    // InternalEssentialOCL.g:7870:1: rule__NavigatingArgCS__Group_0__1__Impl : ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) ;
+    // InternalEssentialOCL.g:7872:1: rule__NavigatingArgCS__Group_0__1__Impl : ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) ;
     public final void rule__NavigatingArgCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7874:1: ( ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) )
-            // InternalEssentialOCL.g:7875:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
+            // InternalEssentialOCL.g:7876:1: ( ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) )
+            // InternalEssentialOCL.g:7877:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
             {
-            // InternalEssentialOCL.g:7875:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
-            // InternalEssentialOCL.g:7876:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
+            // InternalEssentialOCL.g:7877:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
+            // InternalEssentialOCL.g:7878:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1());
             }
-            // InternalEssentialOCL.g:7877:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
+            // InternalEssentialOCL.g:7879:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             int alt62=2;
             int LA62_0 = input.LA(1);
 
@@ -23477,7 +23477,7 @@
             }
             switch (alt62) {
                 case 1 :
-                    // InternalEssentialOCL.g:7877:2: rule__NavigatingArgCS__Alternatives_0_1
+                    // InternalEssentialOCL.g:7879:2: rule__NavigatingArgCS__Alternatives_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Alternatives_0_1();
@@ -23515,14 +23515,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__0"
-    // InternalEssentialOCL.g:7891:1: rule__NavigatingArgCS__Group_0_1_0__0 : rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 ;
+    // InternalEssentialOCL.g:7893:1: rule__NavigatingArgCS__Group_0_1_0__0 : rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7895:1: ( rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 )
-            // InternalEssentialOCL.g:7896:2: rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1
+            // InternalEssentialOCL.g:7897:1: ( rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 )
+            // InternalEssentialOCL.g:7898:2: rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__NavigatingArgCS__Group_0_1_0__0__Impl();
@@ -23553,17 +23553,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__0__Impl"
-    // InternalEssentialOCL.g:7903:1: rule__NavigatingArgCS__Group_0_1_0__0__Impl : ( '<-' ) ;
+    // InternalEssentialOCL.g:7905:1: rule__NavigatingArgCS__Group_0_1_0__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7907:1: ( ( '<-' ) )
-            // InternalEssentialOCL.g:7908:1: ( '<-' )
+            // InternalEssentialOCL.g:7909:1: ( ( '<-' ) )
+            // InternalEssentialOCL.g:7910:1: ( '<-' )
             {
-            // InternalEssentialOCL.g:7908:1: ( '<-' )
-            // InternalEssentialOCL.g:7909:1: '<-'
+            // InternalEssentialOCL.g:7910:1: ( '<-' )
+            // InternalEssentialOCL.g:7911:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_0_0());
@@ -23594,14 +23594,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__1"
-    // InternalEssentialOCL.g:7922:1: rule__NavigatingArgCS__Group_0_1_0__1 : rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 ;
+    // InternalEssentialOCL.g:7924:1: rule__NavigatingArgCS__Group_0_1_0__1 : rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 ;
     public final void rule__NavigatingArgCS__Group_0_1_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7926:1: ( rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 )
-            // InternalEssentialOCL.g:7927:2: rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2
+            // InternalEssentialOCL.g:7928:1: ( rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 )
+            // InternalEssentialOCL.g:7929:2: rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2
             {
             pushFollow(FollowSets000.FOLLOW_20);
             rule__NavigatingArgCS__Group_0_1_0__1__Impl();
@@ -23632,23 +23632,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__1__Impl"
-    // InternalEssentialOCL.g:7934:1: rule__NavigatingArgCS__Group_0_1_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) ;
+    // InternalEssentialOCL.g:7936:1: rule__NavigatingArgCS__Group_0_1_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7938:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) )
-            // InternalEssentialOCL.g:7939:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
+            // InternalEssentialOCL.g:7940:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) )
+            // InternalEssentialOCL.g:7941:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
             {
-            // InternalEssentialOCL.g:7939:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
-            // InternalEssentialOCL.g:7940:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
+            // InternalEssentialOCL.g:7941:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
+            // InternalEssentialOCL.g:7942:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorAssignment_0_1_0_1());
             }
-            // InternalEssentialOCL.g:7941:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
-            // InternalEssentialOCL.g:7941:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1
+            // InternalEssentialOCL.g:7943:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
+            // InternalEssentialOCL.g:7943:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1();
@@ -23683,14 +23683,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__2"
-    // InternalEssentialOCL.g:7951:1: rule__NavigatingArgCS__Group_0_1_0__2 : rule__NavigatingArgCS__Group_0_1_0__2__Impl ;
+    // InternalEssentialOCL.g:7953:1: rule__NavigatingArgCS__Group_0_1_0__2 : rule__NavigatingArgCS__Group_0_1_0__2__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7955:1: ( rule__NavigatingArgCS__Group_0_1_0__2__Impl )
-            // InternalEssentialOCL.g:7956:2: rule__NavigatingArgCS__Group_0_1_0__2__Impl
+            // InternalEssentialOCL.g:7957:1: ( rule__NavigatingArgCS__Group_0_1_0__2__Impl )
+            // InternalEssentialOCL.g:7958:2: rule__NavigatingArgCS__Group_0_1_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_0__2__Impl();
@@ -23716,22 +23716,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__2__Impl"
-    // InternalEssentialOCL.g:7962:1: rule__NavigatingArgCS__Group_0_1_0__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) ;
+    // InternalEssentialOCL.g:7964:1: rule__NavigatingArgCS__Group_0_1_0__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7966:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) )
-            // InternalEssentialOCL.g:7967:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
+            // InternalEssentialOCL.g:7968:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) )
+            // InternalEssentialOCL.g:7969:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
             {
-            // InternalEssentialOCL.g:7967:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
-            // InternalEssentialOCL.g:7968:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
+            // InternalEssentialOCL.g:7969:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
+            // InternalEssentialOCL.g:7970:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2());
             }
-            // InternalEssentialOCL.g:7969:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
+            // InternalEssentialOCL.g:7971:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             int alt63=2;
             int LA63_0 = input.LA(1);
 
@@ -23740,7 +23740,7 @@
             }
             switch (alt63) {
                 case 1 :
-                    // InternalEssentialOCL.g:7969:2: rule__NavigatingArgCS__Group_0_1_0_2__0
+                    // InternalEssentialOCL.g:7971:2: rule__NavigatingArgCS__Group_0_1_0_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_0_2__0();
@@ -23778,14 +23778,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__0"
-    // InternalEssentialOCL.g:7985:1: rule__NavigatingArgCS__Group_0_1_0_2__0 : rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 ;
+    // InternalEssentialOCL.g:7987:1: rule__NavigatingArgCS__Group_0_1_0_2__0 : rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:7989:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 )
-            // InternalEssentialOCL.g:7990:2: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1
+            // InternalEssentialOCL.g:7991:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 )
+            // InternalEssentialOCL.g:7992:2: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__NavigatingArgCS__Group_0_1_0_2__0__Impl();
@@ -23816,17 +23816,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__0__Impl"
-    // InternalEssentialOCL.g:7997:1: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl : ( '=' ) ;
+    // InternalEssentialOCL.g:7999:1: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8001:1: ( ( '=' ) )
-            // InternalEssentialOCL.g:8002:1: ( '=' )
+            // InternalEssentialOCL.g:8003:1: ( ( '=' ) )
+            // InternalEssentialOCL.g:8004:1: ( '=' )
             {
-            // InternalEssentialOCL.g:8002:1: ( '=' )
-            // InternalEssentialOCL.g:8003:1: '='
+            // InternalEssentialOCL.g:8004:1: ( '=' )
+            // InternalEssentialOCL.g:8005:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
@@ -23857,14 +23857,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__1"
-    // InternalEssentialOCL.g:8016:1: rule__NavigatingArgCS__Group_0_1_0_2__1 : rule__NavigatingArgCS__Group_0_1_0_2__1__Impl ;
+    // InternalEssentialOCL.g:8018:1: rule__NavigatingArgCS__Group_0_1_0_2__1 : rule__NavigatingArgCS__Group_0_1_0_2__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8020:1: ( rule__NavigatingArgCS__Group_0_1_0_2__1__Impl )
-            // InternalEssentialOCL.g:8021:2: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl
+            // InternalEssentialOCL.g:8022:1: ( rule__NavigatingArgCS__Group_0_1_0_2__1__Impl )
+            // InternalEssentialOCL.g:8023:2: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_0_2__1__Impl();
@@ -23890,23 +23890,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__1__Impl"
-    // InternalEssentialOCL.g:8027:1: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) ;
+    // InternalEssentialOCL.g:8029:1: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8031:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) )
-            // InternalEssentialOCL.g:8032:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
+            // InternalEssentialOCL.g:8033:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) )
+            // InternalEssentialOCL.g:8034:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
             {
-            // InternalEssentialOCL.g:8032:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
-            // InternalEssentialOCL.g:8033:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
+            // InternalEssentialOCL.g:8034:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
+            // InternalEssentialOCL.g:8035:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1());
             }
-            // InternalEssentialOCL.g:8034:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
-            // InternalEssentialOCL.g:8034:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1
+            // InternalEssentialOCL.g:8036:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
+            // InternalEssentialOCL.g:8036:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1();
@@ -23941,14 +23941,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__0"
-    // InternalEssentialOCL.g:8048:1: rule__NavigatingArgCS__Group_0_1_1__0 : rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 ;
+    // InternalEssentialOCL.g:8050:1: rule__NavigatingArgCS__Group_0_1_1__0 : rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8052:1: ( rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 )
-            // InternalEssentialOCL.g:8053:2: rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1
+            // InternalEssentialOCL.g:8054:1: ( rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 )
+            // InternalEssentialOCL.g:8055:2: rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__NavigatingArgCS__Group_0_1_1__0__Impl();
@@ -23979,17 +23979,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__0__Impl"
-    // InternalEssentialOCL.g:8060:1: rule__NavigatingArgCS__Group_0_1_1__0__Impl : ( ':' ) ;
+    // InternalEssentialOCL.g:8062:1: rule__NavigatingArgCS__Group_0_1_1__0__Impl : ( ':' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8064:1: ( ( ':' ) )
-            // InternalEssentialOCL.g:8065:1: ( ':' )
+            // InternalEssentialOCL.g:8066:1: ( ( ':' ) )
+            // InternalEssentialOCL.g:8067:1: ( ':' )
             {
-            // InternalEssentialOCL.g:8065:1: ( ':' )
-            // InternalEssentialOCL.g:8066:1: ':'
+            // InternalEssentialOCL.g:8067:1: ( ':' )
+            // InternalEssentialOCL.g:8068:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_1_0());
@@ -24020,14 +24020,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__1"
-    // InternalEssentialOCL.g:8079:1: rule__NavigatingArgCS__Group_0_1_1__1 : rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 ;
+    // InternalEssentialOCL.g:8081:1: rule__NavigatingArgCS__Group_0_1_1__1 : rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 ;
     public final void rule__NavigatingArgCS__Group_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8083:1: ( rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 )
-            // InternalEssentialOCL.g:8084:2: rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2
+            // InternalEssentialOCL.g:8085:1: ( rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 )
+            // InternalEssentialOCL.g:8086:2: rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NavigatingArgCS__Group_0_1_1__1__Impl();
@@ -24058,23 +24058,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__1__Impl"
-    // InternalEssentialOCL.g:8091:1: rule__NavigatingArgCS__Group_0_1_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) ;
+    // InternalEssentialOCL.g:8093:1: rule__NavigatingArgCS__Group_0_1_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8095:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) )
-            // InternalEssentialOCL.g:8096:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
+            // InternalEssentialOCL.g:8097:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) )
+            // InternalEssentialOCL.g:8098:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
             {
-            // InternalEssentialOCL.g:8096:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
-            // InternalEssentialOCL.g:8097:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
+            // InternalEssentialOCL.g:8098:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
+            // InternalEssentialOCL.g:8099:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_1_1());
             }
-            // InternalEssentialOCL.g:8098:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
-            // InternalEssentialOCL.g:8098:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1
+            // InternalEssentialOCL.g:8100:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
+            // InternalEssentialOCL.g:8100:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1();
@@ -24109,14 +24109,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__2"
-    // InternalEssentialOCL.g:8108:1: rule__NavigatingArgCS__Group_0_1_1__2 : rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 ;
+    // InternalEssentialOCL.g:8110:1: rule__NavigatingArgCS__Group_0_1_1__2 : rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 ;
     public final void rule__NavigatingArgCS__Group_0_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8112:1: ( rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 )
-            // InternalEssentialOCL.g:8113:2: rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3
+            // InternalEssentialOCL.g:8114:1: ( rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 )
+            // InternalEssentialOCL.g:8115:2: rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NavigatingArgCS__Group_0_1_1__2__Impl();
@@ -24147,22 +24147,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__2__Impl"
-    // InternalEssentialOCL.g:8120:1: rule__NavigatingArgCS__Group_0_1_1__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) ;
+    // InternalEssentialOCL.g:8122:1: rule__NavigatingArgCS__Group_0_1_1__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8124:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) )
-            // InternalEssentialOCL.g:8125:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
+            // InternalEssentialOCL.g:8126:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) )
+            // InternalEssentialOCL.g:8127:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
             {
-            // InternalEssentialOCL.g:8125:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
-            // InternalEssentialOCL.g:8126:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
+            // InternalEssentialOCL.g:8127:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
+            // InternalEssentialOCL.g:8128:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1_2());
             }
-            // InternalEssentialOCL.g:8127:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
+            // InternalEssentialOCL.g:8129:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
             int alt64=2;
             int LA64_0 = input.LA(1);
 
@@ -24171,7 +24171,7 @@
             }
             switch (alt64) {
                 case 1 :
-                    // InternalEssentialOCL.g:8127:2: rule__NavigatingArgCS__Group_0_1_1_2__0
+                    // InternalEssentialOCL.g:8129:2: rule__NavigatingArgCS__Group_0_1_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_1_2__0();
@@ -24209,14 +24209,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__3"
-    // InternalEssentialOCL.g:8137:1: rule__NavigatingArgCS__Group_0_1_1__3 : rule__NavigatingArgCS__Group_0_1_1__3__Impl ;
+    // InternalEssentialOCL.g:8139:1: rule__NavigatingArgCS__Group_0_1_1__3 : rule__NavigatingArgCS__Group_0_1_1__3__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8141:1: ( rule__NavigatingArgCS__Group_0_1_1__3__Impl )
-            // InternalEssentialOCL.g:8142:2: rule__NavigatingArgCS__Group_0_1_1__3__Impl
+            // InternalEssentialOCL.g:8143:1: ( rule__NavigatingArgCS__Group_0_1_1__3__Impl )
+            // InternalEssentialOCL.g:8144:2: rule__NavigatingArgCS__Group_0_1_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_1__3__Impl();
@@ -24242,22 +24242,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__3__Impl"
-    // InternalEssentialOCL.g:8148:1: rule__NavigatingArgCS__Group_0_1_1__3__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) ;
+    // InternalEssentialOCL.g:8150:1: rule__NavigatingArgCS__Group_0_1_1__3__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8152:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) )
-            // InternalEssentialOCL.g:8153:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
+            // InternalEssentialOCL.g:8154:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) )
+            // InternalEssentialOCL.g:8155:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
             {
-            // InternalEssentialOCL.g:8153:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
-            // InternalEssentialOCL.g:8154:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
+            // InternalEssentialOCL.g:8155:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
+            // InternalEssentialOCL.g:8156:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1_3());
             }
-            // InternalEssentialOCL.g:8155:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
+            // InternalEssentialOCL.g:8157:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
             int alt65=2;
             int LA65_0 = input.LA(1);
 
@@ -24266,7 +24266,7 @@
             }
             switch (alt65) {
                 case 1 :
-                    // InternalEssentialOCL.g:8155:2: rule__NavigatingArgCS__Group_0_1_1_3__0
+                    // InternalEssentialOCL.g:8157:2: rule__NavigatingArgCS__Group_0_1_1_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_1_3__0();
@@ -24304,14 +24304,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__0"
-    // InternalEssentialOCL.g:8173:1: rule__NavigatingArgCS__Group_0_1_1_2__0 : rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 ;
+    // InternalEssentialOCL.g:8175:1: rule__NavigatingArgCS__Group_0_1_1_2__0 : rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8177:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 )
-            // InternalEssentialOCL.g:8178:2: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1
+            // InternalEssentialOCL.g:8179:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 )
+            // InternalEssentialOCL.g:8180:2: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__NavigatingArgCS__Group_0_1_1_2__0__Impl();
@@ -24342,17 +24342,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__0__Impl"
-    // InternalEssentialOCL.g:8185:1: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl : ( '<-' ) ;
+    // InternalEssentialOCL.g:8187:1: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8189:1: ( ( '<-' ) )
-            // InternalEssentialOCL.g:8190:1: ( '<-' )
+            // InternalEssentialOCL.g:8191:1: ( ( '<-' ) )
+            // InternalEssentialOCL.g:8192:1: ( '<-' )
             {
-            // InternalEssentialOCL.g:8190:1: ( '<-' )
-            // InternalEssentialOCL.g:8191:1: '<-'
+            // InternalEssentialOCL.g:8192:1: ( '<-' )
+            // InternalEssentialOCL.g:8193:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_1_2_0());
@@ -24383,14 +24383,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__1"
-    // InternalEssentialOCL.g:8204:1: rule__NavigatingArgCS__Group_0_1_1_2__1 : rule__NavigatingArgCS__Group_0_1_1_2__1__Impl ;
+    // InternalEssentialOCL.g:8206:1: rule__NavigatingArgCS__Group_0_1_1_2__1 : rule__NavigatingArgCS__Group_0_1_1_2__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8208:1: ( rule__NavigatingArgCS__Group_0_1_1_2__1__Impl )
-            // InternalEssentialOCL.g:8209:2: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl
+            // InternalEssentialOCL.g:8210:1: ( rule__NavigatingArgCS__Group_0_1_1_2__1__Impl )
+            // InternalEssentialOCL.g:8211:2: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_1_2__1__Impl();
@@ -24416,23 +24416,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__1__Impl"
-    // InternalEssentialOCL.g:8215:1: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) ;
+    // InternalEssentialOCL.g:8217:1: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8219:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) )
-            // InternalEssentialOCL.g:8220:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
+            // InternalEssentialOCL.g:8221:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) )
+            // InternalEssentialOCL.g:8222:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
             {
-            // InternalEssentialOCL.g:8220:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
-            // InternalEssentialOCL.g:8221:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
+            // InternalEssentialOCL.g:8222:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
+            // InternalEssentialOCL.g:8223:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorAssignment_0_1_1_2_1());
             }
-            // InternalEssentialOCL.g:8222:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
-            // InternalEssentialOCL.g:8222:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1
+            // InternalEssentialOCL.g:8224:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
+            // InternalEssentialOCL.g:8224:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1();
@@ -24467,14 +24467,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__0"
-    // InternalEssentialOCL.g:8236:1: rule__NavigatingArgCS__Group_0_1_1_3__0 : rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 ;
+    // InternalEssentialOCL.g:8238:1: rule__NavigatingArgCS__Group_0_1_1_3__0 : rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8240:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 )
-            // InternalEssentialOCL.g:8241:2: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1
+            // InternalEssentialOCL.g:8242:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 )
+            // InternalEssentialOCL.g:8243:2: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__NavigatingArgCS__Group_0_1_1_3__0__Impl();
@@ -24505,17 +24505,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__0__Impl"
-    // InternalEssentialOCL.g:8248:1: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl : ( '=' ) ;
+    // InternalEssentialOCL.g:8250:1: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl : ( '=' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8252:1: ( ( '=' ) )
-            // InternalEssentialOCL.g:8253:1: ( '=' )
+            // InternalEssentialOCL.g:8254:1: ( ( '=' ) )
+            // InternalEssentialOCL.g:8255:1: ( '=' )
             {
-            // InternalEssentialOCL.g:8253:1: ( '=' )
-            // InternalEssentialOCL.g:8254:1: '='
+            // InternalEssentialOCL.g:8255:1: ( '=' )
+            // InternalEssentialOCL.g:8256:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_1_3_0());
@@ -24546,14 +24546,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__1"
-    // InternalEssentialOCL.g:8267:1: rule__NavigatingArgCS__Group_0_1_1_3__1 : rule__NavigatingArgCS__Group_0_1_1_3__1__Impl ;
+    // InternalEssentialOCL.g:8269:1: rule__NavigatingArgCS__Group_0_1_1_3__1 : rule__NavigatingArgCS__Group_0_1_1_3__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8271:1: ( rule__NavigatingArgCS__Group_0_1_1_3__1__Impl )
-            // InternalEssentialOCL.g:8272:2: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl
+            // InternalEssentialOCL.g:8273:1: ( rule__NavigatingArgCS__Group_0_1_1_3__1__Impl )
+            // InternalEssentialOCL.g:8274:2: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_1_3__1__Impl();
@@ -24579,23 +24579,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__1__Impl"
-    // InternalEssentialOCL.g:8278:1: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) ;
+    // InternalEssentialOCL.g:8280:1: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8282:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) )
-            // InternalEssentialOCL.g:8283:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
+            // InternalEssentialOCL.g:8284:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) )
+            // InternalEssentialOCL.g:8285:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
             {
-            // InternalEssentialOCL.g:8283:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
-            // InternalEssentialOCL.g:8284:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
+            // InternalEssentialOCL.g:8285:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
+            // InternalEssentialOCL.g:8286:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_3_1());
             }
-            // InternalEssentialOCL.g:8285:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
-            // InternalEssentialOCL.g:8285:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1
+            // InternalEssentialOCL.g:8287:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
+            // InternalEssentialOCL.g:8287:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1();
@@ -24630,14 +24630,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__0"
-    // InternalEssentialOCL.g:8299:1: rule__NavigatingArgCS__Group_0_1_2__0 : rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 ;
+    // InternalEssentialOCL.g:8301:1: rule__NavigatingArgCS__Group_0_1_2__0 : rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8303:1: ( rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 )
-            // InternalEssentialOCL.g:8304:2: rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1
+            // InternalEssentialOCL.g:8305:1: ( rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 )
+            // InternalEssentialOCL.g:8306:2: rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_42);
             rule__NavigatingArgCS__Group_0_1_2__0__Impl();
@@ -24668,22 +24668,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__0__Impl"
-    // InternalEssentialOCL.g:8311:1: rule__NavigatingArgCS__Group_0_1_2__0__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) ;
+    // InternalEssentialOCL.g:8313:1: rule__NavigatingArgCS__Group_0_1_2__0__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8315:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) )
-            // InternalEssentialOCL.g:8316:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
+            // InternalEssentialOCL.g:8317:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) )
+            // InternalEssentialOCL.g:8318:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
             {
-            // InternalEssentialOCL.g:8316:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
-            // InternalEssentialOCL.g:8317:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
+            // InternalEssentialOCL.g:8318:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
+            // InternalEssentialOCL.g:8319:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_2_0());
             }
-            // InternalEssentialOCL.g:8318:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
+            // InternalEssentialOCL.g:8320:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
             int alt66=2;
             int LA66_0 = input.LA(1);
 
@@ -24692,7 +24692,7 @@
             }
             switch (alt66) {
                 case 1 :
-                    // InternalEssentialOCL.g:8318:2: rule__NavigatingArgCS__Group_0_1_2_0__0
+                    // InternalEssentialOCL.g:8320:2: rule__NavigatingArgCS__Group_0_1_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_2_0__0();
@@ -24730,14 +24730,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__1"
-    // InternalEssentialOCL.g:8328:1: rule__NavigatingArgCS__Group_0_1_2__1 : rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 ;
+    // InternalEssentialOCL.g:8330:1: rule__NavigatingArgCS__Group_0_1_2__1 : rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 ;
     public final void rule__NavigatingArgCS__Group_0_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8332:1: ( rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 )
-            // InternalEssentialOCL.g:8333:2: rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2
+            // InternalEssentialOCL.g:8334:1: ( rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 )
+            // InternalEssentialOCL.g:8335:2: rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2
             {
             pushFollow(FollowSets000.FOLLOW_42);
             rule__NavigatingArgCS__Group_0_1_2__1__Impl();
@@ -24768,22 +24768,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__1__Impl"
-    // InternalEssentialOCL.g:8340:1: rule__NavigatingArgCS__Group_0_1_2__1__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) ;
+    // InternalEssentialOCL.g:8342:1: rule__NavigatingArgCS__Group_0_1_2__1__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8344:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) )
-            // InternalEssentialOCL.g:8345:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
+            // InternalEssentialOCL.g:8346:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) )
+            // InternalEssentialOCL.g:8347:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
             {
-            // InternalEssentialOCL.g:8345:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
-            // InternalEssentialOCL.g:8346:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
+            // InternalEssentialOCL.g:8347:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
+            // InternalEssentialOCL.g:8348:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_2_1());
             }
-            // InternalEssentialOCL.g:8347:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
+            // InternalEssentialOCL.g:8349:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
             int alt67=2;
             int LA67_0 = input.LA(1);
 
@@ -24792,7 +24792,7 @@
             }
             switch (alt67) {
                 case 1 :
-                    // InternalEssentialOCL.g:8347:2: rule__NavigatingArgCS__Group_0_1_2_1__0
+                    // InternalEssentialOCL.g:8349:2: rule__NavigatingArgCS__Group_0_1_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_2_1__0();
@@ -24830,14 +24830,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__2"
-    // InternalEssentialOCL.g:8357:1: rule__NavigatingArgCS__Group_0_1_2__2 : rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 ;
+    // InternalEssentialOCL.g:8359:1: rule__NavigatingArgCS__Group_0_1_2__2 : rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 ;
     public final void rule__NavigatingArgCS__Group_0_1_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8361:1: ( rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 )
-            // InternalEssentialOCL.g:8362:2: rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3
+            // InternalEssentialOCL.g:8363:1: ( rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 )
+            // InternalEssentialOCL.g:8364:2: rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__NavigatingArgCS__Group_0_1_2__2__Impl();
@@ -24868,17 +24868,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__2__Impl"
-    // InternalEssentialOCL.g:8369:1: rule__NavigatingArgCS__Group_0_1_2__2__Impl : ( 'in' ) ;
+    // InternalEssentialOCL.g:8371:1: rule__NavigatingArgCS__Group_0_1_2__2__Impl : ( 'in' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8373:1: ( ( 'in' ) )
-            // InternalEssentialOCL.g:8374:1: ( 'in' )
+            // InternalEssentialOCL.g:8375:1: ( ( 'in' ) )
+            // InternalEssentialOCL.g:8376:1: ( 'in' )
             {
-            // InternalEssentialOCL.g:8374:1: ( 'in' )
-            // InternalEssentialOCL.g:8375:1: 'in'
+            // InternalEssentialOCL.g:8376:1: ( 'in' )
+            // InternalEssentialOCL.g:8377:1: 'in'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_2_2());
@@ -24909,14 +24909,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__3"
-    // InternalEssentialOCL.g:8388:1: rule__NavigatingArgCS__Group_0_1_2__3 : rule__NavigatingArgCS__Group_0_1_2__3__Impl ;
+    // InternalEssentialOCL.g:8390:1: rule__NavigatingArgCS__Group_0_1_2__3 : rule__NavigatingArgCS__Group_0_1_2__3__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8392:1: ( rule__NavigatingArgCS__Group_0_1_2__3__Impl )
-            // InternalEssentialOCL.g:8393:2: rule__NavigatingArgCS__Group_0_1_2__3__Impl
+            // InternalEssentialOCL.g:8394:1: ( rule__NavigatingArgCS__Group_0_1_2__3__Impl )
+            // InternalEssentialOCL.g:8395:2: rule__NavigatingArgCS__Group_0_1_2__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_2__3__Impl();
@@ -24942,23 +24942,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__3__Impl"
-    // InternalEssentialOCL.g:8399:1: rule__NavigatingArgCS__Group_0_1_2__3__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) ;
+    // InternalEssentialOCL.g:8401:1: rule__NavigatingArgCS__Group_0_1_2__3__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8403:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) )
-            // InternalEssentialOCL.g:8404:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
+            // InternalEssentialOCL.g:8405:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) )
+            // InternalEssentialOCL.g:8406:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
             {
-            // InternalEssentialOCL.g:8404:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
-            // InternalEssentialOCL.g:8405:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
+            // InternalEssentialOCL.g:8406:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
+            // InternalEssentialOCL.g:8407:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_2_3());
             }
-            // InternalEssentialOCL.g:8406:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
-            // InternalEssentialOCL.g:8406:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3
+            // InternalEssentialOCL.g:8408:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
+            // InternalEssentialOCL.g:8408:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3();
@@ -24993,14 +24993,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__0"
-    // InternalEssentialOCL.g:8424:1: rule__NavigatingArgCS__Group_0_1_2_0__0 : rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 ;
+    // InternalEssentialOCL.g:8426:1: rule__NavigatingArgCS__Group_0_1_2_0__0 : rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8428:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 )
-            // InternalEssentialOCL.g:8429:2: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1
+            // InternalEssentialOCL.g:8430:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 )
+            // InternalEssentialOCL.g:8431:2: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__NavigatingArgCS__Group_0_1_2_0__0__Impl();
@@ -25031,17 +25031,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__0__Impl"
-    // InternalEssentialOCL.g:8436:1: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl : ( ':' ) ;
+    // InternalEssentialOCL.g:8438:1: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl : ( ':' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8440:1: ( ( ':' ) )
-            // InternalEssentialOCL.g:8441:1: ( ':' )
+            // InternalEssentialOCL.g:8442:1: ( ( ':' ) )
+            // InternalEssentialOCL.g:8443:1: ( ':' )
             {
-            // InternalEssentialOCL.g:8441:1: ( ':' )
-            // InternalEssentialOCL.g:8442:1: ':'
+            // InternalEssentialOCL.g:8443:1: ( ':' )
+            // InternalEssentialOCL.g:8444:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_2_0_0());
@@ -25072,14 +25072,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__1"
-    // InternalEssentialOCL.g:8455:1: rule__NavigatingArgCS__Group_0_1_2_0__1 : rule__NavigatingArgCS__Group_0_1_2_0__1__Impl ;
+    // InternalEssentialOCL.g:8457:1: rule__NavigatingArgCS__Group_0_1_2_0__1 : rule__NavigatingArgCS__Group_0_1_2_0__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8459:1: ( rule__NavigatingArgCS__Group_0_1_2_0__1__Impl )
-            // InternalEssentialOCL.g:8460:2: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl
+            // InternalEssentialOCL.g:8461:1: ( rule__NavigatingArgCS__Group_0_1_2_0__1__Impl )
+            // InternalEssentialOCL.g:8462:2: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_2_0__1__Impl();
@@ -25105,23 +25105,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__1__Impl"
-    // InternalEssentialOCL.g:8466:1: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) ;
+    // InternalEssentialOCL.g:8468:1: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8470:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) )
-            // InternalEssentialOCL.g:8471:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
+            // InternalEssentialOCL.g:8472:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) )
+            // InternalEssentialOCL.g:8473:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
             {
-            // InternalEssentialOCL.g:8471:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
-            // InternalEssentialOCL.g:8472:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
+            // InternalEssentialOCL.g:8473:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
+            // InternalEssentialOCL.g:8474:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_2_0_1());
             }
-            // InternalEssentialOCL.g:8473:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
-            // InternalEssentialOCL.g:8473:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1
+            // InternalEssentialOCL.g:8475:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
+            // InternalEssentialOCL.g:8475:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1();
@@ -25156,14 +25156,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__0"
-    // InternalEssentialOCL.g:8487:1: rule__NavigatingArgCS__Group_0_1_2_1__0 : rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 ;
+    // InternalEssentialOCL.g:8489:1: rule__NavigatingArgCS__Group_0_1_2_1__0 : rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8491:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 )
-            // InternalEssentialOCL.g:8492:2: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1
+            // InternalEssentialOCL.g:8493:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 )
+            // InternalEssentialOCL.g:8494:2: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__NavigatingArgCS__Group_0_1_2_1__0__Impl();
@@ -25194,17 +25194,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__0__Impl"
-    // InternalEssentialOCL.g:8499:1: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl : ( '<-' ) ;
+    // InternalEssentialOCL.g:8501:1: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8503:1: ( ( '<-' ) )
-            // InternalEssentialOCL.g:8504:1: ( '<-' )
+            // InternalEssentialOCL.g:8505:1: ( ( '<-' ) )
+            // InternalEssentialOCL.g:8506:1: ( '<-' )
             {
-            // InternalEssentialOCL.g:8504:1: ( '<-' )
-            // InternalEssentialOCL.g:8505:1: '<-'
+            // InternalEssentialOCL.g:8506:1: ( '<-' )
+            // InternalEssentialOCL.g:8507:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_2_1_0());
@@ -25235,14 +25235,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__1"
-    // InternalEssentialOCL.g:8518:1: rule__NavigatingArgCS__Group_0_1_2_1__1 : rule__NavigatingArgCS__Group_0_1_2_1__1__Impl ;
+    // InternalEssentialOCL.g:8520:1: rule__NavigatingArgCS__Group_0_1_2_1__1 : rule__NavigatingArgCS__Group_0_1_2_1__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8522:1: ( rule__NavigatingArgCS__Group_0_1_2_1__1__Impl )
-            // InternalEssentialOCL.g:8523:2: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl
+            // InternalEssentialOCL.g:8524:1: ( rule__NavigatingArgCS__Group_0_1_2_1__1__Impl )
+            // InternalEssentialOCL.g:8525:2: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_2_1__1__Impl();
@@ -25268,23 +25268,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__1__Impl"
-    // InternalEssentialOCL.g:8529:1: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) ;
+    // InternalEssentialOCL.g:8531:1: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8533:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) )
-            // InternalEssentialOCL.g:8534:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
+            // InternalEssentialOCL.g:8535:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) )
+            // InternalEssentialOCL.g:8536:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
             {
-            // InternalEssentialOCL.g:8534:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
-            // InternalEssentialOCL.g:8535:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
+            // InternalEssentialOCL.g:8536:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
+            // InternalEssentialOCL.g:8537:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorAssignment_0_1_2_1_1());
             }
-            // InternalEssentialOCL.g:8536:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
-            // InternalEssentialOCL.g:8536:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1
+            // InternalEssentialOCL.g:8538:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
+            // InternalEssentialOCL.g:8538:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1();
@@ -25319,14 +25319,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__0"
-    // InternalEssentialOCL.g:8550:1: rule__NavigatingArgCS__Group_1__0 : rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 ;
+    // InternalEssentialOCL.g:8552:1: rule__NavigatingArgCS__Group_1__0 : rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 ;
     public final void rule__NavigatingArgCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8554:1: ( rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 )
-            // InternalEssentialOCL.g:8555:2: rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1
+            // InternalEssentialOCL.g:8556:1: ( rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 )
+            // InternalEssentialOCL.g:8557:2: rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__NavigatingArgCS__Group_1__0__Impl();
@@ -25357,17 +25357,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:8562:1: rule__NavigatingArgCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalEssentialOCL.g:8564:1: rule__NavigatingArgCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__NavigatingArgCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8566:1: ( ( ':' ) )
-            // InternalEssentialOCL.g:8567:1: ( ':' )
+            // InternalEssentialOCL.g:8568:1: ( ( ':' ) )
+            // InternalEssentialOCL.g:8569:1: ( ':' )
             {
-            // InternalEssentialOCL.g:8567:1: ( ':' )
-            // InternalEssentialOCL.g:8568:1: ':'
+            // InternalEssentialOCL.g:8569:1: ( ':' )
+            // InternalEssentialOCL.g:8570:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
@@ -25398,14 +25398,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__1"
-    // InternalEssentialOCL.g:8581:1: rule__NavigatingArgCS__Group_1__1 : rule__NavigatingArgCS__Group_1__1__Impl ;
+    // InternalEssentialOCL.g:8583:1: rule__NavigatingArgCS__Group_1__1 : rule__NavigatingArgCS__Group_1__1__Impl ;
     public final void rule__NavigatingArgCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8585:1: ( rule__NavigatingArgCS__Group_1__1__Impl )
-            // InternalEssentialOCL.g:8586:2: rule__NavigatingArgCS__Group_1__1__Impl
+            // InternalEssentialOCL.g:8587:1: ( rule__NavigatingArgCS__Group_1__1__Impl )
+            // InternalEssentialOCL.g:8588:2: rule__NavigatingArgCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_1__1__Impl();
@@ -25431,23 +25431,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:8592:1: rule__NavigatingArgCS__Group_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalEssentialOCL.g:8594:1: rule__NavigatingArgCS__Group_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8596:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalEssentialOCL.g:8597:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
+            // InternalEssentialOCL.g:8598:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalEssentialOCL.g:8599:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalEssentialOCL.g:8597:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
-            // InternalEssentialOCL.g:8598:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
+            // InternalEssentialOCL.g:8599:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
+            // InternalEssentialOCL.g:8600:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalEssentialOCL.g:8599:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
-            // InternalEssentialOCL.g:8599:2: rule__NavigatingArgCS__OwnedTypeAssignment_1_1
+            // InternalEssentialOCL.g:8601:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
+            // InternalEssentialOCL.g:8601:2: rule__NavigatingArgCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedTypeAssignment_1_1();
@@ -25482,14 +25482,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__0"
-    // InternalEssentialOCL.g:8613:1: rule__NavigatingBarArgCS__Group__0 : rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 ;
+    // InternalEssentialOCL.g:8615:1: rule__NavigatingBarArgCS__Group__0 : rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 ;
     public final void rule__NavigatingBarArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8617:1: ( rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 )
-            // InternalEssentialOCL.g:8618:2: rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1
+            // InternalEssentialOCL.g:8619:1: ( rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 )
+            // InternalEssentialOCL.g:8620:2: rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__NavigatingBarArgCS__Group__0__Impl();
@@ -25520,23 +25520,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__0__Impl"
-    // InternalEssentialOCL.g:8625:1: rule__NavigatingBarArgCS__Group__0__Impl : ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:8627:1: rule__NavigatingBarArgCS__Group__0__Impl : ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) ;
     public final void rule__NavigatingBarArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8629:1: ( ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) )
-            // InternalEssentialOCL.g:8630:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
+            // InternalEssentialOCL.g:8631:1: ( ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) )
+            // InternalEssentialOCL.g:8632:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:8630:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
-            // InternalEssentialOCL.g:8631:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
+            // InternalEssentialOCL.g:8632:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
+            // InternalEssentialOCL.g:8633:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0());
             }
-            // InternalEssentialOCL.g:8632:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
-            // InternalEssentialOCL.g:8632:2: rule__NavigatingBarArgCS__PrefixAssignment_0
+            // InternalEssentialOCL.g:8634:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
+            // InternalEssentialOCL.g:8634:2: rule__NavigatingBarArgCS__PrefixAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__PrefixAssignment_0();
@@ -25571,14 +25571,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__1"
-    // InternalEssentialOCL.g:8642:1: rule__NavigatingBarArgCS__Group__1 : rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 ;
+    // InternalEssentialOCL.g:8644:1: rule__NavigatingBarArgCS__Group__1 : rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 ;
     public final void rule__NavigatingBarArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8646:1: ( rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 )
-            // InternalEssentialOCL.g:8647:2: rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2
+            // InternalEssentialOCL.g:8648:1: ( rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 )
+            // InternalEssentialOCL.g:8649:2: rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__NavigatingBarArgCS__Group__1__Impl();
@@ -25609,23 +25609,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__1__Impl"
-    // InternalEssentialOCL.g:8654:1: rule__NavigatingBarArgCS__Group__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) ;
+    // InternalEssentialOCL.g:8656:1: rule__NavigatingBarArgCS__Group__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) ;
     public final void rule__NavigatingBarArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8658:1: ( ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) )
-            // InternalEssentialOCL.g:8659:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalEssentialOCL.g:8660:1: ( ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) )
+            // InternalEssentialOCL.g:8661:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
             {
-            // InternalEssentialOCL.g:8659:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
-            // InternalEssentialOCL.g:8660:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalEssentialOCL.g:8661:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalEssentialOCL.g:8662:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
-            // InternalEssentialOCL.g:8661:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
-            // InternalEssentialOCL.g:8661:2: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1
+            // InternalEssentialOCL.g:8663:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalEssentialOCL.g:8663:2: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1();
@@ -25660,14 +25660,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__2"
-    // InternalEssentialOCL.g:8671:1: rule__NavigatingBarArgCS__Group__2 : rule__NavigatingBarArgCS__Group__2__Impl ;
+    // InternalEssentialOCL.g:8673:1: rule__NavigatingBarArgCS__Group__2 : rule__NavigatingBarArgCS__Group__2__Impl ;
     public final void rule__NavigatingBarArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8675:1: ( rule__NavigatingBarArgCS__Group__2__Impl )
-            // InternalEssentialOCL.g:8676:2: rule__NavigatingBarArgCS__Group__2__Impl
+            // InternalEssentialOCL.g:8677:1: ( rule__NavigatingBarArgCS__Group__2__Impl )
+            // InternalEssentialOCL.g:8678:2: rule__NavigatingBarArgCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__Group__2__Impl();
@@ -25693,22 +25693,22 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__2__Impl"
-    // InternalEssentialOCL.g:8682:1: rule__NavigatingBarArgCS__Group__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) ;
+    // InternalEssentialOCL.g:8684:1: rule__NavigatingBarArgCS__Group__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) ;
     public final void rule__NavigatingBarArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8686:1: ( ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) )
-            // InternalEssentialOCL.g:8687:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:8688:1: ( ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) )
+            // InternalEssentialOCL.g:8689:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
             {
-            // InternalEssentialOCL.g:8687:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
-            // InternalEssentialOCL.g:8688:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
+            // InternalEssentialOCL.g:8689:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:8690:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2());
             }
-            // InternalEssentialOCL.g:8689:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
+            // InternalEssentialOCL.g:8691:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             int alt68=2;
             int LA68_0 = input.LA(1);
 
@@ -25717,7 +25717,7 @@
             }
             switch (alt68) {
                 case 1 :
-                    // InternalEssentialOCL.g:8689:2: rule__NavigatingBarArgCS__Group_2__0
+                    // InternalEssentialOCL.g:8691:2: rule__NavigatingBarArgCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingBarArgCS__Group_2__0();
@@ -25755,14 +25755,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__0"
-    // InternalEssentialOCL.g:8705:1: rule__NavigatingBarArgCS__Group_2__0 : rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 ;
+    // InternalEssentialOCL.g:8707:1: rule__NavigatingBarArgCS__Group_2__0 : rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 ;
     public final void rule__NavigatingBarArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8709:1: ( rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 )
-            // InternalEssentialOCL.g:8710:2: rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1
+            // InternalEssentialOCL.g:8711:1: ( rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 )
+            // InternalEssentialOCL.g:8712:2: rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__NavigatingBarArgCS__Group_2__0__Impl();
@@ -25793,17 +25793,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__0__Impl"
-    // InternalEssentialOCL.g:8717:1: rule__NavigatingBarArgCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalEssentialOCL.g:8719:1: rule__NavigatingBarArgCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__NavigatingBarArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8721:1: ( ( ':' ) )
-            // InternalEssentialOCL.g:8722:1: ( ':' )
+            // InternalEssentialOCL.g:8723:1: ( ( ':' ) )
+            // InternalEssentialOCL.g:8724:1: ( ':' )
             {
-            // InternalEssentialOCL.g:8722:1: ( ':' )
-            // InternalEssentialOCL.g:8723:1: ':'
+            // InternalEssentialOCL.g:8724:1: ( ':' )
+            // InternalEssentialOCL.g:8725:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
@@ -25834,14 +25834,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__1"
-    // InternalEssentialOCL.g:8736:1: rule__NavigatingBarArgCS__Group_2__1 : rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 ;
+    // InternalEssentialOCL.g:8738:1: rule__NavigatingBarArgCS__Group_2__1 : rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 ;
     public final void rule__NavigatingBarArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8740:1: ( rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 )
-            // InternalEssentialOCL.g:8741:2: rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2
+            // InternalEssentialOCL.g:8742:1: ( rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 )
+            // InternalEssentialOCL.g:8743:2: rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_20);
             rule__NavigatingBarArgCS__Group_2__1__Impl();
@@ -25872,23 +25872,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__1__Impl"
-    // InternalEssentialOCL.g:8748:1: rule__NavigatingBarArgCS__Group_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) ;
+    // InternalEssentialOCL.g:8750:1: rule__NavigatingBarArgCS__Group_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) ;
     public final void rule__NavigatingBarArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8752:1: ( ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) )
-            // InternalEssentialOCL.g:8753:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalEssentialOCL.g:8754:1: ( ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) )
+            // InternalEssentialOCL.g:8755:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
             {
-            // InternalEssentialOCL.g:8753:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
-            // InternalEssentialOCL.g:8754:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
+            // InternalEssentialOCL.g:8755:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalEssentialOCL.g:8756:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1());
             }
-            // InternalEssentialOCL.g:8755:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
-            // InternalEssentialOCL.g:8755:2: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1
+            // InternalEssentialOCL.g:8757:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
+            // InternalEssentialOCL.g:8757:2: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1();
@@ -25923,14 +25923,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__2"
-    // InternalEssentialOCL.g:8765:1: rule__NavigatingBarArgCS__Group_2__2 : rule__NavigatingBarArgCS__Group_2__2__Impl ;
+    // InternalEssentialOCL.g:8767:1: rule__NavigatingBarArgCS__Group_2__2 : rule__NavigatingBarArgCS__Group_2__2__Impl ;
     public final void rule__NavigatingBarArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8769:1: ( rule__NavigatingBarArgCS__Group_2__2__Impl )
-            // InternalEssentialOCL.g:8770:2: rule__NavigatingBarArgCS__Group_2__2__Impl
+            // InternalEssentialOCL.g:8771:1: ( rule__NavigatingBarArgCS__Group_2__2__Impl )
+            // InternalEssentialOCL.g:8772:2: rule__NavigatingBarArgCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__Group_2__2__Impl();
@@ -25956,22 +25956,22 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__2__Impl"
-    // InternalEssentialOCL.g:8776:1: rule__NavigatingBarArgCS__Group_2__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) ;
+    // InternalEssentialOCL.g:8778:1: rule__NavigatingBarArgCS__Group_2__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) ;
     public final void rule__NavigatingBarArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8780:1: ( ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) )
-            // InternalEssentialOCL.g:8781:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
+            // InternalEssentialOCL.g:8782:1: ( ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) )
+            // InternalEssentialOCL.g:8783:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
             {
-            // InternalEssentialOCL.g:8781:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
-            // InternalEssentialOCL.g:8782:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
+            // InternalEssentialOCL.g:8783:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
+            // InternalEssentialOCL.g:8784:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2());
             }
-            // InternalEssentialOCL.g:8783:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
+            // InternalEssentialOCL.g:8785:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             int alt69=2;
             int LA69_0 = input.LA(1);
 
@@ -25980,7 +25980,7 @@
             }
             switch (alt69) {
                 case 1 :
-                    // InternalEssentialOCL.g:8783:2: rule__NavigatingBarArgCS__Group_2_2__0
+                    // InternalEssentialOCL.g:8785:2: rule__NavigatingBarArgCS__Group_2_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingBarArgCS__Group_2_2__0();
@@ -26018,14 +26018,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__0"
-    // InternalEssentialOCL.g:8799:1: rule__NavigatingBarArgCS__Group_2_2__0 : rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 ;
+    // InternalEssentialOCL.g:8801:1: rule__NavigatingBarArgCS__Group_2_2__0 : rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 ;
     public final void rule__NavigatingBarArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8803:1: ( rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 )
-            // InternalEssentialOCL.g:8804:2: rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1
+            // InternalEssentialOCL.g:8805:1: ( rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 )
+            // InternalEssentialOCL.g:8806:2: rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__NavigatingBarArgCS__Group_2_2__0__Impl();
@@ -26056,17 +26056,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__0__Impl"
-    // InternalEssentialOCL.g:8811:1: rule__NavigatingBarArgCS__Group_2_2__0__Impl : ( '=' ) ;
+    // InternalEssentialOCL.g:8813:1: rule__NavigatingBarArgCS__Group_2_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingBarArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8815:1: ( ( '=' ) )
-            // InternalEssentialOCL.g:8816:1: ( '=' )
+            // InternalEssentialOCL.g:8817:1: ( ( '=' ) )
+            // InternalEssentialOCL.g:8818:1: ( '=' )
             {
-            // InternalEssentialOCL.g:8816:1: ( '=' )
-            // InternalEssentialOCL.g:8817:1: '='
+            // InternalEssentialOCL.g:8818:1: ( '=' )
+            // InternalEssentialOCL.g:8819:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
@@ -26097,14 +26097,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__1"
-    // InternalEssentialOCL.g:8830:1: rule__NavigatingBarArgCS__Group_2_2__1 : rule__NavigatingBarArgCS__Group_2_2__1__Impl ;
+    // InternalEssentialOCL.g:8832:1: rule__NavigatingBarArgCS__Group_2_2__1 : rule__NavigatingBarArgCS__Group_2_2__1__Impl ;
     public final void rule__NavigatingBarArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8834:1: ( rule__NavigatingBarArgCS__Group_2_2__1__Impl )
-            // InternalEssentialOCL.g:8835:2: rule__NavigatingBarArgCS__Group_2_2__1__Impl
+            // InternalEssentialOCL.g:8836:1: ( rule__NavigatingBarArgCS__Group_2_2__1__Impl )
+            // InternalEssentialOCL.g:8837:2: rule__NavigatingBarArgCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__Group_2_2__1__Impl();
@@ -26130,23 +26130,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__1__Impl"
-    // InternalEssentialOCL.g:8841:1: rule__NavigatingBarArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
+    // InternalEssentialOCL.g:8843:1: rule__NavigatingBarArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
     public final void rule__NavigatingBarArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8845:1: ( ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
-            // InternalEssentialOCL.g:8846:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalEssentialOCL.g:8847:1: ( ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
+            // InternalEssentialOCL.g:8848:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
             {
-            // InternalEssentialOCL.g:8846:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
-            // InternalEssentialOCL.g:8847:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalEssentialOCL.g:8848:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalEssentialOCL.g:8849:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
-            // InternalEssentialOCL.g:8848:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
-            // InternalEssentialOCL.g:8848:2: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1
+            // InternalEssentialOCL.g:8850:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalEssentialOCL.g:8850:2: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1();
@@ -26181,14 +26181,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__0"
-    // InternalEssentialOCL.g:8862:1: rule__NavigatingCommaArgCS__Group__0 : rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 ;
+    // InternalEssentialOCL.g:8864:1: rule__NavigatingCommaArgCS__Group__0 : rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 ;
     public final void rule__NavigatingCommaArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8866:1: ( rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 )
-            // InternalEssentialOCL.g:8867:2: rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1
+            // InternalEssentialOCL.g:8868:1: ( rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 )
+            // InternalEssentialOCL.g:8869:2: rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__NavigatingCommaArgCS__Group__0__Impl();
@@ -26219,23 +26219,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__0__Impl"
-    // InternalEssentialOCL.g:8874:1: rule__NavigatingCommaArgCS__Group__0__Impl : ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:8876:1: rule__NavigatingCommaArgCS__Group__0__Impl : ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8878:1: ( ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) )
-            // InternalEssentialOCL.g:8879:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
+            // InternalEssentialOCL.g:8880:1: ( ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) )
+            // InternalEssentialOCL.g:8881:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:8879:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
-            // InternalEssentialOCL.g:8880:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
+            // InternalEssentialOCL.g:8881:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
+            // InternalEssentialOCL.g:8882:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0());
             }
-            // InternalEssentialOCL.g:8881:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
-            // InternalEssentialOCL.g:8881:2: rule__NavigatingCommaArgCS__PrefixAssignment_0
+            // InternalEssentialOCL.g:8883:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
+            // InternalEssentialOCL.g:8883:2: rule__NavigatingCommaArgCS__PrefixAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__PrefixAssignment_0();
@@ -26270,14 +26270,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__1"
-    // InternalEssentialOCL.g:8891:1: rule__NavigatingCommaArgCS__Group__1 : rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 ;
+    // InternalEssentialOCL.g:8893:1: rule__NavigatingCommaArgCS__Group__1 : rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 ;
     public final void rule__NavigatingCommaArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8895:1: ( rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 )
-            // InternalEssentialOCL.g:8896:2: rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2
+            // InternalEssentialOCL.g:8897:1: ( rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 )
+            // InternalEssentialOCL.g:8898:2: rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_42);
             rule__NavigatingCommaArgCS__Group__1__Impl();
@@ -26308,23 +26308,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__1__Impl"
-    // InternalEssentialOCL.g:8903:1: rule__NavigatingCommaArgCS__Group__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) ;
+    // InternalEssentialOCL.g:8905:1: rule__NavigatingCommaArgCS__Group__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8907:1: ( ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) )
-            // InternalEssentialOCL.g:8908:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalEssentialOCL.g:8909:1: ( ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) )
+            // InternalEssentialOCL.g:8910:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
             {
-            // InternalEssentialOCL.g:8908:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
-            // InternalEssentialOCL.g:8909:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalEssentialOCL.g:8910:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalEssentialOCL.g:8911:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
-            // InternalEssentialOCL.g:8910:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
-            // InternalEssentialOCL.g:8910:2: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1
+            // InternalEssentialOCL.g:8912:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalEssentialOCL.g:8912:2: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1();
@@ -26359,14 +26359,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__2"
-    // InternalEssentialOCL.g:8920:1: rule__NavigatingCommaArgCS__Group__2 : rule__NavigatingCommaArgCS__Group__2__Impl ;
+    // InternalEssentialOCL.g:8922:1: rule__NavigatingCommaArgCS__Group__2 : rule__NavigatingCommaArgCS__Group__2__Impl ;
     public final void rule__NavigatingCommaArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8924:1: ( rule__NavigatingCommaArgCS__Group__2__Impl )
-            // InternalEssentialOCL.g:8925:2: rule__NavigatingCommaArgCS__Group__2__Impl
+            // InternalEssentialOCL.g:8926:1: ( rule__NavigatingCommaArgCS__Group__2__Impl )
+            // InternalEssentialOCL.g:8927:2: rule__NavigatingCommaArgCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group__2__Impl();
@@ -26392,22 +26392,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__2__Impl"
-    // InternalEssentialOCL.g:8931:1: rule__NavigatingCommaArgCS__Group__2__Impl : ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) ;
+    // InternalEssentialOCL.g:8933:1: rule__NavigatingCommaArgCS__Group__2__Impl : ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8935:1: ( ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) )
-            // InternalEssentialOCL.g:8936:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
+            // InternalEssentialOCL.g:8937:1: ( ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) )
+            // InternalEssentialOCL.g:8938:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
             {
-            // InternalEssentialOCL.g:8936:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
-            // InternalEssentialOCL.g:8937:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
+            // InternalEssentialOCL.g:8938:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
+            // InternalEssentialOCL.g:8939:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2());
             }
-            // InternalEssentialOCL.g:8938:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
+            // InternalEssentialOCL.g:8940:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             int alt70=2;
             int LA70_0 = input.LA(1);
 
@@ -26416,7 +26416,7 @@
             }
             switch (alt70) {
                 case 1 :
-                    // InternalEssentialOCL.g:8938:2: rule__NavigatingCommaArgCS__Alternatives_2
+                    // InternalEssentialOCL.g:8940:2: rule__NavigatingCommaArgCS__Alternatives_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Alternatives_2();
@@ -26454,14 +26454,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__0"
-    // InternalEssentialOCL.g:8954:1: rule__NavigatingCommaArgCS__Group_2_0__0 : rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 ;
+    // InternalEssentialOCL.g:8956:1: rule__NavigatingCommaArgCS__Group_2_0__0 : rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8958:1: ( rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 )
-            // InternalEssentialOCL.g:8959:2: rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1
+            // InternalEssentialOCL.g:8960:1: ( rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 )
+            // InternalEssentialOCL.g:8961:2: rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__NavigatingCommaArgCS__Group_2_0__0__Impl();
@@ -26492,17 +26492,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__0__Impl"
-    // InternalEssentialOCL.g:8966:1: rule__NavigatingCommaArgCS__Group_2_0__0__Impl : ( '<-' ) ;
+    // InternalEssentialOCL.g:8968:1: rule__NavigatingCommaArgCS__Group_2_0__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8970:1: ( ( '<-' ) )
-            // InternalEssentialOCL.g:8971:1: ( '<-' )
+            // InternalEssentialOCL.g:8972:1: ( ( '<-' ) )
+            // InternalEssentialOCL.g:8973:1: ( '<-' )
             {
-            // InternalEssentialOCL.g:8971:1: ( '<-' )
-            // InternalEssentialOCL.g:8972:1: '<-'
+            // InternalEssentialOCL.g:8973:1: ( '<-' )
+            // InternalEssentialOCL.g:8974:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_0_0());
@@ -26533,14 +26533,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__1"
-    // InternalEssentialOCL.g:8985:1: rule__NavigatingCommaArgCS__Group_2_0__1 : rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 ;
+    // InternalEssentialOCL.g:8987:1: rule__NavigatingCommaArgCS__Group_2_0__1 : rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:8989:1: ( rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 )
-            // InternalEssentialOCL.g:8990:2: rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2
+            // InternalEssentialOCL.g:8991:1: ( rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 )
+            // InternalEssentialOCL.g:8992:2: rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2
             {
             pushFollow(FollowSets000.FOLLOW_20);
             rule__NavigatingCommaArgCS__Group_2_0__1__Impl();
@@ -26571,23 +26571,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__1__Impl"
-    // InternalEssentialOCL.g:8997:1: rule__NavigatingCommaArgCS__Group_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) ;
+    // InternalEssentialOCL.g:8999:1: rule__NavigatingCommaArgCS__Group_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9001:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) )
-            // InternalEssentialOCL.g:9002:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
+            // InternalEssentialOCL.g:9003:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) )
+            // InternalEssentialOCL.g:9004:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
             {
-            // InternalEssentialOCL.g:9002:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
-            // InternalEssentialOCL.g:9003:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
+            // InternalEssentialOCL.g:9004:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
+            // InternalEssentialOCL.g:9005:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorAssignment_2_0_1());
             }
-            // InternalEssentialOCL.g:9004:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
-            // InternalEssentialOCL.g:9004:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1
+            // InternalEssentialOCL.g:9006:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
+            // InternalEssentialOCL.g:9006:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1();
@@ -26622,14 +26622,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__2"
-    // InternalEssentialOCL.g:9014:1: rule__NavigatingCommaArgCS__Group_2_0__2 : rule__NavigatingCommaArgCS__Group_2_0__2__Impl ;
+    // InternalEssentialOCL.g:9016:1: rule__NavigatingCommaArgCS__Group_2_0__2 : rule__NavigatingCommaArgCS__Group_2_0__2__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9018:1: ( rule__NavigatingCommaArgCS__Group_2_0__2__Impl )
-            // InternalEssentialOCL.g:9019:2: rule__NavigatingCommaArgCS__Group_2_0__2__Impl
+            // InternalEssentialOCL.g:9020:1: ( rule__NavigatingCommaArgCS__Group_2_0__2__Impl )
+            // InternalEssentialOCL.g:9021:2: rule__NavigatingCommaArgCS__Group_2_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_0__2__Impl();
@@ -26655,22 +26655,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__2__Impl"
-    // InternalEssentialOCL.g:9025:1: rule__NavigatingCommaArgCS__Group_2_0__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) ;
+    // InternalEssentialOCL.g:9027:1: rule__NavigatingCommaArgCS__Group_2_0__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9029:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) )
-            // InternalEssentialOCL.g:9030:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
+            // InternalEssentialOCL.g:9031:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) )
+            // InternalEssentialOCL.g:9032:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
             {
-            // InternalEssentialOCL.g:9030:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
-            // InternalEssentialOCL.g:9031:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
+            // InternalEssentialOCL.g:9032:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
+            // InternalEssentialOCL.g:9033:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2());
             }
-            // InternalEssentialOCL.g:9032:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
+            // InternalEssentialOCL.g:9034:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             int alt71=2;
             int LA71_0 = input.LA(1);
 
@@ -26679,7 +26679,7 @@
             }
             switch (alt71) {
                 case 1 :
-                    // InternalEssentialOCL.g:9032:2: rule__NavigatingCommaArgCS__Group_2_0_2__0
+                    // InternalEssentialOCL.g:9034:2: rule__NavigatingCommaArgCS__Group_2_0_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_0_2__0();
@@ -26717,14 +26717,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__0"
-    // InternalEssentialOCL.g:9048:1: rule__NavigatingCommaArgCS__Group_2_0_2__0 : rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 ;
+    // InternalEssentialOCL.g:9050:1: rule__NavigatingCommaArgCS__Group_2_0_2__0 : rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9052:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 )
-            // InternalEssentialOCL.g:9053:2: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1
+            // InternalEssentialOCL.g:9054:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 )
+            // InternalEssentialOCL.g:9055:2: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl();
@@ -26755,17 +26755,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl"
-    // InternalEssentialOCL.g:9060:1: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl : ( '=' ) ;
+    // InternalEssentialOCL.g:9062:1: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9064:1: ( ( '=' ) )
-            // InternalEssentialOCL.g:9065:1: ( '=' )
+            // InternalEssentialOCL.g:9066:1: ( ( '=' ) )
+            // InternalEssentialOCL.g:9067:1: ( '=' )
             {
-            // InternalEssentialOCL.g:9065:1: ( '=' )
-            // InternalEssentialOCL.g:9066:1: '='
+            // InternalEssentialOCL.g:9067:1: ( '=' )
+            // InternalEssentialOCL.g:9068:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
@@ -26796,14 +26796,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__1"
-    // InternalEssentialOCL.g:9079:1: rule__NavigatingCommaArgCS__Group_2_0_2__1 : rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl ;
+    // InternalEssentialOCL.g:9081:1: rule__NavigatingCommaArgCS__Group_2_0_2__1 : rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9083:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl )
-            // InternalEssentialOCL.g:9084:2: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl
+            // InternalEssentialOCL.g:9085:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl )
+            // InternalEssentialOCL.g:9086:2: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl();
@@ -26829,23 +26829,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl"
-    // InternalEssentialOCL.g:9090:1: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) ;
+    // InternalEssentialOCL.g:9092:1: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9094:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) )
-            // InternalEssentialOCL.g:9095:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
+            // InternalEssentialOCL.g:9096:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) )
+            // InternalEssentialOCL.g:9097:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
             {
-            // InternalEssentialOCL.g:9095:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
-            // InternalEssentialOCL.g:9096:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
+            // InternalEssentialOCL.g:9097:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
+            // InternalEssentialOCL.g:9098:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1());
             }
-            // InternalEssentialOCL.g:9097:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
-            // InternalEssentialOCL.g:9097:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1
+            // InternalEssentialOCL.g:9099:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
+            // InternalEssentialOCL.g:9099:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1();
@@ -26880,14 +26880,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__0"
-    // InternalEssentialOCL.g:9111:1: rule__NavigatingCommaArgCS__Group_2_1__0 : rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 ;
+    // InternalEssentialOCL.g:9113:1: rule__NavigatingCommaArgCS__Group_2_1__0 : rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9115:1: ( rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 )
-            // InternalEssentialOCL.g:9116:2: rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1
+            // InternalEssentialOCL.g:9117:1: ( rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 )
+            // InternalEssentialOCL.g:9118:2: rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__NavigatingCommaArgCS__Group_2_1__0__Impl();
@@ -26918,17 +26918,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__0__Impl"
-    // InternalEssentialOCL.g:9123:1: rule__NavigatingCommaArgCS__Group_2_1__0__Impl : ( ':' ) ;
+    // InternalEssentialOCL.g:9125:1: rule__NavigatingCommaArgCS__Group_2_1__0__Impl : ( ':' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9127:1: ( ( ':' ) )
-            // InternalEssentialOCL.g:9128:1: ( ':' )
+            // InternalEssentialOCL.g:9129:1: ( ( ':' ) )
+            // InternalEssentialOCL.g:9130:1: ( ':' )
             {
-            // InternalEssentialOCL.g:9128:1: ( ':' )
-            // InternalEssentialOCL.g:9129:1: ':'
+            // InternalEssentialOCL.g:9130:1: ( ':' )
+            // InternalEssentialOCL.g:9131:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_1_0());
@@ -26959,14 +26959,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__1"
-    // InternalEssentialOCL.g:9142:1: rule__NavigatingCommaArgCS__Group_2_1__1 : rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 ;
+    // InternalEssentialOCL.g:9144:1: rule__NavigatingCommaArgCS__Group_2_1__1 : rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9146:1: ( rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 )
-            // InternalEssentialOCL.g:9147:2: rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2
+            // InternalEssentialOCL.g:9148:1: ( rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 )
+            // InternalEssentialOCL.g:9149:2: rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NavigatingCommaArgCS__Group_2_1__1__Impl();
@@ -26997,23 +26997,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__1__Impl"
-    // InternalEssentialOCL.g:9154:1: rule__NavigatingCommaArgCS__Group_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) ;
+    // InternalEssentialOCL.g:9156:1: rule__NavigatingCommaArgCS__Group_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9158:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) )
-            // InternalEssentialOCL.g:9159:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
+            // InternalEssentialOCL.g:9160:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) )
+            // InternalEssentialOCL.g:9161:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
             {
-            // InternalEssentialOCL.g:9159:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
-            // InternalEssentialOCL.g:9160:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
+            // InternalEssentialOCL.g:9161:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
+            // InternalEssentialOCL.g:9162:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_1_1());
             }
-            // InternalEssentialOCL.g:9161:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
-            // InternalEssentialOCL.g:9161:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1
+            // InternalEssentialOCL.g:9163:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
+            // InternalEssentialOCL.g:9163:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1();
@@ -27048,14 +27048,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__2"
-    // InternalEssentialOCL.g:9171:1: rule__NavigatingCommaArgCS__Group_2_1__2 : rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 ;
+    // InternalEssentialOCL.g:9173:1: rule__NavigatingCommaArgCS__Group_2_1__2 : rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9175:1: ( rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 )
-            // InternalEssentialOCL.g:9176:2: rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3
+            // InternalEssentialOCL.g:9177:1: ( rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 )
+            // InternalEssentialOCL.g:9178:2: rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__NavigatingCommaArgCS__Group_2_1__2__Impl();
@@ -27086,22 +27086,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__2__Impl"
-    // InternalEssentialOCL.g:9183:1: rule__NavigatingCommaArgCS__Group_2_1__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) ;
+    // InternalEssentialOCL.g:9185:1: rule__NavigatingCommaArgCS__Group_2_1__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9187:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) )
-            // InternalEssentialOCL.g:9188:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
+            // InternalEssentialOCL.g:9189:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) )
+            // InternalEssentialOCL.g:9190:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
             {
-            // InternalEssentialOCL.g:9188:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
-            // InternalEssentialOCL.g:9189:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
+            // InternalEssentialOCL.g:9190:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
+            // InternalEssentialOCL.g:9191:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1_2());
             }
-            // InternalEssentialOCL.g:9190:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
+            // InternalEssentialOCL.g:9192:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
             int alt72=2;
             int LA72_0 = input.LA(1);
 
@@ -27110,7 +27110,7 @@
             }
             switch (alt72) {
                 case 1 :
-                    // InternalEssentialOCL.g:9190:2: rule__NavigatingCommaArgCS__Group_2_1_2__0
+                    // InternalEssentialOCL.g:9192:2: rule__NavigatingCommaArgCS__Group_2_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_1_2__0();
@@ -27148,14 +27148,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__3"
-    // InternalEssentialOCL.g:9200:1: rule__NavigatingCommaArgCS__Group_2_1__3 : rule__NavigatingCommaArgCS__Group_2_1__3__Impl ;
+    // InternalEssentialOCL.g:9202:1: rule__NavigatingCommaArgCS__Group_2_1__3 : rule__NavigatingCommaArgCS__Group_2_1__3__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9204:1: ( rule__NavigatingCommaArgCS__Group_2_1__3__Impl )
-            // InternalEssentialOCL.g:9205:2: rule__NavigatingCommaArgCS__Group_2_1__3__Impl
+            // InternalEssentialOCL.g:9206:1: ( rule__NavigatingCommaArgCS__Group_2_1__3__Impl )
+            // InternalEssentialOCL.g:9207:2: rule__NavigatingCommaArgCS__Group_2_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_1__3__Impl();
@@ -27181,22 +27181,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__3__Impl"
-    // InternalEssentialOCL.g:9211:1: rule__NavigatingCommaArgCS__Group_2_1__3__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) ;
+    // InternalEssentialOCL.g:9213:1: rule__NavigatingCommaArgCS__Group_2_1__3__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9215:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) )
-            // InternalEssentialOCL.g:9216:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
+            // InternalEssentialOCL.g:9217:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) )
+            // InternalEssentialOCL.g:9218:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
             {
-            // InternalEssentialOCL.g:9216:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
-            // InternalEssentialOCL.g:9217:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
+            // InternalEssentialOCL.g:9218:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
+            // InternalEssentialOCL.g:9219:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1_3());
             }
-            // InternalEssentialOCL.g:9218:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
+            // InternalEssentialOCL.g:9220:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
             int alt73=2;
             int LA73_0 = input.LA(1);
 
@@ -27205,7 +27205,7 @@
             }
             switch (alt73) {
                 case 1 :
-                    // InternalEssentialOCL.g:9218:2: rule__NavigatingCommaArgCS__Group_2_1_3__0
+                    // InternalEssentialOCL.g:9220:2: rule__NavigatingCommaArgCS__Group_2_1_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_1_3__0();
@@ -27243,14 +27243,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__0"
-    // InternalEssentialOCL.g:9236:1: rule__NavigatingCommaArgCS__Group_2_1_2__0 : rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 ;
+    // InternalEssentialOCL.g:9238:1: rule__NavigatingCommaArgCS__Group_2_1_2__0 : rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9240:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 )
-            // InternalEssentialOCL.g:9241:2: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1
+            // InternalEssentialOCL.g:9242:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 )
+            // InternalEssentialOCL.g:9243:2: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl();
@@ -27281,17 +27281,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl"
-    // InternalEssentialOCL.g:9248:1: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl : ( '<-' ) ;
+    // InternalEssentialOCL.g:9250:1: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9252:1: ( ( '<-' ) )
-            // InternalEssentialOCL.g:9253:1: ( '<-' )
+            // InternalEssentialOCL.g:9254:1: ( ( '<-' ) )
+            // InternalEssentialOCL.g:9255:1: ( '<-' )
             {
-            // InternalEssentialOCL.g:9253:1: ( '<-' )
-            // InternalEssentialOCL.g:9254:1: '<-'
+            // InternalEssentialOCL.g:9255:1: ( '<-' )
+            // InternalEssentialOCL.g:9256:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_1_2_0());
@@ -27322,14 +27322,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__1"
-    // InternalEssentialOCL.g:9267:1: rule__NavigatingCommaArgCS__Group_2_1_2__1 : rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl ;
+    // InternalEssentialOCL.g:9269:1: rule__NavigatingCommaArgCS__Group_2_1_2__1 : rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9271:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl )
-            // InternalEssentialOCL.g:9272:2: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl
+            // InternalEssentialOCL.g:9273:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl )
+            // InternalEssentialOCL.g:9274:2: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl();
@@ -27355,23 +27355,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl"
-    // InternalEssentialOCL.g:9278:1: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) ;
+    // InternalEssentialOCL.g:9280:1: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9282:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) )
-            // InternalEssentialOCL.g:9283:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
+            // InternalEssentialOCL.g:9284:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) )
+            // InternalEssentialOCL.g:9285:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
             {
-            // InternalEssentialOCL.g:9283:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
-            // InternalEssentialOCL.g:9284:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
+            // InternalEssentialOCL.g:9285:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
+            // InternalEssentialOCL.g:9286:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorAssignment_2_1_2_1());
             }
-            // InternalEssentialOCL.g:9285:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
-            // InternalEssentialOCL.g:9285:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1
+            // InternalEssentialOCL.g:9287:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
+            // InternalEssentialOCL.g:9287:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1();
@@ -27406,14 +27406,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__0"
-    // InternalEssentialOCL.g:9299:1: rule__NavigatingCommaArgCS__Group_2_1_3__0 : rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 ;
+    // InternalEssentialOCL.g:9301:1: rule__NavigatingCommaArgCS__Group_2_1_3__0 : rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9303:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 )
-            // InternalEssentialOCL.g:9304:2: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1
+            // InternalEssentialOCL.g:9305:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 )
+            // InternalEssentialOCL.g:9306:2: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl();
@@ -27444,17 +27444,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl"
-    // InternalEssentialOCL.g:9311:1: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl : ( '=' ) ;
+    // InternalEssentialOCL.g:9313:1: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl : ( '=' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9315:1: ( ( '=' ) )
-            // InternalEssentialOCL.g:9316:1: ( '=' )
+            // InternalEssentialOCL.g:9317:1: ( ( '=' ) )
+            // InternalEssentialOCL.g:9318:1: ( '=' )
             {
-            // InternalEssentialOCL.g:9316:1: ( '=' )
-            // InternalEssentialOCL.g:9317:1: '='
+            // InternalEssentialOCL.g:9318:1: ( '=' )
+            // InternalEssentialOCL.g:9319:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_1_3_0());
@@ -27485,14 +27485,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__1"
-    // InternalEssentialOCL.g:9330:1: rule__NavigatingCommaArgCS__Group_2_1_3__1 : rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl ;
+    // InternalEssentialOCL.g:9332:1: rule__NavigatingCommaArgCS__Group_2_1_3__1 : rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9334:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl )
-            // InternalEssentialOCL.g:9335:2: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl
+            // InternalEssentialOCL.g:9336:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl )
+            // InternalEssentialOCL.g:9337:2: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl();
@@ -27518,23 +27518,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl"
-    // InternalEssentialOCL.g:9341:1: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) ;
+    // InternalEssentialOCL.g:9343:1: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9345:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) )
-            // InternalEssentialOCL.g:9346:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
+            // InternalEssentialOCL.g:9347:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) )
+            // InternalEssentialOCL.g:9348:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
             {
-            // InternalEssentialOCL.g:9346:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
-            // InternalEssentialOCL.g:9347:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
+            // InternalEssentialOCL.g:9348:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
+            // InternalEssentialOCL.g:9349:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_3_1());
             }
-            // InternalEssentialOCL.g:9348:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
-            // InternalEssentialOCL.g:9348:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1
+            // InternalEssentialOCL.g:9350:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
+            // InternalEssentialOCL.g:9350:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1();
@@ -27569,14 +27569,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__0"
-    // InternalEssentialOCL.g:9362:1: rule__NavigatingCommaArgCS__Group_2_2__0 : rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 ;
+    // InternalEssentialOCL.g:9364:1: rule__NavigatingCommaArgCS__Group_2_2__0 : rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9366:1: ( rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 )
-            // InternalEssentialOCL.g:9367:2: rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1
+            // InternalEssentialOCL.g:9368:1: ( rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 )
+            // InternalEssentialOCL.g:9369:2: rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_42);
             rule__NavigatingCommaArgCS__Group_2_2__0__Impl();
@@ -27607,22 +27607,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__0__Impl"
-    // InternalEssentialOCL.g:9374:1: rule__NavigatingCommaArgCS__Group_2_2__0__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) ;
+    // InternalEssentialOCL.g:9376:1: rule__NavigatingCommaArgCS__Group_2_2__0__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9378:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) )
-            // InternalEssentialOCL.g:9379:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
+            // InternalEssentialOCL.g:9380:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) )
+            // InternalEssentialOCL.g:9381:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
             {
-            // InternalEssentialOCL.g:9379:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
-            // InternalEssentialOCL.g:9380:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
+            // InternalEssentialOCL.g:9381:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
+            // InternalEssentialOCL.g:9382:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_2_0());
             }
-            // InternalEssentialOCL.g:9381:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
+            // InternalEssentialOCL.g:9383:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
             int alt74=2;
             int LA74_0 = input.LA(1);
 
@@ -27631,7 +27631,7 @@
             }
             switch (alt74) {
                 case 1 :
-                    // InternalEssentialOCL.g:9381:2: rule__NavigatingCommaArgCS__Group_2_2_0__0
+                    // InternalEssentialOCL.g:9383:2: rule__NavigatingCommaArgCS__Group_2_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_2_0__0();
@@ -27669,14 +27669,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__1"
-    // InternalEssentialOCL.g:9391:1: rule__NavigatingCommaArgCS__Group_2_2__1 : rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 ;
+    // InternalEssentialOCL.g:9393:1: rule__NavigatingCommaArgCS__Group_2_2__1 : rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9395:1: ( rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 )
-            // InternalEssentialOCL.g:9396:2: rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2
+            // InternalEssentialOCL.g:9397:1: ( rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 )
+            // InternalEssentialOCL.g:9398:2: rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2
             {
             pushFollow(FollowSets000.FOLLOW_42);
             rule__NavigatingCommaArgCS__Group_2_2__1__Impl();
@@ -27707,22 +27707,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__1__Impl"
-    // InternalEssentialOCL.g:9403:1: rule__NavigatingCommaArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) ;
+    // InternalEssentialOCL.g:9405:1: rule__NavigatingCommaArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9407:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) )
-            // InternalEssentialOCL.g:9408:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
+            // InternalEssentialOCL.g:9409:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) )
+            // InternalEssentialOCL.g:9410:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
             {
-            // InternalEssentialOCL.g:9408:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
-            // InternalEssentialOCL.g:9409:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
+            // InternalEssentialOCL.g:9410:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
+            // InternalEssentialOCL.g:9411:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_2_1());
             }
-            // InternalEssentialOCL.g:9410:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
+            // InternalEssentialOCL.g:9412:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
             int alt75=2;
             int LA75_0 = input.LA(1);
 
@@ -27731,7 +27731,7 @@
             }
             switch (alt75) {
                 case 1 :
-                    // InternalEssentialOCL.g:9410:2: rule__NavigatingCommaArgCS__Group_2_2_1__0
+                    // InternalEssentialOCL.g:9412:2: rule__NavigatingCommaArgCS__Group_2_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_2_1__0();
@@ -27769,14 +27769,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__2"
-    // InternalEssentialOCL.g:9420:1: rule__NavigatingCommaArgCS__Group_2_2__2 : rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 ;
+    // InternalEssentialOCL.g:9422:1: rule__NavigatingCommaArgCS__Group_2_2__2 : rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9424:1: ( rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 )
-            // InternalEssentialOCL.g:9425:2: rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3
+            // InternalEssentialOCL.g:9426:1: ( rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 )
+            // InternalEssentialOCL.g:9427:2: rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__NavigatingCommaArgCS__Group_2_2__2__Impl();
@@ -27807,17 +27807,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__2__Impl"
-    // InternalEssentialOCL.g:9432:1: rule__NavigatingCommaArgCS__Group_2_2__2__Impl : ( 'in' ) ;
+    // InternalEssentialOCL.g:9434:1: rule__NavigatingCommaArgCS__Group_2_2__2__Impl : ( 'in' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9436:1: ( ( 'in' ) )
-            // InternalEssentialOCL.g:9437:1: ( 'in' )
+            // InternalEssentialOCL.g:9438:1: ( ( 'in' ) )
+            // InternalEssentialOCL.g:9439:1: ( 'in' )
             {
-            // InternalEssentialOCL.g:9437:1: ( 'in' )
-            // InternalEssentialOCL.g:9438:1: 'in'
+            // InternalEssentialOCL.g:9439:1: ( 'in' )
+            // InternalEssentialOCL.g:9440:1: 'in'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_2_2());
@@ -27848,14 +27848,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__3"
-    // InternalEssentialOCL.g:9451:1: rule__NavigatingCommaArgCS__Group_2_2__3 : rule__NavigatingCommaArgCS__Group_2_2__3__Impl ;
+    // InternalEssentialOCL.g:9453:1: rule__NavigatingCommaArgCS__Group_2_2__3 : rule__NavigatingCommaArgCS__Group_2_2__3__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9455:1: ( rule__NavigatingCommaArgCS__Group_2_2__3__Impl )
-            // InternalEssentialOCL.g:9456:2: rule__NavigatingCommaArgCS__Group_2_2__3__Impl
+            // InternalEssentialOCL.g:9457:1: ( rule__NavigatingCommaArgCS__Group_2_2__3__Impl )
+            // InternalEssentialOCL.g:9458:2: rule__NavigatingCommaArgCS__Group_2_2__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_2__3__Impl();
@@ -27881,23 +27881,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__3__Impl"
-    // InternalEssentialOCL.g:9462:1: rule__NavigatingCommaArgCS__Group_2_2__3__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) ;
+    // InternalEssentialOCL.g:9464:1: rule__NavigatingCommaArgCS__Group_2_2__3__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9466:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) )
-            // InternalEssentialOCL.g:9467:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
+            // InternalEssentialOCL.g:9468:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) )
+            // InternalEssentialOCL.g:9469:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
             {
-            // InternalEssentialOCL.g:9467:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
-            // InternalEssentialOCL.g:9468:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
+            // InternalEssentialOCL.g:9469:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
+            // InternalEssentialOCL.g:9470:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_2_3());
             }
-            // InternalEssentialOCL.g:9469:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
-            // InternalEssentialOCL.g:9469:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3
+            // InternalEssentialOCL.g:9471:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
+            // InternalEssentialOCL.g:9471:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3();
@@ -27932,14 +27932,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__0"
-    // InternalEssentialOCL.g:9487:1: rule__NavigatingCommaArgCS__Group_2_2_0__0 : rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 ;
+    // InternalEssentialOCL.g:9489:1: rule__NavigatingCommaArgCS__Group_2_2_0__0 : rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9491:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 )
-            // InternalEssentialOCL.g:9492:2: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1
+            // InternalEssentialOCL.g:9493:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 )
+            // InternalEssentialOCL.g:9494:2: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl();
@@ -27970,17 +27970,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl"
-    // InternalEssentialOCL.g:9499:1: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl : ( ':' ) ;
+    // InternalEssentialOCL.g:9501:1: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl : ( ':' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9503:1: ( ( ':' ) )
-            // InternalEssentialOCL.g:9504:1: ( ':' )
+            // InternalEssentialOCL.g:9505:1: ( ( ':' ) )
+            // InternalEssentialOCL.g:9506:1: ( ':' )
             {
-            // InternalEssentialOCL.g:9504:1: ( ':' )
-            // InternalEssentialOCL.g:9505:1: ':'
+            // InternalEssentialOCL.g:9506:1: ( ':' )
+            // InternalEssentialOCL.g:9507:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_2_0_0());
@@ -28011,14 +28011,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__1"
-    // InternalEssentialOCL.g:9518:1: rule__NavigatingCommaArgCS__Group_2_2_0__1 : rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl ;
+    // InternalEssentialOCL.g:9520:1: rule__NavigatingCommaArgCS__Group_2_2_0__1 : rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9522:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl )
-            // InternalEssentialOCL.g:9523:2: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl
+            // InternalEssentialOCL.g:9524:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl )
+            // InternalEssentialOCL.g:9525:2: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl();
@@ -28044,23 +28044,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl"
-    // InternalEssentialOCL.g:9529:1: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) ;
+    // InternalEssentialOCL.g:9531:1: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9533:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) )
-            // InternalEssentialOCL.g:9534:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
+            // InternalEssentialOCL.g:9535:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) )
+            // InternalEssentialOCL.g:9536:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
             {
-            // InternalEssentialOCL.g:9534:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
-            // InternalEssentialOCL.g:9535:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
+            // InternalEssentialOCL.g:9536:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
+            // InternalEssentialOCL.g:9537:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_2_0_1());
             }
-            // InternalEssentialOCL.g:9536:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
-            // InternalEssentialOCL.g:9536:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1
+            // InternalEssentialOCL.g:9538:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
+            // InternalEssentialOCL.g:9538:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1();
@@ -28095,14 +28095,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__0"
-    // InternalEssentialOCL.g:9550:1: rule__NavigatingCommaArgCS__Group_2_2_1__0 : rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 ;
+    // InternalEssentialOCL.g:9552:1: rule__NavigatingCommaArgCS__Group_2_2_1__0 : rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9554:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 )
-            // InternalEssentialOCL.g:9555:2: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1
+            // InternalEssentialOCL.g:9556:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 )
+            // InternalEssentialOCL.g:9557:2: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl();
@@ -28133,17 +28133,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl"
-    // InternalEssentialOCL.g:9562:1: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl : ( '<-' ) ;
+    // InternalEssentialOCL.g:9564:1: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9566:1: ( ( '<-' ) )
-            // InternalEssentialOCL.g:9567:1: ( '<-' )
+            // InternalEssentialOCL.g:9568:1: ( ( '<-' ) )
+            // InternalEssentialOCL.g:9569:1: ( '<-' )
             {
-            // InternalEssentialOCL.g:9567:1: ( '<-' )
-            // InternalEssentialOCL.g:9568:1: '<-'
+            // InternalEssentialOCL.g:9569:1: ( '<-' )
+            // InternalEssentialOCL.g:9570:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_2_1_0());
@@ -28174,14 +28174,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__1"
-    // InternalEssentialOCL.g:9581:1: rule__NavigatingCommaArgCS__Group_2_2_1__1 : rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl ;
+    // InternalEssentialOCL.g:9583:1: rule__NavigatingCommaArgCS__Group_2_2_1__1 : rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9585:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl )
-            // InternalEssentialOCL.g:9586:2: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl
+            // InternalEssentialOCL.g:9587:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl )
+            // InternalEssentialOCL.g:9588:2: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl();
@@ -28207,23 +28207,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl"
-    // InternalEssentialOCL.g:9592:1: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) ;
+    // InternalEssentialOCL.g:9594:1: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9596:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) )
-            // InternalEssentialOCL.g:9597:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
+            // InternalEssentialOCL.g:9598:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) )
+            // InternalEssentialOCL.g:9599:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
             {
-            // InternalEssentialOCL.g:9597:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
-            // InternalEssentialOCL.g:9598:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
+            // InternalEssentialOCL.g:9599:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
+            // InternalEssentialOCL.g:9600:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorAssignment_2_2_1_1());
             }
-            // InternalEssentialOCL.g:9599:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
-            // InternalEssentialOCL.g:9599:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1
+            // InternalEssentialOCL.g:9601:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
+            // InternalEssentialOCL.g:9601:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1();
@@ -28258,14 +28258,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__0"
-    // InternalEssentialOCL.g:9613:1: rule__NavigatingSemiArgCS__Group__0 : rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 ;
+    // InternalEssentialOCL.g:9615:1: rule__NavigatingSemiArgCS__Group__0 : rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 ;
     public final void rule__NavigatingSemiArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9617:1: ( rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 )
-            // InternalEssentialOCL.g:9618:2: rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1
+            // InternalEssentialOCL.g:9619:1: ( rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 )
+            // InternalEssentialOCL.g:9620:2: rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__NavigatingSemiArgCS__Group__0__Impl();
@@ -28296,23 +28296,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__0__Impl"
-    // InternalEssentialOCL.g:9625:1: rule__NavigatingSemiArgCS__Group__0__Impl : ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:9627:1: rule__NavigatingSemiArgCS__Group__0__Impl : ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9629:1: ( ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) )
-            // InternalEssentialOCL.g:9630:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
+            // InternalEssentialOCL.g:9631:1: ( ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) )
+            // InternalEssentialOCL.g:9632:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:9630:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
-            // InternalEssentialOCL.g:9631:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
+            // InternalEssentialOCL.g:9632:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
+            // InternalEssentialOCL.g:9633:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0());
             }
-            // InternalEssentialOCL.g:9632:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
-            // InternalEssentialOCL.g:9632:2: rule__NavigatingSemiArgCS__PrefixAssignment_0
+            // InternalEssentialOCL.g:9634:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
+            // InternalEssentialOCL.g:9634:2: rule__NavigatingSemiArgCS__PrefixAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__PrefixAssignment_0();
@@ -28347,14 +28347,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__1"
-    // InternalEssentialOCL.g:9642:1: rule__NavigatingSemiArgCS__Group__1 : rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 ;
+    // InternalEssentialOCL.g:9644:1: rule__NavigatingSemiArgCS__Group__1 : rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 ;
     public final void rule__NavigatingSemiArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9646:1: ( rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 )
-            // InternalEssentialOCL.g:9647:2: rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2
+            // InternalEssentialOCL.g:9648:1: ( rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 )
+            // InternalEssentialOCL.g:9649:2: rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__NavigatingSemiArgCS__Group__1__Impl();
@@ -28385,23 +28385,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__1__Impl"
-    // InternalEssentialOCL.g:9654:1: rule__NavigatingSemiArgCS__Group__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) ;
+    // InternalEssentialOCL.g:9656:1: rule__NavigatingSemiArgCS__Group__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9658:1: ( ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) )
-            // InternalEssentialOCL.g:9659:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalEssentialOCL.g:9660:1: ( ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) )
+            // InternalEssentialOCL.g:9661:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
             {
-            // InternalEssentialOCL.g:9659:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
-            // InternalEssentialOCL.g:9660:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalEssentialOCL.g:9661:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalEssentialOCL.g:9662:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
-            // InternalEssentialOCL.g:9661:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
-            // InternalEssentialOCL.g:9661:2: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1
+            // InternalEssentialOCL.g:9663:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalEssentialOCL.g:9663:2: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1();
@@ -28436,14 +28436,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__2"
-    // InternalEssentialOCL.g:9671:1: rule__NavigatingSemiArgCS__Group__2 : rule__NavigatingSemiArgCS__Group__2__Impl ;
+    // InternalEssentialOCL.g:9673:1: rule__NavigatingSemiArgCS__Group__2 : rule__NavigatingSemiArgCS__Group__2__Impl ;
     public final void rule__NavigatingSemiArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9675:1: ( rule__NavigatingSemiArgCS__Group__2__Impl )
-            // InternalEssentialOCL.g:9676:2: rule__NavigatingSemiArgCS__Group__2__Impl
+            // InternalEssentialOCL.g:9677:1: ( rule__NavigatingSemiArgCS__Group__2__Impl )
+            // InternalEssentialOCL.g:9678:2: rule__NavigatingSemiArgCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__Group__2__Impl();
@@ -28469,22 +28469,22 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__2__Impl"
-    // InternalEssentialOCL.g:9682:1: rule__NavigatingSemiArgCS__Group__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) ;
+    // InternalEssentialOCL.g:9684:1: rule__NavigatingSemiArgCS__Group__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) ;
     public final void rule__NavigatingSemiArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9686:1: ( ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) )
-            // InternalEssentialOCL.g:9687:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:9688:1: ( ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) )
+            // InternalEssentialOCL.g:9689:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
             {
-            // InternalEssentialOCL.g:9687:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
-            // InternalEssentialOCL.g:9688:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
+            // InternalEssentialOCL.g:9689:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:9690:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2());
             }
-            // InternalEssentialOCL.g:9689:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
+            // InternalEssentialOCL.g:9691:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             int alt76=2;
             int LA76_0 = input.LA(1);
 
@@ -28493,7 +28493,7 @@
             }
             switch (alt76) {
                 case 1 :
-                    // InternalEssentialOCL.g:9689:2: rule__NavigatingSemiArgCS__Group_2__0
+                    // InternalEssentialOCL.g:9691:2: rule__NavigatingSemiArgCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingSemiArgCS__Group_2__0();
@@ -28531,14 +28531,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__0"
-    // InternalEssentialOCL.g:9705:1: rule__NavigatingSemiArgCS__Group_2__0 : rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 ;
+    // InternalEssentialOCL.g:9707:1: rule__NavigatingSemiArgCS__Group_2__0 : rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 ;
     public final void rule__NavigatingSemiArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9709:1: ( rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 )
-            // InternalEssentialOCL.g:9710:2: rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1
+            // InternalEssentialOCL.g:9711:1: ( rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 )
+            // InternalEssentialOCL.g:9712:2: rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__NavigatingSemiArgCS__Group_2__0__Impl();
@@ -28569,17 +28569,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__0__Impl"
-    // InternalEssentialOCL.g:9717:1: rule__NavigatingSemiArgCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalEssentialOCL.g:9719:1: rule__NavigatingSemiArgCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__NavigatingSemiArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9721:1: ( ( ':' ) )
-            // InternalEssentialOCL.g:9722:1: ( ':' )
+            // InternalEssentialOCL.g:9723:1: ( ( ':' ) )
+            // InternalEssentialOCL.g:9724:1: ( ':' )
             {
-            // InternalEssentialOCL.g:9722:1: ( ':' )
-            // InternalEssentialOCL.g:9723:1: ':'
+            // InternalEssentialOCL.g:9724:1: ( ':' )
+            // InternalEssentialOCL.g:9725:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
@@ -28610,14 +28610,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__1"
-    // InternalEssentialOCL.g:9736:1: rule__NavigatingSemiArgCS__Group_2__1 : rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 ;
+    // InternalEssentialOCL.g:9738:1: rule__NavigatingSemiArgCS__Group_2__1 : rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 ;
     public final void rule__NavigatingSemiArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9740:1: ( rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 )
-            // InternalEssentialOCL.g:9741:2: rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2
+            // InternalEssentialOCL.g:9742:1: ( rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 )
+            // InternalEssentialOCL.g:9743:2: rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_20);
             rule__NavigatingSemiArgCS__Group_2__1__Impl();
@@ -28648,23 +28648,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__1__Impl"
-    // InternalEssentialOCL.g:9748:1: rule__NavigatingSemiArgCS__Group_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) ;
+    // InternalEssentialOCL.g:9750:1: rule__NavigatingSemiArgCS__Group_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9752:1: ( ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) )
-            // InternalEssentialOCL.g:9753:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalEssentialOCL.g:9754:1: ( ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) )
+            // InternalEssentialOCL.g:9755:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
             {
-            // InternalEssentialOCL.g:9753:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
-            // InternalEssentialOCL.g:9754:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
+            // InternalEssentialOCL.g:9755:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalEssentialOCL.g:9756:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1());
             }
-            // InternalEssentialOCL.g:9755:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
-            // InternalEssentialOCL.g:9755:2: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1
+            // InternalEssentialOCL.g:9757:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
+            // InternalEssentialOCL.g:9757:2: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1();
@@ -28699,14 +28699,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__2"
-    // InternalEssentialOCL.g:9765:1: rule__NavigatingSemiArgCS__Group_2__2 : rule__NavigatingSemiArgCS__Group_2__2__Impl ;
+    // InternalEssentialOCL.g:9767:1: rule__NavigatingSemiArgCS__Group_2__2 : rule__NavigatingSemiArgCS__Group_2__2__Impl ;
     public final void rule__NavigatingSemiArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9769:1: ( rule__NavigatingSemiArgCS__Group_2__2__Impl )
-            // InternalEssentialOCL.g:9770:2: rule__NavigatingSemiArgCS__Group_2__2__Impl
+            // InternalEssentialOCL.g:9771:1: ( rule__NavigatingSemiArgCS__Group_2__2__Impl )
+            // InternalEssentialOCL.g:9772:2: rule__NavigatingSemiArgCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__Group_2__2__Impl();
@@ -28732,22 +28732,22 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__2__Impl"
-    // InternalEssentialOCL.g:9776:1: rule__NavigatingSemiArgCS__Group_2__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) ;
+    // InternalEssentialOCL.g:9778:1: rule__NavigatingSemiArgCS__Group_2__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) ;
     public final void rule__NavigatingSemiArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9780:1: ( ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) )
-            // InternalEssentialOCL.g:9781:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
+            // InternalEssentialOCL.g:9782:1: ( ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) )
+            // InternalEssentialOCL.g:9783:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
             {
-            // InternalEssentialOCL.g:9781:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
-            // InternalEssentialOCL.g:9782:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
+            // InternalEssentialOCL.g:9783:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
+            // InternalEssentialOCL.g:9784:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2());
             }
-            // InternalEssentialOCL.g:9783:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
+            // InternalEssentialOCL.g:9785:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             int alt77=2;
             int LA77_0 = input.LA(1);
 
@@ -28756,7 +28756,7 @@
             }
             switch (alt77) {
                 case 1 :
-                    // InternalEssentialOCL.g:9783:2: rule__NavigatingSemiArgCS__Group_2_2__0
+                    // InternalEssentialOCL.g:9785:2: rule__NavigatingSemiArgCS__Group_2_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingSemiArgCS__Group_2_2__0();
@@ -28794,14 +28794,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__0"
-    // InternalEssentialOCL.g:9799:1: rule__NavigatingSemiArgCS__Group_2_2__0 : rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 ;
+    // InternalEssentialOCL.g:9801:1: rule__NavigatingSemiArgCS__Group_2_2__0 : rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9803:1: ( rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 )
-            // InternalEssentialOCL.g:9804:2: rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1
+            // InternalEssentialOCL.g:9805:1: ( rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 )
+            // InternalEssentialOCL.g:9806:2: rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__NavigatingSemiArgCS__Group_2_2__0__Impl();
@@ -28832,17 +28832,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__0__Impl"
-    // InternalEssentialOCL.g:9811:1: rule__NavigatingSemiArgCS__Group_2_2__0__Impl : ( '=' ) ;
+    // InternalEssentialOCL.g:9813:1: rule__NavigatingSemiArgCS__Group_2_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9815:1: ( ( '=' ) )
-            // InternalEssentialOCL.g:9816:1: ( '=' )
+            // InternalEssentialOCL.g:9817:1: ( ( '=' ) )
+            // InternalEssentialOCL.g:9818:1: ( '=' )
             {
-            // InternalEssentialOCL.g:9816:1: ( '=' )
-            // InternalEssentialOCL.g:9817:1: '='
+            // InternalEssentialOCL.g:9818:1: ( '=' )
+            // InternalEssentialOCL.g:9819:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
@@ -28873,14 +28873,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__1"
-    // InternalEssentialOCL.g:9830:1: rule__NavigatingSemiArgCS__Group_2_2__1 : rule__NavigatingSemiArgCS__Group_2_2__1__Impl ;
+    // InternalEssentialOCL.g:9832:1: rule__NavigatingSemiArgCS__Group_2_2__1 : rule__NavigatingSemiArgCS__Group_2_2__1__Impl ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9834:1: ( rule__NavigatingSemiArgCS__Group_2_2__1__Impl )
-            // InternalEssentialOCL.g:9835:2: rule__NavigatingSemiArgCS__Group_2_2__1__Impl
+            // InternalEssentialOCL.g:9836:1: ( rule__NavigatingSemiArgCS__Group_2_2__1__Impl )
+            // InternalEssentialOCL.g:9837:2: rule__NavigatingSemiArgCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__Group_2_2__1__Impl();
@@ -28906,23 +28906,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__1__Impl"
-    // InternalEssentialOCL.g:9841:1: rule__NavigatingSemiArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
+    // InternalEssentialOCL.g:9843:1: rule__NavigatingSemiArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9845:1: ( ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
-            // InternalEssentialOCL.g:9846:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalEssentialOCL.g:9847:1: ( ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
+            // InternalEssentialOCL.g:9848:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
             {
-            // InternalEssentialOCL.g:9846:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
-            // InternalEssentialOCL.g:9847:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalEssentialOCL.g:9848:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalEssentialOCL.g:9849:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
-            // InternalEssentialOCL.g:9848:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
-            // InternalEssentialOCL.g:9848:2: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1
+            // InternalEssentialOCL.g:9850:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalEssentialOCL.g:9850:2: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1();
@@ -28957,14 +28957,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__0"
-    // InternalEssentialOCL.g:9862:1: rule__CoIteratorVariableCS__Group__0 : rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 ;
+    // InternalEssentialOCL.g:9864:1: rule__CoIteratorVariableCS__Group__0 : rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 ;
     public final void rule__CoIteratorVariableCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9866:1: ( rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 )
-            // InternalEssentialOCL.g:9867:2: rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1
+            // InternalEssentialOCL.g:9868:1: ( rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 )
+            // InternalEssentialOCL.g:9869:2: rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__CoIteratorVariableCS__Group__0__Impl();
@@ -28995,23 +28995,23 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__0__Impl"
-    // InternalEssentialOCL.g:9874:1: rule__CoIteratorVariableCS__Group__0__Impl : ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:9876:1: rule__CoIteratorVariableCS__Group__0__Impl : ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) ;
     public final void rule__CoIteratorVariableCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9878:1: ( ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) )
-            // InternalEssentialOCL.g:9879:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:9880:1: ( ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) )
+            // InternalEssentialOCL.g:9881:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:9879:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
-            // InternalEssentialOCL.g:9880:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:9881:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:9882:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getNameAssignment_0());
             }
-            // InternalEssentialOCL.g:9881:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
-            // InternalEssentialOCL.g:9881:2: rule__CoIteratorVariableCS__NameAssignment_0
+            // InternalEssentialOCL.g:9883:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:9883:2: rule__CoIteratorVariableCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__NameAssignment_0();
@@ -29046,14 +29046,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__1"
-    // InternalEssentialOCL.g:9891:1: rule__CoIteratorVariableCS__Group__1 : rule__CoIteratorVariableCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:9893:1: rule__CoIteratorVariableCS__Group__1 : rule__CoIteratorVariableCS__Group__1__Impl ;
     public final void rule__CoIteratorVariableCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9895:1: ( rule__CoIteratorVariableCS__Group__1__Impl )
-            // InternalEssentialOCL.g:9896:2: rule__CoIteratorVariableCS__Group__1__Impl
+            // InternalEssentialOCL.g:9897:1: ( rule__CoIteratorVariableCS__Group__1__Impl )
+            // InternalEssentialOCL.g:9898:2: rule__CoIteratorVariableCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__Group__1__Impl();
@@ -29079,22 +29079,22 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__1__Impl"
-    // InternalEssentialOCL.g:9902:1: rule__CoIteratorVariableCS__Group__1__Impl : ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) ;
+    // InternalEssentialOCL.g:9904:1: rule__CoIteratorVariableCS__Group__1__Impl : ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) ;
     public final void rule__CoIteratorVariableCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9906:1: ( ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) )
-            // InternalEssentialOCL.g:9907:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:9908:1: ( ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) )
+            // InternalEssentialOCL.g:9909:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
             {
-            // InternalEssentialOCL.g:9907:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
-            // InternalEssentialOCL.g:9908:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
+            // InternalEssentialOCL.g:9909:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:9910:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getGroup_1());
             }
-            // InternalEssentialOCL.g:9909:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
+            // InternalEssentialOCL.g:9911:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
             int alt78=2;
             int LA78_0 = input.LA(1);
 
@@ -29103,7 +29103,7 @@
             }
             switch (alt78) {
                 case 1 :
-                    // InternalEssentialOCL.g:9909:2: rule__CoIteratorVariableCS__Group_1__0
+                    // InternalEssentialOCL.g:9911:2: rule__CoIteratorVariableCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CoIteratorVariableCS__Group_1__0();
@@ -29141,14 +29141,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__0"
-    // InternalEssentialOCL.g:9923:1: rule__CoIteratorVariableCS__Group_1__0 : rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 ;
+    // InternalEssentialOCL.g:9925:1: rule__CoIteratorVariableCS__Group_1__0 : rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 ;
     public final void rule__CoIteratorVariableCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9927:1: ( rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 )
-            // InternalEssentialOCL.g:9928:2: rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1
+            // InternalEssentialOCL.g:9929:1: ( rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 )
+            // InternalEssentialOCL.g:9930:2: rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__CoIteratorVariableCS__Group_1__0__Impl();
@@ -29179,17 +29179,17 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:9935:1: rule__CoIteratorVariableCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalEssentialOCL.g:9937:1: rule__CoIteratorVariableCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__CoIteratorVariableCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9939:1: ( ( ':' ) )
-            // InternalEssentialOCL.g:9940:1: ( ':' )
+            // InternalEssentialOCL.g:9941:1: ( ( ':' ) )
+            // InternalEssentialOCL.g:9942:1: ( ':' )
             {
-            // InternalEssentialOCL.g:9940:1: ( ':' )
-            // InternalEssentialOCL.g:9941:1: ':'
+            // InternalEssentialOCL.g:9942:1: ( ':' )
+            // InternalEssentialOCL.g:9943:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getColonKeyword_1_0());
@@ -29220,14 +29220,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__1"
-    // InternalEssentialOCL.g:9954:1: rule__CoIteratorVariableCS__Group_1__1 : rule__CoIteratorVariableCS__Group_1__1__Impl ;
+    // InternalEssentialOCL.g:9956:1: rule__CoIteratorVariableCS__Group_1__1 : rule__CoIteratorVariableCS__Group_1__1__Impl ;
     public final void rule__CoIteratorVariableCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9958:1: ( rule__CoIteratorVariableCS__Group_1__1__Impl )
-            // InternalEssentialOCL.g:9959:2: rule__CoIteratorVariableCS__Group_1__1__Impl
+            // InternalEssentialOCL.g:9960:1: ( rule__CoIteratorVariableCS__Group_1__1__Impl )
+            // InternalEssentialOCL.g:9961:2: rule__CoIteratorVariableCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__Group_1__1__Impl();
@@ -29253,23 +29253,23 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:9965:1: rule__CoIteratorVariableCS__Group_1__1__Impl : ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalEssentialOCL.g:9967:1: rule__CoIteratorVariableCS__Group_1__1__Impl : ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__CoIteratorVariableCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9969:1: ( ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalEssentialOCL.g:9970:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
+            // InternalEssentialOCL.g:9971:1: ( ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalEssentialOCL.g:9972:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalEssentialOCL.g:9970:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
-            // InternalEssentialOCL.g:9971:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
+            // InternalEssentialOCL.g:9972:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
+            // InternalEssentialOCL.g:9973:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalEssentialOCL.g:9972:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
-            // InternalEssentialOCL.g:9972:2: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1
+            // InternalEssentialOCL.g:9974:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
+            // InternalEssentialOCL.g:9974:2: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1();
@@ -29304,14 +29304,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__0"
-    // InternalEssentialOCL.g:9986:1: rule__IfExpCS__Group__0 : rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 ;
+    // InternalEssentialOCL.g:9988:1: rule__IfExpCS__Group__0 : rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 ;
     public final void rule__IfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:9990:1: ( rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 )
-            // InternalEssentialOCL.g:9991:2: rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1
+            // InternalEssentialOCL.g:9992:1: ( rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 )
+            // InternalEssentialOCL.g:9993:2: rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__IfExpCS__Group__0__Impl();
@@ -29342,17 +29342,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:9998:1: rule__IfExpCS__Group__0__Impl : ( 'if' ) ;
+    // InternalEssentialOCL.g:10000:1: rule__IfExpCS__Group__0__Impl : ( 'if' ) ;
     public final void rule__IfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10002:1: ( ( 'if' ) )
-            // InternalEssentialOCL.g:10003:1: ( 'if' )
+            // InternalEssentialOCL.g:10004:1: ( ( 'if' ) )
+            // InternalEssentialOCL.g:10005:1: ( 'if' )
             {
-            // InternalEssentialOCL.g:10003:1: ( 'if' )
-            // InternalEssentialOCL.g:10004:1: 'if'
+            // InternalEssentialOCL.g:10005:1: ( 'if' )
+            // InternalEssentialOCL.g:10006:1: 'if'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getIfKeyword_0());
@@ -29383,14 +29383,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__1"
-    // InternalEssentialOCL.g:10017:1: rule__IfExpCS__Group__1 : rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 ;
+    // InternalEssentialOCL.g:10019:1: rule__IfExpCS__Group__1 : rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 ;
     public final void rule__IfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10021:1: ( rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 )
-            // InternalEssentialOCL.g:10022:2: rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2
+            // InternalEssentialOCL.g:10023:1: ( rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 )
+            // InternalEssentialOCL.g:10024:2: rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_44);
             rule__IfExpCS__Group__1__Impl();
@@ -29421,23 +29421,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:10029:1: rule__IfExpCS__Group__1__Impl : ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) ;
+    // InternalEssentialOCL.g:10031:1: rule__IfExpCS__Group__1__Impl : ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) ;
     public final void rule__IfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10033:1: ( ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) )
-            // InternalEssentialOCL.g:10034:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
+            // InternalEssentialOCL.g:10035:1: ( ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) )
+            // InternalEssentialOCL.g:10036:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
             {
-            // InternalEssentialOCL.g:10034:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
-            // InternalEssentialOCL.g:10035:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
+            // InternalEssentialOCL.g:10036:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
+            // InternalEssentialOCL.g:10037:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1());
             }
-            // InternalEssentialOCL.g:10036:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
-            // InternalEssentialOCL.g:10036:2: rule__IfExpCS__OwnedConditionAssignment_1
+            // InternalEssentialOCL.g:10038:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
+            // InternalEssentialOCL.g:10038:2: rule__IfExpCS__OwnedConditionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedConditionAssignment_1();
@@ -29472,14 +29472,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__2"
-    // InternalEssentialOCL.g:10046:1: rule__IfExpCS__Group__2 : rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 ;
+    // InternalEssentialOCL.g:10048:1: rule__IfExpCS__Group__2 : rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 ;
     public final void rule__IfExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10050:1: ( rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 )
-            // InternalEssentialOCL.g:10051:2: rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3
+            // InternalEssentialOCL.g:10052:1: ( rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 )
+            // InternalEssentialOCL.g:10053:2: rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__IfExpCS__Group__2__Impl();
@@ -29510,17 +29510,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__2__Impl"
-    // InternalEssentialOCL.g:10058:1: rule__IfExpCS__Group__2__Impl : ( 'then' ) ;
+    // InternalEssentialOCL.g:10060:1: rule__IfExpCS__Group__2__Impl : ( 'then' ) ;
     public final void rule__IfExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10062:1: ( ( 'then' ) )
-            // InternalEssentialOCL.g:10063:1: ( 'then' )
+            // InternalEssentialOCL.g:10064:1: ( ( 'then' ) )
+            // InternalEssentialOCL.g:10065:1: ( 'then' )
             {
-            // InternalEssentialOCL.g:10063:1: ( 'then' )
-            // InternalEssentialOCL.g:10064:1: 'then'
+            // InternalEssentialOCL.g:10065:1: ( 'then' )
+            // InternalEssentialOCL.g:10066:1: 'then'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getThenKeyword_2());
@@ -29551,14 +29551,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__3"
-    // InternalEssentialOCL.g:10077:1: rule__IfExpCS__Group__3 : rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 ;
+    // InternalEssentialOCL.g:10079:1: rule__IfExpCS__Group__3 : rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 ;
     public final void rule__IfExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10081:1: ( rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 )
-            // InternalEssentialOCL.g:10082:2: rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4
+            // InternalEssentialOCL.g:10083:1: ( rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 )
+            // InternalEssentialOCL.g:10084:2: rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_45);
             rule__IfExpCS__Group__3__Impl();
@@ -29589,23 +29589,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__3__Impl"
-    // InternalEssentialOCL.g:10089:1: rule__IfExpCS__Group__3__Impl : ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) ;
+    // InternalEssentialOCL.g:10091:1: rule__IfExpCS__Group__3__Impl : ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) ;
     public final void rule__IfExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10093:1: ( ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) )
-            // InternalEssentialOCL.g:10094:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalEssentialOCL.g:10095:1: ( ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) )
+            // InternalEssentialOCL.g:10096:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
             {
-            // InternalEssentialOCL.g:10094:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
-            // InternalEssentialOCL.g:10095:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalEssentialOCL.g:10096:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalEssentialOCL.g:10097:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
-            // InternalEssentialOCL.g:10096:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
-            // InternalEssentialOCL.g:10096:2: rule__IfExpCS__OwnedThenExpressionAssignment_3
+            // InternalEssentialOCL.g:10098:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalEssentialOCL.g:10098:2: rule__IfExpCS__OwnedThenExpressionAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedThenExpressionAssignment_3();
@@ -29640,14 +29640,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__4"
-    // InternalEssentialOCL.g:10106:1: rule__IfExpCS__Group__4 : rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 ;
+    // InternalEssentialOCL.g:10108:1: rule__IfExpCS__Group__4 : rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 ;
     public final void rule__IfExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10110:1: ( rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 )
-            // InternalEssentialOCL.g:10111:2: rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5
+            // InternalEssentialOCL.g:10112:1: ( rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 )
+            // InternalEssentialOCL.g:10113:2: rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_45);
             rule__IfExpCS__Group__4__Impl();
@@ -29678,22 +29678,22 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__4__Impl"
-    // InternalEssentialOCL.g:10118:1: rule__IfExpCS__Group__4__Impl : ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) ;
+    // InternalEssentialOCL.g:10120:1: rule__IfExpCS__Group__4__Impl : ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) ;
     public final void rule__IfExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10122:1: ( ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) )
-            // InternalEssentialOCL.g:10123:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
+            // InternalEssentialOCL.g:10124:1: ( ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) )
+            // InternalEssentialOCL.g:10125:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
             {
-            // InternalEssentialOCL.g:10123:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
-            // InternalEssentialOCL.g:10124:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
+            // InternalEssentialOCL.g:10125:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
+            // InternalEssentialOCL.g:10126:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4());
             }
-            // InternalEssentialOCL.g:10125:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
+            // InternalEssentialOCL.g:10127:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             loop79:
             do {
                 int alt79=2;
@@ -29706,7 +29706,7 @@
 
                 switch (alt79) {
             	case 1 :
-            	    // InternalEssentialOCL.g:10125:2: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4
+            	    // InternalEssentialOCL.g:10127:2: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4
             	    {
             	    pushFollow(FollowSets000.FOLLOW_46);
             	    rule__IfExpCS__OwnedIfThenExpressionsAssignment_4();
@@ -29747,14 +29747,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__5"
-    // InternalEssentialOCL.g:10135:1: rule__IfExpCS__Group__5 : rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 ;
+    // InternalEssentialOCL.g:10137:1: rule__IfExpCS__Group__5 : rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 ;
     public final void rule__IfExpCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10139:1: ( rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 )
-            // InternalEssentialOCL.g:10140:2: rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6
+            // InternalEssentialOCL.g:10141:1: ( rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 )
+            // InternalEssentialOCL.g:10142:2: rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__IfExpCS__Group__5__Impl();
@@ -29785,17 +29785,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__5__Impl"
-    // InternalEssentialOCL.g:10147:1: rule__IfExpCS__Group__5__Impl : ( 'else' ) ;
+    // InternalEssentialOCL.g:10149:1: rule__IfExpCS__Group__5__Impl : ( 'else' ) ;
     public final void rule__IfExpCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10151:1: ( ( 'else' ) )
-            // InternalEssentialOCL.g:10152:1: ( 'else' )
+            // InternalEssentialOCL.g:10153:1: ( ( 'else' ) )
+            // InternalEssentialOCL.g:10154:1: ( 'else' )
             {
-            // InternalEssentialOCL.g:10152:1: ( 'else' )
-            // InternalEssentialOCL.g:10153:1: 'else'
+            // InternalEssentialOCL.g:10154:1: ( 'else' )
+            // InternalEssentialOCL.g:10155:1: 'else'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getElseKeyword_5());
@@ -29826,14 +29826,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__6"
-    // InternalEssentialOCL.g:10166:1: rule__IfExpCS__Group__6 : rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 ;
+    // InternalEssentialOCL.g:10168:1: rule__IfExpCS__Group__6 : rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 ;
     public final void rule__IfExpCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10170:1: ( rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 )
-            // InternalEssentialOCL.g:10171:2: rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7
+            // InternalEssentialOCL.g:10172:1: ( rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 )
+            // InternalEssentialOCL.g:10173:2: rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7
             {
             pushFollow(FollowSets000.FOLLOW_47);
             rule__IfExpCS__Group__6__Impl();
@@ -29864,23 +29864,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__6__Impl"
-    // InternalEssentialOCL.g:10178:1: rule__IfExpCS__Group__6__Impl : ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) ;
+    // InternalEssentialOCL.g:10180:1: rule__IfExpCS__Group__6__Impl : ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) ;
     public final void rule__IfExpCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10182:1: ( ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) )
-            // InternalEssentialOCL.g:10183:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
+            // InternalEssentialOCL.g:10184:1: ( ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) )
+            // InternalEssentialOCL.g:10185:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
             {
-            // InternalEssentialOCL.g:10183:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
-            // InternalEssentialOCL.g:10184:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
+            // InternalEssentialOCL.g:10185:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
+            // InternalEssentialOCL.g:10186:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6());
             }
-            // InternalEssentialOCL.g:10185:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
-            // InternalEssentialOCL.g:10185:2: rule__IfExpCS__OwnedElseExpressionAssignment_6
+            // InternalEssentialOCL.g:10187:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
+            // InternalEssentialOCL.g:10187:2: rule__IfExpCS__OwnedElseExpressionAssignment_6
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedElseExpressionAssignment_6();
@@ -29915,14 +29915,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__7"
-    // InternalEssentialOCL.g:10195:1: rule__IfExpCS__Group__7 : rule__IfExpCS__Group__7__Impl ;
+    // InternalEssentialOCL.g:10197:1: rule__IfExpCS__Group__7 : rule__IfExpCS__Group__7__Impl ;
     public final void rule__IfExpCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10199:1: ( rule__IfExpCS__Group__7__Impl )
-            // InternalEssentialOCL.g:10200:2: rule__IfExpCS__Group__7__Impl
+            // InternalEssentialOCL.g:10201:1: ( rule__IfExpCS__Group__7__Impl )
+            // InternalEssentialOCL.g:10202:2: rule__IfExpCS__Group__7__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__Group__7__Impl();
@@ -29948,17 +29948,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__7__Impl"
-    // InternalEssentialOCL.g:10206:1: rule__IfExpCS__Group__7__Impl : ( 'endif' ) ;
+    // InternalEssentialOCL.g:10208:1: rule__IfExpCS__Group__7__Impl : ( 'endif' ) ;
     public final void rule__IfExpCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10210:1: ( ( 'endif' ) )
-            // InternalEssentialOCL.g:10211:1: ( 'endif' )
+            // InternalEssentialOCL.g:10212:1: ( ( 'endif' ) )
+            // InternalEssentialOCL.g:10213:1: ( 'endif' )
             {
-            // InternalEssentialOCL.g:10211:1: ( 'endif' )
-            // InternalEssentialOCL.g:10212:1: 'endif'
+            // InternalEssentialOCL.g:10213:1: ( 'endif' )
+            // InternalEssentialOCL.g:10214:1: 'endif'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
@@ -29989,14 +29989,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__0"
-    // InternalEssentialOCL.g:10241:1: rule__ElseIfThenExpCS__Group__0 : rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 ;
+    // InternalEssentialOCL.g:10243:1: rule__ElseIfThenExpCS__Group__0 : rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 ;
     public final void rule__ElseIfThenExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10245:1: ( rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 )
-            // InternalEssentialOCL.g:10246:2: rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1
+            // InternalEssentialOCL.g:10247:1: ( rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 )
+            // InternalEssentialOCL.g:10248:2: rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__ElseIfThenExpCS__Group__0__Impl();
@@ -30027,17 +30027,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:10253:1: rule__ElseIfThenExpCS__Group__0__Impl : ( 'elseif' ) ;
+    // InternalEssentialOCL.g:10255:1: rule__ElseIfThenExpCS__Group__0__Impl : ( 'elseif' ) ;
     public final void rule__ElseIfThenExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10257:1: ( ( 'elseif' ) )
-            // InternalEssentialOCL.g:10258:1: ( 'elseif' )
+            // InternalEssentialOCL.g:10259:1: ( ( 'elseif' ) )
+            // InternalEssentialOCL.g:10260:1: ( 'elseif' )
             {
-            // InternalEssentialOCL.g:10258:1: ( 'elseif' )
-            // InternalEssentialOCL.g:10259:1: 'elseif'
+            // InternalEssentialOCL.g:10260:1: ( 'elseif' )
+            // InternalEssentialOCL.g:10261:1: 'elseif'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
@@ -30068,14 +30068,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__1"
-    // InternalEssentialOCL.g:10272:1: rule__ElseIfThenExpCS__Group__1 : rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 ;
+    // InternalEssentialOCL.g:10274:1: rule__ElseIfThenExpCS__Group__1 : rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 ;
     public final void rule__ElseIfThenExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10276:1: ( rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 )
-            // InternalEssentialOCL.g:10277:2: rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2
+            // InternalEssentialOCL.g:10278:1: ( rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 )
+            // InternalEssentialOCL.g:10279:2: rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_44);
             rule__ElseIfThenExpCS__Group__1__Impl();
@@ -30106,23 +30106,23 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:10284:1: rule__ElseIfThenExpCS__Group__1__Impl : ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) ;
+    // InternalEssentialOCL.g:10286:1: rule__ElseIfThenExpCS__Group__1__Impl : ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) ;
     public final void rule__ElseIfThenExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10288:1: ( ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) )
-            // InternalEssentialOCL.g:10289:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
+            // InternalEssentialOCL.g:10290:1: ( ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) )
+            // InternalEssentialOCL.g:10291:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
             {
-            // InternalEssentialOCL.g:10289:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
-            // InternalEssentialOCL.g:10290:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
+            // InternalEssentialOCL.g:10291:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
+            // InternalEssentialOCL.g:10292:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1());
             }
-            // InternalEssentialOCL.g:10291:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
-            // InternalEssentialOCL.g:10291:2: rule__ElseIfThenExpCS__OwnedConditionAssignment_1
+            // InternalEssentialOCL.g:10293:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
+            // InternalEssentialOCL.g:10293:2: rule__ElseIfThenExpCS__OwnedConditionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ElseIfThenExpCS__OwnedConditionAssignment_1();
@@ -30157,14 +30157,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__2"
-    // InternalEssentialOCL.g:10301:1: rule__ElseIfThenExpCS__Group__2 : rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 ;
+    // InternalEssentialOCL.g:10303:1: rule__ElseIfThenExpCS__Group__2 : rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 ;
     public final void rule__ElseIfThenExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10305:1: ( rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 )
-            // InternalEssentialOCL.g:10306:2: rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3
+            // InternalEssentialOCL.g:10307:1: ( rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 )
+            // InternalEssentialOCL.g:10308:2: rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__ElseIfThenExpCS__Group__2__Impl();
@@ -30195,17 +30195,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__2__Impl"
-    // InternalEssentialOCL.g:10313:1: rule__ElseIfThenExpCS__Group__2__Impl : ( 'then' ) ;
+    // InternalEssentialOCL.g:10315:1: rule__ElseIfThenExpCS__Group__2__Impl : ( 'then' ) ;
     public final void rule__ElseIfThenExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10317:1: ( ( 'then' ) )
-            // InternalEssentialOCL.g:10318:1: ( 'then' )
+            // InternalEssentialOCL.g:10319:1: ( ( 'then' ) )
+            // InternalEssentialOCL.g:10320:1: ( 'then' )
             {
-            // InternalEssentialOCL.g:10318:1: ( 'then' )
-            // InternalEssentialOCL.g:10319:1: 'then'
+            // InternalEssentialOCL.g:10320:1: ( 'then' )
+            // InternalEssentialOCL.g:10321:1: 'then'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
@@ -30236,14 +30236,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__3"
-    // InternalEssentialOCL.g:10332:1: rule__ElseIfThenExpCS__Group__3 : rule__ElseIfThenExpCS__Group__3__Impl ;
+    // InternalEssentialOCL.g:10334:1: rule__ElseIfThenExpCS__Group__3 : rule__ElseIfThenExpCS__Group__3__Impl ;
     public final void rule__ElseIfThenExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10336:1: ( rule__ElseIfThenExpCS__Group__3__Impl )
-            // InternalEssentialOCL.g:10337:2: rule__ElseIfThenExpCS__Group__3__Impl
+            // InternalEssentialOCL.g:10338:1: ( rule__ElseIfThenExpCS__Group__3__Impl )
+            // InternalEssentialOCL.g:10339:2: rule__ElseIfThenExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ElseIfThenExpCS__Group__3__Impl();
@@ -30269,23 +30269,23 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__3__Impl"
-    // InternalEssentialOCL.g:10343:1: rule__ElseIfThenExpCS__Group__3__Impl : ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) ;
+    // InternalEssentialOCL.g:10345:1: rule__ElseIfThenExpCS__Group__3__Impl : ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) ;
     public final void rule__ElseIfThenExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10347:1: ( ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) )
-            // InternalEssentialOCL.g:10348:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalEssentialOCL.g:10349:1: ( ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) )
+            // InternalEssentialOCL.g:10350:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
             {
-            // InternalEssentialOCL.g:10348:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
-            // InternalEssentialOCL.g:10349:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalEssentialOCL.g:10350:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalEssentialOCL.g:10351:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
-            // InternalEssentialOCL.g:10350:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
-            // InternalEssentialOCL.g:10350:2: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3
+            // InternalEssentialOCL.g:10352:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalEssentialOCL.g:10352:2: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3();
@@ -30320,14 +30320,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__0"
-    // InternalEssentialOCL.g:10368:1: rule__LetExpCS__Group__0 : rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 ;
+    // InternalEssentialOCL.g:10370:1: rule__LetExpCS__Group__0 : rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 ;
     public final void rule__LetExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10372:1: ( rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 )
-            // InternalEssentialOCL.g:10373:2: rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1
+            // InternalEssentialOCL.g:10374:1: ( rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 )
+            // InternalEssentialOCL.g:10375:2: rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__LetExpCS__Group__0__Impl();
@@ -30358,17 +30358,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:10380:1: rule__LetExpCS__Group__0__Impl : ( 'let' ) ;
+    // InternalEssentialOCL.g:10382:1: rule__LetExpCS__Group__0__Impl : ( 'let' ) ;
     public final void rule__LetExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10384:1: ( ( 'let' ) )
-            // InternalEssentialOCL.g:10385:1: ( 'let' )
+            // InternalEssentialOCL.g:10386:1: ( ( 'let' ) )
+            // InternalEssentialOCL.g:10387:1: ( 'let' )
             {
-            // InternalEssentialOCL.g:10385:1: ( 'let' )
-            // InternalEssentialOCL.g:10386:1: 'let'
+            // InternalEssentialOCL.g:10387:1: ( 'let' )
+            // InternalEssentialOCL.g:10388:1: 'let'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getLetKeyword_0());
@@ -30399,14 +30399,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__1"
-    // InternalEssentialOCL.g:10399:1: rule__LetExpCS__Group__1 : rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 ;
+    // InternalEssentialOCL.g:10401:1: rule__LetExpCS__Group__1 : rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 ;
     public final void rule__LetExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10403:1: ( rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 )
-            // InternalEssentialOCL.g:10404:2: rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2
+            // InternalEssentialOCL.g:10405:1: ( rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 )
+            // InternalEssentialOCL.g:10406:2: rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_48);
             rule__LetExpCS__Group__1__Impl();
@@ -30437,23 +30437,23 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:10411:1: rule__LetExpCS__Group__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) ;
+    // InternalEssentialOCL.g:10413:1: rule__LetExpCS__Group__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) ;
     public final void rule__LetExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10415:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) )
-            // InternalEssentialOCL.g:10416:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
+            // InternalEssentialOCL.g:10417:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) )
+            // InternalEssentialOCL.g:10418:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
             {
-            // InternalEssentialOCL.g:10416:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
-            // InternalEssentialOCL.g:10417:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
+            // InternalEssentialOCL.g:10418:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
+            // InternalEssentialOCL.g:10419:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1());
             }
-            // InternalEssentialOCL.g:10418:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
-            // InternalEssentialOCL.g:10418:2: rule__LetExpCS__OwnedVariablesAssignment_1
+            // InternalEssentialOCL.g:10420:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
+            // InternalEssentialOCL.g:10420:2: rule__LetExpCS__OwnedVariablesAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__OwnedVariablesAssignment_1();
@@ -30488,14 +30488,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__2"
-    // InternalEssentialOCL.g:10428:1: rule__LetExpCS__Group__2 : rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 ;
+    // InternalEssentialOCL.g:10430:1: rule__LetExpCS__Group__2 : rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 ;
     public final void rule__LetExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10432:1: ( rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 )
-            // InternalEssentialOCL.g:10433:2: rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3
+            // InternalEssentialOCL.g:10434:1: ( rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 )
+            // InternalEssentialOCL.g:10435:2: rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_48);
             rule__LetExpCS__Group__2__Impl();
@@ -30526,22 +30526,22 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__2__Impl"
-    // InternalEssentialOCL.g:10440:1: rule__LetExpCS__Group__2__Impl : ( ( rule__LetExpCS__Group_2__0 )* ) ;
+    // InternalEssentialOCL.g:10442:1: rule__LetExpCS__Group__2__Impl : ( ( rule__LetExpCS__Group_2__0 )* ) ;
     public final void rule__LetExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10444:1: ( ( ( rule__LetExpCS__Group_2__0 )* ) )
-            // InternalEssentialOCL.g:10445:1: ( ( rule__LetExpCS__Group_2__0 )* )
+            // InternalEssentialOCL.g:10446:1: ( ( ( rule__LetExpCS__Group_2__0 )* ) )
+            // InternalEssentialOCL.g:10447:1: ( ( rule__LetExpCS__Group_2__0 )* )
             {
-            // InternalEssentialOCL.g:10445:1: ( ( rule__LetExpCS__Group_2__0 )* )
-            // InternalEssentialOCL.g:10446:1: ( rule__LetExpCS__Group_2__0 )*
+            // InternalEssentialOCL.g:10447:1: ( ( rule__LetExpCS__Group_2__0 )* )
+            // InternalEssentialOCL.g:10448:1: ( rule__LetExpCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getGroup_2());
             }
-            // InternalEssentialOCL.g:10447:1: ( rule__LetExpCS__Group_2__0 )*
+            // InternalEssentialOCL.g:10449:1: ( rule__LetExpCS__Group_2__0 )*
             loop80:
             do {
                 int alt80=2;
@@ -30554,7 +30554,7 @@
 
                 switch (alt80) {
             	case 1 :
-            	    // InternalEssentialOCL.g:10447:2: rule__LetExpCS__Group_2__0
+            	    // InternalEssentialOCL.g:10449:2: rule__LetExpCS__Group_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_11);
             	    rule__LetExpCS__Group_2__0();
@@ -30595,14 +30595,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__3"
-    // InternalEssentialOCL.g:10457:1: rule__LetExpCS__Group__3 : rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 ;
+    // InternalEssentialOCL.g:10459:1: rule__LetExpCS__Group__3 : rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 ;
     public final void rule__LetExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10461:1: ( rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 )
-            // InternalEssentialOCL.g:10462:2: rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4
+            // InternalEssentialOCL.g:10463:1: ( rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 )
+            // InternalEssentialOCL.g:10464:2: rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__LetExpCS__Group__3__Impl();
@@ -30633,17 +30633,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__3__Impl"
-    // InternalEssentialOCL.g:10469:1: rule__LetExpCS__Group__3__Impl : ( 'in' ) ;
+    // InternalEssentialOCL.g:10471:1: rule__LetExpCS__Group__3__Impl : ( 'in' ) ;
     public final void rule__LetExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10473:1: ( ( 'in' ) )
-            // InternalEssentialOCL.g:10474:1: ( 'in' )
+            // InternalEssentialOCL.g:10475:1: ( ( 'in' ) )
+            // InternalEssentialOCL.g:10476:1: ( 'in' )
             {
-            // InternalEssentialOCL.g:10474:1: ( 'in' )
-            // InternalEssentialOCL.g:10475:1: 'in'
+            // InternalEssentialOCL.g:10476:1: ( 'in' )
+            // InternalEssentialOCL.g:10477:1: 'in'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getInKeyword_3());
@@ -30674,14 +30674,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__4"
-    // InternalEssentialOCL.g:10488:1: rule__LetExpCS__Group__4 : rule__LetExpCS__Group__4__Impl ;
+    // InternalEssentialOCL.g:10490:1: rule__LetExpCS__Group__4 : rule__LetExpCS__Group__4__Impl ;
     public final void rule__LetExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10492:1: ( rule__LetExpCS__Group__4__Impl )
-            // InternalEssentialOCL.g:10493:2: rule__LetExpCS__Group__4__Impl
+            // InternalEssentialOCL.g:10494:1: ( rule__LetExpCS__Group__4__Impl )
+            // InternalEssentialOCL.g:10495:2: rule__LetExpCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__Group__4__Impl();
@@ -30707,23 +30707,23 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__4__Impl"
-    // InternalEssentialOCL.g:10499:1: rule__LetExpCS__Group__4__Impl : ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) ;
+    // InternalEssentialOCL.g:10501:1: rule__LetExpCS__Group__4__Impl : ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) ;
     public final void rule__LetExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10503:1: ( ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) )
-            // InternalEssentialOCL.g:10504:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
+            // InternalEssentialOCL.g:10505:1: ( ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) )
+            // InternalEssentialOCL.g:10506:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
             {
-            // InternalEssentialOCL.g:10504:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
-            // InternalEssentialOCL.g:10505:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
+            // InternalEssentialOCL.g:10506:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
+            // InternalEssentialOCL.g:10507:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4());
             }
-            // InternalEssentialOCL.g:10506:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
-            // InternalEssentialOCL.g:10506:2: rule__LetExpCS__OwnedInExpressionAssignment_4
+            // InternalEssentialOCL.g:10508:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
+            // InternalEssentialOCL.g:10508:2: rule__LetExpCS__OwnedInExpressionAssignment_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__OwnedInExpressionAssignment_4();
@@ -30758,14 +30758,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__0"
-    // InternalEssentialOCL.g:10526:1: rule__LetExpCS__Group_2__0 : rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 ;
+    // InternalEssentialOCL.g:10528:1: rule__LetExpCS__Group_2__0 : rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 ;
     public final void rule__LetExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10530:1: ( rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 )
-            // InternalEssentialOCL.g:10531:2: rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1
+            // InternalEssentialOCL.g:10532:1: ( rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 )
+            // InternalEssentialOCL.g:10533:2: rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__LetExpCS__Group_2__0__Impl();
@@ -30796,17 +30796,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__0__Impl"
-    // InternalEssentialOCL.g:10538:1: rule__LetExpCS__Group_2__0__Impl : ( ',' ) ;
+    // InternalEssentialOCL.g:10540:1: rule__LetExpCS__Group_2__0__Impl : ( ',' ) ;
     public final void rule__LetExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10542:1: ( ( ',' ) )
-            // InternalEssentialOCL.g:10543:1: ( ',' )
+            // InternalEssentialOCL.g:10544:1: ( ( ',' ) )
+            // InternalEssentialOCL.g:10545:1: ( ',' )
             {
-            // InternalEssentialOCL.g:10543:1: ( ',' )
-            // InternalEssentialOCL.g:10544:1: ','
+            // InternalEssentialOCL.g:10545:1: ( ',' )
+            // InternalEssentialOCL.g:10546:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
@@ -30837,14 +30837,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__1"
-    // InternalEssentialOCL.g:10557:1: rule__LetExpCS__Group_2__1 : rule__LetExpCS__Group_2__1__Impl ;
+    // InternalEssentialOCL.g:10559:1: rule__LetExpCS__Group_2__1 : rule__LetExpCS__Group_2__1__Impl ;
     public final void rule__LetExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10561:1: ( rule__LetExpCS__Group_2__1__Impl )
-            // InternalEssentialOCL.g:10562:2: rule__LetExpCS__Group_2__1__Impl
+            // InternalEssentialOCL.g:10563:1: ( rule__LetExpCS__Group_2__1__Impl )
+            // InternalEssentialOCL.g:10564:2: rule__LetExpCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__Group_2__1__Impl();
@@ -30870,23 +30870,23 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__1__Impl"
-    // InternalEssentialOCL.g:10568:1: rule__LetExpCS__Group_2__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) ;
+    // InternalEssentialOCL.g:10570:1: rule__LetExpCS__Group_2__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) ;
     public final void rule__LetExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10572:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) )
-            // InternalEssentialOCL.g:10573:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
+            // InternalEssentialOCL.g:10574:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) )
+            // InternalEssentialOCL.g:10575:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
             {
-            // InternalEssentialOCL.g:10573:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
-            // InternalEssentialOCL.g:10574:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
+            // InternalEssentialOCL.g:10575:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
+            // InternalEssentialOCL.g:10576:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1());
             }
-            // InternalEssentialOCL.g:10575:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
-            // InternalEssentialOCL.g:10575:2: rule__LetExpCS__OwnedVariablesAssignment_2_1
+            // InternalEssentialOCL.g:10577:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
+            // InternalEssentialOCL.g:10577:2: rule__LetExpCS__OwnedVariablesAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__OwnedVariablesAssignment_2_1();
@@ -30921,14 +30921,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__0"
-    // InternalEssentialOCL.g:10589:1: rule__LetVariableCS__Group__0 : rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 ;
+    // InternalEssentialOCL.g:10591:1: rule__LetVariableCS__Group__0 : rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 ;
     public final void rule__LetVariableCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10593:1: ( rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 )
-            // InternalEssentialOCL.g:10594:2: rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1
+            // InternalEssentialOCL.g:10595:1: ( rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 )
+            // InternalEssentialOCL.g:10596:2: rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_49);
             rule__LetVariableCS__Group__0__Impl();
@@ -30959,23 +30959,23 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__0__Impl"
-    // InternalEssentialOCL.g:10601:1: rule__LetVariableCS__Group__0__Impl : ( ( rule__LetVariableCS__NameAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:10603:1: rule__LetVariableCS__Group__0__Impl : ( ( rule__LetVariableCS__NameAssignment_0 ) ) ;
     public final void rule__LetVariableCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10605:1: ( ( ( rule__LetVariableCS__NameAssignment_0 ) ) )
-            // InternalEssentialOCL.g:10606:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:10607:1: ( ( ( rule__LetVariableCS__NameAssignment_0 ) ) )
+            // InternalEssentialOCL.g:10608:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:10606:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
-            // InternalEssentialOCL.g:10607:1: ( rule__LetVariableCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:10608:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:10609:1: ( rule__LetVariableCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getNameAssignment_0());
             }
-            // InternalEssentialOCL.g:10608:1: ( rule__LetVariableCS__NameAssignment_0 )
-            // InternalEssentialOCL.g:10608:2: rule__LetVariableCS__NameAssignment_0
+            // InternalEssentialOCL.g:10610:1: ( rule__LetVariableCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:10610:2: rule__LetVariableCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__NameAssignment_0();
@@ -31010,14 +31010,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__1"
-    // InternalEssentialOCL.g:10618:1: rule__LetVariableCS__Group__1 : rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 ;
+    // InternalEssentialOCL.g:10620:1: rule__LetVariableCS__Group__1 : rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 ;
     public final void rule__LetVariableCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10622:1: ( rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 )
-            // InternalEssentialOCL.g:10623:2: rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2
+            // InternalEssentialOCL.g:10624:1: ( rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 )
+            // InternalEssentialOCL.g:10625:2: rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_49);
             rule__LetVariableCS__Group__1__Impl();
@@ -31048,22 +31048,22 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__1__Impl"
-    // InternalEssentialOCL.g:10630:1: rule__LetVariableCS__Group__1__Impl : ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) ;
+    // InternalEssentialOCL.g:10632:1: rule__LetVariableCS__Group__1__Impl : ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) ;
     public final void rule__LetVariableCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10634:1: ( ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) )
-            // InternalEssentialOCL.g:10635:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
+            // InternalEssentialOCL.g:10636:1: ( ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) )
+            // InternalEssentialOCL.g:10637:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
             {
-            // InternalEssentialOCL.g:10635:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
-            // InternalEssentialOCL.g:10636:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
+            // InternalEssentialOCL.g:10637:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
+            // InternalEssentialOCL.g:10638:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1());
             }
-            // InternalEssentialOCL.g:10637:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
+            // InternalEssentialOCL.g:10639:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             int alt81=2;
             int LA81_0 = input.LA(1);
 
@@ -31072,7 +31072,7 @@
             }
             switch (alt81) {
                 case 1 :
-                    // InternalEssentialOCL.g:10637:2: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1
+                    // InternalEssentialOCL.g:10639:2: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1();
@@ -31110,14 +31110,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__2"
-    // InternalEssentialOCL.g:10647:1: rule__LetVariableCS__Group__2 : rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 ;
+    // InternalEssentialOCL.g:10649:1: rule__LetVariableCS__Group__2 : rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 ;
     public final void rule__LetVariableCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10651:1: ( rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 )
-            // InternalEssentialOCL.g:10652:2: rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3
+            // InternalEssentialOCL.g:10653:1: ( rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 )
+            // InternalEssentialOCL.g:10654:2: rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_49);
             rule__LetVariableCS__Group__2__Impl();
@@ -31148,22 +31148,22 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__2__Impl"
-    // InternalEssentialOCL.g:10659:1: rule__LetVariableCS__Group__2__Impl : ( ( rule__LetVariableCS__Group_2__0 )? ) ;
+    // InternalEssentialOCL.g:10661:1: rule__LetVariableCS__Group__2__Impl : ( ( rule__LetVariableCS__Group_2__0 )? ) ;
     public final void rule__LetVariableCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10663:1: ( ( ( rule__LetVariableCS__Group_2__0 )? ) )
-            // InternalEssentialOCL.g:10664:1: ( ( rule__LetVariableCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:10665:1: ( ( ( rule__LetVariableCS__Group_2__0 )? ) )
+            // InternalEssentialOCL.g:10666:1: ( ( rule__LetVariableCS__Group_2__0 )? )
             {
-            // InternalEssentialOCL.g:10664:1: ( ( rule__LetVariableCS__Group_2__0 )? )
-            // InternalEssentialOCL.g:10665:1: ( rule__LetVariableCS__Group_2__0 )?
+            // InternalEssentialOCL.g:10666:1: ( ( rule__LetVariableCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:10667:1: ( rule__LetVariableCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getGroup_2());
             }
-            // InternalEssentialOCL.g:10666:1: ( rule__LetVariableCS__Group_2__0 )?
+            // InternalEssentialOCL.g:10668:1: ( rule__LetVariableCS__Group_2__0 )?
             int alt82=2;
             int LA82_0 = input.LA(1);
 
@@ -31172,7 +31172,7 @@
             }
             switch (alt82) {
                 case 1 :
-                    // InternalEssentialOCL.g:10666:2: rule__LetVariableCS__Group_2__0
+                    // InternalEssentialOCL.g:10668:2: rule__LetVariableCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LetVariableCS__Group_2__0();
@@ -31210,14 +31210,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__3"
-    // InternalEssentialOCL.g:10676:1: rule__LetVariableCS__Group__3 : rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 ;
+    // InternalEssentialOCL.g:10678:1: rule__LetVariableCS__Group__3 : rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 ;
     public final void rule__LetVariableCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10680:1: ( rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 )
-            // InternalEssentialOCL.g:10681:2: rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4
+            // InternalEssentialOCL.g:10682:1: ( rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 )
+            // InternalEssentialOCL.g:10683:2: rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__LetVariableCS__Group__3__Impl();
@@ -31248,17 +31248,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__3__Impl"
-    // InternalEssentialOCL.g:10688:1: rule__LetVariableCS__Group__3__Impl : ( '=' ) ;
+    // InternalEssentialOCL.g:10690:1: rule__LetVariableCS__Group__3__Impl : ( '=' ) ;
     public final void rule__LetVariableCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10692:1: ( ( '=' ) )
-            // InternalEssentialOCL.g:10693:1: ( '=' )
+            // InternalEssentialOCL.g:10694:1: ( ( '=' ) )
+            // InternalEssentialOCL.g:10695:1: ( '=' )
             {
-            // InternalEssentialOCL.g:10693:1: ( '=' )
-            // InternalEssentialOCL.g:10694:1: '='
+            // InternalEssentialOCL.g:10695:1: ( '=' )
+            // InternalEssentialOCL.g:10696:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
@@ -31289,14 +31289,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__4"
-    // InternalEssentialOCL.g:10707:1: rule__LetVariableCS__Group__4 : rule__LetVariableCS__Group__4__Impl ;
+    // InternalEssentialOCL.g:10709:1: rule__LetVariableCS__Group__4 : rule__LetVariableCS__Group__4__Impl ;
     public final void rule__LetVariableCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10711:1: ( rule__LetVariableCS__Group__4__Impl )
-            // InternalEssentialOCL.g:10712:2: rule__LetVariableCS__Group__4__Impl
+            // InternalEssentialOCL.g:10713:1: ( rule__LetVariableCS__Group__4__Impl )
+            // InternalEssentialOCL.g:10714:2: rule__LetVariableCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__Group__4__Impl();
@@ -31322,23 +31322,23 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__4__Impl"
-    // InternalEssentialOCL.g:10718:1: rule__LetVariableCS__Group__4__Impl : ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) ;
+    // InternalEssentialOCL.g:10720:1: rule__LetVariableCS__Group__4__Impl : ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) ;
     public final void rule__LetVariableCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10722:1: ( ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) )
-            // InternalEssentialOCL.g:10723:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
+            // InternalEssentialOCL.g:10724:1: ( ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) )
+            // InternalEssentialOCL.g:10725:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
             {
-            // InternalEssentialOCL.g:10723:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
-            // InternalEssentialOCL.g:10724:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
+            // InternalEssentialOCL.g:10725:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
+            // InternalEssentialOCL.g:10726:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4());
             }
-            // InternalEssentialOCL.g:10725:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
-            // InternalEssentialOCL.g:10725:2: rule__LetVariableCS__OwnedInitExpressionAssignment_4
+            // InternalEssentialOCL.g:10727:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
+            // InternalEssentialOCL.g:10727:2: rule__LetVariableCS__OwnedInitExpressionAssignment_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__OwnedInitExpressionAssignment_4();
@@ -31373,14 +31373,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__0"
-    // InternalEssentialOCL.g:10745:1: rule__LetVariableCS__Group_2__0 : rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 ;
+    // InternalEssentialOCL.g:10747:1: rule__LetVariableCS__Group_2__0 : rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 ;
     public final void rule__LetVariableCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10749:1: ( rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 )
-            // InternalEssentialOCL.g:10750:2: rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1
+            // InternalEssentialOCL.g:10751:1: ( rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 )
+            // InternalEssentialOCL.g:10752:2: rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__LetVariableCS__Group_2__0__Impl();
@@ -31411,17 +31411,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__0__Impl"
-    // InternalEssentialOCL.g:10757:1: rule__LetVariableCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalEssentialOCL.g:10759:1: rule__LetVariableCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__LetVariableCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10761:1: ( ( ':' ) )
-            // InternalEssentialOCL.g:10762:1: ( ':' )
+            // InternalEssentialOCL.g:10763:1: ( ( ':' ) )
+            // InternalEssentialOCL.g:10764:1: ( ':' )
             {
-            // InternalEssentialOCL.g:10762:1: ( ':' )
-            // InternalEssentialOCL.g:10763:1: ':'
+            // InternalEssentialOCL.g:10764:1: ( ':' )
+            // InternalEssentialOCL.g:10765:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
@@ -31452,14 +31452,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__1"
-    // InternalEssentialOCL.g:10776:1: rule__LetVariableCS__Group_2__1 : rule__LetVariableCS__Group_2__1__Impl ;
+    // InternalEssentialOCL.g:10778:1: rule__LetVariableCS__Group_2__1 : rule__LetVariableCS__Group_2__1__Impl ;
     public final void rule__LetVariableCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10780:1: ( rule__LetVariableCS__Group_2__1__Impl )
-            // InternalEssentialOCL.g:10781:2: rule__LetVariableCS__Group_2__1__Impl
+            // InternalEssentialOCL.g:10782:1: ( rule__LetVariableCS__Group_2__1__Impl )
+            // InternalEssentialOCL.g:10783:2: rule__LetVariableCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__Group_2__1__Impl();
@@ -31485,23 +31485,23 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__1__Impl"
-    // InternalEssentialOCL.g:10787:1: rule__LetVariableCS__Group_2__1__Impl : ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) ;
+    // InternalEssentialOCL.g:10789:1: rule__LetVariableCS__Group_2__1__Impl : ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) ;
     public final void rule__LetVariableCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10791:1: ( ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) )
-            // InternalEssentialOCL.g:10792:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
+            // InternalEssentialOCL.g:10793:1: ( ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) )
+            // InternalEssentialOCL.g:10794:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
             {
-            // InternalEssentialOCL.g:10792:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
-            // InternalEssentialOCL.g:10793:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
+            // InternalEssentialOCL.g:10794:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
+            // InternalEssentialOCL.g:10795:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1());
             }
-            // InternalEssentialOCL.g:10794:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
-            // InternalEssentialOCL.g:10794:2: rule__LetVariableCS__OwnedTypeAssignment_2_1
+            // InternalEssentialOCL.g:10796:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
+            // InternalEssentialOCL.g:10796:2: rule__LetVariableCS__OwnedTypeAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__OwnedTypeAssignment_2_1();
@@ -31536,14 +31536,14 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__0"
-    // InternalEssentialOCL.g:10808:1: rule__NestedExpCS__Group__0 : rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 ;
+    // InternalEssentialOCL.g:10810:1: rule__NestedExpCS__Group__0 : rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 ;
     public final void rule__NestedExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10812:1: ( rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 )
-            // InternalEssentialOCL.g:10813:2: rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1
+            // InternalEssentialOCL.g:10814:1: ( rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 )
+            // InternalEssentialOCL.g:10815:2: rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__NestedExpCS__Group__0__Impl();
@@ -31574,17 +31574,17 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:10820:1: rule__NestedExpCS__Group__0__Impl : ( '(' ) ;
+    // InternalEssentialOCL.g:10822:1: rule__NestedExpCS__Group__0__Impl : ( '(' ) ;
     public final void rule__NestedExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10824:1: ( ( '(' ) )
-            // InternalEssentialOCL.g:10825:1: ( '(' )
+            // InternalEssentialOCL.g:10826:1: ( ( '(' ) )
+            // InternalEssentialOCL.g:10827:1: ( '(' )
             {
-            // InternalEssentialOCL.g:10825:1: ( '(' )
-            // InternalEssentialOCL.g:10826:1: '('
+            // InternalEssentialOCL.g:10827:1: ( '(' )
+            // InternalEssentialOCL.g:10828:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
@@ -31615,14 +31615,14 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__1"
-    // InternalEssentialOCL.g:10839:1: rule__NestedExpCS__Group__1 : rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 ;
+    // InternalEssentialOCL.g:10841:1: rule__NestedExpCS__Group__1 : rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 ;
     public final void rule__NestedExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10843:1: ( rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 )
-            // InternalEssentialOCL.g:10844:2: rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2
+            // InternalEssentialOCL.g:10845:1: ( rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 )
+            // InternalEssentialOCL.g:10846:2: rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_9);
             rule__NestedExpCS__Group__1__Impl();
@@ -31653,23 +31653,23 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:10851:1: rule__NestedExpCS__Group__1__Impl : ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) ;
+    // InternalEssentialOCL.g:10853:1: rule__NestedExpCS__Group__1__Impl : ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) ;
     public final void rule__NestedExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10855:1: ( ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) )
-            // InternalEssentialOCL.g:10856:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
+            // InternalEssentialOCL.g:10857:1: ( ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) )
+            // InternalEssentialOCL.g:10858:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
             {
-            // InternalEssentialOCL.g:10856:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
-            // InternalEssentialOCL.g:10857:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
+            // InternalEssentialOCL.g:10858:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
+            // InternalEssentialOCL.g:10859:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1());
             }
-            // InternalEssentialOCL.g:10858:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
-            // InternalEssentialOCL.g:10858:2: rule__NestedExpCS__OwnedExpressionAssignment_1
+            // InternalEssentialOCL.g:10860:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
+            // InternalEssentialOCL.g:10860:2: rule__NestedExpCS__OwnedExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NestedExpCS__OwnedExpressionAssignment_1();
@@ -31704,14 +31704,14 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__2"
-    // InternalEssentialOCL.g:10868:1: rule__NestedExpCS__Group__2 : rule__NestedExpCS__Group__2__Impl ;
+    // InternalEssentialOCL.g:10870:1: rule__NestedExpCS__Group__2 : rule__NestedExpCS__Group__2__Impl ;
     public final void rule__NestedExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10872:1: ( rule__NestedExpCS__Group__2__Impl )
-            // InternalEssentialOCL.g:10873:2: rule__NestedExpCS__Group__2__Impl
+            // InternalEssentialOCL.g:10874:1: ( rule__NestedExpCS__Group__2__Impl )
+            // InternalEssentialOCL.g:10875:2: rule__NestedExpCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NestedExpCS__Group__2__Impl();
@@ -31737,17 +31737,17 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__2__Impl"
-    // InternalEssentialOCL.g:10879:1: rule__NestedExpCS__Group__2__Impl : ( ')' ) ;
+    // InternalEssentialOCL.g:10881:1: rule__NestedExpCS__Group__2__Impl : ( ')' ) ;
     public final void rule__NestedExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10883:1: ( ( ')' ) )
-            // InternalEssentialOCL.g:10884:1: ( ')' )
+            // InternalEssentialOCL.g:10885:1: ( ( ')' ) )
+            // InternalEssentialOCL.g:10886:1: ( ')' )
             {
-            // InternalEssentialOCL.g:10884:1: ( ')' )
-            // InternalEssentialOCL.g:10885:1: ')'
+            // InternalEssentialOCL.g:10886:1: ( ')' )
+            // InternalEssentialOCL.g:10887:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
@@ -31778,14 +31778,14 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__0"
-    // InternalEssentialOCL.g:10904:1: rule__SelfExpCS__Group__0 : rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 ;
+    // InternalEssentialOCL.g:10906:1: rule__SelfExpCS__Group__0 : rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 ;
     public final void rule__SelfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10908:1: ( rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 )
-            // InternalEssentialOCL.g:10909:2: rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1
+            // InternalEssentialOCL.g:10910:1: ( rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 )
+            // InternalEssentialOCL.g:10911:2: rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_50);
             rule__SelfExpCS__Group__0__Impl();
@@ -31816,23 +31816,23 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__0__Impl"
-    // InternalEssentialOCL.g:10916:1: rule__SelfExpCS__Group__0__Impl : ( () ) ;
+    // InternalEssentialOCL.g:10918:1: rule__SelfExpCS__Group__0__Impl : ( () ) ;
     public final void rule__SelfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10920:1: ( ( () ) )
-            // InternalEssentialOCL.g:10921:1: ( () )
+            // InternalEssentialOCL.g:10922:1: ( ( () ) )
+            // InternalEssentialOCL.g:10923:1: ( () )
             {
-            // InternalEssentialOCL.g:10921:1: ( () )
-            // InternalEssentialOCL.g:10922:1: ()
+            // InternalEssentialOCL.g:10923:1: ( () )
+            // InternalEssentialOCL.g:10924:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0());
             }
-            // InternalEssentialOCL.g:10923:1: ()
-            // InternalEssentialOCL.g:10925:1:
+            // InternalEssentialOCL.g:10925:1: ()
+            // InternalEssentialOCL.g:10927:1:
             {
             }
 
@@ -31857,14 +31857,14 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__1"
-    // InternalEssentialOCL.g:10935:1: rule__SelfExpCS__Group__1 : rule__SelfExpCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:10937:1: rule__SelfExpCS__Group__1 : rule__SelfExpCS__Group__1__Impl ;
     public final void rule__SelfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10939:1: ( rule__SelfExpCS__Group__1__Impl )
-            // InternalEssentialOCL.g:10940:2: rule__SelfExpCS__Group__1__Impl
+            // InternalEssentialOCL.g:10941:1: ( rule__SelfExpCS__Group__1__Impl )
+            // InternalEssentialOCL.g:10942:2: rule__SelfExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SelfExpCS__Group__1__Impl();
@@ -31890,17 +31890,17 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__1__Impl"
-    // InternalEssentialOCL.g:10946:1: rule__SelfExpCS__Group__1__Impl : ( 'self' ) ;
+    // InternalEssentialOCL.g:10948:1: rule__SelfExpCS__Group__1__Impl : ( 'self' ) ;
     public final void rule__SelfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10950:1: ( ( 'self' ) )
-            // InternalEssentialOCL.g:10951:1: ( 'self' )
+            // InternalEssentialOCL.g:10952:1: ( ( 'self' ) )
+            // InternalEssentialOCL.g:10953:1: ( 'self' )
             {
-            // InternalEssentialOCL.g:10951:1: ( 'self' )
-            // InternalEssentialOCL.g:10952:1: 'self'
+            // InternalEssentialOCL.g:10953:1: ( 'self' )
+            // InternalEssentialOCL.g:10954:1: 'self'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
@@ -31931,14 +31931,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__0"
-    // InternalEssentialOCL.g:10969:1: rule__MultiplicityBoundsCS__Group__0 : rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 ;
+    // InternalEssentialOCL.g:10971:1: rule__MultiplicityBoundsCS__Group__0 : rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 ;
     public final void rule__MultiplicityBoundsCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10973:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
-            // InternalEssentialOCL.g:10974:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
+            // InternalEssentialOCL.g:10975:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
+            // InternalEssentialOCL.g:10976:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_17);
             rule__MultiplicityBoundsCS__Group__0__Impl();
@@ -31969,23 +31969,23 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__0__Impl"
-    // InternalEssentialOCL.g:10981:1: rule__MultiplicityBoundsCS__Group__0__Impl : ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:10983:1: rule__MultiplicityBoundsCS__Group__0__Impl : ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) ;
     public final void rule__MultiplicityBoundsCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:10985:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
-            // InternalEssentialOCL.g:10986:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
+            // InternalEssentialOCL.g:10987:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
+            // InternalEssentialOCL.g:10988:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:10986:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
-            // InternalEssentialOCL.g:10987:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
+            // InternalEssentialOCL.g:10988:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
+            // InternalEssentialOCL.g:10989:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
-            // InternalEssentialOCL.g:10988:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
-            // InternalEssentialOCL.g:10988:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
+            // InternalEssentialOCL.g:10990:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
+            // InternalEssentialOCL.g:10990:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__LowerBoundAssignment_0();
@@ -32020,14 +32020,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__1"
-    // InternalEssentialOCL.g:10998:1: rule__MultiplicityBoundsCS__Group__1 : rule__MultiplicityBoundsCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:11000:1: rule__MultiplicityBoundsCS__Group__1 : rule__MultiplicityBoundsCS__Group__1__Impl ;
     public final void rule__MultiplicityBoundsCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11002:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
-            // InternalEssentialOCL.g:11003:2: rule__MultiplicityBoundsCS__Group__1__Impl
+            // InternalEssentialOCL.g:11004:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
+            // InternalEssentialOCL.g:11005:2: rule__MultiplicityBoundsCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__Group__1__Impl();
@@ -32053,22 +32053,22 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__1__Impl"
-    // InternalEssentialOCL.g:11009:1: rule__MultiplicityBoundsCS__Group__1__Impl : ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) ;
+    // InternalEssentialOCL.g:11011:1: rule__MultiplicityBoundsCS__Group__1__Impl : ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) ;
     public final void rule__MultiplicityBoundsCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11013:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
-            // InternalEssentialOCL.g:11014:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:11015:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
+            // InternalEssentialOCL.g:11016:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
             {
-            // InternalEssentialOCL.g:11014:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
-            // InternalEssentialOCL.g:11015:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
+            // InternalEssentialOCL.g:11016:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:11017:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
-            // InternalEssentialOCL.g:11016:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
+            // InternalEssentialOCL.g:11018:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             int alt83=2;
             int LA83_0 = input.LA(1);
 
@@ -32077,7 +32077,7 @@
             }
             switch (alt83) {
                 case 1 :
-                    // InternalEssentialOCL.g:11016:2: rule__MultiplicityBoundsCS__Group_1__0
+                    // InternalEssentialOCL.g:11018:2: rule__MultiplicityBoundsCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityBoundsCS__Group_1__0();
@@ -32115,14 +32115,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__0"
-    // InternalEssentialOCL.g:11030:1: rule__MultiplicityBoundsCS__Group_1__0 : rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 ;
+    // InternalEssentialOCL.g:11032:1: rule__MultiplicityBoundsCS__Group_1__0 : rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 ;
     public final void rule__MultiplicityBoundsCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11034:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
-            // InternalEssentialOCL.g:11035:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
+            // InternalEssentialOCL.g:11036:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
+            // InternalEssentialOCL.g:11037:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_51);
             rule__MultiplicityBoundsCS__Group_1__0__Impl();
@@ -32153,17 +32153,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:11042:1: rule__MultiplicityBoundsCS__Group_1__0__Impl : ( '..' ) ;
+    // InternalEssentialOCL.g:11044:1: rule__MultiplicityBoundsCS__Group_1__0__Impl : ( '..' ) ;
     public final void rule__MultiplicityBoundsCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11046:1: ( ( '..' ) )
-            // InternalEssentialOCL.g:11047:1: ( '..' )
+            // InternalEssentialOCL.g:11048:1: ( ( '..' ) )
+            // InternalEssentialOCL.g:11049:1: ( '..' )
             {
-            // InternalEssentialOCL.g:11047:1: ( '..' )
-            // InternalEssentialOCL.g:11048:1: '..'
+            // InternalEssentialOCL.g:11049:1: ( '..' )
+            // InternalEssentialOCL.g:11050:1: '..'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
@@ -32194,14 +32194,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__1"
-    // InternalEssentialOCL.g:11061:1: rule__MultiplicityBoundsCS__Group_1__1 : rule__MultiplicityBoundsCS__Group_1__1__Impl ;
+    // InternalEssentialOCL.g:11063:1: rule__MultiplicityBoundsCS__Group_1__1 : rule__MultiplicityBoundsCS__Group_1__1__Impl ;
     public final void rule__MultiplicityBoundsCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11065:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
-            // InternalEssentialOCL.g:11066:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
+            // InternalEssentialOCL.g:11067:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
+            // InternalEssentialOCL.g:11068:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__Group_1__1__Impl();
@@ -32227,23 +32227,23 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:11072:1: rule__MultiplicityBoundsCS__Group_1__1__Impl : ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) ;
+    // InternalEssentialOCL.g:11074:1: rule__MultiplicityBoundsCS__Group_1__1__Impl : ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) ;
     public final void rule__MultiplicityBoundsCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11076:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
-            // InternalEssentialOCL.g:11077:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
+            // InternalEssentialOCL.g:11078:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
+            // InternalEssentialOCL.g:11079:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
             {
-            // InternalEssentialOCL.g:11077:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
-            // InternalEssentialOCL.g:11078:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
+            // InternalEssentialOCL.g:11079:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
+            // InternalEssentialOCL.g:11080:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
-            // InternalEssentialOCL.g:11079:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
-            // InternalEssentialOCL.g:11079:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
+            // InternalEssentialOCL.g:11081:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
+            // InternalEssentialOCL.g:11081:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1();
@@ -32278,14 +32278,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__0"
-    // InternalEssentialOCL.g:11093:1: rule__MultiplicityCS__Group__0 : rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 ;
+    // InternalEssentialOCL.g:11095:1: rule__MultiplicityCS__Group__0 : rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 ;
     public final void rule__MultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11097:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
-            // InternalEssentialOCL.g:11098:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
+            // InternalEssentialOCL.g:11099:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
+            // InternalEssentialOCL.g:11100:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_52);
             rule__MultiplicityCS__Group__0__Impl();
@@ -32316,17 +32316,17 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__0__Impl"
-    // InternalEssentialOCL.g:11105:1: rule__MultiplicityCS__Group__0__Impl : ( '[' ) ;
+    // InternalEssentialOCL.g:11107:1: rule__MultiplicityCS__Group__0__Impl : ( '[' ) ;
     public final void rule__MultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11109:1: ( ( '[' ) )
-            // InternalEssentialOCL.g:11110:1: ( '[' )
+            // InternalEssentialOCL.g:11111:1: ( ( '[' ) )
+            // InternalEssentialOCL.g:11112:1: ( '[' )
             {
-            // InternalEssentialOCL.g:11110:1: ( '[' )
-            // InternalEssentialOCL.g:11111:1: '['
+            // InternalEssentialOCL.g:11112:1: ( '[' )
+            // InternalEssentialOCL.g:11113:1: '['
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
@@ -32357,14 +32357,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__1"
-    // InternalEssentialOCL.g:11124:1: rule__MultiplicityCS__Group__1 : rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 ;
+    // InternalEssentialOCL.g:11126:1: rule__MultiplicityCS__Group__1 : rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 ;
     public final void rule__MultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11128:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
-            // InternalEssentialOCL.g:11129:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
+            // InternalEssentialOCL.g:11130:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
+            // InternalEssentialOCL.g:11131:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_53);
             rule__MultiplicityCS__Group__1__Impl();
@@ -32395,23 +32395,23 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__1__Impl"
-    // InternalEssentialOCL.g:11136:1: rule__MultiplicityCS__Group__1__Impl : ( ( rule__MultiplicityCS__Alternatives_1 ) ) ;
+    // InternalEssentialOCL.g:11138:1: rule__MultiplicityCS__Group__1__Impl : ( ( rule__MultiplicityCS__Alternatives_1 ) ) ;
     public final void rule__MultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11140:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
-            // InternalEssentialOCL.g:11141:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
+            // InternalEssentialOCL.g:11142:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
+            // InternalEssentialOCL.g:11143:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
             {
-            // InternalEssentialOCL.g:11141:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
-            // InternalEssentialOCL.g:11142:1: ( rule__MultiplicityCS__Alternatives_1 )
+            // InternalEssentialOCL.g:11143:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
+            // InternalEssentialOCL.g:11144:1: ( rule__MultiplicityCS__Alternatives_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
-            // InternalEssentialOCL.g:11143:1: ( rule__MultiplicityCS__Alternatives_1 )
-            // InternalEssentialOCL.g:11143:2: rule__MultiplicityCS__Alternatives_1
+            // InternalEssentialOCL.g:11145:1: ( rule__MultiplicityCS__Alternatives_1 )
+            // InternalEssentialOCL.g:11145:2: rule__MultiplicityCS__Alternatives_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityCS__Alternatives_1();
@@ -32446,14 +32446,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__2"
-    // InternalEssentialOCL.g:11153:1: rule__MultiplicityCS__Group__2 : rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 ;
+    // InternalEssentialOCL.g:11155:1: rule__MultiplicityCS__Group__2 : rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 ;
     public final void rule__MultiplicityCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11157:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
-            // InternalEssentialOCL.g:11158:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
+            // InternalEssentialOCL.g:11159:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
+            // InternalEssentialOCL.g:11160:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_53);
             rule__MultiplicityCS__Group__2__Impl();
@@ -32484,22 +32484,22 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__2__Impl"
-    // InternalEssentialOCL.g:11165:1: rule__MultiplicityCS__Group__2__Impl : ( ( rule__MultiplicityCS__Alternatives_2 )? ) ;
+    // InternalEssentialOCL.g:11167:1: rule__MultiplicityCS__Group__2__Impl : ( ( rule__MultiplicityCS__Alternatives_2 )? ) ;
     public final void rule__MultiplicityCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11169:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
-            // InternalEssentialOCL.g:11170:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
+            // InternalEssentialOCL.g:11171:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
+            // InternalEssentialOCL.g:11172:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
             {
-            // InternalEssentialOCL.g:11170:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
-            // InternalEssentialOCL.g:11171:1: ( rule__MultiplicityCS__Alternatives_2 )?
+            // InternalEssentialOCL.g:11172:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
+            // InternalEssentialOCL.g:11173:1: ( rule__MultiplicityCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
-            // InternalEssentialOCL.g:11172:1: ( rule__MultiplicityCS__Alternatives_2 )?
+            // InternalEssentialOCL.g:11174:1: ( rule__MultiplicityCS__Alternatives_2 )?
             int alt84=2;
             int LA84_0 = input.LA(1);
 
@@ -32508,7 +32508,7 @@
             }
             switch (alt84) {
                 case 1 :
-                    // InternalEssentialOCL.g:11172:2: rule__MultiplicityCS__Alternatives_2
+                    // InternalEssentialOCL.g:11174:2: rule__MultiplicityCS__Alternatives_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityCS__Alternatives_2();
@@ -32546,14 +32546,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__3"
-    // InternalEssentialOCL.g:11182:1: rule__MultiplicityCS__Group__3 : rule__MultiplicityCS__Group__3__Impl ;
+    // InternalEssentialOCL.g:11184:1: rule__MultiplicityCS__Group__3 : rule__MultiplicityCS__Group__3__Impl ;
     public final void rule__MultiplicityCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11186:1: ( rule__MultiplicityCS__Group__3__Impl )
-            // InternalEssentialOCL.g:11187:2: rule__MultiplicityCS__Group__3__Impl
+            // InternalEssentialOCL.g:11188:1: ( rule__MultiplicityCS__Group__3__Impl )
+            // InternalEssentialOCL.g:11189:2: rule__MultiplicityCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityCS__Group__3__Impl();
@@ -32579,17 +32579,17 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__3__Impl"
-    // InternalEssentialOCL.g:11193:1: rule__MultiplicityCS__Group__3__Impl : ( ']' ) ;
+    // InternalEssentialOCL.g:11195:1: rule__MultiplicityCS__Group__3__Impl : ( ']' ) ;
     public final void rule__MultiplicityCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11197:1: ( ( ']' ) )
-            // InternalEssentialOCL.g:11198:1: ( ']' )
+            // InternalEssentialOCL.g:11199:1: ( ( ']' ) )
+            // InternalEssentialOCL.g:11200:1: ( ']' )
             {
-            // InternalEssentialOCL.g:11198:1: ( ']' )
-            // InternalEssentialOCL.g:11199:1: ']'
+            // InternalEssentialOCL.g:11200:1: ( ']' )
+            // InternalEssentialOCL.g:11201:1: ']'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
@@ -32620,14 +32620,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__0"
-    // InternalEssentialOCL.g:11220:1: rule__PathNameCS__Group__0 : rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 ;
+    // InternalEssentialOCL.g:11222:1: rule__PathNameCS__Group__0 : rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 ;
     public final void rule__PathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11224:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
-            // InternalEssentialOCL.g:11225:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
+            // InternalEssentialOCL.g:11226:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
+            // InternalEssentialOCL.g:11227:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_54);
             rule__PathNameCS__Group__0__Impl();
@@ -32658,23 +32658,23 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__0__Impl"
-    // InternalEssentialOCL.g:11232:1: rule__PathNameCS__Group__0__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:11234:1: rule__PathNameCS__Group__0__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) ;
     public final void rule__PathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11236:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
-            // InternalEssentialOCL.g:11237:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalEssentialOCL.g:11238:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
+            // InternalEssentialOCL.g:11239:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:11237:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
-            // InternalEssentialOCL.g:11238:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalEssentialOCL.g:11239:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalEssentialOCL.g:11240:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
-            // InternalEssentialOCL.g:11239:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
-            // InternalEssentialOCL.g:11239:2: rule__PathNameCS__OwnedPathElementsAssignment_0
+            // InternalEssentialOCL.g:11241:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalEssentialOCL.g:11241:2: rule__PathNameCS__OwnedPathElementsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__OwnedPathElementsAssignment_0();
@@ -32709,14 +32709,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__1"
-    // InternalEssentialOCL.g:11249:1: rule__PathNameCS__Group__1 : rule__PathNameCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:11251:1: rule__PathNameCS__Group__1 : rule__PathNameCS__Group__1__Impl ;
     public final void rule__PathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11253:1: ( rule__PathNameCS__Group__1__Impl )
-            // InternalEssentialOCL.g:11254:2: rule__PathNameCS__Group__1__Impl
+            // InternalEssentialOCL.g:11255:1: ( rule__PathNameCS__Group__1__Impl )
+            // InternalEssentialOCL.g:11256:2: rule__PathNameCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__Group__1__Impl();
@@ -32742,22 +32742,22 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__1__Impl"
-    // InternalEssentialOCL.g:11260:1: rule__PathNameCS__Group__1__Impl : ( ( rule__PathNameCS__Group_1__0 )* ) ;
+    // InternalEssentialOCL.g:11262:1: rule__PathNameCS__Group__1__Impl : ( ( rule__PathNameCS__Group_1__0 )* ) ;
     public final void rule__PathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11264:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
-            // InternalEssentialOCL.g:11265:1: ( ( rule__PathNameCS__Group_1__0 )* )
+            // InternalEssentialOCL.g:11266:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
+            // InternalEssentialOCL.g:11267:1: ( ( rule__PathNameCS__Group_1__0 )* )
             {
-            // InternalEssentialOCL.g:11265:1: ( ( rule__PathNameCS__Group_1__0 )* )
-            // InternalEssentialOCL.g:11266:1: ( rule__PathNameCS__Group_1__0 )*
+            // InternalEssentialOCL.g:11267:1: ( ( rule__PathNameCS__Group_1__0 )* )
+            // InternalEssentialOCL.g:11268:1: ( rule__PathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
-            // InternalEssentialOCL.g:11267:1: ( rule__PathNameCS__Group_1__0 )*
+            // InternalEssentialOCL.g:11269:1: ( rule__PathNameCS__Group_1__0 )*
             loop85:
             do {
                 int alt85=2;
@@ -32770,7 +32770,7 @@
 
                 switch (alt85) {
             	case 1 :
-            	    // InternalEssentialOCL.g:11267:2: rule__PathNameCS__Group_1__0
+            	    // InternalEssentialOCL.g:11269:2: rule__PathNameCS__Group_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_55);
             	    rule__PathNameCS__Group_1__0();
@@ -32811,14 +32811,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__0"
-    // InternalEssentialOCL.g:11281:1: rule__PathNameCS__Group_1__0 : rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 ;
+    // InternalEssentialOCL.g:11283:1: rule__PathNameCS__Group_1__0 : rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 ;
     public final void rule__PathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11285:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
-            // InternalEssentialOCL.g:11286:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
+            // InternalEssentialOCL.g:11287:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
+            // InternalEssentialOCL.g:11288:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_6);
             rule__PathNameCS__Group_1__0__Impl();
@@ -32849,17 +32849,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:11293:1: rule__PathNameCS__Group_1__0__Impl : ( '::' ) ;
+    // InternalEssentialOCL.g:11295:1: rule__PathNameCS__Group_1__0__Impl : ( '::' ) ;
     public final void rule__PathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11297:1: ( ( '::' ) )
-            // InternalEssentialOCL.g:11298:1: ( '::' )
+            // InternalEssentialOCL.g:11299:1: ( ( '::' ) )
+            // InternalEssentialOCL.g:11300:1: ( '::' )
             {
-            // InternalEssentialOCL.g:11298:1: ( '::' )
-            // InternalEssentialOCL.g:11299:1: '::'
+            // InternalEssentialOCL.g:11300:1: ( '::' )
+            // InternalEssentialOCL.g:11301:1: '::'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
@@ -32890,14 +32890,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__1"
-    // InternalEssentialOCL.g:11312:1: rule__PathNameCS__Group_1__1 : rule__PathNameCS__Group_1__1__Impl ;
+    // InternalEssentialOCL.g:11314:1: rule__PathNameCS__Group_1__1 : rule__PathNameCS__Group_1__1__Impl ;
     public final void rule__PathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11316:1: ( rule__PathNameCS__Group_1__1__Impl )
-            // InternalEssentialOCL.g:11317:2: rule__PathNameCS__Group_1__1__Impl
+            // InternalEssentialOCL.g:11318:1: ( rule__PathNameCS__Group_1__1__Impl )
+            // InternalEssentialOCL.g:11319:2: rule__PathNameCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__Group_1__1__Impl();
@@ -32923,23 +32923,23 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:11323:1: rule__PathNameCS__Group_1__1__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
+    // InternalEssentialOCL.g:11325:1: rule__PathNameCS__Group_1__1__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
     public final void rule__PathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11327:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
-            // InternalEssentialOCL.g:11328:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalEssentialOCL.g:11329:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
+            // InternalEssentialOCL.g:11330:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
             {
-            // InternalEssentialOCL.g:11328:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
-            // InternalEssentialOCL.g:11329:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalEssentialOCL.g:11330:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalEssentialOCL.g:11331:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
-            // InternalEssentialOCL.g:11330:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
-            // InternalEssentialOCL.g:11330:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
+            // InternalEssentialOCL.g:11332:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalEssentialOCL.g:11332:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__OwnedPathElementsAssignment_1_1();
@@ -32974,14 +32974,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__0"
-    // InternalEssentialOCL.g:11344:1: rule__TemplateBindingCS__Group__0 : rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 ;
+    // InternalEssentialOCL.g:11348:1: rule__TemplateBindingCS__Group__0 : rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 ;
     public final void rule__TemplateBindingCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11348:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
-            // InternalEssentialOCL.g:11349:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
+            // InternalEssentialOCL.g:11352:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
+            // InternalEssentialOCL.g:11353:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_56);
             rule__TemplateBindingCS__Group__0__Impl();
@@ -33012,23 +33012,23 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__0__Impl"
-    // InternalEssentialOCL.g:11356:1: rule__TemplateBindingCS__Group__0__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:11360:1: rule__TemplateBindingCS__Group__0__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) ;
     public final void rule__TemplateBindingCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11360:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
-            // InternalEssentialOCL.g:11361:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
+            // InternalEssentialOCL.g:11364:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
+            // InternalEssentialOCL.g:11365:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:11361:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
-            // InternalEssentialOCL.g:11362:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
+            // InternalEssentialOCL.g:11365:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
+            // InternalEssentialOCL.g:11366:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
-            // InternalEssentialOCL.g:11363:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
-            // InternalEssentialOCL.g:11363:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
+            // InternalEssentialOCL.g:11367:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
+            // InternalEssentialOCL.g:11367:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0();
@@ -33063,14 +33063,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__1"
-    // InternalEssentialOCL.g:11373:1: rule__TemplateBindingCS__Group__1 : rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 ;
+    // InternalEssentialOCL.g:11377:1: rule__TemplateBindingCS__Group__1 : rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 ;
     public final void rule__TemplateBindingCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11377:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
-            // InternalEssentialOCL.g:11378:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
+            // InternalEssentialOCL.g:11381:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
+            // InternalEssentialOCL.g:11382:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_56);
             rule__TemplateBindingCS__Group__1__Impl();
@@ -33101,22 +33101,22 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__1__Impl"
-    // InternalEssentialOCL.g:11385:1: rule__TemplateBindingCS__Group__1__Impl : ( ( rule__TemplateBindingCS__Group_1__0 )* ) ;
+    // InternalEssentialOCL.g:11389:1: rule__TemplateBindingCS__Group__1__Impl : ( ( rule__TemplateBindingCS__Group_1__0 )* ) ;
     public final void rule__TemplateBindingCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11389:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
-            // InternalEssentialOCL.g:11390:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
+            // InternalEssentialOCL.g:11393:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
+            // InternalEssentialOCL.g:11394:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
             {
-            // InternalEssentialOCL.g:11390:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
-            // InternalEssentialOCL.g:11391:1: ( rule__TemplateBindingCS__Group_1__0 )*
+            // InternalEssentialOCL.g:11394:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
+            // InternalEssentialOCL.g:11395:1: ( rule__TemplateBindingCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
-            // InternalEssentialOCL.g:11392:1: ( rule__TemplateBindingCS__Group_1__0 )*
+            // InternalEssentialOCL.g:11396:1: ( rule__TemplateBindingCS__Group_1__0 )*
             loop86:
             do {
                 int alt86=2;
@@ -33129,7 +33129,7 @@
 
                 switch (alt86) {
             	case 1 :
-            	    // InternalEssentialOCL.g:11392:2: rule__TemplateBindingCS__Group_1__0
+            	    // InternalEssentialOCL.g:11396:2: rule__TemplateBindingCS__Group_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_11);
             	    rule__TemplateBindingCS__Group_1__0();
@@ -33170,14 +33170,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__2"
-    // InternalEssentialOCL.g:11402:1: rule__TemplateBindingCS__Group__2 : rule__TemplateBindingCS__Group__2__Impl ;
+    // InternalEssentialOCL.g:11406:1: rule__TemplateBindingCS__Group__2 : rule__TemplateBindingCS__Group__2__Impl ;
     public final void rule__TemplateBindingCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11406:1: ( rule__TemplateBindingCS__Group__2__Impl )
-            // InternalEssentialOCL.g:11407:2: rule__TemplateBindingCS__Group__2__Impl
+            // InternalEssentialOCL.g:11410:1: ( rule__TemplateBindingCS__Group__2__Impl )
+            // InternalEssentialOCL.g:11411:2: rule__TemplateBindingCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group__2__Impl();
@@ -33203,22 +33203,22 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__2__Impl"
-    // InternalEssentialOCL.g:11413:1: rule__TemplateBindingCS__Group__2__Impl : ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) ;
+    // InternalEssentialOCL.g:11417:1: rule__TemplateBindingCS__Group__2__Impl : ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) ;
     public final void rule__TemplateBindingCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11417:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
-            // InternalEssentialOCL.g:11418:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
+            // InternalEssentialOCL.g:11421:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
+            // InternalEssentialOCL.g:11422:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
             {
-            // InternalEssentialOCL.g:11418:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
-            // InternalEssentialOCL.g:11419:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
+            // InternalEssentialOCL.g:11422:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
+            // InternalEssentialOCL.g:11423:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
-            // InternalEssentialOCL.g:11420:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
+            // InternalEssentialOCL.g:11424:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             int alt87=2;
             int LA87_0 = input.LA(1);
 
@@ -33227,7 +33227,7 @@
             }
             switch (alt87) {
                 case 1 :
-                    // InternalEssentialOCL.g:11420:2: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2
+                    // InternalEssentialOCL.g:11424:2: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TemplateBindingCS__OwnedMultiplicityAssignment_2();
@@ -33265,14 +33265,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__0"
-    // InternalEssentialOCL.g:11436:1: rule__TemplateBindingCS__Group_1__0 : rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 ;
+    // InternalEssentialOCL.g:11440:1: rule__TemplateBindingCS__Group_1__0 : rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 ;
     public final void rule__TemplateBindingCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11440:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
-            // InternalEssentialOCL.g:11441:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
+            // InternalEssentialOCL.g:11444:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
+            // InternalEssentialOCL.g:11445:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_57);
             rule__TemplateBindingCS__Group_1__0__Impl();
@@ -33303,17 +33303,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:11448:1: rule__TemplateBindingCS__Group_1__0__Impl : ( ',' ) ;
+    // InternalEssentialOCL.g:11452:1: rule__TemplateBindingCS__Group_1__0__Impl : ( ',' ) ;
     public final void rule__TemplateBindingCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11452:1: ( ( ',' ) )
-            // InternalEssentialOCL.g:11453:1: ( ',' )
+            // InternalEssentialOCL.g:11456:1: ( ( ',' ) )
+            // InternalEssentialOCL.g:11457:1: ( ',' )
             {
-            // InternalEssentialOCL.g:11453:1: ( ',' )
-            // InternalEssentialOCL.g:11454:1: ','
+            // InternalEssentialOCL.g:11457:1: ( ',' )
+            // InternalEssentialOCL.g:11458:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
@@ -33344,14 +33344,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__1"
-    // InternalEssentialOCL.g:11467:1: rule__TemplateBindingCS__Group_1__1 : rule__TemplateBindingCS__Group_1__1__Impl ;
+    // InternalEssentialOCL.g:11471:1: rule__TemplateBindingCS__Group_1__1 : rule__TemplateBindingCS__Group_1__1__Impl ;
     public final void rule__TemplateBindingCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11471:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
-            // InternalEssentialOCL.g:11472:2: rule__TemplateBindingCS__Group_1__1__Impl
+            // InternalEssentialOCL.g:11475:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
+            // InternalEssentialOCL.g:11476:2: rule__TemplateBindingCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group_1__1__Impl();
@@ -33377,23 +33377,23 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:11478:1: rule__TemplateBindingCS__Group_1__1__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) ;
+    // InternalEssentialOCL.g:11482:1: rule__TemplateBindingCS__Group_1__1__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) ;
     public final void rule__TemplateBindingCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11482:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
-            // InternalEssentialOCL.g:11483:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
+            // InternalEssentialOCL.g:11486:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
+            // InternalEssentialOCL.g:11487:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
             {
-            // InternalEssentialOCL.g:11483:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
-            // InternalEssentialOCL.g:11484:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
+            // InternalEssentialOCL.g:11487:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
+            // InternalEssentialOCL.g:11488:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
-            // InternalEssentialOCL.g:11485:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
-            // InternalEssentialOCL.g:11485:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
+            // InternalEssentialOCL.g:11489:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
+            // InternalEssentialOCL.g:11489:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1();
@@ -33428,14 +33428,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__0"
-    // InternalEssentialOCL.g:11501:1: rule__TypeParameterCS__Group__0 : rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 ;
+    // InternalEssentialOCL.g:11505:1: rule__TypeParameterCS__Group__0 : rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 ;
     public final void rule__TypeParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11505:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
-            // InternalEssentialOCL.g:11506:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
+            // InternalEssentialOCL.g:11509:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
+            // InternalEssentialOCL.g:11510:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_58);
             rule__TypeParameterCS__Group__0__Impl();
@@ -33466,23 +33466,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__0__Impl"
-    // InternalEssentialOCL.g:11513:1: rule__TypeParameterCS__Group__0__Impl : ( ( rule__TypeParameterCS__NameAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:11517:1: rule__TypeParameterCS__Group__0__Impl : ( ( rule__TypeParameterCS__NameAssignment_0 ) ) ;
     public final void rule__TypeParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11517:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
-            // InternalEssentialOCL.g:11518:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:11521:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
+            // InternalEssentialOCL.g:11522:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:11518:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
-            // InternalEssentialOCL.g:11519:1: ( rule__TypeParameterCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:11522:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
+            // InternalEssentialOCL.g:11523:1: ( rule__TypeParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
-            // InternalEssentialOCL.g:11520:1: ( rule__TypeParameterCS__NameAssignment_0 )
-            // InternalEssentialOCL.g:11520:2: rule__TypeParameterCS__NameAssignment_0
+            // InternalEssentialOCL.g:11524:1: ( rule__TypeParameterCS__NameAssignment_0 )
+            // InternalEssentialOCL.g:11524:2: rule__TypeParameterCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__NameAssignment_0();
@@ -33517,14 +33517,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__1"
-    // InternalEssentialOCL.g:11530:1: rule__TypeParameterCS__Group__1 : rule__TypeParameterCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:11534:1: rule__TypeParameterCS__Group__1 : rule__TypeParameterCS__Group__1__Impl ;
     public final void rule__TypeParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11534:1: ( rule__TypeParameterCS__Group__1__Impl )
-            // InternalEssentialOCL.g:11535:2: rule__TypeParameterCS__Group__1__Impl
+            // InternalEssentialOCL.g:11538:1: ( rule__TypeParameterCS__Group__1__Impl )
+            // InternalEssentialOCL.g:11539:2: rule__TypeParameterCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group__1__Impl();
@@ -33550,22 +33550,22 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__1__Impl"
-    // InternalEssentialOCL.g:11541:1: rule__TypeParameterCS__Group__1__Impl : ( ( rule__TypeParameterCS__Group_1__0 )? ) ;
+    // InternalEssentialOCL.g:11545:1: rule__TypeParameterCS__Group__1__Impl : ( ( rule__TypeParameterCS__Group_1__0 )? ) ;
     public final void rule__TypeParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11545:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
-            // InternalEssentialOCL.g:11546:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:11549:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
+            // InternalEssentialOCL.g:11550:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
             {
-            // InternalEssentialOCL.g:11546:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
-            // InternalEssentialOCL.g:11547:1: ( rule__TypeParameterCS__Group_1__0 )?
+            // InternalEssentialOCL.g:11550:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:11551:1: ( rule__TypeParameterCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
-            // InternalEssentialOCL.g:11548:1: ( rule__TypeParameterCS__Group_1__0 )?
+            // InternalEssentialOCL.g:11552:1: ( rule__TypeParameterCS__Group_1__0 )?
             int alt88=2;
             int LA88_0 = input.LA(1);
 
@@ -33574,7 +33574,7 @@
             }
             switch (alt88) {
                 case 1 :
-                    // InternalEssentialOCL.g:11548:2: rule__TypeParameterCS__Group_1__0
+                    // InternalEssentialOCL.g:11552:2: rule__TypeParameterCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeParameterCS__Group_1__0();
@@ -33612,14 +33612,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__0"
-    // InternalEssentialOCL.g:11562:1: rule__TypeParameterCS__Group_1__0 : rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 ;
+    // InternalEssentialOCL.g:11566:1: rule__TypeParameterCS__Group_1__0 : rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 ;
     public final void rule__TypeParameterCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11566:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
-            // InternalEssentialOCL.g:11567:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
+            // InternalEssentialOCL.g:11570:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
+            // InternalEssentialOCL.g:11571:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__TypeParameterCS__Group_1__0__Impl();
@@ -33650,17 +33650,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:11574:1: rule__TypeParameterCS__Group_1__0__Impl : ( 'extends' ) ;
+    // InternalEssentialOCL.g:11578:1: rule__TypeParameterCS__Group_1__0__Impl : ( 'extends' ) ;
     public final void rule__TypeParameterCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11578:1: ( ( 'extends' ) )
-            // InternalEssentialOCL.g:11579:1: ( 'extends' )
+            // InternalEssentialOCL.g:11582:1: ( ( 'extends' ) )
+            // InternalEssentialOCL.g:11583:1: ( 'extends' )
             {
-            // InternalEssentialOCL.g:11579:1: ( 'extends' )
-            // InternalEssentialOCL.g:11580:1: 'extends'
+            // InternalEssentialOCL.g:11583:1: ( 'extends' )
+            // InternalEssentialOCL.g:11584:1: 'extends'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
@@ -33691,14 +33691,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__1"
-    // InternalEssentialOCL.g:11593:1: rule__TypeParameterCS__Group_1__1 : rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 ;
+    // InternalEssentialOCL.g:11597:1: rule__TypeParameterCS__Group_1__1 : rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 ;
     public final void rule__TypeParameterCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11597:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
-            // InternalEssentialOCL.g:11598:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
+            // InternalEssentialOCL.g:11601:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
+            // InternalEssentialOCL.g:11602:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_59);
             rule__TypeParameterCS__Group_1__1__Impl();
@@ -33729,23 +33729,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:11605:1: rule__TypeParameterCS__Group_1__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) ;
+    // InternalEssentialOCL.g:11609:1: rule__TypeParameterCS__Group_1__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) ;
     public final void rule__TypeParameterCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11609:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
-            // InternalEssentialOCL.g:11610:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
+            // InternalEssentialOCL.g:11613:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
+            // InternalEssentialOCL.g:11614:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
             {
-            // InternalEssentialOCL.g:11610:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
-            // InternalEssentialOCL.g:11611:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
+            // InternalEssentialOCL.g:11614:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
+            // InternalEssentialOCL.g:11615:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
-            // InternalEssentialOCL.g:11612:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
-            // InternalEssentialOCL.g:11612:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
+            // InternalEssentialOCL.g:11616:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
+            // InternalEssentialOCL.g:11616:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__OwnedExtendsAssignment_1_1();
@@ -33780,14 +33780,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__2"
-    // InternalEssentialOCL.g:11622:1: rule__TypeParameterCS__Group_1__2 : rule__TypeParameterCS__Group_1__2__Impl ;
+    // InternalEssentialOCL.g:11626:1: rule__TypeParameterCS__Group_1__2 : rule__TypeParameterCS__Group_1__2__Impl ;
     public final void rule__TypeParameterCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11626:1: ( rule__TypeParameterCS__Group_1__2__Impl )
-            // InternalEssentialOCL.g:11627:2: rule__TypeParameterCS__Group_1__2__Impl
+            // InternalEssentialOCL.g:11630:1: ( rule__TypeParameterCS__Group_1__2__Impl )
+            // InternalEssentialOCL.g:11631:2: rule__TypeParameterCS__Group_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group_1__2__Impl();
@@ -33813,22 +33813,22 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__2__Impl"
-    // InternalEssentialOCL.g:11633:1: rule__TypeParameterCS__Group_1__2__Impl : ( ( rule__TypeParameterCS__Group_1_2__0 )* ) ;
+    // InternalEssentialOCL.g:11637:1: rule__TypeParameterCS__Group_1__2__Impl : ( ( rule__TypeParameterCS__Group_1_2__0 )* ) ;
     public final void rule__TypeParameterCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11637:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
-            // InternalEssentialOCL.g:11638:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
+            // InternalEssentialOCL.g:11641:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
+            // InternalEssentialOCL.g:11642:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
             {
-            // InternalEssentialOCL.g:11638:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
-            // InternalEssentialOCL.g:11639:1: ( rule__TypeParameterCS__Group_1_2__0 )*
+            // InternalEssentialOCL.g:11642:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
+            // InternalEssentialOCL.g:11643:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
-            // InternalEssentialOCL.g:11640:1: ( rule__TypeParameterCS__Group_1_2__0 )*
+            // InternalEssentialOCL.g:11644:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             loop89:
             do {
                 int alt89=2;
@@ -33841,7 +33841,7 @@
 
                 switch (alt89) {
             	case 1 :
-            	    // InternalEssentialOCL.g:11640:2: rule__TypeParameterCS__Group_1_2__0
+            	    // InternalEssentialOCL.g:11644:2: rule__TypeParameterCS__Group_1_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_60);
             	    rule__TypeParameterCS__Group_1_2__0();
@@ -33882,14 +33882,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__0"
-    // InternalEssentialOCL.g:11656:1: rule__TypeParameterCS__Group_1_2__0 : rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 ;
+    // InternalEssentialOCL.g:11660:1: rule__TypeParameterCS__Group_1_2__0 : rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 ;
     public final void rule__TypeParameterCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11660:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
-            // InternalEssentialOCL.g:11661:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
+            // InternalEssentialOCL.g:11664:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
+            // InternalEssentialOCL.g:11665:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__TypeParameterCS__Group_1_2__0__Impl();
@@ -33920,17 +33920,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__0__Impl"
-    // InternalEssentialOCL.g:11668:1: rule__TypeParameterCS__Group_1_2__0__Impl : ( '&&' ) ;
+    // InternalEssentialOCL.g:11672:1: rule__TypeParameterCS__Group_1_2__0__Impl : ( '&&' ) ;
     public final void rule__TypeParameterCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11672:1: ( ( '&&' ) )
-            // InternalEssentialOCL.g:11673:1: ( '&&' )
+            // InternalEssentialOCL.g:11676:1: ( ( '&&' ) )
+            // InternalEssentialOCL.g:11677:1: ( '&&' )
             {
-            // InternalEssentialOCL.g:11673:1: ( '&&' )
-            // InternalEssentialOCL.g:11674:1: '&&'
+            // InternalEssentialOCL.g:11677:1: ( '&&' )
+            // InternalEssentialOCL.g:11678:1: '&&'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
@@ -33961,14 +33961,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__1"
-    // InternalEssentialOCL.g:11687:1: rule__TypeParameterCS__Group_1_2__1 : rule__TypeParameterCS__Group_1_2__1__Impl ;
+    // InternalEssentialOCL.g:11691:1: rule__TypeParameterCS__Group_1_2__1 : rule__TypeParameterCS__Group_1_2__1__Impl ;
     public final void rule__TypeParameterCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11691:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
-            // InternalEssentialOCL.g:11692:2: rule__TypeParameterCS__Group_1_2__1__Impl
+            // InternalEssentialOCL.g:11695:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
+            // InternalEssentialOCL.g:11696:2: rule__TypeParameterCS__Group_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group_1_2__1__Impl();
@@ -33994,23 +33994,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__1__Impl"
-    // InternalEssentialOCL.g:11698:1: rule__TypeParameterCS__Group_1_2__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) ;
+    // InternalEssentialOCL.g:11702:1: rule__TypeParameterCS__Group_1_2__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) ;
     public final void rule__TypeParameterCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11702:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
-            // InternalEssentialOCL.g:11703:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
+            // InternalEssentialOCL.g:11706:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
+            // InternalEssentialOCL.g:11707:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
             {
-            // InternalEssentialOCL.g:11703:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
-            // InternalEssentialOCL.g:11704:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
+            // InternalEssentialOCL.g:11707:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
+            // InternalEssentialOCL.g:11708:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
-            // InternalEssentialOCL.g:11705:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
-            // InternalEssentialOCL.g:11705:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
+            // InternalEssentialOCL.g:11709:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
+            // InternalEssentialOCL.g:11709:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1();
@@ -34045,14 +34045,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__0"
-    // InternalEssentialOCL.g:11719:1: rule__TypedTypeRefCS__Group__0 : rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 ;
+    // InternalEssentialOCL.g:11723:1: rule__TypedTypeRefCS__Group__0 : rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 ;
     public final void rule__TypedTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11723:1: ( rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 )
-            // InternalEssentialOCL.g:11724:2: rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1
+            // InternalEssentialOCL.g:11727:1: ( rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 )
+            // InternalEssentialOCL.g:11728:2: rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_5);
             rule__TypedTypeRefCS__Group__0__Impl();
@@ -34083,23 +34083,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__0__Impl"
-    // InternalEssentialOCL.g:11731:1: rule__TypedTypeRefCS__Group__0__Impl : ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) ;
+    // InternalEssentialOCL.g:11735:1: rule__TypedTypeRefCS__Group__0__Impl : ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) ;
     public final void rule__TypedTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11735:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) )
-            // InternalEssentialOCL.g:11736:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
+            // InternalEssentialOCL.g:11739:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) )
+            // InternalEssentialOCL.g:11740:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
             {
-            // InternalEssentialOCL.g:11736:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
-            // InternalEssentialOCL.g:11737:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
+            // InternalEssentialOCL.g:11740:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
+            // InternalEssentialOCL.g:11741:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0());
             }
-            // InternalEssentialOCL.g:11738:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
-            // InternalEssentialOCL.g:11738:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0
+            // InternalEssentialOCL.g:11742:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
+            // InternalEssentialOCL.g:11742:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__OwnedPathNameAssignment_0();
@@ -34134,14 +34134,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__1"
-    // InternalEssentialOCL.g:11748:1: rule__TypedTypeRefCS__Group__1 : rule__TypedTypeRefCS__Group__1__Impl ;
+    // InternalEssentialOCL.g:11752:1: rule__TypedTypeRefCS__Group__1 : rule__TypedTypeRefCS__Group__1__Impl ;
     public final void rule__TypedTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11752:1: ( rule__TypedTypeRefCS__Group__1__Impl )
-            // InternalEssentialOCL.g:11753:2: rule__TypedTypeRefCS__Group__1__Impl
+            // InternalEssentialOCL.g:11756:1: ( rule__TypedTypeRefCS__Group__1__Impl )
+            // InternalEssentialOCL.g:11757:2: rule__TypedTypeRefCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group__1__Impl();
@@ -34167,22 +34167,22 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__1__Impl"
-    // InternalEssentialOCL.g:11759:1: rule__TypedTypeRefCS__Group__1__Impl : ( ( rule__TypedTypeRefCS__Group_1__0 )? ) ;
+    // InternalEssentialOCL.g:11763:1: rule__TypedTypeRefCS__Group__1__Impl : ( ( rule__TypedTypeRefCS__Group_1__0 )? ) ;
     public final void rule__TypedTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11763:1: ( ( ( rule__TypedTypeRefCS__Group_1__0 )? ) )
-            // InternalEssentialOCL.g:11764:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:11767:1: ( ( ( rule__TypedTypeRefCS__Group_1__0 )? ) )
+            // InternalEssentialOCL.g:11768:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
             {
-            // InternalEssentialOCL.g:11764:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
-            // InternalEssentialOCL.g:11765:1: ( rule__TypedTypeRefCS__Group_1__0 )?
+            // InternalEssentialOCL.g:11768:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
+            // InternalEssentialOCL.g:11769:1: ( rule__TypedTypeRefCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1());
             }
-            // InternalEssentialOCL.g:11766:1: ( rule__TypedTypeRefCS__Group_1__0 )?
+            // InternalEssentialOCL.g:11770:1: ( rule__TypedTypeRefCS__Group_1__0 )?
             int alt90=2;
             int LA90_0 = input.LA(1);
 
@@ -34191,7 +34191,7 @@
             }
             switch (alt90) {
                 case 1 :
-                    // InternalEssentialOCL.g:11766:2: rule__TypedTypeRefCS__Group_1__0
+                    // InternalEssentialOCL.g:11770:2: rule__TypedTypeRefCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypedTypeRefCS__Group_1__0();
@@ -34229,14 +34229,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__0"
-    // InternalEssentialOCL.g:11780:1: rule__TypedTypeRefCS__Group_1__0 : rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 ;
+    // InternalEssentialOCL.g:11784:1: rule__TypedTypeRefCS__Group_1__0 : rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 ;
     public final void rule__TypedTypeRefCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11784:1: ( rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 )
-            // InternalEssentialOCL.g:11785:2: rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1
+            // InternalEssentialOCL.g:11788:1: ( rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 )
+            // InternalEssentialOCL.g:11789:2: rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_57);
             rule__TypedTypeRefCS__Group_1__0__Impl();
@@ -34267,17 +34267,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__0__Impl"
-    // InternalEssentialOCL.g:11792:1: rule__TypedTypeRefCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalEssentialOCL.g:11796:1: rule__TypedTypeRefCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__TypedTypeRefCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11796:1: ( ( '(' ) )
-            // InternalEssentialOCL.g:11797:1: ( '(' )
+            // InternalEssentialOCL.g:11800:1: ( ( '(' ) )
+            // InternalEssentialOCL.g:11801:1: ( '(' )
             {
-            // InternalEssentialOCL.g:11797:1: ( '(' )
-            // InternalEssentialOCL.g:11798:1: '('
+            // InternalEssentialOCL.g:11801:1: ( '(' )
+            // InternalEssentialOCL.g:11802:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
@@ -34308,14 +34308,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__1"
-    // InternalEssentialOCL.g:11811:1: rule__TypedTypeRefCS__Group_1__1 : rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 ;
+    // InternalEssentialOCL.g:11815:1: rule__TypedTypeRefCS__Group_1__1 : rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 ;
     public final void rule__TypedTypeRefCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11815:1: ( rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 )
-            // InternalEssentialOCL.g:11816:2: rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2
+            // InternalEssentialOCL.g:11819:1: ( rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 )
+            // InternalEssentialOCL.g:11820:2: rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_9);
             rule__TypedTypeRefCS__Group_1__1__Impl();
@@ -34346,23 +34346,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__1__Impl"
-    // InternalEssentialOCL.g:11823:1: rule__TypedTypeRefCS__Group_1__1__Impl : ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) ;
+    // InternalEssentialOCL.g:11827:1: rule__TypedTypeRefCS__Group_1__1__Impl : ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) ;
     public final void rule__TypedTypeRefCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11827:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) )
-            // InternalEssentialOCL.g:11828:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
+            // InternalEssentialOCL.g:11831:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) )
+            // InternalEssentialOCL.g:11832:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
             {
-            // InternalEssentialOCL.g:11828:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
-            // InternalEssentialOCL.g:11829:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
+            // InternalEssentialOCL.g:11832:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
+            // InternalEssentialOCL.g:11833:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1());
             }
-            // InternalEssentialOCL.g:11830:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
-            // InternalEssentialOCL.g:11830:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1
+            // InternalEssentialOCL.g:11834:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
+            // InternalEssentialOCL.g:11834:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__OwnedBindingAssignment_1_1();
@@ -34397,14 +34397,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__2"
-    // InternalEssentialOCL.g:11840:1: rule__TypedTypeRefCS__Group_1__2 : rule__TypedTypeRefCS__Group_1__2__Impl ;
+    // InternalEssentialOCL.g:11844:1: rule__TypedTypeRefCS__Group_1__2 : rule__TypedTypeRefCS__Group_1__2__Impl ;
     public final void rule__TypedTypeRefCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11844:1: ( rule__TypedTypeRefCS__Group_1__2__Impl )
-            // InternalEssentialOCL.g:11845:2: rule__TypedTypeRefCS__Group_1__2__Impl
+            // InternalEssentialOCL.g:11848:1: ( rule__TypedTypeRefCS__Group_1__2__Impl )
+            // InternalEssentialOCL.g:11849:2: rule__TypedTypeRefCS__Group_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group_1__2__Impl();
@@ -34430,17 +34430,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__2__Impl"
-    // InternalEssentialOCL.g:11851:1: rule__TypedTypeRefCS__Group_1__2__Impl : ( ')' ) ;
+    // InternalEssentialOCL.g:11855:1: rule__TypedTypeRefCS__Group_1__2__Impl : ( ')' ) ;
     public final void rule__TypedTypeRefCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11855:1: ( ( ')' ) )
-            // InternalEssentialOCL.g:11856:1: ( ')' )
+            // InternalEssentialOCL.g:11859:1: ( ( ')' ) )
+            // InternalEssentialOCL.g:11860:1: ( ')' )
             {
-            // InternalEssentialOCL.g:11856:1: ( ')' )
-            // InternalEssentialOCL.g:11857:1: ')'
+            // InternalEssentialOCL.g:11860:1: ( ')' )
+            // InternalEssentialOCL.g:11861:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
@@ -34471,14 +34471,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__0"
-    // InternalEssentialOCL.g:11876:1: rule__WildcardTypeRefCS__Group__0 : rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 ;
+    // InternalEssentialOCL.g:11880:1: rule__WildcardTypeRefCS__Group__0 : rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 ;
     public final void rule__WildcardTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11880:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
-            // InternalEssentialOCL.g:11881:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
+            // InternalEssentialOCL.g:11884:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
+            // InternalEssentialOCL.g:11885:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_57);
             rule__WildcardTypeRefCS__Group__0__Impl();
@@ -34509,23 +34509,23 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__0__Impl"
-    // InternalEssentialOCL.g:11888:1: rule__WildcardTypeRefCS__Group__0__Impl : ( () ) ;
+    // InternalEssentialOCL.g:11892:1: rule__WildcardTypeRefCS__Group__0__Impl : ( () ) ;
     public final void rule__WildcardTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11892:1: ( ( () ) )
-            // InternalEssentialOCL.g:11893:1: ( () )
+            // InternalEssentialOCL.g:11896:1: ( ( () ) )
+            // InternalEssentialOCL.g:11897:1: ( () )
             {
-            // InternalEssentialOCL.g:11893:1: ( () )
-            // InternalEssentialOCL.g:11894:1: ()
+            // InternalEssentialOCL.g:11897:1: ( () )
+            // InternalEssentialOCL.g:11898:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
-            // InternalEssentialOCL.g:11895:1: ()
-            // InternalEssentialOCL.g:11897:1:
+            // InternalEssentialOCL.g:11899:1: ()
+            // InternalEssentialOCL.g:11901:1:
             {
             }
 
@@ -34550,14 +34550,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__1"
-    // InternalEssentialOCL.g:11907:1: rule__WildcardTypeRefCS__Group__1 : rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 ;
+    // InternalEssentialOCL.g:11911:1: rule__WildcardTypeRefCS__Group__1 : rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 ;
     public final void rule__WildcardTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11911:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
-            // InternalEssentialOCL.g:11912:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
+            // InternalEssentialOCL.g:11915:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
+            // InternalEssentialOCL.g:11916:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_58);
             rule__WildcardTypeRefCS__Group__1__Impl();
@@ -34588,17 +34588,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__1__Impl"
-    // InternalEssentialOCL.g:11919:1: rule__WildcardTypeRefCS__Group__1__Impl : ( '?' ) ;
+    // InternalEssentialOCL.g:11923:1: rule__WildcardTypeRefCS__Group__1__Impl : ( '?' ) ;
     public final void rule__WildcardTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11923:1: ( ( '?' ) )
-            // InternalEssentialOCL.g:11924:1: ( '?' )
+            // InternalEssentialOCL.g:11927:1: ( ( '?' ) )
+            // InternalEssentialOCL.g:11928:1: ( '?' )
             {
-            // InternalEssentialOCL.g:11924:1: ( '?' )
-            // InternalEssentialOCL.g:11925:1: '?'
+            // InternalEssentialOCL.g:11928:1: ( '?' )
+            // InternalEssentialOCL.g:11929:1: '?'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
@@ -34629,14 +34629,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__2"
-    // InternalEssentialOCL.g:11938:1: rule__WildcardTypeRefCS__Group__2 : rule__WildcardTypeRefCS__Group__2__Impl ;
+    // InternalEssentialOCL.g:11942:1: rule__WildcardTypeRefCS__Group__2 : rule__WildcardTypeRefCS__Group__2__Impl ;
     public final void rule__WildcardTypeRefCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11942:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
-            // InternalEssentialOCL.g:11943:2: rule__WildcardTypeRefCS__Group__2__Impl
+            // InternalEssentialOCL.g:11946:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
+            // InternalEssentialOCL.g:11947:2: rule__WildcardTypeRefCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group__2__Impl();
@@ -34662,22 +34662,22 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__2__Impl"
-    // InternalEssentialOCL.g:11949:1: rule__WildcardTypeRefCS__Group__2__Impl : ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) ;
+    // InternalEssentialOCL.g:11953:1: rule__WildcardTypeRefCS__Group__2__Impl : ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) ;
     public final void rule__WildcardTypeRefCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11953:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
-            // InternalEssentialOCL.g:11954:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:11957:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
+            // InternalEssentialOCL.g:11958:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
             {
-            // InternalEssentialOCL.g:11954:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
-            // InternalEssentialOCL.g:11955:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
+            // InternalEssentialOCL.g:11958:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
+            // InternalEssentialOCL.g:11959:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
-            // InternalEssentialOCL.g:11956:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
+            // InternalEssentialOCL.g:11960:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             int alt91=2;
             int LA91_0 = input.LA(1);
 
@@ -34686,7 +34686,7 @@
             }
             switch (alt91) {
                 case 1 :
-                    // InternalEssentialOCL.g:11956:2: rule__WildcardTypeRefCS__Group_2__0
+                    // InternalEssentialOCL.g:11960:2: rule__WildcardTypeRefCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__WildcardTypeRefCS__Group_2__0();
@@ -34724,14 +34724,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__0"
-    // InternalEssentialOCL.g:11972:1: rule__WildcardTypeRefCS__Group_2__0 : rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 ;
+    // InternalEssentialOCL.g:11976:1: rule__WildcardTypeRefCS__Group_2__0 : rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 ;
     public final void rule__WildcardTypeRefCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11976:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
-            // InternalEssentialOCL.g:11977:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
+            // InternalEssentialOCL.g:11980:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
+            // InternalEssentialOCL.g:11981:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__WildcardTypeRefCS__Group_2__0__Impl();
@@ -34762,17 +34762,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__0__Impl"
-    // InternalEssentialOCL.g:11984:1: rule__WildcardTypeRefCS__Group_2__0__Impl : ( 'extends' ) ;
+    // InternalEssentialOCL.g:11988:1: rule__WildcardTypeRefCS__Group_2__0__Impl : ( 'extends' ) ;
     public final void rule__WildcardTypeRefCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:11988:1: ( ( 'extends' ) )
-            // InternalEssentialOCL.g:11989:1: ( 'extends' )
+            // InternalEssentialOCL.g:11992:1: ( ( 'extends' ) )
+            // InternalEssentialOCL.g:11993:1: ( 'extends' )
             {
-            // InternalEssentialOCL.g:11989:1: ( 'extends' )
-            // InternalEssentialOCL.g:11990:1: 'extends'
+            // InternalEssentialOCL.g:11993:1: ( 'extends' )
+            // InternalEssentialOCL.g:11994:1: 'extends'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
@@ -34803,14 +34803,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__1"
-    // InternalEssentialOCL.g:12003:1: rule__WildcardTypeRefCS__Group_2__1 : rule__WildcardTypeRefCS__Group_2__1__Impl ;
+    // InternalEssentialOCL.g:12007:1: rule__WildcardTypeRefCS__Group_2__1 : rule__WildcardTypeRefCS__Group_2__1__Impl ;
     public final void rule__WildcardTypeRefCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12007:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
-            // InternalEssentialOCL.g:12008:2: rule__WildcardTypeRefCS__Group_2__1__Impl
+            // InternalEssentialOCL.g:12011:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
+            // InternalEssentialOCL.g:12012:2: rule__WildcardTypeRefCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group_2__1__Impl();
@@ -34836,23 +34836,23 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__1__Impl"
-    // InternalEssentialOCL.g:12014:1: rule__WildcardTypeRefCS__Group_2__1__Impl : ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) ;
+    // InternalEssentialOCL.g:12018:1: rule__WildcardTypeRefCS__Group_2__1__Impl : ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) ;
     public final void rule__WildcardTypeRefCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12018:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
-            // InternalEssentialOCL.g:12019:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
+            // InternalEssentialOCL.g:12022:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
+            // InternalEssentialOCL.g:12023:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
             {
-            // InternalEssentialOCL.g:12019:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
-            // InternalEssentialOCL.g:12020:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
+            // InternalEssentialOCL.g:12023:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
+            // InternalEssentialOCL.g:12024:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
-            // InternalEssentialOCL.g:12021:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
-            // InternalEssentialOCL.g:12021:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
+            // InternalEssentialOCL.g:12025:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
+            // InternalEssentialOCL.g:12025:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1();
@@ -34887,17 +34887,17 @@
 
 
     // $ANTLR start "rule__Model__OwnedExpressionAssignment"
-    // InternalEssentialOCL.g:12036:1: rule__Model__OwnedExpressionAssignment : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:12040:1: rule__Model__OwnedExpressionAssignment : ( ruleExpCS ) ;
     public final void rule__Model__OwnedExpressionAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12040:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:12041:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12044:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:12045:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:12041:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:12042:1: ruleExpCS
+            // InternalEssentialOCL.g:12045:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12046:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getModelAccess().getOwnedExpressionExpCSParserRuleCall_0());
@@ -34932,23 +34932,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__ReferredElementAssignment_0"
-    // InternalEssentialOCL.g:12053:1: rule__URIFirstPathElementCS__ReferredElementAssignment_0 : ( ( ruleUnrestrictedName ) ) ;
+    // InternalEssentialOCL.g:12057:1: rule__URIFirstPathElementCS__ReferredElementAssignment_0 : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12057:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalEssentialOCL.g:12058:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:12061:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalEssentialOCL.g:12062:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalEssentialOCL.g:12058:1: ( ( ruleUnrestrictedName ) )
-            // InternalEssentialOCL.g:12059:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:12062:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:12063:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
             }
-            // InternalEssentialOCL.g:12060:1: ( ruleUnrestrictedName )
-            // InternalEssentialOCL.g:12061:1: ruleUnrestrictedName
+            // InternalEssentialOCL.g:12064:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:12065:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1());
@@ -34989,23 +34989,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__ReferredElementAssignment_1_1"
-    // InternalEssentialOCL.g:12072:1: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 : ( ( ruleURI ) ) ;
+    // InternalEssentialOCL.g:12076:1: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 : ( ( ruleURI ) ) ;
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12076:1: ( ( ( ruleURI ) ) )
-            // InternalEssentialOCL.g:12077:1: ( ( ruleURI ) )
+            // InternalEssentialOCL.g:12080:1: ( ( ( ruleURI ) ) )
+            // InternalEssentialOCL.g:12081:1: ( ( ruleURI ) )
             {
-            // InternalEssentialOCL.g:12077:1: ( ( ruleURI ) )
-            // InternalEssentialOCL.g:12078:1: ( ruleURI )
+            // InternalEssentialOCL.g:12081:1: ( ( ruleURI ) )
+            // InternalEssentialOCL.g:12082:1: ( ruleURI )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
             }
-            // InternalEssentialOCL.g:12079:1: ( ruleURI )
-            // InternalEssentialOCL.g:12080:1: ruleURI
+            // InternalEssentialOCL.g:12083:1: ( ruleURI )
+            // InternalEssentialOCL.g:12084:1: ruleURI
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1());
@@ -35046,17 +35046,17 @@
 
 
     // $ANTLR start "rule__PrimitiveTypeCS__NameAssignment"
-    // InternalEssentialOCL.g:12092:1: rule__PrimitiveTypeCS__NameAssignment : ( rulePrimitiveTypeIdentifier ) ;
+    // InternalEssentialOCL.g:12096:1: rule__PrimitiveTypeCS__NameAssignment : ( rulePrimitiveTypeIdentifier ) ;
     public final void rule__PrimitiveTypeCS__NameAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12096:1: ( ( rulePrimitiveTypeIdentifier ) )
-            // InternalEssentialOCL.g:12097:1: ( rulePrimitiveTypeIdentifier )
+            // InternalEssentialOCL.g:12100:1: ( ( rulePrimitiveTypeIdentifier ) )
+            // InternalEssentialOCL.g:12101:1: ( rulePrimitiveTypeIdentifier )
             {
-            // InternalEssentialOCL.g:12097:1: ( rulePrimitiveTypeIdentifier )
-            // InternalEssentialOCL.g:12098:1: rulePrimitiveTypeIdentifier
+            // InternalEssentialOCL.g:12101:1: ( rulePrimitiveTypeIdentifier )
+            // InternalEssentialOCL.g:12102:1: rulePrimitiveTypeIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
@@ -35091,17 +35091,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__NameAssignment_0"
-    // InternalEssentialOCL.g:12107:1: rule__CollectionTypeCS__NameAssignment_0 : ( ruleCollectionTypeIdentifier ) ;
+    // InternalEssentialOCL.g:12111:1: rule__CollectionTypeCS__NameAssignment_0 : ( ruleCollectionTypeIdentifier ) ;
     public final void rule__CollectionTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12111:1: ( ( ruleCollectionTypeIdentifier ) )
-            // InternalEssentialOCL.g:12112:1: ( ruleCollectionTypeIdentifier )
+            // InternalEssentialOCL.g:12115:1: ( ( ruleCollectionTypeIdentifier ) )
+            // InternalEssentialOCL.g:12116:1: ( ruleCollectionTypeIdentifier )
             {
-            // InternalEssentialOCL.g:12112:1: ( ruleCollectionTypeIdentifier )
-            // InternalEssentialOCL.g:12113:1: ruleCollectionTypeIdentifier
+            // InternalEssentialOCL.g:12116:1: ( ruleCollectionTypeIdentifier )
+            // InternalEssentialOCL.g:12117:1: ruleCollectionTypeIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
@@ -35136,17 +35136,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__OwnedTypeAssignment_1_1"
-    // InternalEssentialOCL.g:12122:1: rule__CollectionTypeCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpWithoutMultiplicityCS ) ;
+    // InternalEssentialOCL.g:12126:1: rule__CollectionTypeCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpWithoutMultiplicityCS ) ;
     public final void rule__CollectionTypeCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12126:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
-            // InternalEssentialOCL.g:12127:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalEssentialOCL.g:12130:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
+            // InternalEssentialOCL.g:12131:1: ( ruleTypeExpWithoutMultiplicityCS )
             {
-            // InternalEssentialOCL.g:12127:1: ( ruleTypeExpWithoutMultiplicityCS )
-            // InternalEssentialOCL.g:12128:1: ruleTypeExpWithoutMultiplicityCS
+            // InternalEssentialOCL.g:12131:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalEssentialOCL.g:12132:1: ruleTypeExpWithoutMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpWithoutMultiplicityCSParserRuleCall_1_1_0());
@@ -35181,17 +35181,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2"
-    // InternalEssentialOCL.g:12137:1: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 : ( ruleMultiplicityCS ) ;
+    // InternalEssentialOCL.g:12141:1: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 : ( ruleMultiplicityCS ) ;
     public final void rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12141:1: ( ( ruleMultiplicityCS ) )
-            // InternalEssentialOCL.g:12142:1: ( ruleMultiplicityCS )
+            // InternalEssentialOCL.g:12145:1: ( ( ruleMultiplicityCS ) )
+            // InternalEssentialOCL.g:12146:1: ( ruleMultiplicityCS )
             {
-            // InternalEssentialOCL.g:12142:1: ( ruleMultiplicityCS )
-            // InternalEssentialOCL.g:12143:1: ruleMultiplicityCS
+            // InternalEssentialOCL.g:12146:1: ( ruleMultiplicityCS )
+            // InternalEssentialOCL.g:12147:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedCollectionMultiplicityMultiplicityCSParserRuleCall_1_2_0());
@@ -35226,23 +35226,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__NameAssignment_0"
-    // InternalEssentialOCL.g:12152:1: rule__MapTypeCS__NameAssignment_0 : ( ( 'Map' ) ) ;
+    // InternalEssentialOCL.g:12156:1: rule__MapTypeCS__NameAssignment_0 : ( ( 'Map' ) ) ;
     public final void rule__MapTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12156:1: ( ( ( 'Map' ) ) )
-            // InternalEssentialOCL.g:12157:1: ( ( 'Map' ) )
+            // InternalEssentialOCL.g:12160:1: ( ( ( 'Map' ) ) )
+            // InternalEssentialOCL.g:12161:1: ( ( 'Map' ) )
             {
-            // InternalEssentialOCL.g:12157:1: ( ( 'Map' ) )
-            // InternalEssentialOCL.g:12158:1: ( 'Map' )
+            // InternalEssentialOCL.g:12161:1: ( ( 'Map' ) )
+            // InternalEssentialOCL.g:12162:1: ( 'Map' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
-            // InternalEssentialOCL.g:12159:1: ( 'Map' )
-            // InternalEssentialOCL.g:12160:1: 'Map'
+            // InternalEssentialOCL.g:12163:1: ( 'Map' )
+            // InternalEssentialOCL.g:12164:1: 'Map'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
@@ -35279,17 +35279,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__OwnedKeyTypeAssignment_1_1"
-    // InternalEssentialOCL.g:12175:1: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:12179:1: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__MapTypeCS__OwnedKeyTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12179:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:12180:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:12183:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:12184:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:12180:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:12181:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:12184:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:12185:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
@@ -35324,17 +35324,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__OwnedValueTypeAssignment_1_3"
-    // InternalEssentialOCL.g:12190:1: rule__MapTypeCS__OwnedValueTypeAssignment_1_3 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:12194:1: rule__MapTypeCS__OwnedValueTypeAssignment_1_3 : ( ruleTypeExpCS ) ;
     public final void rule__MapTypeCS__OwnedValueTypeAssignment_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12194:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:12195:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:12198:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:12199:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:12195:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:12196:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:12199:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:12200:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
@@ -35369,23 +35369,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__NameAssignment_0"
-    // InternalEssentialOCL.g:12205:1: rule__TupleTypeCS__NameAssignment_0 : ( ( 'Tuple' ) ) ;
+    // InternalEssentialOCL.g:12209:1: rule__TupleTypeCS__NameAssignment_0 : ( ( 'Tuple' ) ) ;
     public final void rule__TupleTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12209:1: ( ( ( 'Tuple' ) ) )
-            // InternalEssentialOCL.g:12210:1: ( ( 'Tuple' ) )
+            // InternalEssentialOCL.g:12213:1: ( ( ( 'Tuple' ) ) )
+            // InternalEssentialOCL.g:12214:1: ( ( 'Tuple' ) )
             {
-            // InternalEssentialOCL.g:12210:1: ( ( 'Tuple' ) )
-            // InternalEssentialOCL.g:12211:1: ( 'Tuple' )
+            // InternalEssentialOCL.g:12214:1: ( ( 'Tuple' ) )
+            // InternalEssentialOCL.g:12215:1: ( 'Tuple' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
-            // InternalEssentialOCL.g:12212:1: ( 'Tuple' )
-            // InternalEssentialOCL.g:12213:1: 'Tuple'
+            // InternalEssentialOCL.g:12216:1: ( 'Tuple' )
+            // InternalEssentialOCL.g:12217:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
@@ -35422,17 +35422,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__OwnedPartsAssignment_1_1_0"
-    // InternalEssentialOCL.g:12228:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 : ( ruleTuplePartCS ) ;
+    // InternalEssentialOCL.g:12232:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 : ( ruleTuplePartCS ) ;
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12232:1: ( ( ruleTuplePartCS ) )
-            // InternalEssentialOCL.g:12233:1: ( ruleTuplePartCS )
+            // InternalEssentialOCL.g:12236:1: ( ( ruleTuplePartCS ) )
+            // InternalEssentialOCL.g:12237:1: ( ruleTuplePartCS )
             {
-            // InternalEssentialOCL.g:12233:1: ( ruleTuplePartCS )
-            // InternalEssentialOCL.g:12234:1: ruleTuplePartCS
+            // InternalEssentialOCL.g:12237:1: ( ruleTuplePartCS )
+            // InternalEssentialOCL.g:12238:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
@@ -35467,17 +35467,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1"
-    // InternalEssentialOCL.g:12243:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 : ( ruleTuplePartCS ) ;
+    // InternalEssentialOCL.g:12247:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 : ( ruleTuplePartCS ) ;
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12247:1: ( ( ruleTuplePartCS ) )
-            // InternalEssentialOCL.g:12248:1: ( ruleTuplePartCS )
+            // InternalEssentialOCL.g:12251:1: ( ( ruleTuplePartCS ) )
+            // InternalEssentialOCL.g:12252:1: ( ruleTuplePartCS )
             {
-            // InternalEssentialOCL.g:12248:1: ( ruleTuplePartCS )
-            // InternalEssentialOCL.g:12249:1: ruleTuplePartCS
+            // InternalEssentialOCL.g:12252:1: ( ruleTuplePartCS )
+            // InternalEssentialOCL.g:12253:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
@@ -35512,17 +35512,17 @@
 
 
     // $ANTLR start "rule__TuplePartCS__NameAssignment_0"
-    // InternalEssentialOCL.g:12258:1: rule__TuplePartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalEssentialOCL.g:12262:1: rule__TuplePartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__TuplePartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12262:1: ( ( ruleUnrestrictedName ) )
-            // InternalEssentialOCL.g:12263:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:12266:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:12267:1: ( ruleUnrestrictedName )
             {
-            // InternalEssentialOCL.g:12263:1: ( ruleUnrestrictedName )
-            // InternalEssentialOCL.g:12264:1: ruleUnrestrictedName
+            // InternalEssentialOCL.g:12267:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:12268:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -35557,17 +35557,17 @@
 
 
     // $ANTLR start "rule__TuplePartCS__OwnedTypeAssignment_2"
-    // InternalEssentialOCL.g:12273:1: rule__TuplePartCS__OwnedTypeAssignment_2 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:12277:1: rule__TuplePartCS__OwnedTypeAssignment_2 : ( ruleTypeExpCS ) ;
     public final void rule__TuplePartCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12277:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:12278:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:12281:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:12282:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:12278:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:12279:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:12282:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:12283:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
@@ -35602,17 +35602,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__OwnedTypeAssignment_0"
-    // InternalEssentialOCL.g:12288:1: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
+    // InternalEssentialOCL.g:12292:1: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
     public final void rule__CollectionLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12292:1: ( ( ruleCollectionTypeCS ) )
-            // InternalEssentialOCL.g:12293:1: ( ruleCollectionTypeCS )
+            // InternalEssentialOCL.g:12296:1: ( ( ruleCollectionTypeCS ) )
+            // InternalEssentialOCL.g:12297:1: ( ruleCollectionTypeCS )
             {
-            // InternalEssentialOCL.g:12293:1: ( ruleCollectionTypeCS )
-            // InternalEssentialOCL.g:12294:1: ruleCollectionTypeCS
+            // InternalEssentialOCL.g:12297:1: ( ruleCollectionTypeCS )
+            // InternalEssentialOCL.g:12298:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
@@ -35647,17 +35647,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0"
-    // InternalEssentialOCL.g:12303:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleCollectionLiteralPartCS ) ;
+    // InternalEssentialOCL.g:12307:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleCollectionLiteralPartCS ) ;
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12307:1: ( ( ruleCollectionLiteralPartCS ) )
-            // InternalEssentialOCL.g:12308:1: ( ruleCollectionLiteralPartCS )
+            // InternalEssentialOCL.g:12311:1: ( ( ruleCollectionLiteralPartCS ) )
+            // InternalEssentialOCL.g:12312:1: ( ruleCollectionLiteralPartCS )
             {
-            // InternalEssentialOCL.g:12308:1: ( ruleCollectionLiteralPartCS )
-            // InternalEssentialOCL.g:12309:1: ruleCollectionLiteralPartCS
+            // InternalEssentialOCL.g:12312:1: ( ruleCollectionLiteralPartCS )
+            // InternalEssentialOCL.g:12313:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
@@ -35692,17 +35692,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1"
-    // InternalEssentialOCL.g:12318:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleCollectionLiteralPartCS ) ;
+    // InternalEssentialOCL.g:12322:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleCollectionLiteralPartCS ) ;
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12322:1: ( ( ruleCollectionLiteralPartCS ) )
-            // InternalEssentialOCL.g:12323:1: ( ruleCollectionLiteralPartCS )
+            // InternalEssentialOCL.g:12326:1: ( ( ruleCollectionLiteralPartCS ) )
+            // InternalEssentialOCL.g:12327:1: ( ruleCollectionLiteralPartCS )
             {
-            // InternalEssentialOCL.g:12323:1: ( ruleCollectionLiteralPartCS )
-            // InternalEssentialOCL.g:12324:1: ruleCollectionLiteralPartCS
+            // InternalEssentialOCL.g:12327:1: ( ruleCollectionLiteralPartCS )
+            // InternalEssentialOCL.g:12328:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
@@ -35737,17 +35737,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0"
-    // InternalEssentialOCL.g:12333:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:12337:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 : ( ruleExpCS ) ;
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12337:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:12338:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12341:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:12342:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:12338:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:12339:1: ruleExpCS
+            // InternalEssentialOCL.g:12342:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12343:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
@@ -35782,17 +35782,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1"
-    // InternalEssentialOCL.g:12348:1: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:12352:1: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 : ( ruleExpCS ) ;
     public final void rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12352:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:12353:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12356:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:12357:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:12353:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:12354:1: ruleExpCS
+            // InternalEssentialOCL.g:12357:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12358:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
@@ -35827,17 +35827,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1"
-    // InternalEssentialOCL.g:12363:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 : ( rulePatternExpCS ) ;
+    // InternalEssentialOCL.g:12367:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 : ( rulePatternExpCS ) ;
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12367:1: ( ( rulePatternExpCS ) )
-            // InternalEssentialOCL.g:12368:1: ( rulePatternExpCS )
+            // InternalEssentialOCL.g:12371:1: ( ( rulePatternExpCS ) )
+            // InternalEssentialOCL.g:12372:1: ( rulePatternExpCS )
             {
-            // InternalEssentialOCL.g:12368:1: ( rulePatternExpCS )
-            // InternalEssentialOCL.g:12369:1: rulePatternExpCS
+            // InternalEssentialOCL.g:12372:1: ( rulePatternExpCS )
+            // InternalEssentialOCL.g:12373:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
@@ -35872,17 +35872,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__OwnedTypeAssignment_0"
-    // InternalEssentialOCL.g:12378:1: rule__CollectionPatternCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
+    // InternalEssentialOCL.g:12382:1: rule__CollectionPatternCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
     public final void rule__CollectionPatternCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12382:1: ( ( ruleCollectionTypeCS ) )
-            // InternalEssentialOCL.g:12383:1: ( ruleCollectionTypeCS )
+            // InternalEssentialOCL.g:12386:1: ( ( ruleCollectionTypeCS ) )
+            // InternalEssentialOCL.g:12387:1: ( ruleCollectionTypeCS )
             {
-            // InternalEssentialOCL.g:12383:1: ( ruleCollectionTypeCS )
-            // InternalEssentialOCL.g:12384:1: ruleCollectionTypeCS
+            // InternalEssentialOCL.g:12387:1: ( ruleCollectionTypeCS )
+            // InternalEssentialOCL.g:12388:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
@@ -35917,17 +35917,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__OwnedPartsAssignment_2_0"
-    // InternalEssentialOCL.g:12393:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_0 : ( rulePatternExpCS ) ;
+    // InternalEssentialOCL.g:12397:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_0 : ( rulePatternExpCS ) ;
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12397:1: ( ( rulePatternExpCS ) )
-            // InternalEssentialOCL.g:12398:1: ( rulePatternExpCS )
+            // InternalEssentialOCL.g:12401:1: ( ( rulePatternExpCS ) )
+            // InternalEssentialOCL.g:12402:1: ( rulePatternExpCS )
             {
-            // InternalEssentialOCL.g:12398:1: ( rulePatternExpCS )
-            // InternalEssentialOCL.g:12399:1: rulePatternExpCS
+            // InternalEssentialOCL.g:12402:1: ( rulePatternExpCS )
+            // InternalEssentialOCL.g:12403:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
@@ -35962,17 +35962,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1"
-    // InternalEssentialOCL.g:12408:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 : ( rulePatternExpCS ) ;
+    // InternalEssentialOCL.g:12412:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 : ( rulePatternExpCS ) ;
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12412:1: ( ( rulePatternExpCS ) )
-            // InternalEssentialOCL.g:12413:1: ( rulePatternExpCS )
+            // InternalEssentialOCL.g:12416:1: ( ( rulePatternExpCS ) )
+            // InternalEssentialOCL.g:12417:1: ( rulePatternExpCS )
             {
-            // InternalEssentialOCL.g:12413:1: ( rulePatternExpCS )
-            // InternalEssentialOCL.g:12414:1: rulePatternExpCS
+            // InternalEssentialOCL.g:12417:1: ( rulePatternExpCS )
+            // InternalEssentialOCL.g:12418:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
@@ -36007,17 +36007,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1"
-    // InternalEssentialOCL.g:12423:1: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 : ( ruleIdentifier ) ;
+    // InternalEssentialOCL.g:12427:1: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 : ( ruleIdentifier ) ;
     public final void rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12427:1: ( ( ruleIdentifier ) )
-            // InternalEssentialOCL.g:12428:1: ( ruleIdentifier )
+            // InternalEssentialOCL.g:12431:1: ( ( ruleIdentifier ) )
+            // InternalEssentialOCL.g:12432:1: ( ruleIdentifier )
             {
-            // InternalEssentialOCL.g:12428:1: ( ruleIdentifier )
-            // InternalEssentialOCL.g:12429:1: ruleIdentifier
+            // InternalEssentialOCL.g:12432:1: ( ruleIdentifier )
+            // InternalEssentialOCL.g:12433:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
@@ -36052,23 +36052,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__ReferredPropertyAssignment_0_0"
-    // InternalEssentialOCL.g:12438:1: rule__ShadowPartCS__ReferredPropertyAssignment_0_0 : ( ( ruleUnrestrictedName ) ) ;
+    // InternalEssentialOCL.g:12442:1: rule__ShadowPartCS__ReferredPropertyAssignment_0_0 : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__ShadowPartCS__ReferredPropertyAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12442:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalEssentialOCL.g:12443:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:12446:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalEssentialOCL.g:12447:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalEssentialOCL.g:12443:1: ( ( ruleUnrestrictedName ) )
-            // InternalEssentialOCL.g:12444:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:12447:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:12448:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0_0());
             }
-            // InternalEssentialOCL.g:12445:1: ( ruleUnrestrictedName )
-            // InternalEssentialOCL.g:12446:1: ruleUnrestrictedName
+            // InternalEssentialOCL.g:12449:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:12450:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_0_1());
@@ -36109,23 +36109,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2"
-    // InternalEssentialOCL.g:12457:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 : ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) ;
+    // InternalEssentialOCL.g:12461:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 : ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) ;
     public final void rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12461:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) )
-            // InternalEssentialOCL.g:12462:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
+            // InternalEssentialOCL.g:12465:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) )
+            // InternalEssentialOCL.g:12466:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
             {
-            // InternalEssentialOCL.g:12462:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
-            // InternalEssentialOCL.g:12463:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
+            // InternalEssentialOCL.g:12466:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
+            // InternalEssentialOCL.g:12467:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_0_2_0());
             }
-            // InternalEssentialOCL.g:12464:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
-            // InternalEssentialOCL.g:12464:2: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0
+            // InternalEssentialOCL.g:12468:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
+            // InternalEssentialOCL.g:12468:2: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0();
@@ -36160,17 +36160,17 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__OwnedInitExpressionAssignment_1"
-    // InternalEssentialOCL.g:12473:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_1 : ( ruleStringLiteralExpCS ) ;
+    // InternalEssentialOCL.g:12477:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_1 : ( ruleStringLiteralExpCS ) ;
     public final void rule__ShadowPartCS__OwnedInitExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12477:1: ( ( ruleStringLiteralExpCS ) )
-            // InternalEssentialOCL.g:12478:1: ( ruleStringLiteralExpCS )
+            // InternalEssentialOCL.g:12481:1: ( ( ruleStringLiteralExpCS ) )
+            // InternalEssentialOCL.g:12482:1: ( ruleStringLiteralExpCS )
             {
-            // InternalEssentialOCL.g:12478:1: ( ruleStringLiteralExpCS )
-            // InternalEssentialOCL.g:12479:1: ruleStringLiteralExpCS
+            // InternalEssentialOCL.g:12482:1: ( ruleStringLiteralExpCS )
+            // InternalEssentialOCL.g:12483:1: ruleStringLiteralExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionStringLiteralExpCSParserRuleCall_1_0());
@@ -36205,17 +36205,17 @@
 
 
     // $ANTLR start "rule__PatternExpCS__PatternVariableNameAssignment_0"
-    // InternalEssentialOCL.g:12488:1: rule__PatternExpCS__PatternVariableNameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalEssentialOCL.g:12492:1: rule__PatternExpCS__PatternVariableNameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__PatternExpCS__PatternVariableNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12492:1: ( ( ruleUnrestrictedName ) )
-            // InternalEssentialOCL.g:12493:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:12496:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:12497:1: ( ruleUnrestrictedName )
             {
-            // InternalEssentialOCL.g:12493:1: ( ruleUnrestrictedName )
-            // InternalEssentialOCL.g:12494:1: ruleUnrestrictedName
+            // InternalEssentialOCL.g:12497:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:12498:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
@@ -36250,17 +36250,17 @@
 
 
     // $ANTLR start "rule__PatternExpCS__OwnedPatternTypeAssignment_2"
-    // InternalEssentialOCL.g:12503:1: rule__PatternExpCS__OwnedPatternTypeAssignment_2 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:12507:1: rule__PatternExpCS__OwnedPatternTypeAssignment_2 : ( ruleTypeExpCS ) ;
     public final void rule__PatternExpCS__OwnedPatternTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12507:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:12508:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:12511:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:12512:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:12508:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:12509:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:12512:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:12513:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
@@ -36295,17 +36295,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2"
-    // InternalEssentialOCL.g:12518:1: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:12522:1: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 : ( ruleExpCS ) ;
     public final void rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12522:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:12523:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12526:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:12527:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:12523:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:12524:1: ruleExpCS
+            // InternalEssentialOCL.g:12527:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12528:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
@@ -36340,17 +36340,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__OwnedTypeAssignment_0"
-    // InternalEssentialOCL.g:12533:1: rule__MapLiteralExpCS__OwnedTypeAssignment_0 : ( ruleMapTypeCS ) ;
+    // InternalEssentialOCL.g:12537:1: rule__MapLiteralExpCS__OwnedTypeAssignment_0 : ( ruleMapTypeCS ) ;
     public final void rule__MapLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12537:1: ( ( ruleMapTypeCS ) )
-            // InternalEssentialOCL.g:12538:1: ( ruleMapTypeCS )
+            // InternalEssentialOCL.g:12541:1: ( ( ruleMapTypeCS ) )
+            // InternalEssentialOCL.g:12542:1: ( ruleMapTypeCS )
             {
-            // InternalEssentialOCL.g:12538:1: ( ruleMapTypeCS )
-            // InternalEssentialOCL.g:12539:1: ruleMapTypeCS
+            // InternalEssentialOCL.g:12542:1: ( ruleMapTypeCS )
+            // InternalEssentialOCL.g:12543:1: ruleMapTypeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
@@ -36385,17 +36385,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__OwnedPartsAssignment_2_0"
-    // InternalEssentialOCL.g:12548:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleMapLiteralPartCS ) ;
+    // InternalEssentialOCL.g:12552:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleMapLiteralPartCS ) ;
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12552:1: ( ( ruleMapLiteralPartCS ) )
-            // InternalEssentialOCL.g:12553:1: ( ruleMapLiteralPartCS )
+            // InternalEssentialOCL.g:12556:1: ( ( ruleMapLiteralPartCS ) )
+            // InternalEssentialOCL.g:12557:1: ( ruleMapLiteralPartCS )
             {
-            // InternalEssentialOCL.g:12553:1: ( ruleMapLiteralPartCS )
-            // InternalEssentialOCL.g:12554:1: ruleMapLiteralPartCS
+            // InternalEssentialOCL.g:12557:1: ( ruleMapLiteralPartCS )
+            // InternalEssentialOCL.g:12558:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
@@ -36430,17 +36430,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1"
-    // InternalEssentialOCL.g:12563:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleMapLiteralPartCS ) ;
+    // InternalEssentialOCL.g:12567:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleMapLiteralPartCS ) ;
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12567:1: ( ( ruleMapLiteralPartCS ) )
-            // InternalEssentialOCL.g:12568:1: ( ruleMapLiteralPartCS )
+            // InternalEssentialOCL.g:12571:1: ( ( ruleMapLiteralPartCS ) )
+            // InternalEssentialOCL.g:12572:1: ( ruleMapLiteralPartCS )
             {
-            // InternalEssentialOCL.g:12568:1: ( ruleMapLiteralPartCS )
-            // InternalEssentialOCL.g:12569:1: ruleMapLiteralPartCS
+            // InternalEssentialOCL.g:12572:1: ( ruleMapLiteralPartCS )
+            // InternalEssentialOCL.g:12573:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
@@ -36475,17 +36475,17 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__OwnedKeyAssignment_0"
-    // InternalEssentialOCL.g:12578:1: rule__MapLiteralPartCS__OwnedKeyAssignment_0 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:12582:1: rule__MapLiteralPartCS__OwnedKeyAssignment_0 : ( ruleExpCS ) ;
     public final void rule__MapLiteralPartCS__OwnedKeyAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12582:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:12583:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12586:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:12587:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:12583:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:12584:1: ruleExpCS
+            // InternalEssentialOCL.g:12587:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12588:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
@@ -36520,17 +36520,17 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__OwnedValueAssignment_2"
-    // InternalEssentialOCL.g:12593:1: rule__MapLiteralPartCS__OwnedValueAssignment_2 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:12597:1: rule__MapLiteralPartCS__OwnedValueAssignment_2 : ( ruleExpCS ) ;
     public final void rule__MapLiteralPartCS__OwnedValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12597:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:12598:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12601:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:12602:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:12598:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:12599:1: ruleExpCS
+            // InternalEssentialOCL.g:12602:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12603:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
@@ -36565,17 +36565,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__OwnedPartsAssignment_2"
-    // InternalEssentialOCL.g:12608:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_2 : ( ruleTupleLiteralPartCS ) ;
+    // InternalEssentialOCL.g:12612:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_2 : ( ruleTupleLiteralPartCS ) ;
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12612:1: ( ( ruleTupleLiteralPartCS ) )
-            // InternalEssentialOCL.g:12613:1: ( ruleTupleLiteralPartCS )
+            // InternalEssentialOCL.g:12616:1: ( ( ruleTupleLiteralPartCS ) )
+            // InternalEssentialOCL.g:12617:1: ( ruleTupleLiteralPartCS )
             {
-            // InternalEssentialOCL.g:12613:1: ( ruleTupleLiteralPartCS )
-            // InternalEssentialOCL.g:12614:1: ruleTupleLiteralPartCS
+            // InternalEssentialOCL.g:12617:1: ( ruleTupleLiteralPartCS )
+            // InternalEssentialOCL.g:12618:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
@@ -36610,17 +36610,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1"
-    // InternalEssentialOCL.g:12623:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 : ( ruleTupleLiteralPartCS ) ;
+    // InternalEssentialOCL.g:12627:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 : ( ruleTupleLiteralPartCS ) ;
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12627:1: ( ( ruleTupleLiteralPartCS ) )
-            // InternalEssentialOCL.g:12628:1: ( ruleTupleLiteralPartCS )
+            // InternalEssentialOCL.g:12631:1: ( ( ruleTupleLiteralPartCS ) )
+            // InternalEssentialOCL.g:12632:1: ( ruleTupleLiteralPartCS )
             {
-            // InternalEssentialOCL.g:12628:1: ( ruleTupleLiteralPartCS )
-            // InternalEssentialOCL.g:12629:1: ruleTupleLiteralPartCS
+            // InternalEssentialOCL.g:12632:1: ( ruleTupleLiteralPartCS )
+            // InternalEssentialOCL.g:12633:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
@@ -36655,17 +36655,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__NameAssignment_0"
-    // InternalEssentialOCL.g:12638:1: rule__TupleLiteralPartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalEssentialOCL.g:12642:1: rule__TupleLiteralPartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__TupleLiteralPartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12642:1: ( ( ruleUnrestrictedName ) )
-            // InternalEssentialOCL.g:12643:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:12646:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:12647:1: ( ruleUnrestrictedName )
             {
-            // InternalEssentialOCL.g:12643:1: ( ruleUnrestrictedName )
-            // InternalEssentialOCL.g:12644:1: ruleUnrestrictedName
+            // InternalEssentialOCL.g:12647:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:12648:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -36700,17 +36700,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1"
-    // InternalEssentialOCL.g:12653:1: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:12657:1: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12657:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:12658:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:12661:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:12662:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:12658:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:12659:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:12662:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:12663:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
@@ -36745,17 +36745,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3"
-    // InternalEssentialOCL.g:12668:1: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:12672:1: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 : ( ruleExpCS ) ;
     public final void rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12672:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:12673:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12676:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:12677:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:12673:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:12674:1: ruleExpCS
+            // InternalEssentialOCL.g:12677:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12678:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
@@ -36790,17 +36790,17 @@
 
 
     // $ANTLR start "rule__NumberLiteralExpCS__SymbolAssignment"
-    // InternalEssentialOCL.g:12683:1: rule__NumberLiteralExpCS__SymbolAssignment : ( ruleNUMBER_LITERAL ) ;
+    // InternalEssentialOCL.g:12687:1: rule__NumberLiteralExpCS__SymbolAssignment : ( ruleNUMBER_LITERAL ) ;
     public final void rule__NumberLiteralExpCS__SymbolAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12687:1: ( ( ruleNUMBER_LITERAL ) )
-            // InternalEssentialOCL.g:12688:1: ( ruleNUMBER_LITERAL )
+            // InternalEssentialOCL.g:12691:1: ( ( ruleNUMBER_LITERAL ) )
+            // InternalEssentialOCL.g:12692:1: ( ruleNUMBER_LITERAL )
             {
-            // InternalEssentialOCL.g:12688:1: ( ruleNUMBER_LITERAL )
-            // InternalEssentialOCL.g:12689:1: ruleNUMBER_LITERAL
+            // InternalEssentialOCL.g:12692:1: ( ruleNUMBER_LITERAL )
+            // InternalEssentialOCL.g:12693:1: ruleNUMBER_LITERAL
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
@@ -36835,17 +36835,17 @@
 
 
     // $ANTLR start "rule__StringLiteralExpCS__SegmentsAssignment"
-    // InternalEssentialOCL.g:12698:1: rule__StringLiteralExpCS__SegmentsAssignment : ( ruleStringLiteral ) ;
+    // InternalEssentialOCL.g:12702:1: rule__StringLiteralExpCS__SegmentsAssignment : ( ruleStringLiteral ) ;
     public final void rule__StringLiteralExpCS__SegmentsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12702:1: ( ( ruleStringLiteral ) )
-            // InternalEssentialOCL.g:12703:1: ( ruleStringLiteral )
+            // InternalEssentialOCL.g:12706:1: ( ( ruleStringLiteral ) )
+            // InternalEssentialOCL.g:12707:1: ( ruleStringLiteral )
             {
-            // InternalEssentialOCL.g:12703:1: ( ruleStringLiteral )
-            // InternalEssentialOCL.g:12704:1: ruleStringLiteral
+            // InternalEssentialOCL.g:12707:1: ( ruleStringLiteral )
+            // InternalEssentialOCL.g:12708:1: ruleStringLiteral
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
@@ -36880,23 +36880,23 @@
 
 
     // $ANTLR start "rule__BooleanLiteralExpCS__SymbolAssignment_0"
-    // InternalEssentialOCL.g:12713:1: rule__BooleanLiteralExpCS__SymbolAssignment_0 : ( ( 'true' ) ) ;
+    // InternalEssentialOCL.g:12717:1: rule__BooleanLiteralExpCS__SymbolAssignment_0 : ( ( 'true' ) ) ;
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12717:1: ( ( ( 'true' ) ) )
-            // InternalEssentialOCL.g:12718:1: ( ( 'true' ) )
+            // InternalEssentialOCL.g:12721:1: ( ( ( 'true' ) ) )
+            // InternalEssentialOCL.g:12722:1: ( ( 'true' ) )
             {
-            // InternalEssentialOCL.g:12718:1: ( ( 'true' ) )
-            // InternalEssentialOCL.g:12719:1: ( 'true' )
+            // InternalEssentialOCL.g:12722:1: ( ( 'true' ) )
+            // InternalEssentialOCL.g:12723:1: ( 'true' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
-            // InternalEssentialOCL.g:12720:1: ( 'true' )
-            // InternalEssentialOCL.g:12721:1: 'true'
+            // InternalEssentialOCL.g:12724:1: ( 'true' )
+            // InternalEssentialOCL.g:12725:1: 'true'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
@@ -36933,23 +36933,23 @@
 
 
     // $ANTLR start "rule__BooleanLiteralExpCS__SymbolAssignment_1"
-    // InternalEssentialOCL.g:12736:1: rule__BooleanLiteralExpCS__SymbolAssignment_1 : ( ( 'false' ) ) ;
+    // InternalEssentialOCL.g:12740:1: rule__BooleanLiteralExpCS__SymbolAssignment_1 : ( ( 'false' ) ) ;
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12740:1: ( ( ( 'false' ) ) )
-            // InternalEssentialOCL.g:12741:1: ( ( 'false' ) )
+            // InternalEssentialOCL.g:12744:1: ( ( ( 'false' ) ) )
+            // InternalEssentialOCL.g:12745:1: ( ( 'false' ) )
             {
-            // InternalEssentialOCL.g:12741:1: ( ( 'false' ) )
-            // InternalEssentialOCL.g:12742:1: ( 'false' )
+            // InternalEssentialOCL.g:12745:1: ( ( 'false' ) )
+            // InternalEssentialOCL.g:12746:1: ( 'false' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
-            // InternalEssentialOCL.g:12743:1: ( 'false' )
-            // InternalEssentialOCL.g:12744:1: 'false'
+            // InternalEssentialOCL.g:12747:1: ( 'false' )
+            // InternalEssentialOCL.g:12748:1: 'false'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
@@ -36986,17 +36986,17 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1"
-    // InternalEssentialOCL.g:12759:1: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
+    // InternalEssentialOCL.g:12763:1: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
     public final void rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12763:1: ( ( ruleMultiplicityCS ) )
-            // InternalEssentialOCL.g:12764:1: ( ruleMultiplicityCS )
+            // InternalEssentialOCL.g:12767:1: ( ( ruleMultiplicityCS ) )
+            // InternalEssentialOCL.g:12768:1: ( ruleMultiplicityCS )
             {
-            // InternalEssentialOCL.g:12764:1: ( ruleMultiplicityCS )
-            // InternalEssentialOCL.g:12765:1: ruleMultiplicityCS
+            // InternalEssentialOCL.g:12768:1: ( ruleMultiplicityCS )
+            // InternalEssentialOCL.g:12769:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
@@ -37031,17 +37031,17 @@
 
 
     // $ANTLR start "rule__TypeLiteralExpCS__OwnedTypeAssignment"
-    // InternalEssentialOCL.g:12774:1: rule__TypeLiteralExpCS__OwnedTypeAssignment : ( ruleTypeLiteralWithMultiplicityCS ) ;
+    // InternalEssentialOCL.g:12778:1: rule__TypeLiteralExpCS__OwnedTypeAssignment : ( ruleTypeLiteralWithMultiplicityCS ) ;
     public final void rule__TypeLiteralExpCS__OwnedTypeAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12778:1: ( ( ruleTypeLiteralWithMultiplicityCS ) )
-            // InternalEssentialOCL.g:12779:1: ( ruleTypeLiteralWithMultiplicityCS )
+            // InternalEssentialOCL.g:12782:1: ( ( ruleTypeLiteralWithMultiplicityCS ) )
+            // InternalEssentialOCL.g:12783:1: ( ruleTypeLiteralWithMultiplicityCS )
             {
-            // InternalEssentialOCL.g:12779:1: ( ruleTypeLiteralWithMultiplicityCS )
-            // InternalEssentialOCL.g:12780:1: ruleTypeLiteralWithMultiplicityCS
+            // InternalEssentialOCL.g:12783:1: ( ruleTypeLiteralWithMultiplicityCS )
+            // InternalEssentialOCL.g:12784:1: ruleTypeLiteralWithMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
@@ -37076,17 +37076,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__OwnedPathNameAssignment_0"
-    // InternalEssentialOCL.g:12789:1: rule__TypeNameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
+    // InternalEssentialOCL.g:12793:1: rule__TypeNameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
     public final void rule__TypeNameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12793:1: ( ( rulePathNameCS ) )
-            // InternalEssentialOCL.g:12794:1: ( rulePathNameCS )
+            // InternalEssentialOCL.g:12797:1: ( ( rulePathNameCS ) )
+            // InternalEssentialOCL.g:12798:1: ( rulePathNameCS )
             {
-            // InternalEssentialOCL.g:12794:1: ( rulePathNameCS )
-            // InternalEssentialOCL.g:12795:1: rulePathNameCS
+            // InternalEssentialOCL.g:12798:1: ( rulePathNameCS )
+            // InternalEssentialOCL.g:12799:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
@@ -37121,17 +37121,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0"
-    // InternalEssentialOCL.g:12804:1: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 : ( ruleCurlyBracketedClauseCS ) ;
+    // InternalEssentialOCL.g:12808:1: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 : ( ruleCurlyBracketedClauseCS ) ;
     public final void rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12808:1: ( ( ruleCurlyBracketedClauseCS ) )
-            // InternalEssentialOCL.g:12809:1: ( ruleCurlyBracketedClauseCS )
+            // InternalEssentialOCL.g:12812:1: ( ( ruleCurlyBracketedClauseCS ) )
+            // InternalEssentialOCL.g:12813:1: ( ruleCurlyBracketedClauseCS )
             {
-            // InternalEssentialOCL.g:12809:1: ( ruleCurlyBracketedClauseCS )
-            // InternalEssentialOCL.g:12810:1: ruleCurlyBracketedClauseCS
+            // InternalEssentialOCL.g:12813:1: ( ruleCurlyBracketedClauseCS )
+            // InternalEssentialOCL.g:12814:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
@@ -37166,17 +37166,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1"
-    // InternalEssentialOCL.g:12819:1: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:12823:1: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 : ( ruleExpCS ) ;
     public final void rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12823:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:12824:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12827:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:12828:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:12824:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:12825:1: ruleExpCS
+            // InternalEssentialOCL.g:12828:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12829:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
@@ -37211,17 +37211,17 @@
 
 
     // $ANTLR start "rule__TypeExpCS__OwnedMultiplicityAssignment_1"
-    // InternalEssentialOCL.g:12834:1: rule__TypeExpCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
+    // InternalEssentialOCL.g:12838:1: rule__TypeExpCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
     public final void rule__TypeExpCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12838:1: ( ( ruleMultiplicityCS ) )
-            // InternalEssentialOCL.g:12839:1: ( ruleMultiplicityCS )
+            // InternalEssentialOCL.g:12842:1: ( ( ruleMultiplicityCS ) )
+            // InternalEssentialOCL.g:12843:1: ( ruleMultiplicityCS )
             {
-            // InternalEssentialOCL.g:12839:1: ( ruleMultiplicityCS )
-            // InternalEssentialOCL.g:12840:1: ruleMultiplicityCS
+            // InternalEssentialOCL.g:12843:1: ( ruleMultiplicityCS )
+            // InternalEssentialOCL.g:12844:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
@@ -37256,17 +37256,17 @@
 
 
     // $ANTLR start "rule__ExpCS__NameAssignment_0_1_1"
-    // InternalEssentialOCL.g:12849:1: rule__ExpCS__NameAssignment_0_1_1 : ( ruleBinaryOperatorName ) ;
+    // InternalEssentialOCL.g:12853:1: rule__ExpCS__NameAssignment_0_1_1 : ( ruleBinaryOperatorName ) ;
     public final void rule__ExpCS__NameAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12853:1: ( ( ruleBinaryOperatorName ) )
-            // InternalEssentialOCL.g:12854:1: ( ruleBinaryOperatorName )
+            // InternalEssentialOCL.g:12857:1: ( ( ruleBinaryOperatorName ) )
+            // InternalEssentialOCL.g:12858:1: ( ruleBinaryOperatorName )
             {
-            // InternalEssentialOCL.g:12854:1: ( ruleBinaryOperatorName )
-            // InternalEssentialOCL.g:12855:1: ruleBinaryOperatorName
+            // InternalEssentialOCL.g:12858:1: ( ruleBinaryOperatorName )
+            // InternalEssentialOCL.g:12859:1: ruleBinaryOperatorName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
@@ -37301,17 +37301,17 @@
 
 
     // $ANTLR start "rule__ExpCS__OwnedRightAssignment_0_1_2"
-    // InternalEssentialOCL.g:12864:1: rule__ExpCS__OwnedRightAssignment_0_1_2 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:12868:1: rule__ExpCS__OwnedRightAssignment_0_1_2 : ( ruleExpCS ) ;
     public final void rule__ExpCS__OwnedRightAssignment_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12868:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:12869:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12872:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:12873:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:12869:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:12870:1: ruleExpCS
+            // InternalEssentialOCL.g:12873:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:12874:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
@@ -37346,17 +37346,17 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__NameAssignment_0_1"
-    // InternalEssentialOCL.g:12879:1: rule__PrefixedLetExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
+    // InternalEssentialOCL.g:12883:1: rule__PrefixedLetExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
     public final void rule__PrefixedLetExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12883:1: ( ( ruleUnaryOperatorName ) )
-            // InternalEssentialOCL.g:12884:1: ( ruleUnaryOperatorName )
+            // InternalEssentialOCL.g:12887:1: ( ( ruleUnaryOperatorName ) )
+            // InternalEssentialOCL.g:12888:1: ( ruleUnaryOperatorName )
             {
-            // InternalEssentialOCL.g:12884:1: ( ruleUnaryOperatorName )
-            // InternalEssentialOCL.g:12885:1: ruleUnaryOperatorName
+            // InternalEssentialOCL.g:12888:1: ( ruleUnaryOperatorName )
+            // InternalEssentialOCL.g:12889:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
@@ -37391,17 +37391,17 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__OwnedRightAssignment_0_2"
-    // InternalEssentialOCL.g:12894:1: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedLetExpCS ) ;
+    // InternalEssentialOCL.g:12898:1: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedLetExpCS ) ;
     public final void rule__PrefixedLetExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12898:1: ( ( rulePrefixedLetExpCS ) )
-            // InternalEssentialOCL.g:12899:1: ( rulePrefixedLetExpCS )
+            // InternalEssentialOCL.g:12902:1: ( ( rulePrefixedLetExpCS ) )
+            // InternalEssentialOCL.g:12903:1: ( rulePrefixedLetExpCS )
             {
-            // InternalEssentialOCL.g:12899:1: ( rulePrefixedLetExpCS )
-            // InternalEssentialOCL.g:12900:1: rulePrefixedLetExpCS
+            // InternalEssentialOCL.g:12903:1: ( rulePrefixedLetExpCS )
+            // InternalEssentialOCL.g:12904:1: rulePrefixedLetExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
@@ -37436,17 +37436,17 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__NameAssignment_0_1"
-    // InternalEssentialOCL.g:12909:1: rule__PrefixedPrimaryExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
+    // InternalEssentialOCL.g:12913:1: rule__PrefixedPrimaryExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
     public final void rule__PrefixedPrimaryExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12913:1: ( ( ruleUnaryOperatorName ) )
-            // InternalEssentialOCL.g:12914:1: ( ruleUnaryOperatorName )
+            // InternalEssentialOCL.g:12917:1: ( ( ruleUnaryOperatorName ) )
+            // InternalEssentialOCL.g:12918:1: ( ruleUnaryOperatorName )
             {
-            // InternalEssentialOCL.g:12914:1: ( ruleUnaryOperatorName )
-            // InternalEssentialOCL.g:12915:1: ruleUnaryOperatorName
+            // InternalEssentialOCL.g:12918:1: ( ruleUnaryOperatorName )
+            // InternalEssentialOCL.g:12919:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
@@ -37481,17 +37481,17 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2"
-    // InternalEssentialOCL.g:12924:1: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedPrimaryExpCS ) ;
+    // InternalEssentialOCL.g:12928:1: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedPrimaryExpCS ) ;
     public final void rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12928:1: ( ( rulePrefixedPrimaryExpCS ) )
-            // InternalEssentialOCL.g:12929:1: ( rulePrefixedPrimaryExpCS )
+            // InternalEssentialOCL.g:12932:1: ( ( rulePrefixedPrimaryExpCS ) )
+            // InternalEssentialOCL.g:12933:1: ( rulePrefixedPrimaryExpCS )
             {
-            // InternalEssentialOCL.g:12929:1: ( rulePrefixedPrimaryExpCS )
-            // InternalEssentialOCL.g:12930:1: rulePrefixedPrimaryExpCS
+            // InternalEssentialOCL.g:12933:1: ( rulePrefixedPrimaryExpCS )
+            // InternalEssentialOCL.g:12934:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
@@ -37526,17 +37526,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedPathNameAssignment_0"
-    // InternalEssentialOCL.g:12939:1: rule__NameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
+    // InternalEssentialOCL.g:12943:1: rule__NameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
     public final void rule__NameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12943:1: ( ( rulePathNameCS ) )
-            // InternalEssentialOCL.g:12944:1: ( rulePathNameCS )
+            // InternalEssentialOCL.g:12947:1: ( ( rulePathNameCS ) )
+            // InternalEssentialOCL.g:12948:1: ( rulePathNameCS )
             {
-            // InternalEssentialOCL.g:12944:1: ( rulePathNameCS )
-            // InternalEssentialOCL.g:12945:1: rulePathNameCS
+            // InternalEssentialOCL.g:12948:1: ( rulePathNameCS )
+            // InternalEssentialOCL.g:12949:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
@@ -37571,17 +37571,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1"
-    // InternalEssentialOCL.g:12954:1: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 : ( ruleSquareBracketedClauseCS ) ;
+    // InternalEssentialOCL.g:12958:1: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 : ( ruleSquareBracketedClauseCS ) ;
     public final void rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12958:1: ( ( ruleSquareBracketedClauseCS ) )
-            // InternalEssentialOCL.g:12959:1: ( ruleSquareBracketedClauseCS )
+            // InternalEssentialOCL.g:12962:1: ( ( ruleSquareBracketedClauseCS ) )
+            // InternalEssentialOCL.g:12963:1: ( ruleSquareBracketedClauseCS )
             {
-            // InternalEssentialOCL.g:12959:1: ( ruleSquareBracketedClauseCS )
-            // InternalEssentialOCL.g:12960:1: ruleSquareBracketedClauseCS
+            // InternalEssentialOCL.g:12963:1: ( ruleSquareBracketedClauseCS )
+            // InternalEssentialOCL.g:12964:1: ruleSquareBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
@@ -37616,17 +37616,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2"
-    // InternalEssentialOCL.g:12969:1: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 : ( ruleRoundBracketedClauseCS ) ;
+    // InternalEssentialOCL.g:12973:1: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 : ( ruleRoundBracketedClauseCS ) ;
     public final void rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12973:1: ( ( ruleRoundBracketedClauseCS ) )
-            // InternalEssentialOCL.g:12974:1: ( ruleRoundBracketedClauseCS )
+            // InternalEssentialOCL.g:12977:1: ( ( ruleRoundBracketedClauseCS ) )
+            // InternalEssentialOCL.g:12978:1: ( ruleRoundBracketedClauseCS )
             {
-            // InternalEssentialOCL.g:12974:1: ( ruleRoundBracketedClauseCS )
-            // InternalEssentialOCL.g:12975:1: ruleRoundBracketedClauseCS
+            // InternalEssentialOCL.g:12978:1: ( ruleRoundBracketedClauseCS )
+            // InternalEssentialOCL.g:12979:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
@@ -37661,17 +37661,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3"
-    // InternalEssentialOCL.g:12984:1: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 : ( ruleCurlyBracketedClauseCS ) ;
+    // InternalEssentialOCL.g:12988:1: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 : ( ruleCurlyBracketedClauseCS ) ;
     public final void rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:12988:1: ( ( ruleCurlyBracketedClauseCS ) )
-            // InternalEssentialOCL.g:12989:1: ( ruleCurlyBracketedClauseCS )
+            // InternalEssentialOCL.g:12992:1: ( ( ruleCurlyBracketedClauseCS ) )
+            // InternalEssentialOCL.g:12993:1: ( ruleCurlyBracketedClauseCS )
             {
-            // InternalEssentialOCL.g:12989:1: ( ruleCurlyBracketedClauseCS )
-            // InternalEssentialOCL.g:12990:1: ruleCurlyBracketedClauseCS
+            // InternalEssentialOCL.g:12993:1: ( ruleCurlyBracketedClauseCS )
+            // InternalEssentialOCL.g:12994:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
@@ -37706,23 +37706,23 @@
 
 
     // $ANTLR start "rule__NameExpCS__IsPreAssignment_4_0"
-    // InternalEssentialOCL.g:12999:1: rule__NameExpCS__IsPreAssignment_4_0 : ( ( '@' ) ) ;
+    // InternalEssentialOCL.g:13003:1: rule__NameExpCS__IsPreAssignment_4_0 : ( ( '@' ) ) ;
     public final void rule__NameExpCS__IsPreAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13003:1: ( ( ( '@' ) ) )
-            // InternalEssentialOCL.g:13004:1: ( ( '@' ) )
+            // InternalEssentialOCL.g:13007:1: ( ( ( '@' ) ) )
+            // InternalEssentialOCL.g:13008:1: ( ( '@' ) )
             {
-            // InternalEssentialOCL.g:13004:1: ( ( '@' ) )
-            // InternalEssentialOCL.g:13005:1: ( '@' )
+            // InternalEssentialOCL.g:13008:1: ( ( '@' ) )
+            // InternalEssentialOCL.g:13009:1: ( '@' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
-            // InternalEssentialOCL.g:13006:1: ( '@' )
-            // InternalEssentialOCL.g:13007:1: '@'
+            // InternalEssentialOCL.g:13010:1: ( '@' )
+            // InternalEssentialOCL.g:13011:1: '@'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
@@ -37759,17 +37759,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0"
-    // InternalEssentialOCL.g:13022:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 : ( ruleShadowPartCS ) ;
+    // InternalEssentialOCL.g:13026:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 : ( ruleShadowPartCS ) ;
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13026:1: ( ( ruleShadowPartCS ) )
-            // InternalEssentialOCL.g:13027:1: ( ruleShadowPartCS )
+            // InternalEssentialOCL.g:13030:1: ( ( ruleShadowPartCS ) )
+            // InternalEssentialOCL.g:13031:1: ( ruleShadowPartCS )
             {
-            // InternalEssentialOCL.g:13027:1: ( ruleShadowPartCS )
-            // InternalEssentialOCL.g:13028:1: ruleShadowPartCS
+            // InternalEssentialOCL.g:13031:1: ( ruleShadowPartCS )
+            // InternalEssentialOCL.g:13032:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0());
@@ -37804,17 +37804,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1"
-    // InternalEssentialOCL.g:13037:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 : ( ruleShadowPartCS ) ;
+    // InternalEssentialOCL.g:13041:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 : ( ruleShadowPartCS ) ;
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13041:1: ( ( ruleShadowPartCS ) )
-            // InternalEssentialOCL.g:13042:1: ( ruleShadowPartCS )
+            // InternalEssentialOCL.g:13045:1: ( ( ruleShadowPartCS ) )
+            // InternalEssentialOCL.g:13046:1: ( ruleShadowPartCS )
             {
-            // InternalEssentialOCL.g:13042:1: ( ruleShadowPartCS )
-            // InternalEssentialOCL.g:13043:1: ruleShadowPartCS
+            // InternalEssentialOCL.g:13046:1: ( ruleShadowPartCS )
+            // InternalEssentialOCL.g:13047:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_1_1_0());
@@ -37849,17 +37849,17 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0"
-    // InternalEssentialOCL.g:13052:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 : ( ruleNavigatingArgCS ) ;
+    // InternalEssentialOCL.g:13056:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 : ( ruleNavigatingArgCS ) ;
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13056:1: ( ( ruleNavigatingArgCS ) )
-            // InternalEssentialOCL.g:13057:1: ( ruleNavigatingArgCS )
+            // InternalEssentialOCL.g:13060:1: ( ( ruleNavigatingArgCS ) )
+            // InternalEssentialOCL.g:13061:1: ( ruleNavigatingArgCS )
             {
-            // InternalEssentialOCL.g:13057:1: ( ruleNavigatingArgCS )
-            // InternalEssentialOCL.g:13058:1: ruleNavigatingArgCS
+            // InternalEssentialOCL.g:13061:1: ( ruleNavigatingArgCS )
+            // InternalEssentialOCL.g:13062:1: ruleNavigatingArgCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
@@ -37894,23 +37894,23 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1"
-    // InternalEssentialOCL.g:13067:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) ;
+    // InternalEssentialOCL.g:13071:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) ;
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13071:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) )
-            // InternalEssentialOCL.g:13072:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
+            // InternalEssentialOCL.g:13075:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) )
+            // InternalEssentialOCL.g:13076:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
             {
-            // InternalEssentialOCL.g:13072:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
-            // InternalEssentialOCL.g:13073:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
+            // InternalEssentialOCL.g:13076:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
+            // InternalEssentialOCL.g:13077:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAlternatives_2_1_0());
             }
-            // InternalEssentialOCL.g:13074:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
-            // InternalEssentialOCL.g:13074:2: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0
+            // InternalEssentialOCL.g:13078:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
+            // InternalEssentialOCL.g:13078:2: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0();
@@ -37945,17 +37945,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__OwnedTermsAssignment_1"
-    // InternalEssentialOCL.g:13083:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13087:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 : ( ruleExpCS ) ;
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13087:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13088:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13091:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13092:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13088:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13089:1: ruleExpCS
+            // InternalEssentialOCL.g:13092:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13093:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
@@ -37990,17 +37990,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1"
-    // InternalEssentialOCL.g:13098:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13102:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 : ( ruleExpCS ) ;
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13102:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13103:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13106:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13107:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13103:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13104:1: ruleExpCS
+            // InternalEssentialOCL.g:13107:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13108:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
@@ -38035,17 +38035,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0"
-    // InternalEssentialOCL.g:13113:1: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 : ( ruleNavigatingArgExpCS ) ;
+    // InternalEssentialOCL.g:13117:1: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13117:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalEssentialOCL.g:13118:1: ( ruleNavigatingArgExpCS )
+            // InternalEssentialOCL.g:13121:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalEssentialOCL.g:13122:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalEssentialOCL.g:13118:1: ( ruleNavigatingArgExpCS )
-            // InternalEssentialOCL.g:13119:1: ruleNavigatingArgExpCS
+            // InternalEssentialOCL.g:13122:1: ( ruleNavigatingArgExpCS )
+            // InternalEssentialOCL.g:13123:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
@@ -38080,17 +38080,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1"
-    // InternalEssentialOCL.g:13128:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalEssentialOCL.g:13132:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13132:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalEssentialOCL.g:13133:1: ( ruleCoIteratorVariableCS )
+            // InternalEssentialOCL.g:13136:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalEssentialOCL.g:13137:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalEssentialOCL.g:13133:1: ( ruleCoIteratorVariableCS )
-            // InternalEssentialOCL.g:13134:1: ruleCoIteratorVariableCS
+            // InternalEssentialOCL.g:13137:1: ( ruleCoIteratorVariableCS )
+            // InternalEssentialOCL.g:13138:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_0_1_0());
@@ -38125,17 +38125,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1"
-    // InternalEssentialOCL.g:13143:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13147:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13147:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13148:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13151:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13152:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13148:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13149:1: ruleExpCS
+            // InternalEssentialOCL.g:13152:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13153:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
@@ -38170,17 +38170,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1"
-    // InternalEssentialOCL.g:13158:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:13162:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13162:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:13163:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13166:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:13167:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:13163:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:13164:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:13167:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13168:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_1_1_0());
@@ -38215,17 +38215,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1"
-    // InternalEssentialOCL.g:13173:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalEssentialOCL.g:13177:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13177:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalEssentialOCL.g:13178:1: ( ruleCoIteratorVariableCS )
+            // InternalEssentialOCL.g:13181:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalEssentialOCL.g:13182:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalEssentialOCL.g:13178:1: ( ruleCoIteratorVariableCS )
-            // InternalEssentialOCL.g:13179:1: ruleCoIteratorVariableCS
+            // InternalEssentialOCL.g:13182:1: ( ruleCoIteratorVariableCS )
+            // InternalEssentialOCL.g:13183:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_1_2_1_0());
@@ -38260,17 +38260,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1"
-    // InternalEssentialOCL.g:13188:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13192:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13192:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13193:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13196:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13197:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13193:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13194:1: ruleExpCS
+            // InternalEssentialOCL.g:13197:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13198:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_3_1_0());
@@ -38305,17 +38305,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1"
-    // InternalEssentialOCL.g:13203:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:13207:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13207:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:13208:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13211:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:13212:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:13208:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:13209:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:13212:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13213:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_2_0_1_0());
@@ -38350,17 +38350,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1"
-    // InternalEssentialOCL.g:13218:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalEssentialOCL.g:13222:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13222:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalEssentialOCL.g:13223:1: ( ruleCoIteratorVariableCS )
+            // InternalEssentialOCL.g:13226:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalEssentialOCL.g:13227:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalEssentialOCL.g:13223:1: ( ruleCoIteratorVariableCS )
-            // InternalEssentialOCL.g:13224:1: ruleCoIteratorVariableCS
+            // InternalEssentialOCL.g:13227:1: ( ruleCoIteratorVariableCS )
+            // InternalEssentialOCL.g:13228:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_2_1_1_0());
@@ -38395,17 +38395,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3"
-    // InternalEssentialOCL.g:13233:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13237:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 : ( ruleExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13237:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13238:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13241:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13242:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13238:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13239:1: ruleExpCS
+            // InternalEssentialOCL.g:13242:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13243:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_2_3_0());
@@ -38440,17 +38440,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedTypeAssignment_1_1"
-    // InternalEssentialOCL.g:13248:1: rule__NavigatingArgCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:13252:1: rule__NavigatingArgCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13252:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:13253:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13256:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:13257:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:13253:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:13254:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:13257:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13258:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
@@ -38485,23 +38485,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__PrefixAssignment_0"
-    // InternalEssentialOCL.g:13263:1: rule__NavigatingBarArgCS__PrefixAssignment_0 : ( ( '|' ) ) ;
+    // InternalEssentialOCL.g:13267:1: rule__NavigatingBarArgCS__PrefixAssignment_0 : ( ( '|' ) ) ;
     public final void rule__NavigatingBarArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13267:1: ( ( ( '|' ) ) )
-            // InternalEssentialOCL.g:13268:1: ( ( '|' ) )
+            // InternalEssentialOCL.g:13271:1: ( ( ( '|' ) ) )
+            // InternalEssentialOCL.g:13272:1: ( ( '|' ) )
             {
-            // InternalEssentialOCL.g:13268:1: ( ( '|' ) )
-            // InternalEssentialOCL.g:13269:1: ( '|' )
+            // InternalEssentialOCL.g:13272:1: ( ( '|' ) )
+            // InternalEssentialOCL.g:13273:1: ( '|' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
-            // InternalEssentialOCL.g:13270:1: ( '|' )
-            // InternalEssentialOCL.g:13271:1: '|'
+            // InternalEssentialOCL.g:13274:1: ( '|' )
+            // InternalEssentialOCL.g:13275:1: '|'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
@@ -38538,17 +38538,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1"
-    // InternalEssentialOCL.g:13286:1: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
+    // InternalEssentialOCL.g:13290:1: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13290:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalEssentialOCL.g:13291:1: ( ruleNavigatingArgExpCS )
+            // InternalEssentialOCL.g:13294:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalEssentialOCL.g:13295:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalEssentialOCL.g:13291:1: ( ruleNavigatingArgExpCS )
-            // InternalEssentialOCL.g:13292:1: ruleNavigatingArgExpCS
+            // InternalEssentialOCL.g:13295:1: ( ruleNavigatingArgExpCS )
+            // InternalEssentialOCL.g:13296:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
@@ -38583,17 +38583,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1"
-    // InternalEssentialOCL.g:13301:1: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:13305:1: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13305:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:13306:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13309:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:13310:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:13306:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:13307:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:13310:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13311:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
@@ -38628,17 +38628,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1"
-    // InternalEssentialOCL.g:13316:1: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13320:1: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13320:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13321:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13324:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13325:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13321:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13322:1: ruleExpCS
+            // InternalEssentialOCL.g:13325:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13326:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
@@ -38673,23 +38673,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__PrefixAssignment_0"
-    // InternalEssentialOCL.g:13331:1: rule__NavigatingCommaArgCS__PrefixAssignment_0 : ( ( ',' ) ) ;
+    // InternalEssentialOCL.g:13335:1: rule__NavigatingCommaArgCS__PrefixAssignment_0 : ( ( ',' ) ) ;
     public final void rule__NavigatingCommaArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13335:1: ( ( ( ',' ) ) )
-            // InternalEssentialOCL.g:13336:1: ( ( ',' ) )
+            // InternalEssentialOCL.g:13339:1: ( ( ( ',' ) ) )
+            // InternalEssentialOCL.g:13340:1: ( ( ',' ) )
             {
-            // InternalEssentialOCL.g:13336:1: ( ( ',' ) )
-            // InternalEssentialOCL.g:13337:1: ( ',' )
+            // InternalEssentialOCL.g:13340:1: ( ( ',' ) )
+            // InternalEssentialOCL.g:13341:1: ( ',' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
-            // InternalEssentialOCL.g:13338:1: ( ',' )
-            // InternalEssentialOCL.g:13339:1: ','
+            // InternalEssentialOCL.g:13342:1: ( ',' )
+            // InternalEssentialOCL.g:13343:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
@@ -38726,17 +38726,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1"
-    // InternalEssentialOCL.g:13354:1: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
+    // InternalEssentialOCL.g:13358:1: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13358:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalEssentialOCL.g:13359:1: ( ruleNavigatingArgExpCS )
+            // InternalEssentialOCL.g:13362:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalEssentialOCL.g:13363:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalEssentialOCL.g:13359:1: ( ruleNavigatingArgExpCS )
-            // InternalEssentialOCL.g:13360:1: ruleNavigatingArgExpCS
+            // InternalEssentialOCL.g:13363:1: ( ruleNavigatingArgExpCS )
+            // InternalEssentialOCL.g:13364:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
@@ -38771,17 +38771,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1"
-    // InternalEssentialOCL.g:13369:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalEssentialOCL.g:13373:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13373:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalEssentialOCL.g:13374:1: ( ruleCoIteratorVariableCS )
+            // InternalEssentialOCL.g:13377:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalEssentialOCL.g:13378:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalEssentialOCL.g:13374:1: ( ruleCoIteratorVariableCS )
-            // InternalEssentialOCL.g:13375:1: ruleCoIteratorVariableCS
+            // InternalEssentialOCL.g:13378:1: ( ruleCoIteratorVariableCS )
+            // InternalEssentialOCL.g:13379:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_0_1_0());
@@ -38816,17 +38816,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1"
-    // InternalEssentialOCL.g:13384:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13388:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13388:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13389:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13392:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13393:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13389:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13390:1: ruleExpCS
+            // InternalEssentialOCL.g:13393:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13394:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
@@ -38861,17 +38861,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1"
-    // InternalEssentialOCL.g:13399:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:13403:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13403:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:13404:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13407:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:13408:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:13404:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:13405:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:13408:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13409:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_1_0());
@@ -38906,17 +38906,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1"
-    // InternalEssentialOCL.g:13414:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalEssentialOCL.g:13418:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13418:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalEssentialOCL.g:13419:1: ( ruleCoIteratorVariableCS )
+            // InternalEssentialOCL.g:13422:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalEssentialOCL.g:13423:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalEssentialOCL.g:13419:1: ( ruleCoIteratorVariableCS )
-            // InternalEssentialOCL.g:13420:1: ruleCoIteratorVariableCS
+            // InternalEssentialOCL.g:13423:1: ( ruleCoIteratorVariableCS )
+            // InternalEssentialOCL.g:13424:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_1_2_1_0());
@@ -38951,17 +38951,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1"
-    // InternalEssentialOCL.g:13429:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13433:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13433:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13434:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13437:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13438:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13434:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13435:1: ruleExpCS
+            // InternalEssentialOCL.g:13438:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13439:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_3_1_0());
@@ -38996,17 +38996,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1"
-    // InternalEssentialOCL.g:13444:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:13448:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13448:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:13449:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13452:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:13453:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:13449:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:13450:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:13453:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13454:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_2_0_1_0());
@@ -39041,17 +39041,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1"
-    // InternalEssentialOCL.g:13459:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalEssentialOCL.g:13463:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13463:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalEssentialOCL.g:13464:1: ( ruleCoIteratorVariableCS )
+            // InternalEssentialOCL.g:13467:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalEssentialOCL.g:13468:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalEssentialOCL.g:13464:1: ( ruleCoIteratorVariableCS )
-            // InternalEssentialOCL.g:13465:1: ruleCoIteratorVariableCS
+            // InternalEssentialOCL.g:13468:1: ( ruleCoIteratorVariableCS )
+            // InternalEssentialOCL.g:13469:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_2_1_1_0());
@@ -39086,17 +39086,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3"
-    // InternalEssentialOCL.g:13474:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13478:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 : ( ruleExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13478:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13479:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13482:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13483:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13479:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13480:1: ruleExpCS
+            // InternalEssentialOCL.g:13483:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13484:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_3_0());
@@ -39131,23 +39131,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__PrefixAssignment_0"
-    // InternalEssentialOCL.g:13489:1: rule__NavigatingSemiArgCS__PrefixAssignment_0 : ( ( ';' ) ) ;
+    // InternalEssentialOCL.g:13493:1: rule__NavigatingSemiArgCS__PrefixAssignment_0 : ( ( ';' ) ) ;
     public final void rule__NavigatingSemiArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13493:1: ( ( ( ';' ) ) )
-            // InternalEssentialOCL.g:13494:1: ( ( ';' ) )
+            // InternalEssentialOCL.g:13497:1: ( ( ( ';' ) ) )
+            // InternalEssentialOCL.g:13498:1: ( ( ';' ) )
             {
-            // InternalEssentialOCL.g:13494:1: ( ( ';' ) )
-            // InternalEssentialOCL.g:13495:1: ( ';' )
+            // InternalEssentialOCL.g:13498:1: ( ( ';' ) )
+            // InternalEssentialOCL.g:13499:1: ( ';' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
-            // InternalEssentialOCL.g:13496:1: ( ';' )
-            // InternalEssentialOCL.g:13497:1: ';'
+            // InternalEssentialOCL.g:13500:1: ( ';' )
+            // InternalEssentialOCL.g:13501:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
@@ -39184,17 +39184,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1"
-    // InternalEssentialOCL.g:13512:1: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
+    // InternalEssentialOCL.g:13516:1: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13516:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalEssentialOCL.g:13517:1: ( ruleNavigatingArgExpCS )
+            // InternalEssentialOCL.g:13520:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalEssentialOCL.g:13521:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalEssentialOCL.g:13517:1: ( ruleNavigatingArgExpCS )
-            // InternalEssentialOCL.g:13518:1: ruleNavigatingArgExpCS
+            // InternalEssentialOCL.g:13521:1: ( ruleNavigatingArgExpCS )
+            // InternalEssentialOCL.g:13522:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
@@ -39229,17 +39229,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1"
-    // InternalEssentialOCL.g:13527:1: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:13531:1: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13531:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:13532:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13535:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:13536:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:13532:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:13533:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:13536:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13537:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
@@ -39274,17 +39274,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1"
-    // InternalEssentialOCL.g:13542:1: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13546:1: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13546:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13547:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13550:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13551:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13547:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13548:1: ruleExpCS
+            // InternalEssentialOCL.g:13551:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13552:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
@@ -39319,17 +39319,17 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__NameAssignment_0"
-    // InternalEssentialOCL.g:13557:1: rule__CoIteratorVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalEssentialOCL.g:13561:1: rule__CoIteratorVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__CoIteratorVariableCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13561:1: ( ( ruleUnrestrictedName ) )
-            // InternalEssentialOCL.g:13562:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:13565:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:13566:1: ( ruleUnrestrictedName )
             {
-            // InternalEssentialOCL.g:13562:1: ( ruleUnrestrictedName )
-            // InternalEssentialOCL.g:13563:1: ruleUnrestrictedName
+            // InternalEssentialOCL.g:13566:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:13567:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -39364,17 +39364,17 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1"
-    // InternalEssentialOCL.g:13572:1: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:13576:1: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13576:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:13577:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13580:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:13581:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:13577:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:13578:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:13581:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13582:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
@@ -39409,23 +39409,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedConditionAssignment_1"
-    // InternalEssentialOCL.g:13587:1: rule__IfExpCS__OwnedConditionAssignment_1 : ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) ;
+    // InternalEssentialOCL.g:13591:1: rule__IfExpCS__OwnedConditionAssignment_1 : ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) ;
     public final void rule__IfExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13591:1: ( ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) )
-            // InternalEssentialOCL.g:13592:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
+            // InternalEssentialOCL.g:13595:1: ( ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) )
+            // InternalEssentialOCL.g:13596:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
             {
-            // InternalEssentialOCL.g:13592:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
-            // InternalEssentialOCL.g:13593:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
+            // InternalEssentialOCL.g:13596:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
+            // InternalEssentialOCL.g:13597:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0());
             }
-            // InternalEssentialOCL.g:13594:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
-            // InternalEssentialOCL.g:13594:2: rule__IfExpCS__OwnedConditionAlternatives_1_0
+            // InternalEssentialOCL.g:13598:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
+            // InternalEssentialOCL.g:13598:2: rule__IfExpCS__OwnedConditionAlternatives_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedConditionAlternatives_1_0();
@@ -39460,17 +39460,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedThenExpressionAssignment_3"
-    // InternalEssentialOCL.g:13603:1: rule__IfExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13607:1: rule__IfExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
     public final void rule__IfExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13607:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13608:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13611:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13612:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13608:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13609:1: ruleExpCS
+            // InternalEssentialOCL.g:13612:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13613:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
@@ -39505,17 +39505,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedIfThenExpressionsAssignment_4"
-    // InternalEssentialOCL.g:13618:1: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 : ( ruleElseIfThenExpCS ) ;
+    // InternalEssentialOCL.g:13622:1: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 : ( ruleElseIfThenExpCS ) ;
     public final void rule__IfExpCS__OwnedIfThenExpressionsAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13622:1: ( ( ruleElseIfThenExpCS ) )
-            // InternalEssentialOCL.g:13623:1: ( ruleElseIfThenExpCS )
+            // InternalEssentialOCL.g:13626:1: ( ( ruleElseIfThenExpCS ) )
+            // InternalEssentialOCL.g:13627:1: ( ruleElseIfThenExpCS )
             {
-            // InternalEssentialOCL.g:13623:1: ( ruleElseIfThenExpCS )
-            // InternalEssentialOCL.g:13624:1: ruleElseIfThenExpCS
+            // InternalEssentialOCL.g:13627:1: ( ruleElseIfThenExpCS )
+            // InternalEssentialOCL.g:13628:1: ruleElseIfThenExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
@@ -39550,17 +39550,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedElseExpressionAssignment_6"
-    // InternalEssentialOCL.g:13633:1: rule__IfExpCS__OwnedElseExpressionAssignment_6 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13637:1: rule__IfExpCS__OwnedElseExpressionAssignment_6 : ( ruleExpCS ) ;
     public final void rule__IfExpCS__OwnedElseExpressionAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13637:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13638:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13641:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13642:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13638:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13639:1: ruleExpCS
+            // InternalEssentialOCL.g:13642:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13643:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
@@ -39595,17 +39595,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__OwnedConditionAssignment_1"
-    // InternalEssentialOCL.g:13648:1: rule__ElseIfThenExpCS__OwnedConditionAssignment_1 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13652:1: rule__ElseIfThenExpCS__OwnedConditionAssignment_1 : ( ruleExpCS ) ;
     public final void rule__ElseIfThenExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13652:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13653:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13656:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13657:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13653:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13654:1: ruleExpCS
+            // InternalEssentialOCL.g:13657:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13658:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
@@ -39640,17 +39640,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3"
-    // InternalEssentialOCL.g:13663:1: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13667:1: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
     public final void rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13667:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13668:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13671:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13672:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13668:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13669:1: ruleExpCS
+            // InternalEssentialOCL.g:13672:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13673:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
@@ -39685,17 +39685,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__OwnedVariablesAssignment_1"
-    // InternalEssentialOCL.g:13678:1: rule__LetExpCS__OwnedVariablesAssignment_1 : ( ruleLetVariableCS ) ;
+    // InternalEssentialOCL.g:13682:1: rule__LetExpCS__OwnedVariablesAssignment_1 : ( ruleLetVariableCS ) ;
     public final void rule__LetExpCS__OwnedVariablesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13682:1: ( ( ruleLetVariableCS ) )
-            // InternalEssentialOCL.g:13683:1: ( ruleLetVariableCS )
+            // InternalEssentialOCL.g:13686:1: ( ( ruleLetVariableCS ) )
+            // InternalEssentialOCL.g:13687:1: ( ruleLetVariableCS )
             {
-            // InternalEssentialOCL.g:13683:1: ( ruleLetVariableCS )
-            // InternalEssentialOCL.g:13684:1: ruleLetVariableCS
+            // InternalEssentialOCL.g:13687:1: ( ruleLetVariableCS )
+            // InternalEssentialOCL.g:13688:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
@@ -39730,17 +39730,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__OwnedVariablesAssignment_2_1"
-    // InternalEssentialOCL.g:13693:1: rule__LetExpCS__OwnedVariablesAssignment_2_1 : ( ruleLetVariableCS ) ;
+    // InternalEssentialOCL.g:13697:1: rule__LetExpCS__OwnedVariablesAssignment_2_1 : ( ruleLetVariableCS ) ;
     public final void rule__LetExpCS__OwnedVariablesAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13697:1: ( ( ruleLetVariableCS ) )
-            // InternalEssentialOCL.g:13698:1: ( ruleLetVariableCS )
+            // InternalEssentialOCL.g:13701:1: ( ( ruleLetVariableCS ) )
+            // InternalEssentialOCL.g:13702:1: ( ruleLetVariableCS )
             {
-            // InternalEssentialOCL.g:13698:1: ( ruleLetVariableCS )
-            // InternalEssentialOCL.g:13699:1: ruleLetVariableCS
+            // InternalEssentialOCL.g:13702:1: ( ruleLetVariableCS )
+            // InternalEssentialOCL.g:13703:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
@@ -39775,17 +39775,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__OwnedInExpressionAssignment_4"
-    // InternalEssentialOCL.g:13708:1: rule__LetExpCS__OwnedInExpressionAssignment_4 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13712:1: rule__LetExpCS__OwnedInExpressionAssignment_4 : ( ruleExpCS ) ;
     public final void rule__LetExpCS__OwnedInExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13712:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13713:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13716:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13717:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13713:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13714:1: ruleExpCS
+            // InternalEssentialOCL.g:13717:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13718:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
@@ -39820,17 +39820,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__NameAssignment_0"
-    // InternalEssentialOCL.g:13723:1: rule__LetVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalEssentialOCL.g:13727:1: rule__LetVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__LetVariableCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13727:1: ( ( ruleUnrestrictedName ) )
-            // InternalEssentialOCL.g:13728:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:13731:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:13732:1: ( ruleUnrestrictedName )
             {
-            // InternalEssentialOCL.g:13728:1: ( ruleUnrestrictedName )
-            // InternalEssentialOCL.g:13729:1: ruleUnrestrictedName
+            // InternalEssentialOCL.g:13732:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:13733:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -39865,17 +39865,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1"
-    // InternalEssentialOCL.g:13738:1: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 : ( ruleRoundBracketedClauseCS ) ;
+    // InternalEssentialOCL.g:13742:1: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 : ( ruleRoundBracketedClauseCS ) ;
     public final void rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13742:1: ( ( ruleRoundBracketedClauseCS ) )
-            // InternalEssentialOCL.g:13743:1: ( ruleRoundBracketedClauseCS )
+            // InternalEssentialOCL.g:13746:1: ( ( ruleRoundBracketedClauseCS ) )
+            // InternalEssentialOCL.g:13747:1: ( ruleRoundBracketedClauseCS )
             {
-            // InternalEssentialOCL.g:13743:1: ( ruleRoundBracketedClauseCS )
-            // InternalEssentialOCL.g:13744:1: ruleRoundBracketedClauseCS
+            // InternalEssentialOCL.g:13747:1: ( ruleRoundBracketedClauseCS )
+            // InternalEssentialOCL.g:13748:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
@@ -39910,17 +39910,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__OwnedTypeAssignment_2_1"
-    // InternalEssentialOCL.g:13753:1: rule__LetVariableCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
+    // InternalEssentialOCL.g:13757:1: rule__LetVariableCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
     public final void rule__LetVariableCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13757:1: ( ( ruleTypeExpCS ) )
-            // InternalEssentialOCL.g:13758:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13761:1: ( ( ruleTypeExpCS ) )
+            // InternalEssentialOCL.g:13762:1: ( ruleTypeExpCS )
             {
-            // InternalEssentialOCL.g:13758:1: ( ruleTypeExpCS )
-            // InternalEssentialOCL.g:13759:1: ruleTypeExpCS
+            // InternalEssentialOCL.g:13762:1: ( ruleTypeExpCS )
+            // InternalEssentialOCL.g:13763:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
@@ -39955,17 +39955,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__OwnedInitExpressionAssignment_4"
-    // InternalEssentialOCL.g:13768:1: rule__LetVariableCS__OwnedInitExpressionAssignment_4 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13772:1: rule__LetVariableCS__OwnedInitExpressionAssignment_4 : ( ruleExpCS ) ;
     public final void rule__LetVariableCS__OwnedInitExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13772:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13773:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13776:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13777:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13773:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13774:1: ruleExpCS
+            // InternalEssentialOCL.g:13777:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13778:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
@@ -40000,17 +40000,17 @@
 
 
     // $ANTLR start "rule__NestedExpCS__OwnedExpressionAssignment_1"
-    // InternalEssentialOCL.g:13783:1: rule__NestedExpCS__OwnedExpressionAssignment_1 : ( ruleExpCS ) ;
+    // InternalEssentialOCL.g:13787:1: rule__NestedExpCS__OwnedExpressionAssignment_1 : ( ruleExpCS ) ;
     public final void rule__NestedExpCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13787:1: ( ( ruleExpCS ) )
-            // InternalEssentialOCL.g:13788:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13791:1: ( ( ruleExpCS ) )
+            // InternalEssentialOCL.g:13792:1: ( ruleExpCS )
             {
-            // InternalEssentialOCL.g:13788:1: ( ruleExpCS )
-            // InternalEssentialOCL.g:13789:1: ruleExpCS
+            // InternalEssentialOCL.g:13792:1: ( ruleExpCS )
+            // InternalEssentialOCL.g:13793:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
@@ -40045,17 +40045,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__LowerBoundAssignment_0"
-    // InternalEssentialOCL.g:13798:1: rule__MultiplicityBoundsCS__LowerBoundAssignment_0 : ( ruleLOWER ) ;
+    // InternalEssentialOCL.g:13802:1: rule__MultiplicityBoundsCS__LowerBoundAssignment_0 : ( ruleLOWER ) ;
     public final void rule__MultiplicityBoundsCS__LowerBoundAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13802:1: ( ( ruleLOWER ) )
-            // InternalEssentialOCL.g:13803:1: ( ruleLOWER )
+            // InternalEssentialOCL.g:13806:1: ( ( ruleLOWER ) )
+            // InternalEssentialOCL.g:13807:1: ( ruleLOWER )
             {
-            // InternalEssentialOCL.g:13803:1: ( ruleLOWER )
-            // InternalEssentialOCL.g:13804:1: ruleLOWER
+            // InternalEssentialOCL.g:13807:1: ( ruleLOWER )
+            // InternalEssentialOCL.g:13808:1: ruleLOWER
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
@@ -40090,17 +40090,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1"
-    // InternalEssentialOCL.g:13813:1: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 : ( ruleUPPER ) ;
+    // InternalEssentialOCL.g:13817:1: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 : ( ruleUPPER ) ;
     public final void rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13817:1: ( ( ruleUPPER ) )
-            // InternalEssentialOCL.g:13818:1: ( ruleUPPER )
+            // InternalEssentialOCL.g:13821:1: ( ( ruleUPPER ) )
+            // InternalEssentialOCL.g:13822:1: ( ruleUPPER )
             {
-            // InternalEssentialOCL.g:13818:1: ( ruleUPPER )
-            // InternalEssentialOCL.g:13819:1: ruleUPPER
+            // InternalEssentialOCL.g:13822:1: ( ruleUPPER )
+            // InternalEssentialOCL.g:13823:1: ruleUPPER
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
@@ -40135,23 +40135,23 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__IsNullFreeAssignment_2_1"
-    // InternalEssentialOCL.g:13828:1: rule__MultiplicityCS__IsNullFreeAssignment_2_1 : ( ( '|1' ) ) ;
+    // InternalEssentialOCL.g:13832:1: rule__MultiplicityCS__IsNullFreeAssignment_2_1 : ( ( '|1' ) ) ;
     public final void rule__MultiplicityCS__IsNullFreeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13832:1: ( ( ( '|1' ) ) )
-            // InternalEssentialOCL.g:13833:1: ( ( '|1' ) )
+            // InternalEssentialOCL.g:13836:1: ( ( ( '|1' ) ) )
+            // InternalEssentialOCL.g:13837:1: ( ( '|1' ) )
             {
-            // InternalEssentialOCL.g:13833:1: ( ( '|1' ) )
-            // InternalEssentialOCL.g:13834:1: ( '|1' )
+            // InternalEssentialOCL.g:13837:1: ( ( '|1' ) )
+            // InternalEssentialOCL.g:13838:1: ( '|1' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
-            // InternalEssentialOCL.g:13835:1: ( '|1' )
-            // InternalEssentialOCL.g:13836:1: '|1'
+            // InternalEssentialOCL.g:13839:1: ( '|1' )
+            // InternalEssentialOCL.g:13840:1: '|1'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
@@ -40188,23 +40188,23 @@
 
 
     // $ANTLR start "rule__MultiplicityStringCS__StringBoundsAssignment"
-    // InternalEssentialOCL.g:13851:1: rule__MultiplicityStringCS__StringBoundsAssignment : ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) ;
+    // InternalEssentialOCL.g:13855:1: rule__MultiplicityStringCS__StringBoundsAssignment : ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) ;
     public final void rule__MultiplicityStringCS__StringBoundsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13855:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
-            // InternalEssentialOCL.g:13856:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
+            // InternalEssentialOCL.g:13859:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
+            // InternalEssentialOCL.g:13860:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
             {
-            // InternalEssentialOCL.g:13856:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
-            // InternalEssentialOCL.g:13857:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
+            // InternalEssentialOCL.g:13860:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
+            // InternalEssentialOCL.g:13861:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
-            // InternalEssentialOCL.g:13858:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
-            // InternalEssentialOCL.g:13858:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
+            // InternalEssentialOCL.g:13862:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
+            // InternalEssentialOCL.g:13862:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityStringCS__StringBoundsAlternatives_0();
@@ -40239,17 +40239,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__OwnedPathElementsAssignment_0"
-    // InternalEssentialOCL.g:13867:1: rule__PathNameCS__OwnedPathElementsAssignment_0 : ( ruleFirstPathElementCS ) ;
+    // InternalEssentialOCL.g:13871:1: rule__PathNameCS__OwnedPathElementsAssignment_0 : ( ruleFirstPathElementCS ) ;
     public final void rule__PathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13871:1: ( ( ruleFirstPathElementCS ) )
-            // InternalEssentialOCL.g:13872:1: ( ruleFirstPathElementCS )
+            // InternalEssentialOCL.g:13875:1: ( ( ruleFirstPathElementCS ) )
+            // InternalEssentialOCL.g:13876:1: ( ruleFirstPathElementCS )
             {
-            // InternalEssentialOCL.g:13872:1: ( ruleFirstPathElementCS )
-            // InternalEssentialOCL.g:13873:1: ruleFirstPathElementCS
+            // InternalEssentialOCL.g:13876:1: ( ruleFirstPathElementCS )
+            // InternalEssentialOCL.g:13877:1: ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
@@ -40284,17 +40284,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__OwnedPathElementsAssignment_1_1"
-    // InternalEssentialOCL.g:13882:1: rule__PathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
+    // InternalEssentialOCL.g:13886:1: rule__PathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
     public final void rule__PathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13886:1: ( ( ruleNextPathElementCS ) )
-            // InternalEssentialOCL.g:13887:1: ( ruleNextPathElementCS )
+            // InternalEssentialOCL.g:13890:1: ( ( ruleNextPathElementCS ) )
+            // InternalEssentialOCL.g:13891:1: ( ruleNextPathElementCS )
             {
-            // InternalEssentialOCL.g:13887:1: ( ruleNextPathElementCS )
-            // InternalEssentialOCL.g:13888:1: ruleNextPathElementCS
+            // InternalEssentialOCL.g:13891:1: ( ruleNextPathElementCS )
+            // InternalEssentialOCL.g:13892:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
@@ -40329,23 +40329,23 @@
 
 
     // $ANTLR start "rule__FirstPathElementCS__ReferredElementAssignment"
-    // InternalEssentialOCL.g:13897:1: rule__FirstPathElementCS__ReferredElementAssignment : ( ( ruleUnrestrictedName ) ) ;
+    // InternalEssentialOCL.g:13903:1: rule__FirstPathElementCS__ReferredElementAssignment : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__FirstPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13901:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalEssentialOCL.g:13902:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:13907:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalEssentialOCL.g:13908:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalEssentialOCL.g:13902:1: ( ( ruleUnrestrictedName ) )
-            // InternalEssentialOCL.g:13903:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:13908:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:13909:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
-            // InternalEssentialOCL.g:13904:1: ( ruleUnrestrictedName )
-            // InternalEssentialOCL.g:13905:1: ruleUnrestrictedName
+            // InternalEssentialOCL.g:13910:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:13911:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
@@ -40386,23 +40386,23 @@
 
 
     // $ANTLR start "rule__NextPathElementCS__ReferredElementAssignment"
-    // InternalEssentialOCL.g:13916:1: rule__NextPathElementCS__ReferredElementAssignment : ( ( ruleUnreservedName ) ) ;
+    // InternalEssentialOCL.g:13922:1: rule__NextPathElementCS__ReferredElementAssignment : ( ( ruleUnreservedName ) ) ;
     public final void rule__NextPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13920:1: ( ( ( ruleUnreservedName ) ) )
-            // InternalEssentialOCL.g:13921:1: ( ( ruleUnreservedName ) )
+            // InternalEssentialOCL.g:13926:1: ( ( ( ruleUnreservedName ) ) )
+            // InternalEssentialOCL.g:13927:1: ( ( ruleUnreservedName ) )
             {
-            // InternalEssentialOCL.g:13921:1: ( ( ruleUnreservedName ) )
-            // InternalEssentialOCL.g:13922:1: ( ruleUnreservedName )
+            // InternalEssentialOCL.g:13927:1: ( ( ruleUnreservedName ) )
+            // InternalEssentialOCL.g:13928:1: ( ruleUnreservedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
-            // InternalEssentialOCL.g:13923:1: ( ruleUnreservedName )
-            // InternalEssentialOCL.g:13924:1: ruleUnreservedName
+            // InternalEssentialOCL.g:13929:1: ( ruleUnreservedName )
+            // InternalEssentialOCL.g:13930:1: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
@@ -40443,17 +40443,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0"
-    // InternalEssentialOCL.g:13935:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 : ( ruleTemplateParameterSubstitutionCS ) ;
+    // InternalEssentialOCL.g:13941:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 : ( ruleTemplateParameterSubstitutionCS ) ;
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13939:1: ( ( ruleTemplateParameterSubstitutionCS ) )
-            // InternalEssentialOCL.g:13940:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalEssentialOCL.g:13945:1: ( ( ruleTemplateParameterSubstitutionCS ) )
+            // InternalEssentialOCL.g:13946:1: ( ruleTemplateParameterSubstitutionCS )
             {
-            // InternalEssentialOCL.g:13940:1: ( ruleTemplateParameterSubstitutionCS )
-            // InternalEssentialOCL.g:13941:1: ruleTemplateParameterSubstitutionCS
+            // InternalEssentialOCL.g:13946:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalEssentialOCL.g:13947:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
@@ -40488,17 +40488,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1"
-    // InternalEssentialOCL.g:13950:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 : ( ruleTemplateParameterSubstitutionCS ) ;
+    // InternalEssentialOCL.g:13956:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 : ( ruleTemplateParameterSubstitutionCS ) ;
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13954:1: ( ( ruleTemplateParameterSubstitutionCS ) )
-            // InternalEssentialOCL.g:13955:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalEssentialOCL.g:13960:1: ( ( ruleTemplateParameterSubstitutionCS ) )
+            // InternalEssentialOCL.g:13961:1: ( ruleTemplateParameterSubstitutionCS )
             {
-            // InternalEssentialOCL.g:13955:1: ( ruleTemplateParameterSubstitutionCS )
-            // InternalEssentialOCL.g:13956:1: ruleTemplateParameterSubstitutionCS
+            // InternalEssentialOCL.g:13961:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalEssentialOCL.g:13962:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
@@ -40533,17 +40533,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedMultiplicityAssignment_2"
-    // InternalEssentialOCL.g:13965:1: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 : ( ruleMultiplicityCS ) ;
+    // InternalEssentialOCL.g:13971:1: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 : ( ruleMultiplicityCS ) ;
     public final void rule__TemplateBindingCS__OwnedMultiplicityAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13969:1: ( ( ruleMultiplicityCS ) )
-            // InternalEssentialOCL.g:13970:1: ( ruleMultiplicityCS )
+            // InternalEssentialOCL.g:13975:1: ( ( ruleMultiplicityCS ) )
+            // InternalEssentialOCL.g:13976:1: ( ruleMultiplicityCS )
             {
-            // InternalEssentialOCL.g:13970:1: ( ruleMultiplicityCS )
-            // InternalEssentialOCL.g:13971:1: ruleMultiplicityCS
+            // InternalEssentialOCL.g:13976:1: ( ruleMultiplicityCS )
+            // InternalEssentialOCL.g:13977:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
@@ -40578,17 +40578,17 @@
 
 
     // $ANTLR start "rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment"
-    // InternalEssentialOCL.g:13980:1: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment : ( ruleTypeRefCS ) ;
+    // InternalEssentialOCL.g:13986:1: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment : ( ruleTypeRefCS ) ;
     public final void rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:13984:1: ( ( ruleTypeRefCS ) )
-            // InternalEssentialOCL.g:13985:1: ( ruleTypeRefCS )
+            // InternalEssentialOCL.g:13990:1: ( ( ruleTypeRefCS ) )
+            // InternalEssentialOCL.g:13991:1: ( ruleTypeRefCS )
             {
-            // InternalEssentialOCL.g:13985:1: ( ruleTypeRefCS )
-            // InternalEssentialOCL.g:13986:1: ruleTypeRefCS
+            // InternalEssentialOCL.g:13991:1: ( ruleTypeRefCS )
+            // InternalEssentialOCL.g:13992:1: ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
@@ -40623,17 +40623,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__NameAssignment_0"
-    // InternalEssentialOCL.g:13997:1: rule__TypeParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalEssentialOCL.g:14003:1: rule__TypeParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__TypeParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:14001:1: ( ( ruleUnrestrictedName ) )
-            // InternalEssentialOCL.g:14002:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:14007:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:14008:1: ( ruleUnrestrictedName )
             {
-            // InternalEssentialOCL.g:14002:1: ( ruleUnrestrictedName )
-            // InternalEssentialOCL.g:14003:1: ruleUnrestrictedName
+            // InternalEssentialOCL.g:14008:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:14009:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -40668,17 +40668,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__OwnedExtendsAssignment_1_1"
-    // InternalEssentialOCL.g:14012:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_1 : ( ruleTypedRefCS ) ;
+    // InternalEssentialOCL.g:14018:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_1 : ( ruleTypedRefCS ) ;
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:14016:1: ( ( ruleTypedRefCS ) )
-            // InternalEssentialOCL.g:14017:1: ( ruleTypedRefCS )
+            // InternalEssentialOCL.g:14022:1: ( ( ruleTypedRefCS ) )
+            // InternalEssentialOCL.g:14023:1: ( ruleTypedRefCS )
             {
-            // InternalEssentialOCL.g:14017:1: ( ruleTypedRefCS )
-            // InternalEssentialOCL.g:14018:1: ruleTypedRefCS
+            // InternalEssentialOCL.g:14023:1: ( ruleTypedRefCS )
+            // InternalEssentialOCL.g:14024:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
@@ -40713,17 +40713,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1"
-    // InternalEssentialOCL.g:14027:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 : ( ruleTypedRefCS ) ;
+    // InternalEssentialOCL.g:14033:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:14031:1: ( ( ruleTypedRefCS ) )
-            // InternalEssentialOCL.g:14032:1: ( ruleTypedRefCS )
+            // InternalEssentialOCL.g:14037:1: ( ( ruleTypedRefCS ) )
+            // InternalEssentialOCL.g:14038:1: ( ruleTypedRefCS )
             {
-            // InternalEssentialOCL.g:14032:1: ( ruleTypedRefCS )
-            // InternalEssentialOCL.g:14033:1: ruleTypedRefCS
+            // InternalEssentialOCL.g:14038:1: ( ruleTypedRefCS )
+            // InternalEssentialOCL.g:14039:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
@@ -40758,17 +40758,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__OwnedPathNameAssignment_0"
-    // InternalEssentialOCL.g:14042:1: rule__TypedTypeRefCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
+    // InternalEssentialOCL.g:14048:1: rule__TypedTypeRefCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
     public final void rule__TypedTypeRefCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:14046:1: ( ( rulePathNameCS ) )
-            // InternalEssentialOCL.g:14047:1: ( rulePathNameCS )
+            // InternalEssentialOCL.g:14052:1: ( ( rulePathNameCS ) )
+            // InternalEssentialOCL.g:14053:1: ( rulePathNameCS )
             {
-            // InternalEssentialOCL.g:14047:1: ( rulePathNameCS )
-            // InternalEssentialOCL.g:14048:1: rulePathNameCS
+            // InternalEssentialOCL.g:14053:1: ( rulePathNameCS )
+            // InternalEssentialOCL.g:14054:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
@@ -40803,17 +40803,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__OwnedBindingAssignment_1_1"
-    // InternalEssentialOCL.g:14057:1: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 : ( ruleTemplateBindingCS ) ;
+    // InternalEssentialOCL.g:14063:1: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 : ( ruleTemplateBindingCS ) ;
     public final void rule__TypedTypeRefCS__OwnedBindingAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:14061:1: ( ( ruleTemplateBindingCS ) )
-            // InternalEssentialOCL.g:14062:1: ( ruleTemplateBindingCS )
+            // InternalEssentialOCL.g:14067:1: ( ( ruleTemplateBindingCS ) )
+            // InternalEssentialOCL.g:14068:1: ( ruleTemplateBindingCS )
             {
-            // InternalEssentialOCL.g:14062:1: ( ruleTemplateBindingCS )
-            // InternalEssentialOCL.g:14063:1: ruleTemplateBindingCS
+            // InternalEssentialOCL.g:14068:1: ( ruleTemplateBindingCS )
+            // InternalEssentialOCL.g:14069:1: ruleTemplateBindingCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
@@ -40848,17 +40848,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1"
-    // InternalEssentialOCL.g:14072:1: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 : ( ruleTypedRefCS ) ;
+    // InternalEssentialOCL.g:14078:1: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalEssentialOCL.g:14076:1: ( ( ruleTypedRefCS ) )
-            // InternalEssentialOCL.g:14077:1: ( ruleTypedRefCS )
+            // InternalEssentialOCL.g:14082:1: ( ( ruleTypedRefCS ) )
+            // InternalEssentialOCL.g:14083:1: ( ruleTypedRefCS )
             {
-            // InternalEssentialOCL.g:14077:1: ( ruleTypedRefCS )
-            // InternalEssentialOCL.g:14078:1: ruleTypedRefCS
+            // InternalEssentialOCL.g:14083:1: ( ruleTypedRefCS )
+            // InternalEssentialOCL.g:14084:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
@@ -40893,11 +40893,11 @@
 
     // $ANTLR start synpred54_InternalEssentialOCL
     public final void synpred54_InternalEssentialOCL_fragment() throws RecognitionException {
-        // InternalEssentialOCL.g:3029:6: ( ( ruleTypeLiteralCS ) )
-        // InternalEssentialOCL.g:3029:6: ( ruleTypeLiteralCS )
+        // InternalEssentialOCL.g:3031:6: ( ( ruleTypeLiteralCS ) )
+        // InternalEssentialOCL.g:3031:6: ( ruleTypeLiteralCS )
         {
-        // InternalEssentialOCL.g:3029:6: ( ruleTypeLiteralCS )
-        // InternalEssentialOCL.g:3030:1: ruleTypeLiteralCS
+        // InternalEssentialOCL.g:3031:6: ( ruleTypeLiteralCS )
+        // InternalEssentialOCL.g:3032:1: ruleTypeLiteralCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_1());
@@ -40917,17 +40917,17 @@
 
     // $ANTLR start synpred55_InternalEssentialOCL
     public final void synpred55_InternalEssentialOCL_fragment() throws RecognitionException {
-        // InternalEssentialOCL.g:3051:1: ( ( ( rule__ExpCS__Group_0__0 ) ) )
-        // InternalEssentialOCL.g:3051:1: ( ( rule__ExpCS__Group_0__0 ) )
+        // InternalEssentialOCL.g:3053:1: ( ( ( rule__ExpCS__Group_0__0 ) ) )
+        // InternalEssentialOCL.g:3053:1: ( ( rule__ExpCS__Group_0__0 ) )
         {
-        // InternalEssentialOCL.g:3051:1: ( ( rule__ExpCS__Group_0__0 ) )
-        // InternalEssentialOCL.g:3052:1: ( rule__ExpCS__Group_0__0 )
+        // InternalEssentialOCL.g:3053:1: ( ( rule__ExpCS__Group_0__0 ) )
+        // InternalEssentialOCL.g:3054:1: ( rule__ExpCS__Group_0__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getExpCSAccess().getGroup_0());
         }
-        // InternalEssentialOCL.g:3053:1: ( rule__ExpCS__Group_0__0 )
-        // InternalEssentialOCL.g:3053:2: rule__ExpCS__Group_0__0
+        // InternalEssentialOCL.g:3055:1: ( rule__ExpCS__Group_0__0 )
+        // InternalEssentialOCL.g:3055:2: rule__ExpCS__Group_0__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__ExpCS__Group_0__0();
@@ -40947,11 +40947,11 @@
 
     // $ANTLR start synpred62_InternalEssentialOCL
     public final void synpred62_InternalEssentialOCL_fragment() throws RecognitionException {
-        // InternalEssentialOCL.g:3141:6: ( ( ruleTupleLiteralExpCS ) )
-        // InternalEssentialOCL.g:3141:6: ( ruleTupleLiteralExpCS )
+        // InternalEssentialOCL.g:3143:6: ( ( ruleTupleLiteralExpCS ) )
+        // InternalEssentialOCL.g:3143:6: ( ruleTupleLiteralExpCS )
         {
-        // InternalEssentialOCL.g:3141:6: ( ruleTupleLiteralExpCS )
-        // InternalEssentialOCL.g:3142:1: ruleTupleLiteralExpCS
+        // InternalEssentialOCL.g:3143:6: ( ruleTupleLiteralExpCS )
+        // InternalEssentialOCL.g:3144:1: ruleTupleLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
@@ -40971,11 +40971,11 @@
 
     // $ANTLR start synpred63_InternalEssentialOCL
     public final void synpred63_InternalEssentialOCL_fragment() throws RecognitionException {
-        // InternalEssentialOCL.g:3147:6: ( ( ruleMapLiteralExpCS ) )
-        // InternalEssentialOCL.g:3147:6: ( ruleMapLiteralExpCS )
+        // InternalEssentialOCL.g:3149:6: ( ( ruleMapLiteralExpCS ) )
+        // InternalEssentialOCL.g:3149:6: ( ruleMapLiteralExpCS )
         {
-        // InternalEssentialOCL.g:3147:6: ( ruleMapLiteralExpCS )
-        // InternalEssentialOCL.g:3148:1: ruleMapLiteralExpCS
+        // InternalEssentialOCL.g:3149:6: ( ruleMapLiteralExpCS )
+        // InternalEssentialOCL.g:3150:1: ruleMapLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
@@ -40995,11 +40995,11 @@
 
     // $ANTLR start synpred64_InternalEssentialOCL
     public final void synpred64_InternalEssentialOCL_fragment() throws RecognitionException {
-        // InternalEssentialOCL.g:3153:6: ( ( ruleCollectionLiteralExpCS ) )
-        // InternalEssentialOCL.g:3153:6: ( ruleCollectionLiteralExpCS )
+        // InternalEssentialOCL.g:3155:6: ( ( ruleCollectionLiteralExpCS ) )
+        // InternalEssentialOCL.g:3155:6: ( ruleCollectionLiteralExpCS )
         {
-        // InternalEssentialOCL.g:3153:6: ( ruleCollectionLiteralExpCS )
-        // InternalEssentialOCL.g:3154:1: ruleCollectionLiteralExpCS
+        // InternalEssentialOCL.g:3155:6: ( ruleCollectionLiteralExpCS )
+        // InternalEssentialOCL.g:3156:1: ruleCollectionLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
@@ -41019,11 +41019,11 @@
 
     // $ANTLR start synpred66_InternalEssentialOCL
     public final void synpred66_InternalEssentialOCL_fragment() throws RecognitionException {
-        // InternalEssentialOCL.g:3165:6: ( ( ruleTypeLiteralExpCS ) )
-        // InternalEssentialOCL.g:3165:6: ( ruleTypeLiteralExpCS )
+        // InternalEssentialOCL.g:3167:6: ( ( ruleTypeLiteralExpCS ) )
+        // InternalEssentialOCL.g:3167:6: ( ruleTypeLiteralExpCS )
         {
-        // InternalEssentialOCL.g:3165:6: ( ruleTypeLiteralExpCS )
-        // InternalEssentialOCL.g:3166:1: ruleTypeLiteralExpCS
+        // InternalEssentialOCL.g:3167:6: ( ruleTypeLiteralExpCS )
+        // InternalEssentialOCL.g:3168:1: ruleTypeLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
@@ -41043,17 +41043,17 @@
 
     // $ANTLR start synpred70_InternalEssentialOCL
     public final void synpred70_InternalEssentialOCL_fragment() throws RecognitionException {
-        // InternalEssentialOCL.g:3237:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) )
-        // InternalEssentialOCL.g:3237:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+        // InternalEssentialOCL.g:3239:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) )
+        // InternalEssentialOCL.g:3239:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
         {
-        // InternalEssentialOCL.g:3237:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
-        // InternalEssentialOCL.g:3238:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+        // InternalEssentialOCL.g:3239:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+        // InternalEssentialOCL.g:3240:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
         }
-        // InternalEssentialOCL.g:3239:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
-        // InternalEssentialOCL.g:3239:2: rule__NavigatingArgCS__Group_0_1_0__0
+        // InternalEssentialOCL.g:3241:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+        // InternalEssentialOCL.g:3241:2: rule__NavigatingArgCS__Group_0_1_0__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingArgCS__Group_0_1_0__0();
@@ -41073,17 +41073,17 @@
 
     // $ANTLR start synpred71_InternalEssentialOCL
     public final void synpred71_InternalEssentialOCL_fragment() throws RecognitionException {
-        // InternalEssentialOCL.g:3243:6: ( ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) )
-        // InternalEssentialOCL.g:3243:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+        // InternalEssentialOCL.g:3245:6: ( ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) )
+        // InternalEssentialOCL.g:3245:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
         {
-        // InternalEssentialOCL.g:3243:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
-        // InternalEssentialOCL.g:3244:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+        // InternalEssentialOCL.g:3245:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+        // InternalEssentialOCL.g:3246:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
         }
-        // InternalEssentialOCL.g:3245:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
-        // InternalEssentialOCL.g:3245:2: rule__NavigatingArgCS__Group_0_1_1__0
+        // InternalEssentialOCL.g:3247:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+        // InternalEssentialOCL.g:3247:2: rule__NavigatingArgCS__Group_0_1_1__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingArgCS__Group_0_1_1__0();
@@ -41103,17 +41103,17 @@
 
     // $ANTLR start synpred72_InternalEssentialOCL
     public final void synpred72_InternalEssentialOCL_fragment() throws RecognitionException {
-        // InternalEssentialOCL.g:3265:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) )
-        // InternalEssentialOCL.g:3265:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+        // InternalEssentialOCL.g:3267:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) )
+        // InternalEssentialOCL.g:3267:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
         {
-        // InternalEssentialOCL.g:3265:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
-        // InternalEssentialOCL.g:3266:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+        // InternalEssentialOCL.g:3267:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+        // InternalEssentialOCL.g:3268:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
         }
-        // InternalEssentialOCL.g:3267:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
-        // InternalEssentialOCL.g:3267:2: rule__NavigatingCommaArgCS__Group_2_0__0
+        // InternalEssentialOCL.g:3269:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+        // InternalEssentialOCL.g:3269:2: rule__NavigatingCommaArgCS__Group_2_0__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingCommaArgCS__Group_2_0__0();
@@ -41133,17 +41133,17 @@
 
     // $ANTLR start synpred73_InternalEssentialOCL
     public final void synpred73_InternalEssentialOCL_fragment() throws RecognitionException {
-        // InternalEssentialOCL.g:3271:6: ( ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) )
-        // InternalEssentialOCL.g:3271:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+        // InternalEssentialOCL.g:3273:6: ( ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) )
+        // InternalEssentialOCL.g:3273:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
         {
-        // InternalEssentialOCL.g:3271:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
-        // InternalEssentialOCL.g:3272:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+        // InternalEssentialOCL.g:3273:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+        // InternalEssentialOCL.g:3274:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
         }
-        // InternalEssentialOCL.g:3273:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
-        // InternalEssentialOCL.g:3273:2: rule__NavigatingCommaArgCS__Group_2_1__0
+        // InternalEssentialOCL.g:3275:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+        // InternalEssentialOCL.g:3275:2: rule__NavigatingCommaArgCS__Group_2_1__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingCommaArgCS__Group_2_1__0();
@@ -41356,7 +41356,7 @@
             this.transition = dfa_6;
         }
         public String getDescription() {
-            return "3018:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );";
+            return "3020:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             TokenStream input = (TokenStream)_input;
@@ -41507,7 +41507,7 @@
             this.transition = dfa_12;
         }
         public String getDescription() {
-            return "3046:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );";
+            return "3048:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             TokenStream input = (TokenStream)_input;
@@ -41627,7 +41627,7 @@
             this.transition = dfa_18;
         }
         public String getDescription() {
-            return "3112:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );";
+            return "3114:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             TokenStream input = (TokenStream)_input;
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/EssentialOCL.xtextbin b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/EssentialOCL.xtextbin
index 963c92b..9535f81 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/EssentialOCL.xtextbin
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/EssentialOCL.xtextbin
Binary files differ
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/EssentialOCLGrammarResource.java b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/EssentialOCLGrammarResource.java
index 3a662d2..45df5cb 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/EssentialOCLGrammarResource.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/EssentialOCLGrammarResource.java
@@ -859,6 +859,7 @@
 		private static final @NonNull ParserRule PR_UPPER = createParserRule("UPPER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.EINT));
 		private static final @NonNull ParserRule PR_URI = createParserRule("URI", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_UnreservedName = createParserRule("UnreservedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
+		private static final @NonNull ParserRule PR_UnreservedPathNameCS = createParserRule("UnreservedPathNameCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.PATH_NAME_CS));
 		private static final @NonNull ParserRule PR_UnrestrictedName = createParserRule("UnrestrictedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_WildcardTypeRefCS = createParserRule("WildcardTypeRefCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.WILDCARD_TYPE_REF_CS));
 
@@ -955,6 +956,12 @@
 				createRuleCall(TR_SINGLE_QUOTED_STRING));
 			PR_UnreservedName.setAlternatives(
 				createRuleCall(_EssentialOCL.PR_UnrestrictedName));
+			PR_UnreservedPathNameCS.setAlternatives(
+				createGroup(
+					createAssignment("ownedPathElements", "+=", createRuleCall(PR_NextPathElementCS)),
+					setCardinality("*", createGroup(
+						createKeyword("::"),
+						createAssignment("ownedPathElements", "+=", createRuleCall(PR_NextPathElementCS))))));
 			PR_UnrestrictedName.setAlternatives(
 				createRuleCall(PR_Identifier));
 			PR_WildcardTypeRefCS.setAlternatives(
@@ -983,6 +990,7 @@
 				rules.add(PR_MultiplicityCS);
 				rules.add(PR_MultiplicityStringCS);
 				rules.add(PR_PathNameCS);
+				rules.add(PR_UnreservedPathNameCS);
 				rules.add(PR_FirstPathElementCS);
 				rules.add(PR_NextPathElementCS);
 				rules.add(PR_TemplateBindingCS);
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/internal/InternalEssentialOCL.g b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/internal/InternalEssentialOCL.g
index 5609f04..73a7fac 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/internal/InternalEssentialOCL.g
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/internal/InternalEssentialOCL.g
@@ -4933,6 +4933,8 @@
 
 
 
+
+
 // Entry rule entryRuleFirstPathElementCS
 entryRuleFirstPathElementCS returns [EObject current=null]
 	:
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/internal/InternalEssentialOCLLexer.java b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/internal/InternalEssentialOCLLexer.java
index 0d1a954..cabb3c3 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/internal/InternalEssentialOCLLexer.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/internal/InternalEssentialOCLLexer.java
@@ -1638,8 +1638,8 @@
     // $ANTLR start "RULE_ESCAPED_CHARACTER"
     public final void mRULE_ESCAPED_CHARACTER() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:5632:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
-            // InternalEssentialOCL.g:5632:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+            // InternalEssentialOCL.g:5634:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
+            // InternalEssentialOCL.g:5634:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
             match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -1663,8 +1663,8 @@
     // $ANTLR start "RULE_LETTER_CHARACTER"
     public final void mRULE_LETTER_CHARACTER() throws RecognitionException {
         try {
-            // InternalEssentialOCL.g:5634:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
-            // InternalEssentialOCL.g:5634:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
+            // InternalEssentialOCL.g:5636:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
+            // InternalEssentialOCL.g:5636:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
             {
             if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
                 input.consume();
@@ -1689,11 +1689,11 @@
         try {
             int _type = RULE_DOUBLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:5636:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
-            // InternalEssentialOCL.g:5636:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+            // InternalEssentialOCL.g:5638:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
+            // InternalEssentialOCL.g:5638:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
             match('\"');
-            // InternalEssentialOCL.g:5636:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
+            // InternalEssentialOCL.g:5638:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
                 int alt1=3;
@@ -1709,14 +1709,14 @@
 
                 switch (alt1) {
             	case 1 :
-            	    // InternalEssentialOCL.g:5636:34: RULE_ESCAPED_CHARACTER
+            	    // InternalEssentialOCL.g:5638:34: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalEssentialOCL.g:5636:57: ~ ( ( '\\\\' | '\"' ) )
+            	    // InternalEssentialOCL.g:5638:57: ~ ( ( '\\\\' | '\"' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -1753,11 +1753,11 @@
         try {
             int _type = RULE_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:5638:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            // InternalEssentialOCL.g:5638:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+            // InternalEssentialOCL.g:5640:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // InternalEssentialOCL.g:5640:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
             match('\'');
-            // InternalEssentialOCL.g:5638:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
+            // InternalEssentialOCL.g:5640:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
                 int alt2=3;
@@ -1773,14 +1773,14 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // InternalEssentialOCL.g:5638:35: RULE_ESCAPED_CHARACTER
+            	    // InternalEssentialOCL.g:5640:35: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalEssentialOCL.g:5638:58: ~ ( ( '\\\\' | '\\'' ) )
+            	    // InternalEssentialOCL.g:5640:58: ~ ( ( '\\\\' | '\\'' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -1817,12 +1817,12 @@
         try {
             int _type = RULE_ML_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:5640:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
-            // InternalEssentialOCL.g:5640:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
+            // InternalEssentialOCL.g:5642:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
+            // InternalEssentialOCL.g:5642:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
             match("/'");
 
-            // InternalEssentialOCL.g:5640:38: ( options {greedy=false; } : . )*
+            // InternalEssentialOCL.g:5642:38: ( options {greedy=false; } : . )*
             loop3:
             do {
                 int alt3=2;
@@ -1847,7 +1847,7 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // InternalEssentialOCL.g:5640:66: .
+            	    // InternalEssentialOCL.g:5642:66: .
             	    {
             	    matchAny();
 
@@ -1877,11 +1877,11 @@
         try {
             int _type = RULE_SIMPLE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:5642:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
-            // InternalEssentialOCL.g:5642:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalEssentialOCL.g:5644:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
+            // InternalEssentialOCL.g:5644:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
             mRULE_LETTER_CHARACTER();
-            // InternalEssentialOCL.g:5642:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalEssentialOCL.g:5644:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
                 int alt4=2;
@@ -1930,8 +1930,8 @@
         try {
             int _type = RULE_ESCAPED_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:5644:17: ( '_' RULE_SINGLE_QUOTED_STRING )
-            // InternalEssentialOCL.g:5644:19: '_' RULE_SINGLE_QUOTED_STRING
+            // InternalEssentialOCL.g:5646:17: ( '_' RULE_SINGLE_QUOTED_STRING )
+            // InternalEssentialOCL.g:5646:19: '_' RULE_SINGLE_QUOTED_STRING
             {
             match('_');
             mRULE_SINGLE_QUOTED_STRING();
@@ -1951,10 +1951,10 @@
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:5646:10: ( ( '0' .. '9' )+ )
-            // InternalEssentialOCL.g:5646:12: ( '0' .. '9' )+
+            // InternalEssentialOCL.g:5648:10: ( ( '0' .. '9' )+ )
+            // InternalEssentialOCL.g:5648:12: ( '0' .. '9' )+
             {
-            // InternalEssentialOCL.g:5646:12: ( '0' .. '9' )+
+            // InternalEssentialOCL.g:5648:12: ( '0' .. '9' )+
             int cnt5=0;
             loop5:
             do {
@@ -1968,7 +1968,7 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // InternalEssentialOCL.g:5646:13: '0' .. '9'
+            	    // InternalEssentialOCL.g:5648:13: '0' .. '9'
             	    {
             	    matchRange('0','9');
 
@@ -2000,12 +2000,12 @@
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:5648:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // InternalEssentialOCL.g:5648:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // InternalEssentialOCL.g:5650:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // InternalEssentialOCL.g:5650:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*");
 
-            // InternalEssentialOCL.g:5648:24: ( options {greedy=false; } : . )*
+            // InternalEssentialOCL.g:5650:24: ( options {greedy=false; } : . )*
             loop6:
             do {
                 int alt6=2;
@@ -2030,7 +2030,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // InternalEssentialOCL.g:5648:52: .
+            	    // InternalEssentialOCL.g:5650:52: .
             	    {
             	    matchAny();
 
@@ -2060,12 +2060,12 @@
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:5650:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // InternalEssentialOCL.g:5650:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // InternalEssentialOCL.g:5652:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // InternalEssentialOCL.g:5652:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("--");
 
-            // InternalEssentialOCL.g:5650:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // InternalEssentialOCL.g:5652:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
             do {
                 int alt7=2;
@@ -2078,7 +2078,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // InternalEssentialOCL.g:5650:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // InternalEssentialOCL.g:5652:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2098,7 +2098,7 @@
                 }
             } while (true);
 
-            // InternalEssentialOCL.g:5650:40: ( ( '\\r' )? '\\n' )?
+            // InternalEssentialOCL.g:5652:40: ( ( '\\r' )? '\\n' )?
             int alt9=2;
             int LA9_0 = input.LA(1);
 
@@ -2107,9 +2107,9 @@
             }
             switch (alt9) {
                 case 1 :
-                    // InternalEssentialOCL.g:5650:41: ( '\\r' )? '\\n'
+                    // InternalEssentialOCL.g:5652:41: ( '\\r' )? '\\n'
                     {
-                    // InternalEssentialOCL.g:5650:41: ( '\\r' )?
+                    // InternalEssentialOCL.g:5652:41: ( '\\r' )?
                     int alt8=2;
                     int LA8_0 = input.LA(1);
 
@@ -2118,7 +2118,7 @@
                     }
                     switch (alt8) {
                         case 1 :
-                            // InternalEssentialOCL.g:5650:41: '\\r'
+                            // InternalEssentialOCL.g:5652:41: '\\r'
                             {
                             match('\r');
 
@@ -2150,10 +2150,10 @@
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:5652:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // InternalEssentialOCL.g:5652:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalEssentialOCL.g:5654:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // InternalEssentialOCL.g:5654:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // InternalEssentialOCL.g:5652:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalEssentialOCL.g:5654:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt10=0;
             loop10:
             do {
@@ -2207,8 +2207,8 @@
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalEssentialOCL.g:5654:16: ( . )
-            // InternalEssentialOCL.g:5654:18: .
+            // InternalEssentialOCL.g:5656:16: ( . )
+            // InternalEssentialOCL.g:5656:18: .
             {
             matchAny();
 
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/internal/InternalEssentialOCLParser.java b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/internal/InternalEssentialOCLParser.java
index 7cc4b25..02d0f53 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/internal/InternalEssentialOCLParser.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/internal/InternalEssentialOCLParser.java
@@ -14177,7 +14177,7 @@
 
 
     // $ANTLR start "entryRuleFirstPathElementCS"
-    // InternalEssentialOCL.g:4937:1: entryRuleFirstPathElementCS returns [EObject current=null] : iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ;
+    // InternalEssentialOCL.g:4939:1: entryRuleFirstPathElementCS returns [EObject current=null] : iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ;
     public final EObject entryRuleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
@@ -14185,8 +14185,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:4938:2: (iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF )
-            // InternalEssentialOCL.g:4939:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
+            // InternalEssentialOCL.g:4940:2: (iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF )
+            // InternalEssentialOCL.g:4941:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getFirstPathElementCSRule());
@@ -14217,21 +14217,21 @@
 
 
     // $ANTLR start "ruleFirstPathElementCS"
-    // InternalEssentialOCL.g:4946:1: ruleFirstPathElementCS returns [EObject current=null] : ( ( ruleUnrestrictedName ) ) ;
+    // InternalEssentialOCL.g:4948:1: ruleFirstPathElementCS returns [EObject current=null] : ( ( ruleUnrestrictedName ) ) ;
     public final EObject ruleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:4949:28: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalEssentialOCL.g:4950:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:4951:28: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalEssentialOCL.g:4952:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalEssentialOCL.g:4950:1: ( ( ruleUnrestrictedName ) )
-            // InternalEssentialOCL.g:4951:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:4952:1: ( ( ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:4953:1: ( ruleUnrestrictedName )
             {
-            // InternalEssentialOCL.g:4951:1: ( ruleUnrestrictedName )
-            // InternalEssentialOCL.g:4952:3: ruleUnrestrictedName
+            // InternalEssentialOCL.g:4953:1: ( ruleUnrestrictedName )
+            // InternalEssentialOCL.g:4954:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
 
@@ -14286,7 +14286,7 @@
 
 
     // $ANTLR start "entryRuleNextPathElementCS"
-    // InternalEssentialOCL.g:4976:1: entryRuleNextPathElementCS returns [EObject current=null] : iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ;
+    // InternalEssentialOCL.g:4978:1: entryRuleNextPathElementCS returns [EObject current=null] : iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ;
     public final EObject entryRuleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
@@ -14294,8 +14294,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:4977:2: (iv_ruleNextPathElementCS= ruleNextPathElementCS EOF )
-            // InternalEssentialOCL.g:4978:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
+            // InternalEssentialOCL.g:4979:2: (iv_ruleNextPathElementCS= ruleNextPathElementCS EOF )
+            // InternalEssentialOCL.g:4980:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getNextPathElementCSRule());
@@ -14326,21 +14326,21 @@
 
 
     // $ANTLR start "ruleNextPathElementCS"
-    // InternalEssentialOCL.g:4985:1: ruleNextPathElementCS returns [EObject current=null] : ( ( ruleUnreservedName ) ) ;
+    // InternalEssentialOCL.g:4987:1: ruleNextPathElementCS returns [EObject current=null] : ( ( ruleUnreservedName ) ) ;
     public final EObject ruleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:4988:28: ( ( ( ruleUnreservedName ) ) )
-            // InternalEssentialOCL.g:4989:1: ( ( ruleUnreservedName ) )
+            // InternalEssentialOCL.g:4990:28: ( ( ( ruleUnreservedName ) ) )
+            // InternalEssentialOCL.g:4991:1: ( ( ruleUnreservedName ) )
             {
-            // InternalEssentialOCL.g:4989:1: ( ( ruleUnreservedName ) )
-            // InternalEssentialOCL.g:4990:1: ( ruleUnreservedName )
+            // InternalEssentialOCL.g:4991:1: ( ( ruleUnreservedName ) )
+            // InternalEssentialOCL.g:4992:1: ( ruleUnreservedName )
             {
-            // InternalEssentialOCL.g:4990:1: ( ruleUnreservedName )
-            // InternalEssentialOCL.g:4991:3: ruleUnreservedName
+            // InternalEssentialOCL.g:4992:1: ( ruleUnreservedName )
+            // InternalEssentialOCL.g:4993:3: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
 
@@ -14395,7 +14395,7 @@
 
 
     // $ANTLR start "entryRuleTemplateBindingCS"
-    // InternalEssentialOCL.g:5015:1: entryRuleTemplateBindingCS returns [EObject current=null] : iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ;
+    // InternalEssentialOCL.g:5017:1: entryRuleTemplateBindingCS returns [EObject current=null] : iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ;
     public final EObject entryRuleTemplateBindingCS() throws RecognitionException {
         EObject current = null;
 
@@ -14403,8 +14403,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5016:2: (iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF )
-            // InternalEssentialOCL.g:5017:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
+            // InternalEssentialOCL.g:5018:2: (iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF )
+            // InternalEssentialOCL.g:5019:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTemplateBindingCSRule());
@@ -14435,7 +14435,7 @@
 
 
     // $ANTLR start "ruleTemplateBindingCS"
-    // InternalEssentialOCL.g:5024:1: ruleTemplateBindingCS returns [EObject current=null] : ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) ;
+    // InternalEssentialOCL.g:5026:1: ruleTemplateBindingCS returns [EObject current=null] : ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) ;
     public final EObject ruleTemplateBindingCS() throws RecognitionException {
         EObject current = null;
 
@@ -14450,17 +14450,17 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5027:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
-            // InternalEssentialOCL.g:5028:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
+            // InternalEssentialOCL.g:5029:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
+            // InternalEssentialOCL.g:5030:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
             {
-            // InternalEssentialOCL.g:5028:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
-            // InternalEssentialOCL.g:5028:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
+            // InternalEssentialOCL.g:5030:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
+            // InternalEssentialOCL.g:5030:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
             {
-            // InternalEssentialOCL.g:5028:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) )
-            // InternalEssentialOCL.g:5029:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
+            // InternalEssentialOCL.g:5030:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) )
+            // InternalEssentialOCL.g:5031:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
             {
-            // InternalEssentialOCL.g:5029:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
-            // InternalEssentialOCL.g:5030:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
+            // InternalEssentialOCL.g:5031:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
+            // InternalEssentialOCL.g:5032:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
 
@@ -14491,7 +14491,7 @@
 
             }
 
-            // InternalEssentialOCL.g:5046:2: (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )*
+            // InternalEssentialOCL.g:5048:2: (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )*
             loop80:
             do {
                 int alt80=2;
@@ -14504,7 +14504,7 @@
 
                 switch (alt80) {
             	case 1 :
-            	    // InternalEssentialOCL.g:5046:4: otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
+            	    // InternalEssentialOCL.g:5048:4: otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
             	    {
             	    otherlv_1=(Token)match(input,57,FollowSets000.FOLLOW_55); if (state.failed) return current;
             	    if ( state.backtracking==0 ) {
@@ -14512,11 +14512,11 @@
             	          	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
 
             	    }
-            	    // InternalEssentialOCL.g:5050:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
-            	    // InternalEssentialOCL.g:5051:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
+            	    // InternalEssentialOCL.g:5052:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
+            	    // InternalEssentialOCL.g:5053:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
             	    {
-            	    // InternalEssentialOCL.g:5051:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
-            	    // InternalEssentialOCL.g:5052:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
+            	    // InternalEssentialOCL.g:5053:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
+            	    // InternalEssentialOCL.g:5054:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
             	    {
             	    if ( state.backtracking==0 ) {
 
@@ -14556,7 +14556,7 @@
                 }
             } while (true);
 
-            // InternalEssentialOCL.g:5068:4: ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
+            // InternalEssentialOCL.g:5070:4: ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
             int alt81=2;
             int LA81_0 = input.LA(1);
 
@@ -14565,10 +14565,10 @@
             }
             switch (alt81) {
                 case 1 :
-                    // InternalEssentialOCL.g:5069:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
+                    // InternalEssentialOCL.g:5071:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
                     {
-                    // InternalEssentialOCL.g:5069:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
-                    // InternalEssentialOCL.g:5070:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
+                    // InternalEssentialOCL.g:5071:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
+                    // InternalEssentialOCL.g:5072:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -14625,7 +14625,7 @@
 
 
     // $ANTLR start "entryRuleTemplateParameterSubstitutionCS"
-    // InternalEssentialOCL.g:5094:1: entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] : iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ;
+    // InternalEssentialOCL.g:5096:1: entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] : iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ;
     public final EObject entryRuleTemplateParameterSubstitutionCS() throws RecognitionException {
         EObject current = null;
 
@@ -14633,8 +14633,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5095:2: (iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF )
-            // InternalEssentialOCL.g:5096:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
+            // InternalEssentialOCL.g:5097:2: (iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF )
+            // InternalEssentialOCL.g:5098:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule());
@@ -14665,7 +14665,7 @@
 
 
     // $ANTLR start "ruleTemplateParameterSubstitutionCS"
-    // InternalEssentialOCL.g:5103:1: ruleTemplateParameterSubstitutionCS returns [EObject current=null] : ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) ;
+    // InternalEssentialOCL.g:5105:1: ruleTemplateParameterSubstitutionCS returns [EObject current=null] : ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) ;
     public final EObject ruleTemplateParameterSubstitutionCS() throws RecognitionException {
         EObject current = null;
 
@@ -14675,14 +14675,14 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5106:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
-            // InternalEssentialOCL.g:5107:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
+            // InternalEssentialOCL.g:5108:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
+            // InternalEssentialOCL.g:5109:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
             {
-            // InternalEssentialOCL.g:5107:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
-            // InternalEssentialOCL.g:5108:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
+            // InternalEssentialOCL.g:5109:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
+            // InternalEssentialOCL.g:5110:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
             {
-            // InternalEssentialOCL.g:5108:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
-            // InternalEssentialOCL.g:5109:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
+            // InternalEssentialOCL.g:5110:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
+            // InternalEssentialOCL.g:5111:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
 
@@ -14733,7 +14733,7 @@
 
 
     // $ANTLR start "entryRuleTypeParameterCS"
-    // InternalEssentialOCL.g:5135:1: entryRuleTypeParameterCS returns [EObject current=null] : iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ;
+    // InternalEssentialOCL.g:5137:1: entryRuleTypeParameterCS returns [EObject current=null] : iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ;
     public final EObject entryRuleTypeParameterCS() throws RecognitionException {
         EObject current = null;
 
@@ -14741,8 +14741,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5136:2: (iv_ruleTypeParameterCS= ruleTypeParameterCS EOF )
-            // InternalEssentialOCL.g:5137:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
+            // InternalEssentialOCL.g:5138:2: (iv_ruleTypeParameterCS= ruleTypeParameterCS EOF )
+            // InternalEssentialOCL.g:5139:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypeParameterCSRule());
@@ -14773,7 +14773,7 @@
 
 
     // $ANTLR start "ruleTypeParameterCS"
-    // InternalEssentialOCL.g:5144:1: ruleTypeParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) ;
+    // InternalEssentialOCL.g:5146:1: ruleTypeParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) ;
     public final EObject ruleTypeParameterCS() throws RecognitionException {
         EObject current = null;
 
@@ -14789,17 +14789,17 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5147:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
-            // InternalEssentialOCL.g:5148:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
+            // InternalEssentialOCL.g:5149:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
+            // InternalEssentialOCL.g:5150:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
             {
-            // InternalEssentialOCL.g:5148:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
-            // InternalEssentialOCL.g:5148:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
+            // InternalEssentialOCL.g:5150:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
+            // InternalEssentialOCL.g:5150:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
             {
-            // InternalEssentialOCL.g:5148:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
-            // InternalEssentialOCL.g:5149:1: (lv_name_0_0= ruleUnrestrictedName )
+            // InternalEssentialOCL.g:5150:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
+            // InternalEssentialOCL.g:5151:1: (lv_name_0_0= ruleUnrestrictedName )
             {
-            // InternalEssentialOCL.g:5149:1: (lv_name_0_0= ruleUnrestrictedName )
-            // InternalEssentialOCL.g:5150:3: lv_name_0_0= ruleUnrestrictedName
+            // InternalEssentialOCL.g:5151:1: (lv_name_0_0= ruleUnrestrictedName )
+            // InternalEssentialOCL.g:5152:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
 
@@ -14830,7 +14830,7 @@
 
             }
 
-            // InternalEssentialOCL.g:5166:2: (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
+            // InternalEssentialOCL.g:5168:2: (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
             int alt83=2;
             int LA83_0 = input.LA(1);
 
@@ -14839,7 +14839,7 @@
             }
             switch (alt83) {
                 case 1 :
-                    // InternalEssentialOCL.g:5166:4: otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
+                    // InternalEssentialOCL.g:5168:4: otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
                     {
                     otherlv_1=(Token)match(input,87,FollowSets000.FOLLOW_10); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -14847,11 +14847,11 @@
                           	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
 
                     }
-                    // InternalEssentialOCL.g:5170:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
-                    // InternalEssentialOCL.g:5171:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
+                    // InternalEssentialOCL.g:5172:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
+                    // InternalEssentialOCL.g:5173:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
                     {
-                    // InternalEssentialOCL.g:5171:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
-                    // InternalEssentialOCL.g:5172:3: lv_ownedExtends_2_0= ruleTypedRefCS
+                    // InternalEssentialOCL.g:5173:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
+                    // InternalEssentialOCL.g:5174:3: lv_ownedExtends_2_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -14882,7 +14882,7 @@
 
                     }
 
-                    // InternalEssentialOCL.g:5188:2: (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
+                    // InternalEssentialOCL.g:5190:2: (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
                     loop82:
                     do {
                         int alt82=2;
@@ -14895,7 +14895,7 @@
 
                         switch (alt82) {
                     	case 1 :
-                    	    // InternalEssentialOCL.g:5188:4: otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
+                    	    // InternalEssentialOCL.g:5190:4: otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
                     	    {
                     	    otherlv_3=(Token)match(input,88,FollowSets000.FOLLOW_10); if (state.failed) return current;
                     	    if ( state.backtracking==0 ) {
@@ -14903,11 +14903,11 @@
                     	          	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
 
                     	    }
-                    	    // InternalEssentialOCL.g:5192:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
-                    	    // InternalEssentialOCL.g:5193:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
+                    	    // InternalEssentialOCL.g:5194:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
+                    	    // InternalEssentialOCL.g:5195:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
                     	    {
-                    	    // InternalEssentialOCL.g:5193:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
-                    	    // InternalEssentialOCL.g:5194:3: lv_ownedExtends_4_0= ruleTypedRefCS
+                    	    // InternalEssentialOCL.g:5195:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
+                    	    // InternalEssentialOCL.g:5196:3: lv_ownedExtends_4_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
 
@@ -14976,7 +14976,7 @@
 
 
     // $ANTLR start "entryRuleTypeRefCS"
-    // InternalEssentialOCL.g:5218:1: entryRuleTypeRefCS returns [EObject current=null] : iv_ruleTypeRefCS= ruleTypeRefCS EOF ;
+    // InternalEssentialOCL.g:5220:1: entryRuleTypeRefCS returns [EObject current=null] : iv_ruleTypeRefCS= ruleTypeRefCS EOF ;
     public final EObject entryRuleTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -14984,8 +14984,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5219:2: (iv_ruleTypeRefCS= ruleTypeRefCS EOF )
-            // InternalEssentialOCL.g:5220:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
+            // InternalEssentialOCL.g:5221:2: (iv_ruleTypeRefCS= ruleTypeRefCS EOF )
+            // InternalEssentialOCL.g:5222:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypeRefCSRule());
@@ -15016,7 +15016,7 @@
 
 
     // $ANTLR start "ruleTypeRefCS"
-    // InternalEssentialOCL.g:5227:1: ruleTypeRefCS returns [EObject current=null] : (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) ;
+    // InternalEssentialOCL.g:5229:1: ruleTypeRefCS returns [EObject current=null] : (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) ;
     public final EObject ruleTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -15028,10 +15028,10 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5230:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
-            // InternalEssentialOCL.g:5231:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
+            // InternalEssentialOCL.g:5232:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
+            // InternalEssentialOCL.g:5233:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
             {
-            // InternalEssentialOCL.g:5231:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
+            // InternalEssentialOCL.g:5233:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
             int alt84=2;
             int LA84_0 = input.LA(1);
 
@@ -15050,7 +15050,7 @@
             }
             switch (alt84) {
                 case 1 :
-                    // InternalEssentialOCL.g:5232:2: this_TypedRefCS_0= ruleTypedRefCS
+                    // InternalEssentialOCL.g:5234:2: this_TypedRefCS_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -15077,7 +15077,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:5245:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
+                    // InternalEssentialOCL.g:5247:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -15126,7 +15126,7 @@
 
 
     // $ANTLR start "entryRuleTypedRefCS"
-    // InternalEssentialOCL.g:5264:1: entryRuleTypedRefCS returns [EObject current=null] : iv_ruleTypedRefCS= ruleTypedRefCS EOF ;
+    // InternalEssentialOCL.g:5266:1: entryRuleTypedRefCS returns [EObject current=null] : iv_ruleTypedRefCS= ruleTypedRefCS EOF ;
     public final EObject entryRuleTypedRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -15134,8 +15134,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5265:2: (iv_ruleTypedRefCS= ruleTypedRefCS EOF )
-            // InternalEssentialOCL.g:5266:2: iv_ruleTypedRefCS= ruleTypedRefCS EOF
+            // InternalEssentialOCL.g:5267:2: (iv_ruleTypedRefCS= ruleTypedRefCS EOF )
+            // InternalEssentialOCL.g:5268:2: iv_ruleTypedRefCS= ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypedRefCSRule());
@@ -15166,7 +15166,7 @@
 
 
     // $ANTLR start "ruleTypedRefCS"
-    // InternalEssentialOCL.g:5273:1: ruleTypedRefCS returns [EObject current=null] : this_TypedTypeRefCS_0= ruleTypedTypeRefCS ;
+    // InternalEssentialOCL.g:5275:1: ruleTypedRefCS returns [EObject current=null] : this_TypedTypeRefCS_0= ruleTypedTypeRefCS ;
     public final EObject ruleTypedRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -15176,8 +15176,8 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5276:28: (this_TypedTypeRefCS_0= ruleTypedTypeRefCS )
-            // InternalEssentialOCL.g:5278:2: this_TypedTypeRefCS_0= ruleTypedTypeRefCS
+            // InternalEssentialOCL.g:5278:28: (this_TypedTypeRefCS_0= ruleTypedTypeRefCS )
+            // InternalEssentialOCL.g:5280:2: this_TypedTypeRefCS_0= ruleTypedTypeRefCS
             {
             if ( state.backtracking==0 ) {
 
@@ -15220,7 +15220,7 @@
 
 
     // $ANTLR start "entryRuleTypedTypeRefCS"
-    // InternalEssentialOCL.g:5297:1: entryRuleTypedTypeRefCS returns [EObject current=null] : iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF ;
+    // InternalEssentialOCL.g:5299:1: entryRuleTypedTypeRefCS returns [EObject current=null] : iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF ;
     public final EObject entryRuleTypedTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -15228,8 +15228,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5298:2: (iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF )
-            // InternalEssentialOCL.g:5299:2: iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF
+            // InternalEssentialOCL.g:5300:2: (iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF )
+            // InternalEssentialOCL.g:5301:2: iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypedTypeRefCSRule());
@@ -15260,7 +15260,7 @@
 
 
     // $ANTLR start "ruleTypedTypeRefCS"
-    // InternalEssentialOCL.g:5306:1: ruleTypedTypeRefCS returns [EObject current=null] : ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) ;
+    // InternalEssentialOCL.g:5308:1: ruleTypedTypeRefCS returns [EObject current=null] : ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) ;
     public final EObject ruleTypedTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -15274,17 +15274,17 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5309:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) )
-            // InternalEssentialOCL.g:5310:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
+            // InternalEssentialOCL.g:5311:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) )
+            // InternalEssentialOCL.g:5312:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
             {
-            // InternalEssentialOCL.g:5310:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
-            // InternalEssentialOCL.g:5310:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
+            // InternalEssentialOCL.g:5312:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
+            // InternalEssentialOCL.g:5312:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
             {
-            // InternalEssentialOCL.g:5310:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) )
-            // InternalEssentialOCL.g:5311:1: (lv_ownedPathName_0_0= rulePathNameCS )
+            // InternalEssentialOCL.g:5312:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) )
+            // InternalEssentialOCL.g:5313:1: (lv_ownedPathName_0_0= rulePathNameCS )
             {
-            // InternalEssentialOCL.g:5311:1: (lv_ownedPathName_0_0= rulePathNameCS )
-            // InternalEssentialOCL.g:5312:3: lv_ownedPathName_0_0= rulePathNameCS
+            // InternalEssentialOCL.g:5313:1: (lv_ownedPathName_0_0= rulePathNameCS )
+            // InternalEssentialOCL.g:5314:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
 
@@ -15315,7 +15315,7 @@
 
             }
 
-            // InternalEssentialOCL.g:5328:2: (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
+            // InternalEssentialOCL.g:5330:2: (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
             int alt85=2;
             int LA85_0 = input.LA(1);
 
@@ -15324,7 +15324,7 @@
             }
             switch (alt85) {
                 case 1 :
-                    // InternalEssentialOCL.g:5328:4: otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')'
+                    // InternalEssentialOCL.g:5330:4: otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')'
                     {
                     otherlv_1=(Token)match(input,55,FollowSets000.FOLLOW_55); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -15332,11 +15332,11 @@
                           	newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
 
                     }
-                    // InternalEssentialOCL.g:5332:1: ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) )
-                    // InternalEssentialOCL.g:5333:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
+                    // InternalEssentialOCL.g:5334:1: ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) )
+                    // InternalEssentialOCL.g:5335:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
                     {
-                    // InternalEssentialOCL.g:5333:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
-                    // InternalEssentialOCL.g:5334:3: lv_ownedBinding_2_0= ruleTemplateBindingCS
+                    // InternalEssentialOCL.g:5335:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
+                    // InternalEssentialOCL.g:5336:3: lv_ownedBinding_2_0= ruleTemplateBindingCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -15402,7 +15402,7 @@
 
 
     // $ANTLR start "entryRuleWildcardTypeRefCS"
-    // InternalEssentialOCL.g:5362:1: entryRuleWildcardTypeRefCS returns [EObject current=null] : iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ;
+    // InternalEssentialOCL.g:5364:1: entryRuleWildcardTypeRefCS returns [EObject current=null] : iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ;
     public final EObject entryRuleWildcardTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -15410,8 +15410,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5363:2: (iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF )
-            // InternalEssentialOCL.g:5364:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
+            // InternalEssentialOCL.g:5365:2: (iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF )
+            // InternalEssentialOCL.g:5366:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getWildcardTypeRefCSRule());
@@ -15442,7 +15442,7 @@
 
 
     // $ANTLR start "ruleWildcardTypeRefCS"
-    // InternalEssentialOCL.g:5371:1: ruleWildcardTypeRefCS returns [EObject current=null] : ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) ;
+    // InternalEssentialOCL.g:5373:1: ruleWildcardTypeRefCS returns [EObject current=null] : ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) ;
     public final EObject ruleWildcardTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -15454,14 +15454,14 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5374:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
-            // InternalEssentialOCL.g:5375:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
+            // InternalEssentialOCL.g:5376:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
+            // InternalEssentialOCL.g:5377:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
             {
-            // InternalEssentialOCL.g:5375:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
-            // InternalEssentialOCL.g:5375:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
+            // InternalEssentialOCL.g:5377:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
+            // InternalEssentialOCL.g:5377:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             {
-            // InternalEssentialOCL.g:5375:2: ()
-            // InternalEssentialOCL.g:5376:2:
+            // InternalEssentialOCL.g:5377:2: ()
+            // InternalEssentialOCL.g:5378:2:
             {
             if ( state.backtracking==0 ) {
 
@@ -15484,7 +15484,7 @@
                   	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
 
             }
-            // InternalEssentialOCL.g:5388:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
+            // InternalEssentialOCL.g:5390:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             int alt86=2;
             int LA86_0 = input.LA(1);
 
@@ -15493,7 +15493,7 @@
             }
             switch (alt86) {
                 case 1 :
-                    // InternalEssentialOCL.g:5388:3: otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
+                    // InternalEssentialOCL.g:5390:3: otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
                     {
                     otherlv_2=(Token)match(input,87,FollowSets000.FOLLOW_10); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -15501,11 +15501,11 @@
                           	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
 
                     }
-                    // InternalEssentialOCL.g:5392:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
-                    // InternalEssentialOCL.g:5393:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
+                    // InternalEssentialOCL.g:5394:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
+                    // InternalEssentialOCL.g:5395:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
                     {
-                    // InternalEssentialOCL.g:5393:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
-                    // InternalEssentialOCL.g:5394:3: lv_ownedExtends_3_0= ruleTypedRefCS
+                    // InternalEssentialOCL.g:5395:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
+                    // InternalEssentialOCL.g:5396:3: lv_ownedExtends_3_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -15565,7 +15565,7 @@
 
 
     // $ANTLR start "entryRuleID"
-    // InternalEssentialOCL.g:5418:1: entryRuleID returns [String current=null] : iv_ruleID= ruleID EOF ;
+    // InternalEssentialOCL.g:5420:1: entryRuleID returns [String current=null] : iv_ruleID= ruleID EOF ;
     public final String entryRuleID() throws RecognitionException {
         String current = null;
 
@@ -15573,8 +15573,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5419:2: (iv_ruleID= ruleID EOF )
-            // InternalEssentialOCL.g:5420:2: iv_ruleID= ruleID EOF
+            // InternalEssentialOCL.g:5421:2: (iv_ruleID= ruleID EOF )
+            // InternalEssentialOCL.g:5422:2: iv_ruleID= ruleID EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getIDRule());
@@ -15605,7 +15605,7 @@
 
 
     // $ANTLR start "ruleID"
-    // InternalEssentialOCL.g:5427:1: ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) ;
+    // InternalEssentialOCL.g:5429:1: ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) ;
     public final AntlrDatatypeRuleToken ruleID() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -15615,10 +15615,10 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5430:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
-            // InternalEssentialOCL.g:5431:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
+            // InternalEssentialOCL.g:5432:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
+            // InternalEssentialOCL.g:5433:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
             {
-            // InternalEssentialOCL.g:5431:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
+            // InternalEssentialOCL.g:5433:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
             int alt87=2;
             int LA87_0 = input.LA(1);
 
@@ -15637,7 +15637,7 @@
             }
             switch (alt87) {
                 case 1 :
-                    // InternalEssentialOCL.g:5431:6: this_SIMPLE_ID_0= RULE_SIMPLE_ID
+                    // InternalEssentialOCL.g:5433:6: this_SIMPLE_ID_0= RULE_SIMPLE_ID
                     {
                     this_SIMPLE_ID_0=(Token)match(input,RULE_SIMPLE_ID,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -15654,7 +15654,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:5439:10: this_ESCAPED_ID_1= RULE_ESCAPED_ID
+                    // InternalEssentialOCL.g:5441:10: this_ESCAPED_ID_1= RULE_ESCAPED_ID
                     {
                     this_ESCAPED_ID_1=(Token)match(input,RULE_ESCAPED_ID,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -15693,7 +15693,7 @@
 
 
     // $ANTLR start "entryRuleIdentifier"
-    // InternalEssentialOCL.g:5454:1: entryRuleIdentifier returns [String current=null] : iv_ruleIdentifier= ruleIdentifier EOF ;
+    // InternalEssentialOCL.g:5456:1: entryRuleIdentifier returns [String current=null] : iv_ruleIdentifier= ruleIdentifier EOF ;
     public final String entryRuleIdentifier() throws RecognitionException {
         String current = null;
 
@@ -15701,8 +15701,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5455:2: (iv_ruleIdentifier= ruleIdentifier EOF )
-            // InternalEssentialOCL.g:5456:2: iv_ruleIdentifier= ruleIdentifier EOF
+            // InternalEssentialOCL.g:5457:2: (iv_ruleIdentifier= ruleIdentifier EOF )
+            // InternalEssentialOCL.g:5458:2: iv_ruleIdentifier= ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getIdentifierRule());
@@ -15733,7 +15733,7 @@
 
 
     // $ANTLR start "ruleIdentifier"
-    // InternalEssentialOCL.g:5463:1: ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_ID_0= ruleID ;
+    // InternalEssentialOCL.g:5465:1: ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_ID_0= ruleID ;
     public final AntlrDatatypeRuleToken ruleIdentifier() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -15743,8 +15743,8 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5466:28: (this_ID_0= ruleID )
-            // InternalEssentialOCL.g:5468:5: this_ID_0= ruleID
+            // InternalEssentialOCL.g:5468:28: (this_ID_0= ruleID )
+            // InternalEssentialOCL.g:5470:5: this_ID_0= ruleID
             {
             if ( state.backtracking==0 ) {
 
@@ -15786,7 +15786,7 @@
 
 
     // $ANTLR start "entryRuleLOWER"
-    // InternalEssentialOCL.g:5486:1: entryRuleLOWER returns [String current=null] : iv_ruleLOWER= ruleLOWER EOF ;
+    // InternalEssentialOCL.g:5488:1: entryRuleLOWER returns [String current=null] : iv_ruleLOWER= ruleLOWER EOF ;
     public final String entryRuleLOWER() throws RecognitionException {
         String current = null;
 
@@ -15794,8 +15794,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5487:2: (iv_ruleLOWER= ruleLOWER EOF )
-            // InternalEssentialOCL.g:5488:2: iv_ruleLOWER= ruleLOWER EOF
+            // InternalEssentialOCL.g:5489:2: (iv_ruleLOWER= ruleLOWER EOF )
+            // InternalEssentialOCL.g:5490:2: iv_ruleLOWER= ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getLOWERRule());
@@ -15826,7 +15826,7 @@
 
 
     // $ANTLR start "ruleLOWER"
-    // InternalEssentialOCL.g:5495:1: ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
+    // InternalEssentialOCL.g:5497:1: ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
     public final AntlrDatatypeRuleToken ruleLOWER() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -15835,8 +15835,8 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5498:28: (this_INT_0= RULE_INT )
-            // InternalEssentialOCL.g:5499:5: this_INT_0= RULE_INT
+            // InternalEssentialOCL.g:5500:28: (this_INT_0= RULE_INT )
+            // InternalEssentialOCL.g:5501:5: this_INT_0= RULE_INT
             {
             this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -15869,7 +15869,7 @@
 
 
     // $ANTLR start "entryRuleNUMBER_LITERAL"
-    // InternalEssentialOCL.g:5514:1: entryRuleNUMBER_LITERAL returns [String current=null] : iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF ;
+    // InternalEssentialOCL.g:5516:1: entryRuleNUMBER_LITERAL returns [String current=null] : iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF ;
     public final String entryRuleNUMBER_LITERAL() throws RecognitionException {
         String current = null;
 
@@ -15877,8 +15877,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5515:2: (iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF )
-            // InternalEssentialOCL.g:5516:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF
+            // InternalEssentialOCL.g:5517:2: (iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF )
+            // InternalEssentialOCL.g:5518:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getNUMBER_LITERALRule());
@@ -15909,7 +15909,7 @@
 
 
     // $ANTLR start "ruleNUMBER_LITERAL"
-    // InternalEssentialOCL.g:5523:1: ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
+    // InternalEssentialOCL.g:5525:1: ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
     public final AntlrDatatypeRuleToken ruleNUMBER_LITERAL() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -15918,8 +15918,8 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5526:28: (this_INT_0= RULE_INT )
-            // InternalEssentialOCL.g:5527:5: this_INT_0= RULE_INT
+            // InternalEssentialOCL.g:5528:28: (this_INT_0= RULE_INT )
+            // InternalEssentialOCL.g:5529:5: this_INT_0= RULE_INT
             {
             this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -15952,7 +15952,7 @@
 
 
     // $ANTLR start "entryRuleStringLiteral"
-    // InternalEssentialOCL.g:5542:1: entryRuleStringLiteral returns [String current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ;
+    // InternalEssentialOCL.g:5544:1: entryRuleStringLiteral returns [String current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ;
     public final String entryRuleStringLiteral() throws RecognitionException {
         String current = null;
 
@@ -15960,8 +15960,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5543:2: (iv_ruleStringLiteral= ruleStringLiteral EOF )
-            // InternalEssentialOCL.g:5544:2: iv_ruleStringLiteral= ruleStringLiteral EOF
+            // InternalEssentialOCL.g:5545:2: (iv_ruleStringLiteral= ruleStringLiteral EOF )
+            // InternalEssentialOCL.g:5546:2: iv_ruleStringLiteral= ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getStringLiteralRule());
@@ -15992,7 +15992,7 @@
 
 
     // $ANTLR start "ruleStringLiteral"
-    // InternalEssentialOCL.g:5551:1: ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
+    // InternalEssentialOCL.g:5553:1: ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
     public final AntlrDatatypeRuleToken ruleStringLiteral() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -16001,8 +16001,8 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5554:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
-            // InternalEssentialOCL.g:5555:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
+            // InternalEssentialOCL.g:5556:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
+            // InternalEssentialOCL.g:5557:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
             {
             this_SINGLE_QUOTED_STRING_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -16035,7 +16035,7 @@
 
 
     // $ANTLR start "entryRuleUPPER"
-    // InternalEssentialOCL.g:5570:1: entryRuleUPPER returns [String current=null] : iv_ruleUPPER= ruleUPPER EOF ;
+    // InternalEssentialOCL.g:5572:1: entryRuleUPPER returns [String current=null] : iv_ruleUPPER= ruleUPPER EOF ;
     public final String entryRuleUPPER() throws RecognitionException {
         String current = null;
 
@@ -16043,8 +16043,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5571:2: (iv_ruleUPPER= ruleUPPER EOF )
-            // InternalEssentialOCL.g:5572:2: iv_ruleUPPER= ruleUPPER EOF
+            // InternalEssentialOCL.g:5573:2: (iv_ruleUPPER= ruleUPPER EOF )
+            // InternalEssentialOCL.g:5574:2: iv_ruleUPPER= ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getUPPERRule());
@@ -16075,7 +16075,7 @@
 
 
     // $ANTLR start "ruleUPPER"
-    // InternalEssentialOCL.g:5579:1: ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= '*' ) ;
+    // InternalEssentialOCL.g:5581:1: ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= '*' ) ;
     public final AntlrDatatypeRuleToken ruleUPPER() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -16085,10 +16085,10 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5582:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
-            // InternalEssentialOCL.g:5583:1: (this_INT_0= RULE_INT | kw= '*' )
+            // InternalEssentialOCL.g:5584:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
+            // InternalEssentialOCL.g:5585:1: (this_INT_0= RULE_INT | kw= '*' )
             {
-            // InternalEssentialOCL.g:5583:1: (this_INT_0= RULE_INT | kw= '*' )
+            // InternalEssentialOCL.g:5585:1: (this_INT_0= RULE_INT | kw= '*' )
             int alt88=2;
             int LA88_0 = input.LA(1);
 
@@ -16107,7 +16107,7 @@
             }
             switch (alt88) {
                 case 1 :
-                    // InternalEssentialOCL.g:5583:6: this_INT_0= RULE_INT
+                    // InternalEssentialOCL.g:5585:6: this_INT_0= RULE_INT
                     {
                     this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -16124,7 +16124,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalEssentialOCL.g:5592:2: kw= '*'
+                    // InternalEssentialOCL.g:5594:2: kw= '*'
                     {
                     kw=(Token)match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -16159,7 +16159,7 @@
 
 
     // $ANTLR start "entryRuleURI"
-    // InternalEssentialOCL.g:5605:1: entryRuleURI returns [String current=null] : iv_ruleURI= ruleURI EOF ;
+    // InternalEssentialOCL.g:5607:1: entryRuleURI returns [String current=null] : iv_ruleURI= ruleURI EOF ;
     public final String entryRuleURI() throws RecognitionException {
         String current = null;
 
@@ -16167,8 +16167,8 @@
 
 
         try {
-            // InternalEssentialOCL.g:5606:2: (iv_ruleURI= ruleURI EOF )
-            // InternalEssentialOCL.g:5607:2: iv_ruleURI= ruleURI EOF
+            // InternalEssentialOCL.g:5608:2: (iv_ruleURI= ruleURI EOF )
+            // InternalEssentialOCL.g:5609:2: iv_ruleURI= ruleURI EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getURIRule());
@@ -16199,7 +16199,7 @@
 
 
     // $ANTLR start "ruleURI"
-    // InternalEssentialOCL.g:5614:1: ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
+    // InternalEssentialOCL.g:5616:1: ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
     public final AntlrDatatypeRuleToken ruleURI() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -16208,8 +16208,8 @@
          enterRule();
 
         try {
-            // InternalEssentialOCL.g:5617:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
-            // InternalEssentialOCL.g:5618:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
+            // InternalEssentialOCL.g:5619:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
+            // InternalEssentialOCL.g:5620:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
             {
             this_SINGLE_QUOTED_STRING_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/serializer/AbstractEssentialOCLSemanticSequencer.java b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/serializer/AbstractEssentialOCLSemanticSequencer.java
index 94f899e..789b897 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/serializer/AbstractEssentialOCLSemanticSequencer.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/serializer/AbstractEssentialOCLSemanticSequencer.java
@@ -138,6 +138,10 @@
 					sequence_URIPathNameCS(context, (PathNameCS) semanticObject);
 					return;
 				}
+				else if (rule == grammarAccess.getUnreservedPathNameCSRule()) {
+					sequence_UnreservedPathNameCS(context, (PathNameCS) semanticObject);
+					return;
+				}
 				else break;
 			case BaseCSPackage.PRIMITIVE_TYPE_REF_CS:
 				if (rule == grammarAccess.getPrimitiveTypeCSRule()
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/services/EssentialOCLGrammarAccess.java b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/services/EssentialOCLGrammarAccess.java
index f752de1..a9b80ce 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/services/EssentialOCLGrammarAccess.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/services/EssentialOCLGrammarAccess.java
@@ -663,12 +663,12 @@
 		private final Keyword cRightParenthesisKeyword_1_3 = (Keyword)cGroup_1.eContents().get(3);
 
 		//CollectionTypeCS:
-		//	name=CollectionTypeIdentifier ('(' ownedType=TypeExpWithoutMultiplicityCS ownedCollectionMultiplicity=MultiplicityCS?
-		//	')')?;
+		//	name=CollectionTypeIdentifier ('(' ownedType=TypeExpWithoutMultiplicityCS ownedCollectionMultiplicity=MultiplicityCS
+		//	? ')')?;
 		@Override public ParserRule getRule() { return rule; }
 
-		//name=CollectionTypeIdentifier ('(' ownedType=TypeExpWithoutMultiplicityCS ownedCollectionMultiplicity=MultiplicityCS?
-		//')')?
+		//name=CollectionTypeIdentifier ('(' ownedType=TypeExpWithoutMultiplicityCS ownedCollectionMultiplicity=MultiplicityCS
+		//? ')')?
 		public Group getGroup() { return cGroup; }
 
 		//name=CollectionTypeIdentifier
@@ -3344,8 +3344,8 @@
 	}
 
 	//CollectionTypeCS:
-	//	name=CollectionTypeIdentifier ('(' ownedType=TypeExpWithoutMultiplicityCS ownedCollectionMultiplicity=MultiplicityCS?
-	//	')')?;
+	//	name=CollectionTypeIdentifier ('(' ownedType=TypeExpWithoutMultiplicityCS ownedCollectionMultiplicity=MultiplicityCS
+	//	? ')')?;
 	public CollectionTypeCSElements getCollectionTypeCSAccess() {
 		return pCollectionTypeCS;
 	}
@@ -3934,6 +3934,16 @@
 		return getPathNameCSAccess().getRule();
 	}
 
+	//UnreservedPathNameCS PathNameCS:
+	//	ownedPathElements+=NextPathElementCS ('::' ownedPathElements+=NextPathElementCS)*;
+	public BaseGrammarAccess.UnreservedPathNameCSElements getUnreservedPathNameCSAccess() {
+		return gaBase.getUnreservedPathNameCSAccess();
+	}
+
+	public ParserRule getUnreservedPathNameCSRule() {
+		return getUnreservedPathNameCSAccess().getRule();
+	}
+
 	//FirstPathElementCS PathElementCS:
 	//	referredElement=[pivot::NamedElement|super::UnrestrictedName];
 	public BaseGrammarAccess.FirstPathElementCSElements getFirstPathElementCSAccess() {
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/OCLinEcoreParser.java b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/OCLinEcoreParser.java
index cd3c969..aa75222 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/OCLinEcoreParser.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/OCLinEcoreParser.java
@@ -316,6 +316,8 @@
 					put(grammarAccess.getMultiplicityCSAccess().getGroup(), "rule__MultiplicityCS__Group__0");
 					put(grammarAccess.getPathNameCSAccess().getGroup(), "rule__PathNameCS__Group__0");
 					put(grammarAccess.getPathNameCSAccess().getGroup_1(), "rule__PathNameCS__Group_1__0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getGroup(), "rule__UnreservedPathNameCS__Group__0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getGroup_1(), "rule__UnreservedPathNameCS__Group_1__0");
 					put(grammarAccess.getTemplateBindingCSAccess().getGroup(), "rule__TemplateBindingCS__Group__0");
 					put(grammarAccess.getTemplateBindingCSAccess().getGroup_1(), "rule__TemplateBindingCS__Group_1__0");
 					put(grammarAccess.getTypeParameterCSAccess().getGroup(), "rule__TypeParameterCS__Group__0");
@@ -616,6 +618,8 @@
 					put(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment(), "rule__MultiplicityStringCS__StringBoundsAssignment");
 					put(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0(), "rule__PathNameCS__OwnedPathElementsAssignment_0");
 					put(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1(), "rule__PathNameCS__OwnedPathElementsAssignment_1_1");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_0(), "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_1_1(), "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1");
 					put(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment(), "rule__FirstPathElementCS__ReferredElementAssignment");
 					put(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment(), "rule__NextPathElementCS__ReferredElementAssignment");
 					put(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0(), "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0");
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/internal/InternalOCLinEcore.g b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/internal/InternalOCLinEcore.g
index 80694e8..a729343 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/internal/InternalOCLinEcore.g
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/internal/InternalOCLinEcore.g
@@ -2825,6 +2825,8 @@
 
 
 
+
+
 // Entry rule entryRuleFirstPathElementCS
 entryRuleFirstPathElementCS
 :
@@ -24224,6 +24226,8 @@
 
 
 
+
+
 rule__TemplateBindingCS__Group__0
     @init {
 		int stackSize = keepStackSize();
@@ -29803,6 +29807,8 @@
 	restoreStackSize(stackSize);
 }
 
+
+
 rule__FirstPathElementCS__ReferredElementAssignment
     @init {
 		int stackSize = keepStackSize();
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/internal/InternalOCLinEcoreLexer.java b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/internal/InternalOCLinEcoreLexer.java
index 404eef3..503179d 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/internal/InternalOCLinEcoreLexer.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/internal/InternalOCLinEcoreLexer.java
@@ -2828,8 +2828,8 @@
         try {
             int _type = RULE_UNQUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:29965:22: ( '\\u00A3$%^\\u00A3$%^' )
-            // InternalOCLinEcore.g:29965:24: '\\u00A3$%^\\u00A3$%^'
+            // InternalOCLinEcore.g:29971:22: ( '\\u00A3$%^\\u00A3$%^' )
+            // InternalOCLinEcore.g:29971:24: '\\u00A3$%^\\u00A3$%^'
             {
             match("\u00A3$%^\u00A3$%^");
 
@@ -2847,8 +2847,8 @@
     // $ANTLR start "RULE_ESCAPED_CHARACTER"
     public final void mRULE_ESCAPED_CHARACTER() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:29967:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
-            // InternalOCLinEcore.g:29967:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+            // InternalOCLinEcore.g:29973:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
+            // InternalOCLinEcore.g:29973:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
             match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -2872,8 +2872,8 @@
     // $ANTLR start "RULE_LETTER_CHARACTER"
     public final void mRULE_LETTER_CHARACTER() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:29969:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
-            // InternalOCLinEcore.g:29969:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
+            // InternalOCLinEcore.g:29975:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
+            // InternalOCLinEcore.g:29975:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
             {
             if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
                 input.consume();
@@ -2898,11 +2898,11 @@
         try {
             int _type = RULE_DOUBLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:29971:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
-            // InternalOCLinEcore.g:29971:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+            // InternalOCLinEcore.g:29977:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
+            // InternalOCLinEcore.g:29977:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
             match('\"');
-            // InternalOCLinEcore.g:29971:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
+            // InternalOCLinEcore.g:29977:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
                 int alt1=3;
@@ -2918,14 +2918,14 @@
 
                 switch (alt1) {
             	case 1 :
-            	    // InternalOCLinEcore.g:29971:34: RULE_ESCAPED_CHARACTER
+            	    // InternalOCLinEcore.g:29977:34: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalOCLinEcore.g:29971:57: ~ ( ( '\\\\' | '\"' ) )
+            	    // InternalOCLinEcore.g:29977:57: ~ ( ( '\\\\' | '\"' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2962,11 +2962,11 @@
         try {
             int _type = RULE_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:29973:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            // InternalOCLinEcore.g:29973:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+            // InternalOCLinEcore.g:29979:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // InternalOCLinEcore.g:29979:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
             match('\'');
-            // InternalOCLinEcore.g:29973:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
+            // InternalOCLinEcore.g:29979:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
                 int alt2=3;
@@ -2982,14 +2982,14 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // InternalOCLinEcore.g:29973:35: RULE_ESCAPED_CHARACTER
+            	    // InternalOCLinEcore.g:29979:35: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalOCLinEcore.g:29973:58: ~ ( ( '\\\\' | '\\'' ) )
+            	    // InternalOCLinEcore.g:29979:58: ~ ( ( '\\\\' | '\\'' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -3026,12 +3026,12 @@
         try {
             int _type = RULE_ML_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:29975:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
-            // InternalOCLinEcore.g:29975:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
+            // InternalOCLinEcore.g:29981:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
+            // InternalOCLinEcore.g:29981:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
             match("/'");
 
-            // InternalOCLinEcore.g:29975:38: ( options {greedy=false; } : . )*
+            // InternalOCLinEcore.g:29981:38: ( options {greedy=false; } : . )*
             loop3:
             do {
                 int alt3=2;
@@ -3056,7 +3056,7 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // InternalOCLinEcore.g:29975:66: .
+            	    // InternalOCLinEcore.g:29981:66: .
             	    {
             	    matchAny();
 
@@ -3086,11 +3086,11 @@
         try {
             int _type = RULE_SIMPLE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:29977:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
-            // InternalOCLinEcore.g:29977:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalOCLinEcore.g:29983:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
+            // InternalOCLinEcore.g:29983:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
             mRULE_LETTER_CHARACTER();
-            // InternalOCLinEcore.g:29977:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalOCLinEcore.g:29983:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
                 int alt4=2;
@@ -3139,8 +3139,8 @@
         try {
             int _type = RULE_ESCAPED_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:29979:17: ( '_' RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:29979:19: '_' RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:29985:17: ( '_' RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:29985:19: '_' RULE_SINGLE_QUOTED_STRING
             {
             match('_');
             mRULE_SINGLE_QUOTED_STRING();
@@ -3160,10 +3160,10 @@
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:29981:10: ( ( '0' .. '9' )+ )
-            // InternalOCLinEcore.g:29981:12: ( '0' .. '9' )+
+            // InternalOCLinEcore.g:29987:10: ( ( '0' .. '9' )+ )
+            // InternalOCLinEcore.g:29987:12: ( '0' .. '9' )+
             {
-            // InternalOCLinEcore.g:29981:12: ( '0' .. '9' )+
+            // InternalOCLinEcore.g:29987:12: ( '0' .. '9' )+
             int cnt5=0;
             loop5:
             do {
@@ -3177,7 +3177,7 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // InternalOCLinEcore.g:29981:13: '0' .. '9'
+            	    // InternalOCLinEcore.g:29987:13: '0' .. '9'
             	    {
             	    matchRange('0','9');
 
@@ -3209,12 +3209,12 @@
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:29983:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // InternalOCLinEcore.g:29983:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // InternalOCLinEcore.g:29989:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // InternalOCLinEcore.g:29989:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*");
 
-            // InternalOCLinEcore.g:29983:24: ( options {greedy=false; } : . )*
+            // InternalOCLinEcore.g:29989:24: ( options {greedy=false; } : . )*
             loop6:
             do {
                 int alt6=2;
@@ -3239,7 +3239,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // InternalOCLinEcore.g:29983:52: .
+            	    // InternalOCLinEcore.g:29989:52: .
             	    {
             	    matchAny();
 
@@ -3269,12 +3269,12 @@
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:29985:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // InternalOCLinEcore.g:29985:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // InternalOCLinEcore.g:29991:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // InternalOCLinEcore.g:29991:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("--");
 
-            // InternalOCLinEcore.g:29985:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // InternalOCLinEcore.g:29991:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
             do {
                 int alt7=2;
@@ -3287,7 +3287,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // InternalOCLinEcore.g:29985:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // InternalOCLinEcore.g:29991:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -3307,7 +3307,7 @@
                 }
             } while (true);
 
-            // InternalOCLinEcore.g:29985:40: ( ( '\\r' )? '\\n' )?
+            // InternalOCLinEcore.g:29991:40: ( ( '\\r' )? '\\n' )?
             int alt9=2;
             int LA9_0 = input.LA(1);
 
@@ -3316,9 +3316,9 @@
             }
             switch (alt9) {
                 case 1 :
-                    // InternalOCLinEcore.g:29985:41: ( '\\r' )? '\\n'
+                    // InternalOCLinEcore.g:29991:41: ( '\\r' )? '\\n'
                     {
-                    // InternalOCLinEcore.g:29985:41: ( '\\r' )?
+                    // InternalOCLinEcore.g:29991:41: ( '\\r' )?
                     int alt8=2;
                     int LA8_0 = input.LA(1);
 
@@ -3327,7 +3327,7 @@
                     }
                     switch (alt8) {
                         case 1 :
-                            // InternalOCLinEcore.g:29985:41: '\\r'
+                            // InternalOCLinEcore.g:29991:41: '\\r'
                             {
                             match('\r');
 
@@ -3359,10 +3359,10 @@
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:29987:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // InternalOCLinEcore.g:29987:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalOCLinEcore.g:29993:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // InternalOCLinEcore.g:29993:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // InternalOCLinEcore.g:29987:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalOCLinEcore.g:29993:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt10=0;
             loop10:
             do {
@@ -3416,8 +3416,8 @@
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:29989:16: ( . )
-            // InternalOCLinEcore.g:29989:18: .
+            // InternalOCLinEcore.g:29995:16: ( . )
+            // InternalOCLinEcore.g:29995:18: .
             {
             matchAny();
 
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/internal/InternalOCLinEcoreParser.java b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/internal/InternalOCLinEcoreParser.java
index 5e82825..e95dc87 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/internal/InternalOCLinEcoreParser.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/antlr/internal/InternalOCLinEcoreParser.java
@@ -8556,11 +8556,11 @@
 
 
     // $ANTLR start "entryRuleFirstPathElementCS"
-    // InternalOCLinEcore.g:2829:1: entryRuleFirstPathElementCS : ruleFirstPathElementCS EOF ;
+    // InternalOCLinEcore.g:2831:1: entryRuleFirstPathElementCS : ruleFirstPathElementCS EOF ;
     public final void entryRuleFirstPathElementCS() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:2830:1: ( ruleFirstPathElementCS EOF )
-            // InternalOCLinEcore.g:2831:1: ruleFirstPathElementCS EOF
+            // InternalOCLinEcore.g:2832:1: ( ruleFirstPathElementCS EOF )
+            // InternalOCLinEcore.g:2833:1: ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSRule());
@@ -8590,23 +8590,23 @@
 
 
     // $ANTLR start "ruleFirstPathElementCS"
-    // InternalOCLinEcore.g:2838:1: ruleFirstPathElementCS : ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) ;
+    // InternalOCLinEcore.g:2840:1: ruleFirstPathElementCS : ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) ;
     public final void ruleFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:2842:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
-            // InternalOCLinEcore.g:2843:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
+            // InternalOCLinEcore.g:2844:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
+            // InternalOCLinEcore.g:2845:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
             {
-            // InternalOCLinEcore.g:2843:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
-            // InternalOCLinEcore.g:2844:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
+            // InternalOCLinEcore.g:2845:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
+            // InternalOCLinEcore.g:2846:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
-            // InternalOCLinEcore.g:2845:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
-            // InternalOCLinEcore.g:2845:2: rule__FirstPathElementCS__ReferredElementAssignment
+            // InternalOCLinEcore.g:2847:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
+            // InternalOCLinEcore.g:2847:2: rule__FirstPathElementCS__ReferredElementAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__FirstPathElementCS__ReferredElementAssignment();
@@ -8641,11 +8641,11 @@
 
 
     // $ANTLR start "entryRuleNextPathElementCS"
-    // InternalOCLinEcore.g:2857:1: entryRuleNextPathElementCS : ruleNextPathElementCS EOF ;
+    // InternalOCLinEcore.g:2859:1: entryRuleNextPathElementCS : ruleNextPathElementCS EOF ;
     public final void entryRuleNextPathElementCS() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:2858:1: ( ruleNextPathElementCS EOF )
-            // InternalOCLinEcore.g:2859:1: ruleNextPathElementCS EOF
+            // InternalOCLinEcore.g:2860:1: ( ruleNextPathElementCS EOF )
+            // InternalOCLinEcore.g:2861:1: ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSRule());
@@ -8675,23 +8675,23 @@
 
 
     // $ANTLR start "ruleNextPathElementCS"
-    // InternalOCLinEcore.g:2866:1: ruleNextPathElementCS : ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) ;
+    // InternalOCLinEcore.g:2868:1: ruleNextPathElementCS : ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) ;
     public final void ruleNextPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:2870:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
-            // InternalOCLinEcore.g:2871:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
+            // InternalOCLinEcore.g:2872:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
+            // InternalOCLinEcore.g:2873:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
             {
-            // InternalOCLinEcore.g:2871:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
-            // InternalOCLinEcore.g:2872:1: ( rule__NextPathElementCS__ReferredElementAssignment )
+            // InternalOCLinEcore.g:2873:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
+            // InternalOCLinEcore.g:2874:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
-            // InternalOCLinEcore.g:2873:1: ( rule__NextPathElementCS__ReferredElementAssignment )
-            // InternalOCLinEcore.g:2873:2: rule__NextPathElementCS__ReferredElementAssignment
+            // InternalOCLinEcore.g:2875:1: ( rule__NextPathElementCS__ReferredElementAssignment )
+            // InternalOCLinEcore.g:2875:2: rule__NextPathElementCS__ReferredElementAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NextPathElementCS__ReferredElementAssignment();
@@ -8726,11 +8726,11 @@
 
 
     // $ANTLR start "entryRuleTemplateBindingCS"
-    // InternalOCLinEcore.g:2885:1: entryRuleTemplateBindingCS : ruleTemplateBindingCS EOF ;
+    // InternalOCLinEcore.g:2887:1: entryRuleTemplateBindingCS : ruleTemplateBindingCS EOF ;
     public final void entryRuleTemplateBindingCS() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:2886:1: ( ruleTemplateBindingCS EOF )
-            // InternalOCLinEcore.g:2887:1: ruleTemplateBindingCS EOF
+            // InternalOCLinEcore.g:2888:1: ( ruleTemplateBindingCS EOF )
+            // InternalOCLinEcore.g:2889:1: ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSRule());
@@ -8760,23 +8760,23 @@
 
 
     // $ANTLR start "ruleTemplateBindingCS"
-    // InternalOCLinEcore.g:2894:1: ruleTemplateBindingCS : ( ( rule__TemplateBindingCS__Group__0 ) ) ;
+    // InternalOCLinEcore.g:2896:1: ruleTemplateBindingCS : ( ( rule__TemplateBindingCS__Group__0 ) ) ;
     public final void ruleTemplateBindingCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:2898:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
-            // InternalOCLinEcore.g:2899:1: ( ( rule__TemplateBindingCS__Group__0 ) )
+            // InternalOCLinEcore.g:2900:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
+            // InternalOCLinEcore.g:2901:1: ( ( rule__TemplateBindingCS__Group__0 ) )
             {
-            // InternalOCLinEcore.g:2899:1: ( ( rule__TemplateBindingCS__Group__0 ) )
-            // InternalOCLinEcore.g:2900:1: ( rule__TemplateBindingCS__Group__0 )
+            // InternalOCLinEcore.g:2901:1: ( ( rule__TemplateBindingCS__Group__0 ) )
+            // InternalOCLinEcore.g:2902:1: ( rule__TemplateBindingCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
-            // InternalOCLinEcore.g:2901:1: ( rule__TemplateBindingCS__Group__0 )
-            // InternalOCLinEcore.g:2901:2: rule__TemplateBindingCS__Group__0
+            // InternalOCLinEcore.g:2903:1: ( rule__TemplateBindingCS__Group__0 )
+            // InternalOCLinEcore.g:2903:2: rule__TemplateBindingCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group__0();
@@ -8811,11 +8811,11 @@
 
 
     // $ANTLR start "entryRuleTemplateParameterSubstitutionCS"
-    // InternalOCLinEcore.g:2913:1: entryRuleTemplateParameterSubstitutionCS : ruleTemplateParameterSubstitutionCS EOF ;
+    // InternalOCLinEcore.g:2915:1: entryRuleTemplateParameterSubstitutionCS : ruleTemplateParameterSubstitutionCS EOF ;
     public final void entryRuleTemplateParameterSubstitutionCS() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:2914:1: ( ruleTemplateParameterSubstitutionCS EOF )
-            // InternalOCLinEcore.g:2915:1: ruleTemplateParameterSubstitutionCS EOF
+            // InternalOCLinEcore.g:2916:1: ( ruleTemplateParameterSubstitutionCS EOF )
+            // InternalOCLinEcore.g:2917:1: ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSRule());
@@ -8845,23 +8845,23 @@
 
 
     // $ANTLR start "ruleTemplateParameterSubstitutionCS"
-    // InternalOCLinEcore.g:2922:1: ruleTemplateParameterSubstitutionCS : ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) ;
+    // InternalOCLinEcore.g:2924:1: ruleTemplateParameterSubstitutionCS : ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) ;
     public final void ruleTemplateParameterSubstitutionCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:2926:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
-            // InternalOCLinEcore.g:2927:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
+            // InternalOCLinEcore.g:2928:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
+            // InternalOCLinEcore.g:2929:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
             {
-            // InternalOCLinEcore.g:2927:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
-            // InternalOCLinEcore.g:2928:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
+            // InternalOCLinEcore.g:2929:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
+            // InternalOCLinEcore.g:2930:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
-            // InternalOCLinEcore.g:2929:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
-            // InternalOCLinEcore.g:2929:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
+            // InternalOCLinEcore.g:2931:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
+            // InternalOCLinEcore.g:2931:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment();
@@ -8896,11 +8896,11 @@
 
 
     // $ANTLR start "entryRuleTypeParameterCS"
-    // InternalOCLinEcore.g:2941:1: entryRuleTypeParameterCS : ruleTypeParameterCS EOF ;
+    // InternalOCLinEcore.g:2943:1: entryRuleTypeParameterCS : ruleTypeParameterCS EOF ;
     public final void entryRuleTypeParameterCS() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:2942:1: ( ruleTypeParameterCS EOF )
-            // InternalOCLinEcore.g:2943:1: ruleTypeParameterCS EOF
+            // InternalOCLinEcore.g:2944:1: ( ruleTypeParameterCS EOF )
+            // InternalOCLinEcore.g:2945:1: ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSRule());
@@ -8930,23 +8930,23 @@
 
 
     // $ANTLR start "ruleTypeParameterCS"
-    // InternalOCLinEcore.g:2950:1: ruleTypeParameterCS : ( ( rule__TypeParameterCS__Group__0 ) ) ;
+    // InternalOCLinEcore.g:2952:1: ruleTypeParameterCS : ( ( rule__TypeParameterCS__Group__0 ) ) ;
     public final void ruleTypeParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:2954:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
-            // InternalOCLinEcore.g:2955:1: ( ( rule__TypeParameterCS__Group__0 ) )
+            // InternalOCLinEcore.g:2956:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
+            // InternalOCLinEcore.g:2957:1: ( ( rule__TypeParameterCS__Group__0 ) )
             {
-            // InternalOCLinEcore.g:2955:1: ( ( rule__TypeParameterCS__Group__0 ) )
-            // InternalOCLinEcore.g:2956:1: ( rule__TypeParameterCS__Group__0 )
+            // InternalOCLinEcore.g:2957:1: ( ( rule__TypeParameterCS__Group__0 ) )
+            // InternalOCLinEcore.g:2958:1: ( rule__TypeParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
-            // InternalOCLinEcore.g:2957:1: ( rule__TypeParameterCS__Group__0 )
-            // InternalOCLinEcore.g:2957:2: rule__TypeParameterCS__Group__0
+            // InternalOCLinEcore.g:2959:1: ( rule__TypeParameterCS__Group__0 )
+            // InternalOCLinEcore.g:2959:2: rule__TypeParameterCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group__0();
@@ -8981,11 +8981,11 @@
 
 
     // $ANTLR start "entryRuleTypeRefCS"
-    // InternalOCLinEcore.g:2969:1: entryRuleTypeRefCS : ruleTypeRefCS EOF ;
+    // InternalOCLinEcore.g:2971:1: entryRuleTypeRefCS : ruleTypeRefCS EOF ;
     public final void entryRuleTypeRefCS() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:2970:1: ( ruleTypeRefCS EOF )
-            // InternalOCLinEcore.g:2971:1: ruleTypeRefCS EOF
+            // InternalOCLinEcore.g:2972:1: ( ruleTypeRefCS EOF )
+            // InternalOCLinEcore.g:2973:1: ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeRefCSRule());
@@ -9015,23 +9015,23 @@
 
 
     // $ANTLR start "ruleTypeRefCS"
-    // InternalOCLinEcore.g:2978:1: ruleTypeRefCS : ( ( rule__TypeRefCS__Alternatives ) ) ;
+    // InternalOCLinEcore.g:2980:1: ruleTypeRefCS : ( ( rule__TypeRefCS__Alternatives ) ) ;
     public final void ruleTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:2982:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
-            // InternalOCLinEcore.g:2983:1: ( ( rule__TypeRefCS__Alternatives ) )
+            // InternalOCLinEcore.g:2984:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
+            // InternalOCLinEcore.g:2985:1: ( ( rule__TypeRefCS__Alternatives ) )
             {
-            // InternalOCLinEcore.g:2983:1: ( ( rule__TypeRefCS__Alternatives ) )
-            // InternalOCLinEcore.g:2984:1: ( rule__TypeRefCS__Alternatives )
+            // InternalOCLinEcore.g:2985:1: ( ( rule__TypeRefCS__Alternatives ) )
+            // InternalOCLinEcore.g:2986:1: ( rule__TypeRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
-            // InternalOCLinEcore.g:2985:1: ( rule__TypeRefCS__Alternatives )
-            // InternalOCLinEcore.g:2985:2: rule__TypeRefCS__Alternatives
+            // InternalOCLinEcore.g:2987:1: ( rule__TypeRefCS__Alternatives )
+            // InternalOCLinEcore.g:2987:2: rule__TypeRefCS__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeRefCS__Alternatives();
@@ -9066,11 +9066,11 @@
 
 
     // $ANTLR start "entryRuleWildcardTypeRefCS"
-    // InternalOCLinEcore.g:2997:1: entryRuleWildcardTypeRefCS : ruleWildcardTypeRefCS EOF ;
+    // InternalOCLinEcore.g:2999:1: entryRuleWildcardTypeRefCS : ruleWildcardTypeRefCS EOF ;
     public final void entryRuleWildcardTypeRefCS() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:2998:1: ( ruleWildcardTypeRefCS EOF )
-            // InternalOCLinEcore.g:2999:1: ruleWildcardTypeRefCS EOF
+            // InternalOCLinEcore.g:3000:1: ( ruleWildcardTypeRefCS EOF )
+            // InternalOCLinEcore.g:3001:1: ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSRule());
@@ -9100,23 +9100,23 @@
 
 
     // $ANTLR start "ruleWildcardTypeRefCS"
-    // InternalOCLinEcore.g:3006:1: ruleWildcardTypeRefCS : ( ( rule__WildcardTypeRefCS__Group__0 ) ) ;
+    // InternalOCLinEcore.g:3008:1: ruleWildcardTypeRefCS : ( ( rule__WildcardTypeRefCS__Group__0 ) ) ;
     public final void ruleWildcardTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3010:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
-            // InternalOCLinEcore.g:3011:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
+            // InternalOCLinEcore.g:3012:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
+            // InternalOCLinEcore.g:3013:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
             {
-            // InternalOCLinEcore.g:3011:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
-            // InternalOCLinEcore.g:3012:1: ( rule__WildcardTypeRefCS__Group__0 )
+            // InternalOCLinEcore.g:3013:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
+            // InternalOCLinEcore.g:3014:1: ( rule__WildcardTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
-            // InternalOCLinEcore.g:3013:1: ( rule__WildcardTypeRefCS__Group__0 )
-            // InternalOCLinEcore.g:3013:2: rule__WildcardTypeRefCS__Group__0
+            // InternalOCLinEcore.g:3015:1: ( rule__WildcardTypeRefCS__Group__0 )
+            // InternalOCLinEcore.g:3015:2: rule__WildcardTypeRefCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group__0();
@@ -9151,11 +9151,11 @@
 
 
     // $ANTLR start "entryRuleID"
-    // InternalOCLinEcore.g:3025:1: entryRuleID : ruleID EOF ;
+    // InternalOCLinEcore.g:3027:1: entryRuleID : ruleID EOF ;
     public final void entryRuleID() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:3026:1: ( ruleID EOF )
-            // InternalOCLinEcore.g:3027:1: ruleID EOF
+            // InternalOCLinEcore.g:3028:1: ( ruleID EOF )
+            // InternalOCLinEcore.g:3029:1: ruleID EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIDRule());
@@ -9185,23 +9185,23 @@
 
 
     // $ANTLR start "ruleID"
-    // InternalOCLinEcore.g:3034:1: ruleID : ( ( rule__ID__Alternatives ) ) ;
+    // InternalOCLinEcore.g:3036:1: ruleID : ( ( rule__ID__Alternatives ) ) ;
     public final void ruleID() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3038:2: ( ( ( rule__ID__Alternatives ) ) )
-            // InternalOCLinEcore.g:3039:1: ( ( rule__ID__Alternatives ) )
+            // InternalOCLinEcore.g:3040:2: ( ( ( rule__ID__Alternatives ) ) )
+            // InternalOCLinEcore.g:3041:1: ( ( rule__ID__Alternatives ) )
             {
-            // InternalOCLinEcore.g:3039:1: ( ( rule__ID__Alternatives ) )
-            // InternalOCLinEcore.g:3040:1: ( rule__ID__Alternatives )
+            // InternalOCLinEcore.g:3041:1: ( ( rule__ID__Alternatives ) )
+            // InternalOCLinEcore.g:3042:1: ( rule__ID__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIDAccess().getAlternatives());
             }
-            // InternalOCLinEcore.g:3041:1: ( rule__ID__Alternatives )
-            // InternalOCLinEcore.g:3041:2: rule__ID__Alternatives
+            // InternalOCLinEcore.g:3043:1: ( rule__ID__Alternatives )
+            // InternalOCLinEcore.g:3043:2: rule__ID__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ID__Alternatives();
@@ -9236,11 +9236,11 @@
 
 
     // $ANTLR start "entryRuleIdentifier"
-    // InternalOCLinEcore.g:3053:1: entryRuleIdentifier : ruleIdentifier EOF ;
+    // InternalOCLinEcore.g:3055:1: entryRuleIdentifier : ruleIdentifier EOF ;
     public final void entryRuleIdentifier() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:3054:1: ( ruleIdentifier EOF )
-            // InternalOCLinEcore.g:3055:1: ruleIdentifier EOF
+            // InternalOCLinEcore.g:3056:1: ( ruleIdentifier EOF )
+            // InternalOCLinEcore.g:3057:1: ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIdentifierRule());
@@ -9270,17 +9270,17 @@
 
 
     // $ANTLR start "ruleIdentifier"
-    // InternalOCLinEcore.g:3062:1: ruleIdentifier : ( ruleID ) ;
+    // InternalOCLinEcore.g:3064:1: ruleIdentifier : ( ruleID ) ;
     public final void ruleIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3066:2: ( ( ruleID ) )
-            // InternalOCLinEcore.g:3067:1: ( ruleID )
+            // InternalOCLinEcore.g:3068:2: ( ( ruleID ) )
+            // InternalOCLinEcore.g:3069:1: ( ruleID )
             {
-            // InternalOCLinEcore.g:3067:1: ( ruleID )
-            // InternalOCLinEcore.g:3068:1: ruleID
+            // InternalOCLinEcore.g:3069:1: ( ruleID )
+            // InternalOCLinEcore.g:3070:1: ruleID
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
@@ -9315,11 +9315,11 @@
 
 
     // $ANTLR start "entryRuleLOWER"
-    // InternalOCLinEcore.g:3081:1: entryRuleLOWER : ruleLOWER EOF ;
+    // InternalOCLinEcore.g:3083:1: entryRuleLOWER : ruleLOWER EOF ;
     public final void entryRuleLOWER() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:3082:1: ( ruleLOWER EOF )
-            // InternalOCLinEcore.g:3083:1: ruleLOWER EOF
+            // InternalOCLinEcore.g:3084:1: ( ruleLOWER EOF )
+            // InternalOCLinEcore.g:3085:1: ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLOWERRule());
@@ -9349,17 +9349,17 @@
 
 
     // $ANTLR start "ruleLOWER"
-    // InternalOCLinEcore.g:3090:1: ruleLOWER : ( RULE_INT ) ;
+    // InternalOCLinEcore.g:3092:1: ruleLOWER : ( RULE_INT ) ;
     public final void ruleLOWER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3094:2: ( ( RULE_INT ) )
-            // InternalOCLinEcore.g:3095:1: ( RULE_INT )
+            // InternalOCLinEcore.g:3096:2: ( ( RULE_INT ) )
+            // InternalOCLinEcore.g:3097:1: ( RULE_INT )
             {
-            // InternalOCLinEcore.g:3095:1: ( RULE_INT )
-            // InternalOCLinEcore.g:3096:1: RULE_INT
+            // InternalOCLinEcore.g:3097:1: ( RULE_INT )
+            // InternalOCLinEcore.g:3098:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
@@ -9390,11 +9390,11 @@
 
 
     // $ANTLR start "entryRuleNUMBER_LITERAL"
-    // InternalOCLinEcore.g:3109:1: entryRuleNUMBER_LITERAL : ruleNUMBER_LITERAL EOF ;
+    // InternalOCLinEcore.g:3111:1: entryRuleNUMBER_LITERAL : ruleNUMBER_LITERAL EOF ;
     public final void entryRuleNUMBER_LITERAL() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:3110:1: ( ruleNUMBER_LITERAL EOF )
-            // InternalOCLinEcore.g:3111:1: ruleNUMBER_LITERAL EOF
+            // InternalOCLinEcore.g:3112:1: ( ruleNUMBER_LITERAL EOF )
+            // InternalOCLinEcore.g:3113:1: ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNUMBER_LITERALRule());
@@ -9424,17 +9424,17 @@
 
 
     // $ANTLR start "ruleNUMBER_LITERAL"
-    // InternalOCLinEcore.g:3118:1: ruleNUMBER_LITERAL : ( RULE_INT ) ;
+    // InternalOCLinEcore.g:3120:1: ruleNUMBER_LITERAL : ( RULE_INT ) ;
     public final void ruleNUMBER_LITERAL() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3122:2: ( ( RULE_INT ) )
-            // InternalOCLinEcore.g:3123:1: ( RULE_INT )
+            // InternalOCLinEcore.g:3124:2: ( ( RULE_INT ) )
+            // InternalOCLinEcore.g:3125:1: ( RULE_INT )
             {
-            // InternalOCLinEcore.g:3123:1: ( RULE_INT )
-            // InternalOCLinEcore.g:3124:1: RULE_INT
+            // InternalOCLinEcore.g:3125:1: ( RULE_INT )
+            // InternalOCLinEcore.g:3126:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
@@ -9465,11 +9465,11 @@
 
 
     // $ANTLR start "entryRuleStringLiteral"
-    // InternalOCLinEcore.g:3137:1: entryRuleStringLiteral : ruleStringLiteral EOF ;
+    // InternalOCLinEcore.g:3139:1: entryRuleStringLiteral : ruleStringLiteral EOF ;
     public final void entryRuleStringLiteral() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:3138:1: ( ruleStringLiteral EOF )
-            // InternalOCLinEcore.g:3139:1: ruleStringLiteral EOF
+            // InternalOCLinEcore.g:3140:1: ( ruleStringLiteral EOF )
+            // InternalOCLinEcore.g:3141:1: ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStringLiteralRule());
@@ -9499,17 +9499,17 @@
 
 
     // $ANTLR start "ruleStringLiteral"
-    // InternalOCLinEcore.g:3146:1: ruleStringLiteral : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalOCLinEcore.g:3148:1: ruleStringLiteral : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void ruleStringLiteral() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3150:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLinEcore.g:3151:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:3152:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLinEcore.g:3153:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalOCLinEcore.g:3151:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:3152:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:3153:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:3154:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
@@ -9540,11 +9540,11 @@
 
 
     // $ANTLR start "entryRuleUPPER"
-    // InternalOCLinEcore.g:3165:1: entryRuleUPPER : ruleUPPER EOF ;
+    // InternalOCLinEcore.g:3167:1: entryRuleUPPER : ruleUPPER EOF ;
     public final void entryRuleUPPER() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:3166:1: ( ruleUPPER EOF )
-            // InternalOCLinEcore.g:3167:1: ruleUPPER EOF
+            // InternalOCLinEcore.g:3168:1: ( ruleUPPER EOF )
+            // InternalOCLinEcore.g:3169:1: ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUPPERRule());
@@ -9574,23 +9574,23 @@
 
 
     // $ANTLR start "ruleUPPER"
-    // InternalOCLinEcore.g:3174:1: ruleUPPER : ( ( rule__UPPER__Alternatives ) ) ;
+    // InternalOCLinEcore.g:3176:1: ruleUPPER : ( ( rule__UPPER__Alternatives ) ) ;
     public final void ruleUPPER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3178:2: ( ( ( rule__UPPER__Alternatives ) ) )
-            // InternalOCLinEcore.g:3179:1: ( ( rule__UPPER__Alternatives ) )
+            // InternalOCLinEcore.g:3180:2: ( ( ( rule__UPPER__Alternatives ) ) )
+            // InternalOCLinEcore.g:3181:1: ( ( rule__UPPER__Alternatives ) )
             {
-            // InternalOCLinEcore.g:3179:1: ( ( rule__UPPER__Alternatives ) )
-            // InternalOCLinEcore.g:3180:1: ( rule__UPPER__Alternatives )
+            // InternalOCLinEcore.g:3181:1: ( ( rule__UPPER__Alternatives ) )
+            // InternalOCLinEcore.g:3182:1: ( rule__UPPER__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUPPERAccess().getAlternatives());
             }
-            // InternalOCLinEcore.g:3181:1: ( rule__UPPER__Alternatives )
-            // InternalOCLinEcore.g:3181:2: rule__UPPER__Alternatives
+            // InternalOCLinEcore.g:3183:1: ( rule__UPPER__Alternatives )
+            // InternalOCLinEcore.g:3183:2: rule__UPPER__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__UPPER__Alternatives();
@@ -9625,11 +9625,11 @@
 
 
     // $ANTLR start "entryRuleURI"
-    // InternalOCLinEcore.g:3193:1: entryRuleURI : ruleURI EOF ;
+    // InternalOCLinEcore.g:3195:1: entryRuleURI : ruleURI EOF ;
     public final void entryRuleURI() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:3194:1: ( ruleURI EOF )
-            // InternalOCLinEcore.g:3195:1: ruleURI EOF
+            // InternalOCLinEcore.g:3196:1: ( ruleURI EOF )
+            // InternalOCLinEcore.g:3197:1: ruleURI EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIRule());
@@ -9659,17 +9659,17 @@
 
 
     // $ANTLR start "ruleURI"
-    // InternalOCLinEcore.g:3202:1: ruleURI : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalOCLinEcore.g:3204:1: ruleURI : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void ruleURI() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3206:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLinEcore.g:3207:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:3208:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLinEcore.g:3209:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalOCLinEcore.g:3207:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:3208:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:3209:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:3210:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
@@ -9700,13 +9700,13 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralName__Alternatives"
-    // InternalOCLinEcore.g:3221:1: rule__EnumerationLiteralName__Alternatives : ( ( ruleEssentialOCLUnrestrictedName ) | ( 'abstract' ) | ( 'attribute' ) | ( 'body' ) | ( 'callable' ) | ( 'class' ) | ( 'composes' ) | ( 'datatype' ) | ( 'definition' ) | ( 'derivation' ) | ( 'derived' ) | ( 'enum' ) | ( 'extends' ) | ( 'id' ) | ( 'import' ) | ( 'initial' ) | ( 'interface' ) | ( 'key' ) | ( 'library' ) | ( 'module' ) | ( 'operation' ) | ( 'ordered' ) | ( 'package' ) | ( 'postcondition' ) | ( 'precondition' ) | ( 'primitive' ) | ( 'property' ) | ( 'readonly' ) | ( 'reference' ) | ( 'resolve' ) | ( 'static' ) | ( 'throws' ) | ( 'transient' ) | ( 'unique' ) | ( 'unsettable' ) | ( 'volatile' ) );
+    // InternalOCLinEcore.g:3223:1: rule__EnumerationLiteralName__Alternatives : ( ( ruleEssentialOCLUnrestrictedName ) | ( 'abstract' ) | ( 'attribute' ) | ( 'body' ) | ( 'callable' ) | ( 'class' ) | ( 'composes' ) | ( 'datatype' ) | ( 'definition' ) | ( 'derivation' ) | ( 'derived' ) | ( 'enum' ) | ( 'extends' ) | ( 'id' ) | ( 'import' ) | ( 'initial' ) | ( 'interface' ) | ( 'key' ) | ( 'library' ) | ( 'module' ) | ( 'operation' ) | ( 'ordered' ) | ( 'package' ) | ( 'postcondition' ) | ( 'precondition' ) | ( 'primitive' ) | ( 'property' ) | ( 'readonly' ) | ( 'reference' ) | ( 'resolve' ) | ( 'static' ) | ( 'throws' ) | ( 'transient' ) | ( 'unique' ) | ( 'unsettable' ) | ( 'volatile' ) );
     public final void rule__EnumerationLiteralName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3225:1: ( ( ruleEssentialOCLUnrestrictedName ) | ( 'abstract' ) | ( 'attribute' ) | ( 'body' ) | ( 'callable' ) | ( 'class' ) | ( 'composes' ) | ( 'datatype' ) | ( 'definition' ) | ( 'derivation' ) | ( 'derived' ) | ( 'enum' ) | ( 'extends' ) | ( 'id' ) | ( 'import' ) | ( 'initial' ) | ( 'interface' ) | ( 'key' ) | ( 'library' ) | ( 'module' ) | ( 'operation' ) | ( 'ordered' ) | ( 'package' ) | ( 'postcondition' ) | ( 'precondition' ) | ( 'primitive' ) | ( 'property' ) | ( 'readonly' ) | ( 'reference' ) | ( 'resolve' ) | ( 'static' ) | ( 'throws' ) | ( 'transient' ) | ( 'unique' ) | ( 'unsettable' ) | ( 'volatile' ) )
+            // InternalOCLinEcore.g:3227:1: ( ( ruleEssentialOCLUnrestrictedName ) | ( 'abstract' ) | ( 'attribute' ) | ( 'body' ) | ( 'callable' ) | ( 'class' ) | ( 'composes' ) | ( 'datatype' ) | ( 'definition' ) | ( 'derivation' ) | ( 'derived' ) | ( 'enum' ) | ( 'extends' ) | ( 'id' ) | ( 'import' ) | ( 'initial' ) | ( 'interface' ) | ( 'key' ) | ( 'library' ) | ( 'module' ) | ( 'operation' ) | ( 'ordered' ) | ( 'package' ) | ( 'postcondition' ) | ( 'precondition' ) | ( 'primitive' ) | ( 'property' ) | ( 'readonly' ) | ( 'reference' ) | ( 'resolve' ) | ( 'static' ) | ( 'throws' ) | ( 'transient' ) | ( 'unique' ) | ( 'unsettable' ) | ( 'volatile' ) )
             int alt2=36;
             switch ( input.LA(1) ) {
             case RULE_SIMPLE_ID:
@@ -9900,10 +9900,10 @@
 
             switch (alt2) {
                 case 1 :
-                    // InternalOCLinEcore.g:3226:1: ( ruleEssentialOCLUnrestrictedName )
+                    // InternalOCLinEcore.g:3228:1: ( ruleEssentialOCLUnrestrictedName )
                     {
-                    // InternalOCLinEcore.g:3226:1: ( ruleEssentialOCLUnrestrictedName )
-                    // InternalOCLinEcore.g:3227:1: ruleEssentialOCLUnrestrictedName
+                    // InternalOCLinEcore.g:3228:1: ( ruleEssentialOCLUnrestrictedName )
+                    // InternalOCLinEcore.g:3229:1: ruleEssentialOCLUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0());
@@ -9923,10 +9923,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3232:6: ( 'abstract' )
+                    // InternalOCLinEcore.g:3234:6: ( 'abstract' )
                     {
-                    // InternalOCLinEcore.g:3232:6: ( 'abstract' )
-                    // InternalOCLinEcore.g:3233:1: 'abstract'
+                    // InternalOCLinEcore.g:3234:6: ( 'abstract' )
+                    // InternalOCLinEcore.g:3235:1: 'abstract'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getAbstractKeyword_1());
@@ -9942,10 +9942,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:3240:6: ( 'attribute' )
+                    // InternalOCLinEcore.g:3242:6: ( 'attribute' )
                     {
-                    // InternalOCLinEcore.g:3240:6: ( 'attribute' )
-                    // InternalOCLinEcore.g:3241:1: 'attribute'
+                    // InternalOCLinEcore.g:3242:6: ( 'attribute' )
+                    // InternalOCLinEcore.g:3243:1: 'attribute'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getAttributeKeyword_2());
@@ -9961,10 +9961,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:3248:6: ( 'body' )
+                    // InternalOCLinEcore.g:3250:6: ( 'body' )
                     {
-                    // InternalOCLinEcore.g:3248:6: ( 'body' )
-                    // InternalOCLinEcore.g:3249:1: 'body'
+                    // InternalOCLinEcore.g:3250:6: ( 'body' )
+                    // InternalOCLinEcore.g:3251:1: 'body'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getBodyKeyword_3());
@@ -9980,10 +9980,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:3256:6: ( 'callable' )
+                    // InternalOCLinEcore.g:3258:6: ( 'callable' )
                     {
-                    // InternalOCLinEcore.g:3256:6: ( 'callable' )
-                    // InternalOCLinEcore.g:3257:1: 'callable'
+                    // InternalOCLinEcore.g:3258:6: ( 'callable' )
+                    // InternalOCLinEcore.g:3259:1: 'callable'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getCallableKeyword_4());
@@ -9999,10 +9999,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLinEcore.g:3264:6: ( 'class' )
+                    // InternalOCLinEcore.g:3266:6: ( 'class' )
                     {
-                    // InternalOCLinEcore.g:3264:6: ( 'class' )
-                    // InternalOCLinEcore.g:3265:1: 'class'
+                    // InternalOCLinEcore.g:3266:6: ( 'class' )
+                    // InternalOCLinEcore.g:3267:1: 'class'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getClassKeyword_5());
@@ -10018,10 +10018,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLinEcore.g:3272:6: ( 'composes' )
+                    // InternalOCLinEcore.g:3274:6: ( 'composes' )
                     {
-                    // InternalOCLinEcore.g:3272:6: ( 'composes' )
-                    // InternalOCLinEcore.g:3273:1: 'composes'
+                    // InternalOCLinEcore.g:3274:6: ( 'composes' )
+                    // InternalOCLinEcore.g:3275:1: 'composes'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getComposesKeyword_6());
@@ -10037,10 +10037,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLinEcore.g:3280:6: ( 'datatype' )
+                    // InternalOCLinEcore.g:3282:6: ( 'datatype' )
                     {
-                    // InternalOCLinEcore.g:3280:6: ( 'datatype' )
-                    // InternalOCLinEcore.g:3281:1: 'datatype'
+                    // InternalOCLinEcore.g:3282:6: ( 'datatype' )
+                    // InternalOCLinEcore.g:3283:1: 'datatype'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getDatatypeKeyword_7());
@@ -10056,10 +10056,10 @@
                     }
                     break;
                 case 9 :
-                    // InternalOCLinEcore.g:3288:6: ( 'definition' )
+                    // InternalOCLinEcore.g:3290:6: ( 'definition' )
                     {
-                    // InternalOCLinEcore.g:3288:6: ( 'definition' )
-                    // InternalOCLinEcore.g:3289:1: 'definition'
+                    // InternalOCLinEcore.g:3290:6: ( 'definition' )
+                    // InternalOCLinEcore.g:3291:1: 'definition'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getDefinitionKeyword_8());
@@ -10075,10 +10075,10 @@
                     }
                     break;
                 case 10 :
-                    // InternalOCLinEcore.g:3296:6: ( 'derivation' )
+                    // InternalOCLinEcore.g:3298:6: ( 'derivation' )
                     {
-                    // InternalOCLinEcore.g:3296:6: ( 'derivation' )
-                    // InternalOCLinEcore.g:3297:1: 'derivation'
+                    // InternalOCLinEcore.g:3298:6: ( 'derivation' )
+                    // InternalOCLinEcore.g:3299:1: 'derivation'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getDerivationKeyword_9());
@@ -10094,10 +10094,10 @@
                     }
                     break;
                 case 11 :
-                    // InternalOCLinEcore.g:3304:6: ( 'derived' )
+                    // InternalOCLinEcore.g:3306:6: ( 'derived' )
                     {
-                    // InternalOCLinEcore.g:3304:6: ( 'derived' )
-                    // InternalOCLinEcore.g:3305:1: 'derived'
+                    // InternalOCLinEcore.g:3306:6: ( 'derived' )
+                    // InternalOCLinEcore.g:3307:1: 'derived'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getDerivedKeyword_10());
@@ -10113,10 +10113,10 @@
                     }
                     break;
                 case 12 :
-                    // InternalOCLinEcore.g:3312:6: ( 'enum' )
+                    // InternalOCLinEcore.g:3314:6: ( 'enum' )
                     {
-                    // InternalOCLinEcore.g:3312:6: ( 'enum' )
-                    // InternalOCLinEcore.g:3313:1: 'enum'
+                    // InternalOCLinEcore.g:3314:6: ( 'enum' )
+                    // InternalOCLinEcore.g:3315:1: 'enum'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getEnumKeyword_11());
@@ -10132,10 +10132,10 @@
                     }
                     break;
                 case 13 :
-                    // InternalOCLinEcore.g:3320:6: ( 'extends' )
+                    // InternalOCLinEcore.g:3322:6: ( 'extends' )
                     {
-                    // InternalOCLinEcore.g:3320:6: ( 'extends' )
-                    // InternalOCLinEcore.g:3321:1: 'extends'
+                    // InternalOCLinEcore.g:3322:6: ( 'extends' )
+                    // InternalOCLinEcore.g:3323:1: 'extends'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getExtendsKeyword_12());
@@ -10151,10 +10151,10 @@
                     }
                     break;
                 case 14 :
-                    // InternalOCLinEcore.g:3328:6: ( 'id' )
+                    // InternalOCLinEcore.g:3330:6: ( 'id' )
                     {
-                    // InternalOCLinEcore.g:3328:6: ( 'id' )
-                    // InternalOCLinEcore.g:3329:1: 'id'
+                    // InternalOCLinEcore.g:3330:6: ( 'id' )
+                    // InternalOCLinEcore.g:3331:1: 'id'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getIdKeyword_13());
@@ -10170,10 +10170,10 @@
                     }
                     break;
                 case 15 :
-                    // InternalOCLinEcore.g:3336:6: ( 'import' )
+                    // InternalOCLinEcore.g:3338:6: ( 'import' )
                     {
-                    // InternalOCLinEcore.g:3336:6: ( 'import' )
-                    // InternalOCLinEcore.g:3337:1: 'import'
+                    // InternalOCLinEcore.g:3338:6: ( 'import' )
+                    // InternalOCLinEcore.g:3339:1: 'import'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getImportKeyword_14());
@@ -10189,10 +10189,10 @@
                     }
                     break;
                 case 16 :
-                    // InternalOCLinEcore.g:3344:6: ( 'initial' )
+                    // InternalOCLinEcore.g:3346:6: ( 'initial' )
                     {
-                    // InternalOCLinEcore.g:3344:6: ( 'initial' )
-                    // InternalOCLinEcore.g:3345:1: 'initial'
+                    // InternalOCLinEcore.g:3346:6: ( 'initial' )
+                    // InternalOCLinEcore.g:3347:1: 'initial'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getInitialKeyword_15());
@@ -10208,10 +10208,10 @@
                     }
                     break;
                 case 17 :
-                    // InternalOCLinEcore.g:3352:6: ( 'interface' )
+                    // InternalOCLinEcore.g:3354:6: ( 'interface' )
                     {
-                    // InternalOCLinEcore.g:3352:6: ( 'interface' )
-                    // InternalOCLinEcore.g:3353:1: 'interface'
+                    // InternalOCLinEcore.g:3354:6: ( 'interface' )
+                    // InternalOCLinEcore.g:3355:1: 'interface'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getInterfaceKeyword_16());
@@ -10227,10 +10227,10 @@
                     }
                     break;
                 case 18 :
-                    // InternalOCLinEcore.g:3360:6: ( 'key' )
+                    // InternalOCLinEcore.g:3362:6: ( 'key' )
                     {
-                    // InternalOCLinEcore.g:3360:6: ( 'key' )
-                    // InternalOCLinEcore.g:3361:1: 'key'
+                    // InternalOCLinEcore.g:3362:6: ( 'key' )
+                    // InternalOCLinEcore.g:3363:1: 'key'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getKeyKeyword_17());
@@ -10246,10 +10246,10 @@
                     }
                     break;
                 case 19 :
-                    // InternalOCLinEcore.g:3368:6: ( 'library' )
+                    // InternalOCLinEcore.g:3370:6: ( 'library' )
                     {
-                    // InternalOCLinEcore.g:3368:6: ( 'library' )
-                    // InternalOCLinEcore.g:3369:1: 'library'
+                    // InternalOCLinEcore.g:3370:6: ( 'library' )
+                    // InternalOCLinEcore.g:3371:1: 'library'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getLibraryKeyword_18());
@@ -10265,10 +10265,10 @@
                     }
                     break;
                 case 20 :
-                    // InternalOCLinEcore.g:3376:6: ( 'module' )
+                    // InternalOCLinEcore.g:3378:6: ( 'module' )
                     {
-                    // InternalOCLinEcore.g:3376:6: ( 'module' )
-                    // InternalOCLinEcore.g:3377:1: 'module'
+                    // InternalOCLinEcore.g:3378:6: ( 'module' )
+                    // InternalOCLinEcore.g:3379:1: 'module'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getModuleKeyword_19());
@@ -10284,10 +10284,10 @@
                     }
                     break;
                 case 21 :
-                    // InternalOCLinEcore.g:3384:6: ( 'operation' )
+                    // InternalOCLinEcore.g:3386:6: ( 'operation' )
                     {
-                    // InternalOCLinEcore.g:3384:6: ( 'operation' )
-                    // InternalOCLinEcore.g:3385:1: 'operation'
+                    // InternalOCLinEcore.g:3386:6: ( 'operation' )
+                    // InternalOCLinEcore.g:3387:1: 'operation'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getOperationKeyword_20());
@@ -10303,10 +10303,10 @@
                     }
                     break;
                 case 22 :
-                    // InternalOCLinEcore.g:3392:6: ( 'ordered' )
+                    // InternalOCLinEcore.g:3394:6: ( 'ordered' )
                     {
-                    // InternalOCLinEcore.g:3392:6: ( 'ordered' )
-                    // InternalOCLinEcore.g:3393:1: 'ordered'
+                    // InternalOCLinEcore.g:3394:6: ( 'ordered' )
+                    // InternalOCLinEcore.g:3395:1: 'ordered'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getOrderedKeyword_21());
@@ -10322,10 +10322,10 @@
                     }
                     break;
                 case 23 :
-                    // InternalOCLinEcore.g:3400:6: ( 'package' )
+                    // InternalOCLinEcore.g:3402:6: ( 'package' )
                     {
-                    // InternalOCLinEcore.g:3400:6: ( 'package' )
-                    // InternalOCLinEcore.g:3401:1: 'package'
+                    // InternalOCLinEcore.g:3402:6: ( 'package' )
+                    // InternalOCLinEcore.g:3403:1: 'package'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getPackageKeyword_22());
@@ -10341,10 +10341,10 @@
                     }
                     break;
                 case 24 :
-                    // InternalOCLinEcore.g:3408:6: ( 'postcondition' )
+                    // InternalOCLinEcore.g:3410:6: ( 'postcondition' )
                     {
-                    // InternalOCLinEcore.g:3408:6: ( 'postcondition' )
-                    // InternalOCLinEcore.g:3409:1: 'postcondition'
+                    // InternalOCLinEcore.g:3410:6: ( 'postcondition' )
+                    // InternalOCLinEcore.g:3411:1: 'postcondition'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getPostconditionKeyword_23());
@@ -10360,10 +10360,10 @@
                     }
                     break;
                 case 25 :
-                    // InternalOCLinEcore.g:3416:6: ( 'precondition' )
+                    // InternalOCLinEcore.g:3418:6: ( 'precondition' )
                     {
-                    // InternalOCLinEcore.g:3416:6: ( 'precondition' )
-                    // InternalOCLinEcore.g:3417:1: 'precondition'
+                    // InternalOCLinEcore.g:3418:6: ( 'precondition' )
+                    // InternalOCLinEcore.g:3419:1: 'precondition'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getPreconditionKeyword_24());
@@ -10379,10 +10379,10 @@
                     }
                     break;
                 case 26 :
-                    // InternalOCLinEcore.g:3424:6: ( 'primitive' )
+                    // InternalOCLinEcore.g:3426:6: ( 'primitive' )
                     {
-                    // InternalOCLinEcore.g:3424:6: ( 'primitive' )
-                    // InternalOCLinEcore.g:3425:1: 'primitive'
+                    // InternalOCLinEcore.g:3426:6: ( 'primitive' )
+                    // InternalOCLinEcore.g:3427:1: 'primitive'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getPrimitiveKeyword_25());
@@ -10398,10 +10398,10 @@
                     }
                     break;
                 case 27 :
-                    // InternalOCLinEcore.g:3432:6: ( 'property' )
+                    // InternalOCLinEcore.g:3434:6: ( 'property' )
                     {
-                    // InternalOCLinEcore.g:3432:6: ( 'property' )
-                    // InternalOCLinEcore.g:3433:1: 'property'
+                    // InternalOCLinEcore.g:3434:6: ( 'property' )
+                    // InternalOCLinEcore.g:3435:1: 'property'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getPropertyKeyword_26());
@@ -10417,10 +10417,10 @@
                     }
                     break;
                 case 28 :
-                    // InternalOCLinEcore.g:3440:6: ( 'readonly' )
+                    // InternalOCLinEcore.g:3442:6: ( 'readonly' )
                     {
-                    // InternalOCLinEcore.g:3440:6: ( 'readonly' )
-                    // InternalOCLinEcore.g:3441:1: 'readonly'
+                    // InternalOCLinEcore.g:3442:6: ( 'readonly' )
+                    // InternalOCLinEcore.g:3443:1: 'readonly'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getReadonlyKeyword_27());
@@ -10436,10 +10436,10 @@
                     }
                     break;
                 case 29 :
-                    // InternalOCLinEcore.g:3448:6: ( 'reference' )
+                    // InternalOCLinEcore.g:3450:6: ( 'reference' )
                     {
-                    // InternalOCLinEcore.g:3448:6: ( 'reference' )
-                    // InternalOCLinEcore.g:3449:1: 'reference'
+                    // InternalOCLinEcore.g:3450:6: ( 'reference' )
+                    // InternalOCLinEcore.g:3451:1: 'reference'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getReferenceKeyword_28());
@@ -10455,10 +10455,10 @@
                     }
                     break;
                 case 30 :
-                    // InternalOCLinEcore.g:3456:6: ( 'resolve' )
+                    // InternalOCLinEcore.g:3458:6: ( 'resolve' )
                     {
-                    // InternalOCLinEcore.g:3456:6: ( 'resolve' )
-                    // InternalOCLinEcore.g:3457:1: 'resolve'
+                    // InternalOCLinEcore.g:3458:6: ( 'resolve' )
+                    // InternalOCLinEcore.g:3459:1: 'resolve'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getResolveKeyword_29());
@@ -10474,10 +10474,10 @@
                     }
                     break;
                 case 31 :
-                    // InternalOCLinEcore.g:3464:6: ( 'static' )
+                    // InternalOCLinEcore.g:3466:6: ( 'static' )
                     {
-                    // InternalOCLinEcore.g:3464:6: ( 'static' )
-                    // InternalOCLinEcore.g:3465:1: 'static'
+                    // InternalOCLinEcore.g:3466:6: ( 'static' )
+                    // InternalOCLinEcore.g:3467:1: 'static'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getStaticKeyword_30());
@@ -10493,10 +10493,10 @@
                     }
                     break;
                 case 32 :
-                    // InternalOCLinEcore.g:3472:6: ( 'throws' )
+                    // InternalOCLinEcore.g:3474:6: ( 'throws' )
                     {
-                    // InternalOCLinEcore.g:3472:6: ( 'throws' )
-                    // InternalOCLinEcore.g:3473:1: 'throws'
+                    // InternalOCLinEcore.g:3474:6: ( 'throws' )
+                    // InternalOCLinEcore.g:3475:1: 'throws'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getThrowsKeyword_31());
@@ -10512,10 +10512,10 @@
                     }
                     break;
                 case 33 :
-                    // InternalOCLinEcore.g:3480:6: ( 'transient' )
+                    // InternalOCLinEcore.g:3482:6: ( 'transient' )
                     {
-                    // InternalOCLinEcore.g:3480:6: ( 'transient' )
-                    // InternalOCLinEcore.g:3481:1: 'transient'
+                    // InternalOCLinEcore.g:3482:6: ( 'transient' )
+                    // InternalOCLinEcore.g:3483:1: 'transient'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getTransientKeyword_32());
@@ -10531,10 +10531,10 @@
                     }
                     break;
                 case 34 :
-                    // InternalOCLinEcore.g:3488:6: ( 'unique' )
+                    // InternalOCLinEcore.g:3490:6: ( 'unique' )
                     {
-                    // InternalOCLinEcore.g:3488:6: ( 'unique' )
-                    // InternalOCLinEcore.g:3489:1: 'unique'
+                    // InternalOCLinEcore.g:3490:6: ( 'unique' )
+                    // InternalOCLinEcore.g:3491:1: 'unique'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getUniqueKeyword_33());
@@ -10550,10 +10550,10 @@
                     }
                     break;
                 case 35 :
-                    // InternalOCLinEcore.g:3496:6: ( 'unsettable' )
+                    // InternalOCLinEcore.g:3498:6: ( 'unsettable' )
                     {
-                    // InternalOCLinEcore.g:3496:6: ( 'unsettable' )
-                    // InternalOCLinEcore.g:3497:1: 'unsettable'
+                    // InternalOCLinEcore.g:3498:6: ( 'unsettable' )
+                    // InternalOCLinEcore.g:3499:1: 'unsettable'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getUnsettableKeyword_34());
@@ -10569,10 +10569,10 @@
                     }
                     break;
                 case 36 :
-                    // InternalOCLinEcore.g:3504:6: ( 'volatile' )
+                    // InternalOCLinEcore.g:3506:6: ( 'volatile' )
                     {
-                    // InternalOCLinEcore.g:3504:6: ( 'volatile' )
-                    // InternalOCLinEcore.g:3505:1: 'volatile'
+                    // InternalOCLinEcore.g:3506:6: ( 'volatile' )
+                    // InternalOCLinEcore.g:3507:1: 'volatile'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralNameAccess().getVolatileKeyword_35());
@@ -10605,13 +10605,13 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Alternatives_3"
-    // InternalOCLinEcore.g:3517:1: rule__InvariantConstraintCS__Alternatives_3 : ( ( ( rule__InvariantConstraintCS__Group_3_0__0 ) ) | ( ';' ) );
+    // InternalOCLinEcore.g:3519:1: rule__InvariantConstraintCS__Alternatives_3 : ( ( ( rule__InvariantConstraintCS__Group_3_0__0 ) ) | ( ';' ) );
     public final void rule__InvariantConstraintCS__Alternatives_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3521:1: ( ( ( rule__InvariantConstraintCS__Group_3_0__0 ) ) | ( ';' ) )
+            // InternalOCLinEcore.g:3523:1: ( ( ( rule__InvariantConstraintCS__Group_3_0__0 ) ) | ( ';' ) )
             int alt3=2;
             int LA3_0 = input.LA(1);
 
@@ -10630,16 +10630,16 @@
             }
             switch (alt3) {
                 case 1 :
-                    // InternalOCLinEcore.g:3522:1: ( ( rule__InvariantConstraintCS__Group_3_0__0 ) )
+                    // InternalOCLinEcore.g:3524:1: ( ( rule__InvariantConstraintCS__Group_3_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:3522:1: ( ( rule__InvariantConstraintCS__Group_3_0__0 ) )
-                    // InternalOCLinEcore.g:3523:1: ( rule__InvariantConstraintCS__Group_3_0__0 )
+                    // InternalOCLinEcore.g:3524:1: ( ( rule__InvariantConstraintCS__Group_3_0__0 ) )
+                    // InternalOCLinEcore.g:3525:1: ( rule__InvariantConstraintCS__Group_3_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getInvariantConstraintCSAccess().getGroup_3_0());
                     }
-                    // InternalOCLinEcore.g:3524:1: ( rule__InvariantConstraintCS__Group_3_0__0 )
-                    // InternalOCLinEcore.g:3524:2: rule__InvariantConstraintCS__Group_3_0__0
+                    // InternalOCLinEcore.g:3526:1: ( rule__InvariantConstraintCS__Group_3_0__0 )
+                    // InternalOCLinEcore.g:3526:2: rule__InvariantConstraintCS__Group_3_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__InvariantConstraintCS__Group_3_0__0();
@@ -10659,10 +10659,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3528:6: ( ';' )
+                    // InternalOCLinEcore.g:3530:6: ( ';' )
                     {
-                    // InternalOCLinEcore.g:3528:6: ( ';' )
-                    // InternalOCLinEcore.g:3529:1: ';'
+                    // InternalOCLinEcore.g:3530:6: ( ';' )
+                    // InternalOCLinEcore.g:3531:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_1());
@@ -10695,13 +10695,13 @@
 
 
     // $ANTLR start "rule__AnnotationCS__NameAlternatives_2_0"
-    // InternalOCLinEcore.g:3541:1: rule__AnnotationCS__NameAlternatives_2_0 : ( ( ruleUnrestrictedName ) | ( RULE_SINGLE_QUOTED_STRING ) );
+    // InternalOCLinEcore.g:3543:1: rule__AnnotationCS__NameAlternatives_2_0 : ( ( ruleUnrestrictedName ) | ( RULE_SINGLE_QUOTED_STRING ) );
     public final void rule__AnnotationCS__NameAlternatives_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3545:1: ( ( ruleUnrestrictedName ) | ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLinEcore.g:3547:1: ( ( ruleUnrestrictedName ) | ( RULE_SINGLE_QUOTED_STRING ) )
             int alt4=2;
             int LA4_0 = input.LA(1);
 
@@ -10720,10 +10720,10 @@
             }
             switch (alt4) {
                 case 1 :
-                    // InternalOCLinEcore.g:3546:1: ( ruleUnrestrictedName )
+                    // InternalOCLinEcore.g:3548:1: ( ruleUnrestrictedName )
                     {
-                    // InternalOCLinEcore.g:3546:1: ( ruleUnrestrictedName )
-                    // InternalOCLinEcore.g:3547:1: ruleUnrestrictedName
+                    // InternalOCLinEcore.g:3548:1: ( ruleUnrestrictedName )
+                    // InternalOCLinEcore.g:3549:1: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0());
@@ -10743,10 +10743,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3552:6: ( RULE_SINGLE_QUOTED_STRING )
+                    // InternalOCLinEcore.g:3554:6: ( RULE_SINGLE_QUOTED_STRING )
                     {
-                    // InternalOCLinEcore.g:3552:6: ( RULE_SINGLE_QUOTED_STRING )
-                    // InternalOCLinEcore.g:3553:1: RULE_SINGLE_QUOTED_STRING
+                    // InternalOCLinEcore.g:3554:6: ( RULE_SINGLE_QUOTED_STRING )
+                    // InternalOCLinEcore.g:3555:1: RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
@@ -10779,13 +10779,13 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Alternatives_4"
-    // InternalOCLinEcore.g:3563:1: rule__AnnotationCS__Alternatives_4 : ( ( ( rule__AnnotationCS__Group_4_0__0 ) ) | ( ';' ) );
+    // InternalOCLinEcore.g:3565:1: rule__AnnotationCS__Alternatives_4 : ( ( ( rule__AnnotationCS__Group_4_0__0 ) ) | ( ';' ) );
     public final void rule__AnnotationCS__Alternatives_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3567:1: ( ( ( rule__AnnotationCS__Group_4_0__0 ) ) | ( ';' ) )
+            // InternalOCLinEcore.g:3569:1: ( ( ( rule__AnnotationCS__Group_4_0__0 ) ) | ( ';' ) )
             int alt5=2;
             int LA5_0 = input.LA(1);
 
@@ -10804,16 +10804,16 @@
             }
             switch (alt5) {
                 case 1 :
-                    // InternalOCLinEcore.g:3568:1: ( ( rule__AnnotationCS__Group_4_0__0 ) )
+                    // InternalOCLinEcore.g:3570:1: ( ( rule__AnnotationCS__Group_4_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:3568:1: ( ( rule__AnnotationCS__Group_4_0__0 ) )
-                    // InternalOCLinEcore.g:3569:1: ( rule__AnnotationCS__Group_4_0__0 )
+                    // InternalOCLinEcore.g:3570:1: ( ( rule__AnnotationCS__Group_4_0__0 ) )
+                    // InternalOCLinEcore.g:3571:1: ( rule__AnnotationCS__Group_4_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationCSAccess().getGroup_4_0());
                     }
-                    // InternalOCLinEcore.g:3570:1: ( rule__AnnotationCS__Group_4_0__0 )
-                    // InternalOCLinEcore.g:3570:2: rule__AnnotationCS__Group_4_0__0
+                    // InternalOCLinEcore.g:3572:1: ( rule__AnnotationCS__Group_4_0__0 )
+                    // InternalOCLinEcore.g:3572:2: rule__AnnotationCS__Group_4_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AnnotationCS__Group_4_0__0();
@@ -10833,10 +10833,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3574:6: ( ';' )
+                    // InternalOCLinEcore.g:3576:6: ( ';' )
                     {
-                    // InternalOCLinEcore.g:3574:6: ( ';' )
-                    // InternalOCLinEcore.g:3575:1: ';'
+                    // InternalOCLinEcore.g:3576:6: ( ';' )
+                    // InternalOCLinEcore.g:3577:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_4_1());
@@ -10869,13 +10869,13 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Alternatives_4_0_1"
-    // InternalOCLinEcore.g:3587:1: rule__AnnotationCS__Alternatives_4_0_1 : ( ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 ) ) | ( ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 ) ) | ( ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 ) ) );
+    // InternalOCLinEcore.g:3589:1: rule__AnnotationCS__Alternatives_4_0_1 : ( ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 ) ) | ( ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 ) ) | ( ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 ) ) );
     public final void rule__AnnotationCS__Alternatives_4_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3591:1: ( ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 ) ) | ( ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 ) ) | ( ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 ) ) )
+            // InternalOCLinEcore.g:3593:1: ( ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 ) ) | ( ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 ) ) | ( ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 ) ) )
             int alt6=3;
             switch ( input.LA(1) ) {
             case 54:
@@ -10955,16 +10955,16 @@
 
             switch (alt6) {
                 case 1 :
-                    // InternalOCLinEcore.g:3592:1: ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 ) )
+                    // InternalOCLinEcore.g:3594:1: ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 ) )
                     {
-                    // InternalOCLinEcore.g:3592:1: ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 ) )
-                    // InternalOCLinEcore.g:3593:1: ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 )
+                    // InternalOCLinEcore.g:3594:1: ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 ) )
+                    // InternalOCLinEcore.g:3595:1: ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAssignment_4_0_1_0());
                     }
-                    // InternalOCLinEcore.g:3594:1: ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 )
-                    // InternalOCLinEcore.g:3594:2: rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0
+                    // InternalOCLinEcore.g:3596:1: ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 )
+                    // InternalOCLinEcore.g:3596:2: rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0();
@@ -10984,16 +10984,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3598:6: ( ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 ) )
+                    // InternalOCLinEcore.g:3600:6: ( ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 ) )
                     {
-                    // InternalOCLinEcore.g:3598:6: ( ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 ) )
-                    // InternalOCLinEcore.g:3599:1: ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 )
+                    // InternalOCLinEcore.g:3600:6: ( ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 ) )
+                    // InternalOCLinEcore.g:3601:1: ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationCSAccess().getOwnedContentsAssignment_4_0_1_1());
                     }
-                    // InternalOCLinEcore.g:3600:1: ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 )
-                    // InternalOCLinEcore.g:3600:2: rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1
+                    // InternalOCLinEcore.g:3602:1: ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 )
+                    // InternalOCLinEcore.g:3602:2: rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1();
@@ -11013,16 +11013,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:3604:6: ( ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 ) )
+                    // InternalOCLinEcore.g:3606:6: ( ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 ) )
                     {
-                    // InternalOCLinEcore.g:3604:6: ( ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 ) )
-                    // InternalOCLinEcore.g:3605:1: ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 )
+                    // InternalOCLinEcore.g:3606:6: ( ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 ) )
+                    // InternalOCLinEcore.g:3607:1: ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationCSAccess().getOwnedReferencesAssignment_4_0_1_2());
                     }
-                    // InternalOCLinEcore.g:3606:1: ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 )
-                    // InternalOCLinEcore.g:3606:2: rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2
+                    // InternalOCLinEcore.g:3608:1: ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 )
+                    // InternalOCLinEcore.g:3608:2: rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2();
@@ -11059,13 +11059,13 @@
 
 
     // $ANTLR start "rule__AnnotationElementCS__Alternatives"
-    // InternalOCLinEcore.g:3615:1: rule__AnnotationElementCS__Alternatives : ( ( ruleAnnotationCS ) | ( ruleDocumentationCS ) | ( ruleSysMLCS ) );
+    // InternalOCLinEcore.g:3617:1: rule__AnnotationElementCS__Alternatives : ( ( ruleAnnotationCS ) | ( ruleDocumentationCS ) | ( ruleSysMLCS ) );
     public final void rule__AnnotationElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3619:1: ( ( ruleAnnotationCS ) | ( ruleDocumentationCS ) | ( ruleSysMLCS ) )
+            // InternalOCLinEcore.g:3621:1: ( ( ruleAnnotationCS ) | ( ruleDocumentationCS ) | ( ruleSysMLCS ) )
             int alt7=3;
             switch ( input.LA(1) ) {
             case 54:
@@ -11093,10 +11093,10 @@
 
             switch (alt7) {
                 case 1 :
-                    // InternalOCLinEcore.g:3620:1: ( ruleAnnotationCS )
+                    // InternalOCLinEcore.g:3622:1: ( ruleAnnotationCS )
                     {
-                    // InternalOCLinEcore.g:3620:1: ( ruleAnnotationCS )
-                    // InternalOCLinEcore.g:3621:1: ruleAnnotationCS
+                    // InternalOCLinEcore.g:3622:1: ( ruleAnnotationCS )
+                    // InternalOCLinEcore.g:3623:1: ruleAnnotationCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0());
@@ -11116,10 +11116,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3626:6: ( ruleDocumentationCS )
+                    // InternalOCLinEcore.g:3628:6: ( ruleDocumentationCS )
                     {
-                    // InternalOCLinEcore.g:3626:6: ( ruleDocumentationCS )
-                    // InternalOCLinEcore.g:3627:1: ruleDocumentationCS
+                    // InternalOCLinEcore.g:3628:6: ( ruleDocumentationCS )
+                    // InternalOCLinEcore.g:3629:1: ruleDocumentationCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1());
@@ -11139,10 +11139,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:3632:6: ( ruleSysMLCS )
+                    // InternalOCLinEcore.g:3634:6: ( ruleSysMLCS )
                     {
-                    // InternalOCLinEcore.g:3632:6: ( ruleSysMLCS )
-                    // InternalOCLinEcore.g:3633:1: ruleSysMLCS
+                    // InternalOCLinEcore.g:3634:6: ( ruleSysMLCS )
+                    // InternalOCLinEcore.g:3635:1: ruleSysMLCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationElementCSAccess().getSysMLCSParserRuleCall_2());
@@ -11179,13 +11179,13 @@
 
 
     // $ANTLR start "rule__AttributeCS__Alternatives_0"
-    // InternalOCLinEcore.g:3643:1: rule__AttributeCS__Alternatives_0 : ( ( ( rule__AttributeCS__Group_0_0__0 ) ) | ( ( rule__AttributeCS__Group_0_1__0 ) ) );
+    // InternalOCLinEcore.g:3645:1: rule__AttributeCS__Alternatives_0 : ( ( ( rule__AttributeCS__Group_0_0__0 ) ) | ( ( rule__AttributeCS__Group_0_1__0 ) ) );
     public final void rule__AttributeCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3647:1: ( ( ( rule__AttributeCS__Group_0_0__0 ) ) | ( ( rule__AttributeCS__Group_0_1__0 ) ) )
+            // InternalOCLinEcore.g:3649:1: ( ( ( rule__AttributeCS__Group_0_0__0 ) ) | ( ( rule__AttributeCS__Group_0_1__0 ) ) )
             int alt8=2;
             int LA8_0 = input.LA(1);
 
@@ -11204,16 +11204,16 @@
             }
             switch (alt8) {
                 case 1 :
-                    // InternalOCLinEcore.g:3648:1: ( ( rule__AttributeCS__Group_0_0__0 ) )
+                    // InternalOCLinEcore.g:3650:1: ( ( rule__AttributeCS__Group_0_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:3648:1: ( ( rule__AttributeCS__Group_0_0__0 ) )
-                    // InternalOCLinEcore.g:3649:1: ( rule__AttributeCS__Group_0_0__0 )
+                    // InternalOCLinEcore.g:3650:1: ( ( rule__AttributeCS__Group_0_0__0 ) )
+                    // InternalOCLinEcore.g:3651:1: ( rule__AttributeCS__Group_0_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getGroup_0_0());
                     }
-                    // InternalOCLinEcore.g:3650:1: ( rule__AttributeCS__Group_0_0__0 )
-                    // InternalOCLinEcore.g:3650:2: rule__AttributeCS__Group_0_0__0
+                    // InternalOCLinEcore.g:3652:1: ( rule__AttributeCS__Group_0_0__0 )
+                    // InternalOCLinEcore.g:3652:2: rule__AttributeCS__Group_0_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__Group_0_0__0();
@@ -11233,16 +11233,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3654:6: ( ( rule__AttributeCS__Group_0_1__0 ) )
+                    // InternalOCLinEcore.g:3656:6: ( ( rule__AttributeCS__Group_0_1__0 ) )
                     {
-                    // InternalOCLinEcore.g:3654:6: ( ( rule__AttributeCS__Group_0_1__0 ) )
-                    // InternalOCLinEcore.g:3655:1: ( rule__AttributeCS__Group_0_1__0 )
+                    // InternalOCLinEcore.g:3656:6: ( ( rule__AttributeCS__Group_0_1__0 ) )
+                    // InternalOCLinEcore.g:3657:1: ( rule__AttributeCS__Group_0_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getGroup_0_1());
                     }
-                    // InternalOCLinEcore.g:3656:1: ( rule__AttributeCS__Group_0_1__0 )
-                    // InternalOCLinEcore.g:3656:2: rule__AttributeCS__Group_0_1__0
+                    // InternalOCLinEcore.g:3658:1: ( rule__AttributeCS__Group_0_1__0 )
+                    // InternalOCLinEcore.g:3658:2: rule__AttributeCS__Group_0_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__Group_0_1__0();
@@ -11279,13 +11279,13 @@
 
 
     // $ANTLR start "rule__AttributeCS__Alternatives_5_1_0"
-    // InternalOCLinEcore.g:3665:1: rule__AttributeCS__Alternatives_5_1_0 : ( ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 ) ) );
+    // InternalOCLinEcore.g:3667:1: rule__AttributeCS__Alternatives_5_1_0 : ( ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 ) ) );
     public final void rule__AttributeCS__Alternatives_5_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3669:1: ( ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 ) ) )
+            // InternalOCLinEcore.g:3671:1: ( ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 ) ) | ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 ) ) )
             int alt9=16;
             switch ( input.LA(1) ) {
             case 26:
@@ -11378,16 +11378,16 @@
 
             switch (alt9) {
                 case 1 :
-                    // InternalOCLinEcore.g:3670:1: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 ) )
+                    // InternalOCLinEcore.g:3672:1: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 ) )
                     {
-                    // InternalOCLinEcore.g:3670:1: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 ) )
-                    // InternalOCLinEcore.g:3671:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 )
+                    // InternalOCLinEcore.g:3672:1: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 ) )
+                    // InternalOCLinEcore.g:3673:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_0());
                     }
-                    // InternalOCLinEcore.g:3672:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 )
-                    // InternalOCLinEcore.g:3672:2: rule__AttributeCS__QualifiersAssignment_5_1_0_0
+                    // InternalOCLinEcore.g:3674:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 )
+                    // InternalOCLinEcore.g:3674:2: rule__AttributeCS__QualifiersAssignment_5_1_0_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_0();
@@ -11407,16 +11407,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3676:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 ) )
+                    // InternalOCLinEcore.g:3678:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 ) )
                     {
-                    // InternalOCLinEcore.g:3676:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 ) )
-                    // InternalOCLinEcore.g:3677:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 )
+                    // InternalOCLinEcore.g:3678:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 ) )
+                    // InternalOCLinEcore.g:3679:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_1());
                     }
-                    // InternalOCLinEcore.g:3678:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 )
-                    // InternalOCLinEcore.g:3678:2: rule__AttributeCS__QualifiersAssignment_5_1_0_1
+                    // InternalOCLinEcore.g:3680:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 )
+                    // InternalOCLinEcore.g:3680:2: rule__AttributeCS__QualifiersAssignment_5_1_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_1();
@@ -11436,16 +11436,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:3682:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 ) )
+                    // InternalOCLinEcore.g:3684:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 ) )
                     {
-                    // InternalOCLinEcore.g:3682:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 ) )
-                    // InternalOCLinEcore.g:3683:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 )
+                    // InternalOCLinEcore.g:3684:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 ) )
+                    // InternalOCLinEcore.g:3685:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_2());
                     }
-                    // InternalOCLinEcore.g:3684:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 )
-                    // InternalOCLinEcore.g:3684:2: rule__AttributeCS__QualifiersAssignment_5_1_0_2
+                    // InternalOCLinEcore.g:3686:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 )
+                    // InternalOCLinEcore.g:3686:2: rule__AttributeCS__QualifiersAssignment_5_1_0_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_2();
@@ -11465,16 +11465,16 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:3688:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 ) )
+                    // InternalOCLinEcore.g:3690:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 ) )
                     {
-                    // InternalOCLinEcore.g:3688:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 ) )
-                    // InternalOCLinEcore.g:3689:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 )
+                    // InternalOCLinEcore.g:3690:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 ) )
+                    // InternalOCLinEcore.g:3691:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_3());
                     }
-                    // InternalOCLinEcore.g:3690:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 )
-                    // InternalOCLinEcore.g:3690:2: rule__AttributeCS__QualifiersAssignment_5_1_0_3
+                    // InternalOCLinEcore.g:3692:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 )
+                    // InternalOCLinEcore.g:3692:2: rule__AttributeCS__QualifiersAssignment_5_1_0_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_3();
@@ -11494,16 +11494,16 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:3694:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 ) )
+                    // InternalOCLinEcore.g:3696:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 ) )
                     {
-                    // InternalOCLinEcore.g:3694:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 ) )
-                    // InternalOCLinEcore.g:3695:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 )
+                    // InternalOCLinEcore.g:3696:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 ) )
+                    // InternalOCLinEcore.g:3697:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_4());
                     }
-                    // InternalOCLinEcore.g:3696:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 )
-                    // InternalOCLinEcore.g:3696:2: rule__AttributeCS__QualifiersAssignment_5_1_0_4
+                    // InternalOCLinEcore.g:3698:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 )
+                    // InternalOCLinEcore.g:3698:2: rule__AttributeCS__QualifiersAssignment_5_1_0_4
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_4();
@@ -11523,16 +11523,16 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLinEcore.g:3700:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 ) )
+                    // InternalOCLinEcore.g:3702:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 ) )
                     {
-                    // InternalOCLinEcore.g:3700:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 ) )
-                    // InternalOCLinEcore.g:3701:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 )
+                    // InternalOCLinEcore.g:3702:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 ) )
+                    // InternalOCLinEcore.g:3703:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_5());
                     }
-                    // InternalOCLinEcore.g:3702:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 )
-                    // InternalOCLinEcore.g:3702:2: rule__AttributeCS__QualifiersAssignment_5_1_0_5
+                    // InternalOCLinEcore.g:3704:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 )
+                    // InternalOCLinEcore.g:3704:2: rule__AttributeCS__QualifiersAssignment_5_1_0_5
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_5();
@@ -11552,16 +11552,16 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLinEcore.g:3706:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 ) )
+                    // InternalOCLinEcore.g:3708:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 ) )
                     {
-                    // InternalOCLinEcore.g:3706:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 ) )
-                    // InternalOCLinEcore.g:3707:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 )
+                    // InternalOCLinEcore.g:3708:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 ) )
+                    // InternalOCLinEcore.g:3709:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_6());
                     }
-                    // InternalOCLinEcore.g:3708:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 )
-                    // InternalOCLinEcore.g:3708:2: rule__AttributeCS__QualifiersAssignment_5_1_0_6
+                    // InternalOCLinEcore.g:3710:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 )
+                    // InternalOCLinEcore.g:3710:2: rule__AttributeCS__QualifiersAssignment_5_1_0_6
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_6();
@@ -11581,16 +11581,16 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLinEcore.g:3712:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 ) )
+                    // InternalOCLinEcore.g:3714:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 ) )
                     {
-                    // InternalOCLinEcore.g:3712:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 ) )
-                    // InternalOCLinEcore.g:3713:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 )
+                    // InternalOCLinEcore.g:3714:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 ) )
+                    // InternalOCLinEcore.g:3715:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_7());
                     }
-                    // InternalOCLinEcore.g:3714:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 )
-                    // InternalOCLinEcore.g:3714:2: rule__AttributeCS__QualifiersAssignment_5_1_0_7
+                    // InternalOCLinEcore.g:3716:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 )
+                    // InternalOCLinEcore.g:3716:2: rule__AttributeCS__QualifiersAssignment_5_1_0_7
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_7();
@@ -11610,16 +11610,16 @@
                     }
                     break;
                 case 9 :
-                    // InternalOCLinEcore.g:3718:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 ) )
+                    // InternalOCLinEcore.g:3720:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 ) )
                     {
-                    // InternalOCLinEcore.g:3718:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 ) )
-                    // InternalOCLinEcore.g:3719:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 )
+                    // InternalOCLinEcore.g:3720:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 ) )
+                    // InternalOCLinEcore.g:3721:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_8());
                     }
-                    // InternalOCLinEcore.g:3720:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 )
-                    // InternalOCLinEcore.g:3720:2: rule__AttributeCS__QualifiersAssignment_5_1_0_8
+                    // InternalOCLinEcore.g:3722:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 )
+                    // InternalOCLinEcore.g:3722:2: rule__AttributeCS__QualifiersAssignment_5_1_0_8
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_8();
@@ -11639,16 +11639,16 @@
                     }
                     break;
                 case 10 :
-                    // InternalOCLinEcore.g:3724:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 ) )
+                    // InternalOCLinEcore.g:3726:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 ) )
                     {
-                    // InternalOCLinEcore.g:3724:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 ) )
-                    // InternalOCLinEcore.g:3725:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 )
+                    // InternalOCLinEcore.g:3726:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 ) )
+                    // InternalOCLinEcore.g:3727:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_9());
                     }
-                    // InternalOCLinEcore.g:3726:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 )
-                    // InternalOCLinEcore.g:3726:2: rule__AttributeCS__QualifiersAssignment_5_1_0_9
+                    // InternalOCLinEcore.g:3728:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 )
+                    // InternalOCLinEcore.g:3728:2: rule__AttributeCS__QualifiersAssignment_5_1_0_9
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_9();
@@ -11668,16 +11668,16 @@
                     }
                     break;
                 case 11 :
-                    // InternalOCLinEcore.g:3730:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 ) )
+                    // InternalOCLinEcore.g:3732:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 ) )
                     {
-                    // InternalOCLinEcore.g:3730:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 ) )
-                    // InternalOCLinEcore.g:3731:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 )
+                    // InternalOCLinEcore.g:3732:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 ) )
+                    // InternalOCLinEcore.g:3733:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_10());
                     }
-                    // InternalOCLinEcore.g:3732:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 )
-                    // InternalOCLinEcore.g:3732:2: rule__AttributeCS__QualifiersAssignment_5_1_0_10
+                    // InternalOCLinEcore.g:3734:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 )
+                    // InternalOCLinEcore.g:3734:2: rule__AttributeCS__QualifiersAssignment_5_1_0_10
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_10();
@@ -11697,16 +11697,16 @@
                     }
                     break;
                 case 12 :
-                    // InternalOCLinEcore.g:3736:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 ) )
+                    // InternalOCLinEcore.g:3738:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 ) )
                     {
-                    // InternalOCLinEcore.g:3736:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 ) )
-                    // InternalOCLinEcore.g:3737:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 )
+                    // InternalOCLinEcore.g:3738:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 ) )
+                    // InternalOCLinEcore.g:3739:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_11());
                     }
-                    // InternalOCLinEcore.g:3738:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 )
-                    // InternalOCLinEcore.g:3738:2: rule__AttributeCS__QualifiersAssignment_5_1_0_11
+                    // InternalOCLinEcore.g:3740:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 )
+                    // InternalOCLinEcore.g:3740:2: rule__AttributeCS__QualifiersAssignment_5_1_0_11
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_11();
@@ -11726,16 +11726,16 @@
                     }
                     break;
                 case 13 :
-                    // InternalOCLinEcore.g:3742:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 ) )
+                    // InternalOCLinEcore.g:3744:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 ) )
                     {
-                    // InternalOCLinEcore.g:3742:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 ) )
-                    // InternalOCLinEcore.g:3743:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 )
+                    // InternalOCLinEcore.g:3744:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 ) )
+                    // InternalOCLinEcore.g:3745:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_12());
                     }
-                    // InternalOCLinEcore.g:3744:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 )
-                    // InternalOCLinEcore.g:3744:2: rule__AttributeCS__QualifiersAssignment_5_1_0_12
+                    // InternalOCLinEcore.g:3746:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 )
+                    // InternalOCLinEcore.g:3746:2: rule__AttributeCS__QualifiersAssignment_5_1_0_12
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_12();
@@ -11755,16 +11755,16 @@
                     }
                     break;
                 case 14 :
-                    // InternalOCLinEcore.g:3748:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 ) )
+                    // InternalOCLinEcore.g:3750:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 ) )
                     {
-                    // InternalOCLinEcore.g:3748:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 ) )
-                    // InternalOCLinEcore.g:3749:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 )
+                    // InternalOCLinEcore.g:3750:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 ) )
+                    // InternalOCLinEcore.g:3751:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_13());
                     }
-                    // InternalOCLinEcore.g:3750:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 )
-                    // InternalOCLinEcore.g:3750:2: rule__AttributeCS__QualifiersAssignment_5_1_0_13
+                    // InternalOCLinEcore.g:3752:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 )
+                    // InternalOCLinEcore.g:3752:2: rule__AttributeCS__QualifiersAssignment_5_1_0_13
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_13();
@@ -11784,16 +11784,16 @@
                     }
                     break;
                 case 15 :
-                    // InternalOCLinEcore.g:3754:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 ) )
+                    // InternalOCLinEcore.g:3756:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 ) )
                     {
-                    // InternalOCLinEcore.g:3754:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 ) )
-                    // InternalOCLinEcore.g:3755:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 )
+                    // InternalOCLinEcore.g:3756:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 ) )
+                    // InternalOCLinEcore.g:3757:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_14());
                     }
-                    // InternalOCLinEcore.g:3756:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 )
-                    // InternalOCLinEcore.g:3756:2: rule__AttributeCS__QualifiersAssignment_5_1_0_14
+                    // InternalOCLinEcore.g:3758:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 )
+                    // InternalOCLinEcore.g:3758:2: rule__AttributeCS__QualifiersAssignment_5_1_0_14
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_14();
@@ -11813,16 +11813,16 @@
                     }
                     break;
                 case 16 :
-                    // InternalOCLinEcore.g:3760:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 ) )
+                    // InternalOCLinEcore.g:3762:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 ) )
                     {
-                    // InternalOCLinEcore.g:3760:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 ) )
-                    // InternalOCLinEcore.g:3761:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 )
+                    // InternalOCLinEcore.g:3762:6: ( ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 ) )
+                    // InternalOCLinEcore.g:3763:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_15());
                     }
-                    // InternalOCLinEcore.g:3762:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 )
-                    // InternalOCLinEcore.g:3762:2: rule__AttributeCS__QualifiersAssignment_5_1_0_15
+                    // InternalOCLinEcore.g:3764:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 )
+                    // InternalOCLinEcore.g:3764:2: rule__AttributeCS__QualifiersAssignment_5_1_0_15
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_5_1_0_15();
@@ -11859,13 +11859,13 @@
 
 
     // $ANTLR start "rule__AttributeCS__Alternatives_6"
-    // InternalOCLinEcore.g:3771:1: rule__AttributeCS__Alternatives_6 : ( ( ( rule__AttributeCS__Group_6_0__0 ) ) | ( ';' ) );
+    // InternalOCLinEcore.g:3773:1: rule__AttributeCS__Alternatives_6 : ( ( ( rule__AttributeCS__Group_6_0__0 ) ) | ( ';' ) );
     public final void rule__AttributeCS__Alternatives_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3775:1: ( ( ( rule__AttributeCS__Group_6_0__0 ) ) | ( ';' ) )
+            // InternalOCLinEcore.g:3777:1: ( ( ( rule__AttributeCS__Group_6_0__0 ) ) | ( ';' ) )
             int alt10=2;
             int LA10_0 = input.LA(1);
 
@@ -11884,16 +11884,16 @@
             }
             switch (alt10) {
                 case 1 :
-                    // InternalOCLinEcore.g:3776:1: ( ( rule__AttributeCS__Group_6_0__0 ) )
+                    // InternalOCLinEcore.g:3778:1: ( ( rule__AttributeCS__Group_6_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:3776:1: ( ( rule__AttributeCS__Group_6_0__0 ) )
-                    // InternalOCLinEcore.g:3777:1: ( rule__AttributeCS__Group_6_0__0 )
+                    // InternalOCLinEcore.g:3778:1: ( ( rule__AttributeCS__Group_6_0__0 ) )
+                    // InternalOCLinEcore.g:3779:1: ( rule__AttributeCS__Group_6_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getGroup_6_0());
                     }
-                    // InternalOCLinEcore.g:3778:1: ( rule__AttributeCS__Group_6_0__0 )
-                    // InternalOCLinEcore.g:3778:2: rule__AttributeCS__Group_6_0__0
+                    // InternalOCLinEcore.g:3780:1: ( rule__AttributeCS__Group_6_0__0 )
+                    // InternalOCLinEcore.g:3780:2: rule__AttributeCS__Group_6_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__Group_6_0__0();
@@ -11913,10 +11913,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3782:6: ( ';' )
+                    // InternalOCLinEcore.g:3784:6: ( ';' )
                     {
-                    // InternalOCLinEcore.g:3782:6: ( ';' )
-                    // InternalOCLinEcore.g:3783:1: ';'
+                    // InternalOCLinEcore.g:3784:6: ( ';' )
+                    // InternalOCLinEcore.g:3785:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_1());
@@ -11949,13 +11949,13 @@
 
 
     // $ANTLR start "rule__AttributeCS__Alternatives_6_0_1"
-    // InternalOCLinEcore.g:3795:1: rule__AttributeCS__Alternatives_6_0_1 : ( ( ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 ) ) | ( ( rule__AttributeCS__Group_6_0_1_1__0 ) ) | ( ( rule__AttributeCS__Group_6_0_1_2__0 ) ) );
+    // InternalOCLinEcore.g:3797:1: rule__AttributeCS__Alternatives_6_0_1 : ( ( ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 ) ) | ( ( rule__AttributeCS__Group_6_0_1_1__0 ) ) | ( ( rule__AttributeCS__Group_6_0_1_2__0 ) ) );
     public final void rule__AttributeCS__Alternatives_6_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3799:1: ( ( ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 ) ) | ( ( rule__AttributeCS__Group_6_0_1_1__0 ) ) | ( ( rule__AttributeCS__Group_6_0_1_2__0 ) ) )
+            // InternalOCLinEcore.g:3801:1: ( ( ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 ) ) | ( ( rule__AttributeCS__Group_6_0_1_1__0 ) ) | ( ( rule__AttributeCS__Group_6_0_1_2__0 ) ) )
             int alt11=3;
             switch ( input.LA(1) ) {
             case 54:
@@ -11985,16 +11985,16 @@
 
             switch (alt11) {
                 case 1 :
-                    // InternalOCLinEcore.g:3800:1: ( ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 ) )
+                    // InternalOCLinEcore.g:3802:1: ( ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 ) )
                     {
-                    // InternalOCLinEcore.g:3800:1: ( ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 ) )
-                    // InternalOCLinEcore.g:3801:1: ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 )
+                    // InternalOCLinEcore.g:3802:1: ( ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 ) )
+                    // InternalOCLinEcore.g:3803:1: ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAssignment_6_0_1_0());
                     }
-                    // InternalOCLinEcore.g:3802:1: ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 )
-                    // InternalOCLinEcore.g:3802:2: rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0
+                    // InternalOCLinEcore.g:3804:1: ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 )
+                    // InternalOCLinEcore.g:3804:2: rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0();
@@ -12014,16 +12014,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3806:6: ( ( rule__AttributeCS__Group_6_0_1_1__0 ) )
+                    // InternalOCLinEcore.g:3808:6: ( ( rule__AttributeCS__Group_6_0_1_1__0 ) )
                     {
-                    // InternalOCLinEcore.g:3806:6: ( ( rule__AttributeCS__Group_6_0_1_1__0 ) )
-                    // InternalOCLinEcore.g:3807:1: ( rule__AttributeCS__Group_6_0_1_1__0 )
+                    // InternalOCLinEcore.g:3808:6: ( ( rule__AttributeCS__Group_6_0_1_1__0 ) )
+                    // InternalOCLinEcore.g:3809:1: ( rule__AttributeCS__Group_6_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getGroup_6_0_1_1());
                     }
-                    // InternalOCLinEcore.g:3808:1: ( rule__AttributeCS__Group_6_0_1_1__0 )
-                    // InternalOCLinEcore.g:3808:2: rule__AttributeCS__Group_6_0_1_1__0
+                    // InternalOCLinEcore.g:3810:1: ( rule__AttributeCS__Group_6_0_1_1__0 )
+                    // InternalOCLinEcore.g:3810:2: rule__AttributeCS__Group_6_0_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__Group_6_0_1_1__0();
@@ -12043,16 +12043,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:3812:6: ( ( rule__AttributeCS__Group_6_0_1_2__0 ) )
+                    // InternalOCLinEcore.g:3814:6: ( ( rule__AttributeCS__Group_6_0_1_2__0 ) )
                     {
-                    // InternalOCLinEcore.g:3812:6: ( ( rule__AttributeCS__Group_6_0_1_2__0 ) )
-                    // InternalOCLinEcore.g:3813:1: ( rule__AttributeCS__Group_6_0_1_2__0 )
+                    // InternalOCLinEcore.g:3814:6: ( ( rule__AttributeCS__Group_6_0_1_2__0 ) )
+                    // InternalOCLinEcore.g:3815:1: ( rule__AttributeCS__Group_6_0_1_2__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAttributeCSAccess().getGroup_6_0_1_2());
                     }
-                    // InternalOCLinEcore.g:3814:1: ( rule__AttributeCS__Group_6_0_1_2__0 )
-                    // InternalOCLinEcore.g:3814:2: rule__AttributeCS__Group_6_0_1_2__0
+                    // InternalOCLinEcore.g:3816:1: ( rule__AttributeCS__Group_6_0_1_2__0 )
+                    // InternalOCLinEcore.g:3816:2: rule__AttributeCS__Group_6_0_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__Group_6_0_1_2__0();
@@ -12089,13 +12089,13 @@
 
 
     // $ANTLR start "rule__ClassCS__Alternatives"
-    // InternalOCLinEcore.g:3823:1: rule__ClassCS__Alternatives : ( ( ruleStructuredClassCS ) | ( ruleDataTypeCS ) | ( ruleEnumerationCS ) );
+    // InternalOCLinEcore.g:3825:1: rule__ClassCS__Alternatives : ( ( ruleStructuredClassCS ) | ( ruleDataTypeCS ) | ( ruleEnumerationCS ) );
     public final void rule__ClassCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3827:1: ( ( ruleStructuredClassCS ) | ( ruleDataTypeCS ) | ( ruleEnumerationCS ) )
+            // InternalOCLinEcore.g:3829:1: ( ( ruleStructuredClassCS ) | ( ruleDataTypeCS ) | ( ruleEnumerationCS ) )
             int alt12=3;
             switch ( input.LA(1) ) {
             case 17:
@@ -12125,10 +12125,10 @@
 
             switch (alt12) {
                 case 1 :
-                    // InternalOCLinEcore.g:3828:1: ( ruleStructuredClassCS )
+                    // InternalOCLinEcore.g:3830:1: ( ruleStructuredClassCS )
                     {
-                    // InternalOCLinEcore.g:3828:1: ( ruleStructuredClassCS )
-                    // InternalOCLinEcore.g:3829:1: ruleStructuredClassCS
+                    // InternalOCLinEcore.g:3830:1: ( ruleStructuredClassCS )
+                    // InternalOCLinEcore.g:3831:1: ruleStructuredClassCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getClassCSAccess().getStructuredClassCSParserRuleCall_0());
@@ -12148,10 +12148,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3834:6: ( ruleDataTypeCS )
+                    // InternalOCLinEcore.g:3836:6: ( ruleDataTypeCS )
                     {
-                    // InternalOCLinEcore.g:3834:6: ( ruleDataTypeCS )
-                    // InternalOCLinEcore.g:3835:1: ruleDataTypeCS
+                    // InternalOCLinEcore.g:3836:6: ( ruleDataTypeCS )
+                    // InternalOCLinEcore.g:3837:1: ruleDataTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getClassCSAccess().getDataTypeCSParserRuleCall_1());
@@ -12171,10 +12171,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:3840:6: ( ruleEnumerationCS )
+                    // InternalOCLinEcore.g:3842:6: ( ruleEnumerationCS )
                     {
-                    // InternalOCLinEcore.g:3840:6: ( ruleEnumerationCS )
-                    // InternalOCLinEcore.g:3841:1: ruleEnumerationCS
+                    // InternalOCLinEcore.g:3842:6: ( ruleEnumerationCS )
+                    // InternalOCLinEcore.g:3843:1: ruleEnumerationCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getClassCSAccess().getEnumerationCSParserRuleCall_2());
@@ -12211,13 +12211,13 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Alternatives_5_1"
-    // InternalOCLinEcore.g:3851:1: rule__DataTypeCS__Alternatives_5_1 : ( ( ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 ) ) | ( '!serializable' ) );
+    // InternalOCLinEcore.g:3853:1: rule__DataTypeCS__Alternatives_5_1 : ( ( ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 ) ) | ( '!serializable' ) );
     public final void rule__DataTypeCS__Alternatives_5_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3855:1: ( ( ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 ) ) | ( '!serializable' ) )
+            // InternalOCLinEcore.g:3857:1: ( ( ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 ) ) | ( '!serializable' ) )
             int alt13=2;
             int LA13_0 = input.LA(1);
 
@@ -12236,16 +12236,16 @@
             }
             switch (alt13) {
                 case 1 :
-                    // InternalOCLinEcore.g:3856:1: ( ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 ) )
+                    // InternalOCLinEcore.g:3858:1: ( ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 ) )
                     {
-                    // InternalOCLinEcore.g:3856:1: ( ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 ) )
-                    // InternalOCLinEcore.g:3857:1: ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 )
+                    // InternalOCLinEcore.g:3858:1: ( ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 ) )
+                    // InternalOCLinEcore.g:3859:1: ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDataTypeCSAccess().getIsSerializableAssignment_5_1_0());
                     }
-                    // InternalOCLinEcore.g:3858:1: ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 )
-                    // InternalOCLinEcore.g:3858:2: rule__DataTypeCS__IsSerializableAssignment_5_1_0
+                    // InternalOCLinEcore.g:3860:1: ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 )
+                    // InternalOCLinEcore.g:3860:2: rule__DataTypeCS__IsSerializableAssignment_5_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DataTypeCS__IsSerializableAssignment_5_1_0();
@@ -12265,10 +12265,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3862:6: ( '!serializable' )
+                    // InternalOCLinEcore.g:3864:6: ( '!serializable' )
                     {
-                    // InternalOCLinEcore.g:3862:6: ( '!serializable' )
-                    // InternalOCLinEcore.g:3863:1: '!serializable'
+                    // InternalOCLinEcore.g:3864:6: ( '!serializable' )
+                    // InternalOCLinEcore.g:3865:1: '!serializable'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDataTypeCSAccess().getSerializableKeyword_5_1_1());
@@ -12301,13 +12301,13 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Alternatives_6"
-    // InternalOCLinEcore.g:3875:1: rule__DataTypeCS__Alternatives_6 : ( ( ( rule__DataTypeCS__Group_6_0__0 ) ) | ( ';' ) );
+    // InternalOCLinEcore.g:3877:1: rule__DataTypeCS__Alternatives_6 : ( ( ( rule__DataTypeCS__Group_6_0__0 ) ) | ( ';' ) );
     public final void rule__DataTypeCS__Alternatives_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3879:1: ( ( ( rule__DataTypeCS__Group_6_0__0 ) ) | ( ';' ) )
+            // InternalOCLinEcore.g:3881:1: ( ( ( rule__DataTypeCS__Group_6_0__0 ) ) | ( ';' ) )
             int alt14=2;
             int LA14_0 = input.LA(1);
 
@@ -12326,16 +12326,16 @@
             }
             switch (alt14) {
                 case 1 :
-                    // InternalOCLinEcore.g:3880:1: ( ( rule__DataTypeCS__Group_6_0__0 ) )
+                    // InternalOCLinEcore.g:3882:1: ( ( rule__DataTypeCS__Group_6_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:3880:1: ( ( rule__DataTypeCS__Group_6_0__0 ) )
-                    // InternalOCLinEcore.g:3881:1: ( rule__DataTypeCS__Group_6_0__0 )
+                    // InternalOCLinEcore.g:3882:1: ( ( rule__DataTypeCS__Group_6_0__0 ) )
+                    // InternalOCLinEcore.g:3883:1: ( rule__DataTypeCS__Group_6_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDataTypeCSAccess().getGroup_6_0());
                     }
-                    // InternalOCLinEcore.g:3882:1: ( rule__DataTypeCS__Group_6_0__0 )
-                    // InternalOCLinEcore.g:3882:2: rule__DataTypeCS__Group_6_0__0
+                    // InternalOCLinEcore.g:3884:1: ( rule__DataTypeCS__Group_6_0__0 )
+                    // InternalOCLinEcore.g:3884:2: rule__DataTypeCS__Group_6_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DataTypeCS__Group_6_0__0();
@@ -12355,10 +12355,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3886:6: ( ';' )
+                    // InternalOCLinEcore.g:3888:6: ( ';' )
                     {
-                    // InternalOCLinEcore.g:3886:6: ( ';' )
-                    // InternalOCLinEcore.g:3887:1: ';'
+                    // InternalOCLinEcore.g:3888:6: ( ';' )
+                    // InternalOCLinEcore.g:3889:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDataTypeCSAccess().getSemicolonKeyword_6_1());
@@ -12391,13 +12391,13 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Alternatives_6_0_1"
-    // InternalOCLinEcore.g:3899:1: rule__DataTypeCS__Alternatives_6_0_1 : ( ( ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 ) ) | ( ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 ) ) );
+    // InternalOCLinEcore.g:3901:1: rule__DataTypeCS__Alternatives_6_0_1 : ( ( ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 ) ) | ( ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 ) ) );
     public final void rule__DataTypeCS__Alternatives_6_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3903:1: ( ( ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 ) ) | ( ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 ) ) )
+            // InternalOCLinEcore.g:3905:1: ( ( ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 ) ) | ( ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 ) ) )
             int alt15=2;
             int LA15_0 = input.LA(1);
 
@@ -12416,16 +12416,16 @@
             }
             switch (alt15) {
                 case 1 :
-                    // InternalOCLinEcore.g:3904:1: ( ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 ) )
+                    // InternalOCLinEcore.g:3906:1: ( ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 ) )
                     {
-                    // InternalOCLinEcore.g:3904:1: ( ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 ) )
-                    // InternalOCLinEcore.g:3905:1: ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 )
+                    // InternalOCLinEcore.g:3906:1: ( ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 ) )
+                    // InternalOCLinEcore.g:3907:1: ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAssignment_6_0_1_0());
                     }
-                    // InternalOCLinEcore.g:3906:1: ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 )
-                    // InternalOCLinEcore.g:3906:2: rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0
+                    // InternalOCLinEcore.g:3908:1: ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 )
+                    // InternalOCLinEcore.g:3908:2: rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0();
@@ -12445,16 +12445,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3910:6: ( ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 ) )
+                    // InternalOCLinEcore.g:3912:6: ( ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 ) )
                     {
-                    // InternalOCLinEcore.g:3910:6: ( ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 ) )
-                    // InternalOCLinEcore.g:3911:1: ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 )
+                    // InternalOCLinEcore.g:3912:6: ( ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 ) )
+                    // InternalOCLinEcore.g:3913:1: ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsAssignment_6_0_1_1());
                     }
-                    // InternalOCLinEcore.g:3912:1: ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 )
-                    // InternalOCLinEcore.g:3912:2: rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1
+                    // InternalOCLinEcore.g:3914:1: ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 )
+                    // InternalOCLinEcore.g:3914:2: rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1();
@@ -12491,13 +12491,13 @@
 
 
     // $ANTLR start "rule__DetailCS__NameAlternatives_0_0"
-    // InternalOCLinEcore.g:3921:1: rule__DetailCS__NameAlternatives_0_0 : ( ( ruleUnrestrictedName ) | ( RULE_SINGLE_QUOTED_STRING ) );
+    // InternalOCLinEcore.g:3923:1: rule__DetailCS__NameAlternatives_0_0 : ( ( ruleUnrestrictedName ) | ( RULE_SINGLE_QUOTED_STRING ) );
     public final void rule__DetailCS__NameAlternatives_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3925:1: ( ( ruleUnrestrictedName ) | ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLinEcore.g:3927:1: ( ( ruleUnrestrictedName ) | ( RULE_SINGLE_QUOTED_STRING ) )
             int alt16=2;
             int LA16_0 = input.LA(1);
 
@@ -12516,10 +12516,10 @@
             }
             switch (alt16) {
                 case 1 :
-                    // InternalOCLinEcore.g:3926:1: ( ruleUnrestrictedName )
+                    // InternalOCLinEcore.g:3928:1: ( ruleUnrestrictedName )
                     {
-                    // InternalOCLinEcore.g:3926:1: ( ruleUnrestrictedName )
-                    // InternalOCLinEcore.g:3927:1: ruleUnrestrictedName
+                    // InternalOCLinEcore.g:3928:1: ( ruleUnrestrictedName )
+                    // InternalOCLinEcore.g:3929:1: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDetailCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
@@ -12539,10 +12539,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3932:6: ( RULE_SINGLE_QUOTED_STRING )
+                    // InternalOCLinEcore.g:3934:6: ( RULE_SINGLE_QUOTED_STRING )
                     {
-                    // InternalOCLinEcore.g:3932:6: ( RULE_SINGLE_QUOTED_STRING )
-                    // InternalOCLinEcore.g:3933:1: RULE_SINGLE_QUOTED_STRING
+                    // InternalOCLinEcore.g:3934:6: ( RULE_SINGLE_QUOTED_STRING )
+                    // InternalOCLinEcore.g:3935:1: RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1());
@@ -12575,13 +12575,13 @@
 
 
     // $ANTLR start "rule__DetailCS__ValuesAlternatives_2_0"
-    // InternalOCLinEcore.g:3943:1: rule__DetailCS__ValuesAlternatives_2_0 : ( ( RULE_SINGLE_QUOTED_STRING ) | ( RULE_ML_SINGLE_QUOTED_STRING ) );
+    // InternalOCLinEcore.g:3945:1: rule__DetailCS__ValuesAlternatives_2_0 : ( ( RULE_SINGLE_QUOTED_STRING ) | ( RULE_ML_SINGLE_QUOTED_STRING ) );
     public final void rule__DetailCS__ValuesAlternatives_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3947:1: ( ( RULE_SINGLE_QUOTED_STRING ) | ( RULE_ML_SINGLE_QUOTED_STRING ) )
+            // InternalOCLinEcore.g:3949:1: ( ( RULE_SINGLE_QUOTED_STRING ) | ( RULE_ML_SINGLE_QUOTED_STRING ) )
             int alt17=2;
             int LA17_0 = input.LA(1);
 
@@ -12600,10 +12600,10 @@
             }
             switch (alt17) {
                 case 1 :
-                    // InternalOCLinEcore.g:3948:1: ( RULE_SINGLE_QUOTED_STRING )
+                    // InternalOCLinEcore.g:3950:1: ( RULE_SINGLE_QUOTED_STRING )
                     {
-                    // InternalOCLinEcore.g:3948:1: ( RULE_SINGLE_QUOTED_STRING )
-                    // InternalOCLinEcore.g:3949:1: RULE_SINGLE_QUOTED_STRING
+                    // InternalOCLinEcore.g:3950:1: ( RULE_SINGLE_QUOTED_STRING )
+                    // InternalOCLinEcore.g:3951:1: RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0());
@@ -12619,10 +12619,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3954:6: ( RULE_ML_SINGLE_QUOTED_STRING )
+                    // InternalOCLinEcore.g:3956:6: ( RULE_ML_SINGLE_QUOTED_STRING )
                     {
-                    // InternalOCLinEcore.g:3954:6: ( RULE_ML_SINGLE_QUOTED_STRING )
-                    // InternalOCLinEcore.g:3955:1: RULE_ML_SINGLE_QUOTED_STRING
+                    // InternalOCLinEcore.g:3956:6: ( RULE_ML_SINGLE_QUOTED_STRING )
+                    // InternalOCLinEcore.g:3957:1: RULE_ML_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
@@ -12655,13 +12655,13 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Alternatives_4_1"
-    // InternalOCLinEcore.g:3965:1: rule__EnumerationCS__Alternatives_4_1 : ( ( ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 ) ) | ( '!serializable' ) );
+    // InternalOCLinEcore.g:3967:1: rule__EnumerationCS__Alternatives_4_1 : ( ( ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 ) ) | ( '!serializable' ) );
     public final void rule__EnumerationCS__Alternatives_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3969:1: ( ( ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 ) ) | ( '!serializable' ) )
+            // InternalOCLinEcore.g:3971:1: ( ( ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 ) ) | ( '!serializable' ) )
             int alt18=2;
             int LA18_0 = input.LA(1);
 
@@ -12680,16 +12680,16 @@
             }
             switch (alt18) {
                 case 1 :
-                    // InternalOCLinEcore.g:3970:1: ( ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 ) )
+                    // InternalOCLinEcore.g:3972:1: ( ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 ) )
                     {
-                    // InternalOCLinEcore.g:3970:1: ( ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 ) )
-                    // InternalOCLinEcore.g:3971:1: ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 )
+                    // InternalOCLinEcore.g:3972:1: ( ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 ) )
+                    // InternalOCLinEcore.g:3973:1: ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationCSAccess().getIsSerializableAssignment_4_1_0());
                     }
-                    // InternalOCLinEcore.g:3972:1: ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 )
-                    // InternalOCLinEcore.g:3972:2: rule__EnumerationCS__IsSerializableAssignment_4_1_0
+                    // InternalOCLinEcore.g:3974:1: ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 )
+                    // InternalOCLinEcore.g:3974:2: rule__EnumerationCS__IsSerializableAssignment_4_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationCS__IsSerializableAssignment_4_1_0();
@@ -12709,10 +12709,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:3976:6: ( '!serializable' )
+                    // InternalOCLinEcore.g:3978:6: ( '!serializable' )
                     {
-                    // InternalOCLinEcore.g:3976:6: ( '!serializable' )
-                    // InternalOCLinEcore.g:3977:1: '!serializable'
+                    // InternalOCLinEcore.g:3978:6: ( '!serializable' )
+                    // InternalOCLinEcore.g:3979:1: '!serializable'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationCSAccess().getSerializableKeyword_4_1_1());
@@ -12745,13 +12745,13 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Alternatives_5"
-    // InternalOCLinEcore.g:3989:1: rule__EnumerationCS__Alternatives_5 : ( ( ( rule__EnumerationCS__Group_5_0__0 ) ) | ( ';' ) );
+    // InternalOCLinEcore.g:3991:1: rule__EnumerationCS__Alternatives_5 : ( ( ( rule__EnumerationCS__Group_5_0__0 ) ) | ( ';' ) );
     public final void rule__EnumerationCS__Alternatives_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:3993:1: ( ( ( rule__EnumerationCS__Group_5_0__0 ) ) | ( ';' ) )
+            // InternalOCLinEcore.g:3995:1: ( ( ( rule__EnumerationCS__Group_5_0__0 ) ) | ( ';' ) )
             int alt19=2;
             int LA19_0 = input.LA(1);
 
@@ -12770,16 +12770,16 @@
             }
             switch (alt19) {
                 case 1 :
-                    // InternalOCLinEcore.g:3994:1: ( ( rule__EnumerationCS__Group_5_0__0 ) )
+                    // InternalOCLinEcore.g:3996:1: ( ( rule__EnumerationCS__Group_5_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:3994:1: ( ( rule__EnumerationCS__Group_5_0__0 ) )
-                    // InternalOCLinEcore.g:3995:1: ( rule__EnumerationCS__Group_5_0__0 )
+                    // InternalOCLinEcore.g:3996:1: ( ( rule__EnumerationCS__Group_5_0__0 ) )
+                    // InternalOCLinEcore.g:3997:1: ( rule__EnumerationCS__Group_5_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationCSAccess().getGroup_5_0());
                     }
-                    // InternalOCLinEcore.g:3996:1: ( rule__EnumerationCS__Group_5_0__0 )
-                    // InternalOCLinEcore.g:3996:2: rule__EnumerationCS__Group_5_0__0
+                    // InternalOCLinEcore.g:3998:1: ( rule__EnumerationCS__Group_5_0__0 )
+                    // InternalOCLinEcore.g:3998:2: rule__EnumerationCS__Group_5_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationCS__Group_5_0__0();
@@ -12799,10 +12799,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4000:6: ( ';' )
+                    // InternalOCLinEcore.g:4002:6: ( ';' )
                     {
-                    // InternalOCLinEcore.g:4000:6: ( ';' )
-                    // InternalOCLinEcore.g:4001:1: ';'
+                    // InternalOCLinEcore.g:4002:6: ( ';' )
+                    // InternalOCLinEcore.g:4003:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationCSAccess().getSemicolonKeyword_5_1());
@@ -12835,13 +12835,13 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Alternatives_5_0_1"
-    // InternalOCLinEcore.g:4013:1: rule__EnumerationCS__Alternatives_5_0_1 : ( ( ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 ) ) | ( ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 ) ) | ( ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 ) ) );
+    // InternalOCLinEcore.g:4015:1: rule__EnumerationCS__Alternatives_5_0_1 : ( ( ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 ) ) | ( ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 ) ) | ( ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 ) ) );
     public final void rule__EnumerationCS__Alternatives_5_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4017:1: ( ( ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 ) ) | ( ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 ) ) | ( ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 ) ) )
+            // InternalOCLinEcore.g:4019:1: ( ( ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 ) ) | ( ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 ) ) | ( ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 ) ) )
             int alt20=3;
             switch ( input.LA(1) ) {
             case 54:
@@ -12926,16 +12926,16 @@
 
             switch (alt20) {
                 case 1 :
-                    // InternalOCLinEcore.g:4018:1: ( ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 ) )
+                    // InternalOCLinEcore.g:4020:1: ( ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 ) )
                     {
-                    // InternalOCLinEcore.g:4018:1: ( ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 ) )
-                    // InternalOCLinEcore.g:4019:1: ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 )
+                    // InternalOCLinEcore.g:4020:1: ( ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 ) )
+                    // InternalOCLinEcore.g:4021:1: ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAssignment_5_0_1_0());
                     }
-                    // InternalOCLinEcore.g:4020:1: ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 )
-                    // InternalOCLinEcore.g:4020:2: rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0
+                    // InternalOCLinEcore.g:4022:1: ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 )
+                    // InternalOCLinEcore.g:4022:2: rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0();
@@ -12955,16 +12955,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4024:6: ( ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 ) )
+                    // InternalOCLinEcore.g:4026:6: ( ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 ) )
                     {
-                    // InternalOCLinEcore.g:4024:6: ( ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 ) )
-                    // InternalOCLinEcore.g:4025:1: ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 )
+                    // InternalOCLinEcore.g:4026:6: ( ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 ) )
+                    // InternalOCLinEcore.g:4027:1: ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsAssignment_5_0_1_1());
                     }
-                    // InternalOCLinEcore.g:4026:1: ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 )
-                    // InternalOCLinEcore.g:4026:2: rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1
+                    // InternalOCLinEcore.g:4028:1: ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 )
+                    // InternalOCLinEcore.g:4028:2: rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1();
@@ -12984,16 +12984,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4030:6: ( ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 ) )
+                    // InternalOCLinEcore.g:4032:6: ( ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 ) )
                     {
-                    // InternalOCLinEcore.g:4030:6: ( ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 ) )
-                    // InternalOCLinEcore.g:4031:1: ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 )
+                    // InternalOCLinEcore.g:4032:6: ( ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 ) )
+                    // InternalOCLinEcore.g:4033:1: ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsAssignment_5_0_1_2());
                     }
-                    // InternalOCLinEcore.g:4032:1: ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 )
-                    // InternalOCLinEcore.g:4032:2: rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2
+                    // InternalOCLinEcore.g:4034:1: ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 )
+                    // InternalOCLinEcore.g:4034:2: rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2();
@@ -13030,13 +13030,13 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Alternatives_0"
-    // InternalOCLinEcore.g:4041:1: rule__EnumerationLiteralCS__Alternatives_0 : ( ( ( rule__EnumerationLiteralCS__Group_0_0__0 ) ) | ( ( rule__EnumerationLiteralCS__NameAssignment_0_1 ) ) );
+    // InternalOCLinEcore.g:4043:1: rule__EnumerationLiteralCS__Alternatives_0 : ( ( ( rule__EnumerationLiteralCS__Group_0_0__0 ) ) | ( ( rule__EnumerationLiteralCS__NameAssignment_0_1 ) ) );
     public final void rule__EnumerationLiteralCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4045:1: ( ( ( rule__EnumerationLiteralCS__Group_0_0__0 ) ) | ( ( rule__EnumerationLiteralCS__NameAssignment_0_1 ) ) )
+            // InternalOCLinEcore.g:4047:1: ( ( ( rule__EnumerationLiteralCS__Group_0_0__0 ) ) | ( ( rule__EnumerationLiteralCS__NameAssignment_0_1 ) ) )
             int alt21=2;
             int LA21_0 = input.LA(1);
 
@@ -13055,16 +13055,16 @@
             }
             switch (alt21) {
                 case 1 :
-                    // InternalOCLinEcore.g:4046:1: ( ( rule__EnumerationLiteralCS__Group_0_0__0 ) )
+                    // InternalOCLinEcore.g:4048:1: ( ( rule__EnumerationLiteralCS__Group_0_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:4046:1: ( ( rule__EnumerationLiteralCS__Group_0_0__0 ) )
-                    // InternalOCLinEcore.g:4047:1: ( rule__EnumerationLiteralCS__Group_0_0__0 )
+                    // InternalOCLinEcore.g:4048:1: ( ( rule__EnumerationLiteralCS__Group_0_0__0 ) )
+                    // InternalOCLinEcore.g:4049:1: ( rule__EnumerationLiteralCS__Group_0_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralCSAccess().getGroup_0_0());
                     }
-                    // InternalOCLinEcore.g:4048:1: ( rule__EnumerationLiteralCS__Group_0_0__0 )
-                    // InternalOCLinEcore.g:4048:2: rule__EnumerationLiteralCS__Group_0_0__0
+                    // InternalOCLinEcore.g:4050:1: ( rule__EnumerationLiteralCS__Group_0_0__0 )
+                    // InternalOCLinEcore.g:4050:2: rule__EnumerationLiteralCS__Group_0_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationLiteralCS__Group_0_0__0();
@@ -13084,16 +13084,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4052:6: ( ( rule__EnumerationLiteralCS__NameAssignment_0_1 ) )
+                    // InternalOCLinEcore.g:4054:6: ( ( rule__EnumerationLiteralCS__NameAssignment_0_1 ) )
                     {
-                    // InternalOCLinEcore.g:4052:6: ( ( rule__EnumerationLiteralCS__NameAssignment_0_1 ) )
-                    // InternalOCLinEcore.g:4053:1: ( rule__EnumerationLiteralCS__NameAssignment_0_1 )
+                    // InternalOCLinEcore.g:4054:6: ( ( rule__EnumerationLiteralCS__NameAssignment_0_1 ) )
+                    // InternalOCLinEcore.g:4055:1: ( rule__EnumerationLiteralCS__NameAssignment_0_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralCSAccess().getNameAssignment_0_1());
                     }
-                    // InternalOCLinEcore.g:4054:1: ( rule__EnumerationLiteralCS__NameAssignment_0_1 )
-                    // InternalOCLinEcore.g:4054:2: rule__EnumerationLiteralCS__NameAssignment_0_1
+                    // InternalOCLinEcore.g:4056:1: ( rule__EnumerationLiteralCS__NameAssignment_0_1 )
+                    // InternalOCLinEcore.g:4056:2: rule__EnumerationLiteralCS__NameAssignment_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationLiteralCS__NameAssignment_0_1();
@@ -13130,13 +13130,13 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Alternatives_3"
-    // InternalOCLinEcore.g:4063:1: rule__EnumerationLiteralCS__Alternatives_3 : ( ( ( rule__EnumerationLiteralCS__Group_3_0__0 ) ) | ( ';' ) );
+    // InternalOCLinEcore.g:4065:1: rule__EnumerationLiteralCS__Alternatives_3 : ( ( ( rule__EnumerationLiteralCS__Group_3_0__0 ) ) | ( ';' ) );
     public final void rule__EnumerationLiteralCS__Alternatives_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4067:1: ( ( ( rule__EnumerationLiteralCS__Group_3_0__0 ) ) | ( ';' ) )
+            // InternalOCLinEcore.g:4069:1: ( ( ( rule__EnumerationLiteralCS__Group_3_0__0 ) ) | ( ';' ) )
             int alt22=2;
             int LA22_0 = input.LA(1);
 
@@ -13155,16 +13155,16 @@
             }
             switch (alt22) {
                 case 1 :
-                    // InternalOCLinEcore.g:4068:1: ( ( rule__EnumerationLiteralCS__Group_3_0__0 ) )
+                    // InternalOCLinEcore.g:4070:1: ( ( rule__EnumerationLiteralCS__Group_3_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:4068:1: ( ( rule__EnumerationLiteralCS__Group_3_0__0 ) )
-                    // InternalOCLinEcore.g:4069:1: ( rule__EnumerationLiteralCS__Group_3_0__0 )
+                    // InternalOCLinEcore.g:4070:1: ( ( rule__EnumerationLiteralCS__Group_3_0__0 ) )
+                    // InternalOCLinEcore.g:4071:1: ( rule__EnumerationLiteralCS__Group_3_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralCSAccess().getGroup_3_0());
                     }
-                    // InternalOCLinEcore.g:4070:1: ( rule__EnumerationLiteralCS__Group_3_0__0 )
-                    // InternalOCLinEcore.g:4070:2: rule__EnumerationLiteralCS__Group_3_0__0
+                    // InternalOCLinEcore.g:4072:1: ( rule__EnumerationLiteralCS__Group_3_0__0 )
+                    // InternalOCLinEcore.g:4072:2: rule__EnumerationLiteralCS__Group_3_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationLiteralCS__Group_3_0__0();
@@ -13184,10 +13184,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4074:6: ( ';' )
+                    // InternalOCLinEcore.g:4076:6: ( ';' )
                     {
-                    // InternalOCLinEcore.g:4074:6: ( ';' )
-                    // InternalOCLinEcore.g:4075:1: ';'
+                    // InternalOCLinEcore.g:4076:6: ( ';' )
+                    // InternalOCLinEcore.g:4077:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEnumerationLiteralCSAccess().getSemicolonKeyword_3_1());
@@ -13220,13 +13220,13 @@
 
 
     // $ANTLR start "rule__ImportCS__Alternatives_0"
-    // InternalOCLinEcore.g:4087:1: rule__ImportCS__Alternatives_0 : ( ( 'import' ) | ( 'library' ) );
+    // InternalOCLinEcore.g:4089:1: rule__ImportCS__Alternatives_0 : ( ( 'import' ) | ( 'library' ) );
     public final void rule__ImportCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4091:1: ( ( 'import' ) | ( 'library' ) )
+            // InternalOCLinEcore.g:4093:1: ( ( 'import' ) | ( 'library' ) )
             int alt23=2;
             int LA23_0 = input.LA(1);
 
@@ -13245,10 +13245,10 @@
             }
             switch (alt23) {
                 case 1 :
-                    // InternalOCLinEcore.g:4092:1: ( 'import' )
+                    // InternalOCLinEcore.g:4094:1: ( 'import' )
                     {
-                    // InternalOCLinEcore.g:4092:1: ( 'import' )
-                    // InternalOCLinEcore.g:4093:1: 'import'
+                    // InternalOCLinEcore.g:4094:1: ( 'import' )
+                    // InternalOCLinEcore.g:4095:1: 'import'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getImportCSAccess().getImportKeyword_0_0());
@@ -13264,10 +13264,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4100:6: ( 'library' )
+                    // InternalOCLinEcore.g:4102:6: ( 'library' )
                     {
-                    // InternalOCLinEcore.g:4100:6: ( 'library' )
-                    // InternalOCLinEcore.g:4101:1: 'library'
+                    // InternalOCLinEcore.g:4102:6: ( 'library' )
+                    // InternalOCLinEcore.g:4103:1: 'library'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getImportCSAccess().getLibraryKeyword_0_1());
@@ -13300,21 +13300,21 @@
 
 
     // $ANTLR start "rule__ModelElementCS__Alternatives"
-    // InternalOCLinEcore.g:4113:1: rule__ModelElementCS__Alternatives : ( ( ruleClassCS ) | ( ruleEnumerationLiteralCS ) | ( ruleOperationCS ) | ( rulePackageCS ) | ( ruleStructuralFeatureCS ) );
+    // InternalOCLinEcore.g:4115:1: rule__ModelElementCS__Alternatives : ( ( ruleClassCS ) | ( ruleEnumerationLiteralCS ) | ( ruleOperationCS ) | ( rulePackageCS ) | ( ruleStructuralFeatureCS ) );
     public final void rule__ModelElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4117:1: ( ( ruleClassCS ) | ( ruleEnumerationLiteralCS ) | ( ruleOperationCS ) | ( rulePackageCS ) | ( ruleStructuralFeatureCS ) )
+            // InternalOCLinEcore.g:4119:1: ( ( ruleClassCS ) | ( ruleEnumerationLiteralCS ) | ( ruleOperationCS ) | ( rulePackageCS ) | ( ruleStructuralFeatureCS ) )
             int alt24=5;
             alt24 = dfa24.predict(input);
             switch (alt24) {
                 case 1 :
-                    // InternalOCLinEcore.g:4118:1: ( ruleClassCS )
+                    // InternalOCLinEcore.g:4120:1: ( ruleClassCS )
                     {
-                    // InternalOCLinEcore.g:4118:1: ( ruleClassCS )
-                    // InternalOCLinEcore.g:4119:1: ruleClassCS
+                    // InternalOCLinEcore.g:4120:1: ( ruleClassCS )
+                    // InternalOCLinEcore.g:4121:1: ruleClassCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getModelElementCSAccess().getClassCSParserRuleCall_0());
@@ -13334,10 +13334,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4124:6: ( ruleEnumerationLiteralCS )
+                    // InternalOCLinEcore.g:4126:6: ( ruleEnumerationLiteralCS )
                     {
-                    // InternalOCLinEcore.g:4124:6: ( ruleEnumerationLiteralCS )
-                    // InternalOCLinEcore.g:4125:1: ruleEnumerationLiteralCS
+                    // InternalOCLinEcore.g:4126:6: ( ruleEnumerationLiteralCS )
+                    // InternalOCLinEcore.g:4127:1: ruleEnumerationLiteralCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getModelElementCSAccess().getEnumerationLiteralCSParserRuleCall_1());
@@ -13357,10 +13357,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4130:6: ( ruleOperationCS )
+                    // InternalOCLinEcore.g:4132:6: ( ruleOperationCS )
                     {
-                    // InternalOCLinEcore.g:4130:6: ( ruleOperationCS )
-                    // InternalOCLinEcore.g:4131:1: ruleOperationCS
+                    // InternalOCLinEcore.g:4132:6: ( ruleOperationCS )
+                    // InternalOCLinEcore.g:4133:1: ruleOperationCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getModelElementCSAccess().getOperationCSParserRuleCall_2());
@@ -13380,10 +13380,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:4136:6: ( rulePackageCS )
+                    // InternalOCLinEcore.g:4138:6: ( rulePackageCS )
                     {
-                    // InternalOCLinEcore.g:4136:6: ( rulePackageCS )
-                    // InternalOCLinEcore.g:4137:1: rulePackageCS
+                    // InternalOCLinEcore.g:4138:6: ( rulePackageCS )
+                    // InternalOCLinEcore.g:4139:1: rulePackageCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getModelElementCSAccess().getPackageCSParserRuleCall_3());
@@ -13403,10 +13403,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:4142:6: ( ruleStructuralFeatureCS )
+                    // InternalOCLinEcore.g:4144:6: ( ruleStructuralFeatureCS )
                     {
-                    // InternalOCLinEcore.g:4142:6: ( ruleStructuralFeatureCS )
-                    // InternalOCLinEcore.g:4143:1: ruleStructuralFeatureCS
+                    // InternalOCLinEcore.g:4144:6: ( ruleStructuralFeatureCS )
+                    // InternalOCLinEcore.g:4145:1: ruleStructuralFeatureCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getModelElementCSAccess().getStructuralFeatureCSParserRuleCall_4());
@@ -13443,13 +13443,13 @@
 
 
     // $ANTLR start "rule__OperationCS__Alternatives_0"
-    // InternalOCLinEcore.g:4153:1: rule__OperationCS__Alternatives_0 : ( ( ( rule__OperationCS__Group_0_0__0 ) ) | ( ( rule__OperationCS__Group_0_1__0 ) ) );
+    // InternalOCLinEcore.g:4155:1: rule__OperationCS__Alternatives_0 : ( ( ( rule__OperationCS__Group_0_0__0 ) ) | ( ( rule__OperationCS__Group_0_1__0 ) ) );
     public final void rule__OperationCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4157:1: ( ( ( rule__OperationCS__Group_0_0__0 ) ) | ( ( rule__OperationCS__Group_0_1__0 ) ) )
+            // InternalOCLinEcore.g:4159:1: ( ( ( rule__OperationCS__Group_0_0__0 ) ) | ( ( rule__OperationCS__Group_0_1__0 ) ) )
             int alt25=2;
             int LA25_0 = input.LA(1);
 
@@ -13468,16 +13468,16 @@
             }
             switch (alt25) {
                 case 1 :
-                    // InternalOCLinEcore.g:4158:1: ( ( rule__OperationCS__Group_0_0__0 ) )
+                    // InternalOCLinEcore.g:4160:1: ( ( rule__OperationCS__Group_0_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:4158:1: ( ( rule__OperationCS__Group_0_0__0 ) )
-                    // InternalOCLinEcore.g:4159:1: ( rule__OperationCS__Group_0_0__0 )
+                    // InternalOCLinEcore.g:4160:1: ( ( rule__OperationCS__Group_0_0__0 ) )
+                    // InternalOCLinEcore.g:4161:1: ( rule__OperationCS__Group_0_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getGroup_0_0());
                     }
-                    // InternalOCLinEcore.g:4160:1: ( rule__OperationCS__Group_0_0__0 )
-                    // InternalOCLinEcore.g:4160:2: rule__OperationCS__Group_0_0__0
+                    // InternalOCLinEcore.g:4162:1: ( rule__OperationCS__Group_0_0__0 )
+                    // InternalOCLinEcore.g:4162:2: rule__OperationCS__Group_0_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__Group_0_0__0();
@@ -13497,16 +13497,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4164:6: ( ( rule__OperationCS__Group_0_1__0 ) )
+                    // InternalOCLinEcore.g:4166:6: ( ( rule__OperationCS__Group_0_1__0 ) )
                     {
-                    // InternalOCLinEcore.g:4164:6: ( ( rule__OperationCS__Group_0_1__0 ) )
-                    // InternalOCLinEcore.g:4165:1: ( rule__OperationCS__Group_0_1__0 )
+                    // InternalOCLinEcore.g:4166:6: ( ( rule__OperationCS__Group_0_1__0 ) )
+                    // InternalOCLinEcore.g:4167:1: ( rule__OperationCS__Group_0_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getGroup_0_1());
                     }
-                    // InternalOCLinEcore.g:4166:1: ( rule__OperationCS__Group_0_1__0 )
-                    // InternalOCLinEcore.g:4166:2: rule__OperationCS__Group_0_1__0
+                    // InternalOCLinEcore.g:4168:1: ( rule__OperationCS__Group_0_1__0 )
+                    // InternalOCLinEcore.g:4168:2: rule__OperationCS__Group_0_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__Group_0_1__0();
@@ -13543,13 +13543,13 @@
 
 
     // $ANTLR start "rule__OperationCS__Alternatives_9_1_0"
-    // InternalOCLinEcore.g:4175:1: rule__OperationCS__Alternatives_9_1_0 : ( ( ( rule__OperationCS__QualifiersAssignment_9_1_0_0 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_1 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_2 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_3 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_4 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_5 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_6 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_7 ) ) );
+    // InternalOCLinEcore.g:4177:1: rule__OperationCS__Alternatives_9_1_0 : ( ( ( rule__OperationCS__QualifiersAssignment_9_1_0_0 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_1 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_2 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_3 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_4 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_5 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_6 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_7 ) ) );
     public final void rule__OperationCS__Alternatives_9_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4179:1: ( ( ( rule__OperationCS__QualifiersAssignment_9_1_0_0 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_1 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_2 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_3 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_4 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_5 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_6 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_7 ) ) )
+            // InternalOCLinEcore.g:4181:1: ( ( ( rule__OperationCS__QualifiersAssignment_9_1_0_0 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_1 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_2 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_3 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_4 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_5 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_6 ) ) | ( ( rule__OperationCS__QualifiersAssignment_9_1_0_7 ) ) )
             int alt26=8;
             switch ( input.LA(1) ) {
             case 26:
@@ -13602,16 +13602,16 @@
 
             switch (alt26) {
                 case 1 :
-                    // InternalOCLinEcore.g:4180:1: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_0 ) )
+                    // InternalOCLinEcore.g:4182:1: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_0 ) )
                     {
-                    // InternalOCLinEcore.g:4180:1: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_0 ) )
-                    // InternalOCLinEcore.g:4181:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_0 )
+                    // InternalOCLinEcore.g:4182:1: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_0 ) )
+                    // InternalOCLinEcore.g:4183:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_0());
                     }
-                    // InternalOCLinEcore.g:4182:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_0 )
-                    // InternalOCLinEcore.g:4182:2: rule__OperationCS__QualifiersAssignment_9_1_0_0
+                    // InternalOCLinEcore.g:4184:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_0 )
+                    // InternalOCLinEcore.g:4184:2: rule__OperationCS__QualifiersAssignment_9_1_0_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__QualifiersAssignment_9_1_0_0();
@@ -13631,16 +13631,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4186:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_1 ) )
+                    // InternalOCLinEcore.g:4188:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_1 ) )
                     {
-                    // InternalOCLinEcore.g:4186:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_1 ) )
-                    // InternalOCLinEcore.g:4187:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_1 )
+                    // InternalOCLinEcore.g:4188:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_1 ) )
+                    // InternalOCLinEcore.g:4189:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_1());
                     }
-                    // InternalOCLinEcore.g:4188:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_1 )
-                    // InternalOCLinEcore.g:4188:2: rule__OperationCS__QualifiersAssignment_9_1_0_1
+                    // InternalOCLinEcore.g:4190:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_1 )
+                    // InternalOCLinEcore.g:4190:2: rule__OperationCS__QualifiersAssignment_9_1_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__QualifiersAssignment_9_1_0_1();
@@ -13660,16 +13660,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4192:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_2 ) )
+                    // InternalOCLinEcore.g:4194:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_2 ) )
                     {
-                    // InternalOCLinEcore.g:4192:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_2 ) )
-                    // InternalOCLinEcore.g:4193:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_2 )
+                    // InternalOCLinEcore.g:4194:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_2 ) )
+                    // InternalOCLinEcore.g:4195:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_2());
                     }
-                    // InternalOCLinEcore.g:4194:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_2 )
-                    // InternalOCLinEcore.g:4194:2: rule__OperationCS__QualifiersAssignment_9_1_0_2
+                    // InternalOCLinEcore.g:4196:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_2 )
+                    // InternalOCLinEcore.g:4196:2: rule__OperationCS__QualifiersAssignment_9_1_0_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__QualifiersAssignment_9_1_0_2();
@@ -13689,16 +13689,16 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:4198:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_3 ) )
+                    // InternalOCLinEcore.g:4200:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_3 ) )
                     {
-                    // InternalOCLinEcore.g:4198:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_3 ) )
-                    // InternalOCLinEcore.g:4199:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_3 )
+                    // InternalOCLinEcore.g:4200:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_3 ) )
+                    // InternalOCLinEcore.g:4201:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_3 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_3());
                     }
-                    // InternalOCLinEcore.g:4200:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_3 )
-                    // InternalOCLinEcore.g:4200:2: rule__OperationCS__QualifiersAssignment_9_1_0_3
+                    // InternalOCLinEcore.g:4202:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_3 )
+                    // InternalOCLinEcore.g:4202:2: rule__OperationCS__QualifiersAssignment_9_1_0_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__QualifiersAssignment_9_1_0_3();
@@ -13718,16 +13718,16 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:4204:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_4 ) )
+                    // InternalOCLinEcore.g:4206:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_4 ) )
                     {
-                    // InternalOCLinEcore.g:4204:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_4 ) )
-                    // InternalOCLinEcore.g:4205:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_4 )
+                    // InternalOCLinEcore.g:4206:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_4 ) )
+                    // InternalOCLinEcore.g:4207:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_4 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_4());
                     }
-                    // InternalOCLinEcore.g:4206:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_4 )
-                    // InternalOCLinEcore.g:4206:2: rule__OperationCS__QualifiersAssignment_9_1_0_4
+                    // InternalOCLinEcore.g:4208:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_4 )
+                    // InternalOCLinEcore.g:4208:2: rule__OperationCS__QualifiersAssignment_9_1_0_4
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__QualifiersAssignment_9_1_0_4();
@@ -13747,16 +13747,16 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLinEcore.g:4210:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_5 ) )
+                    // InternalOCLinEcore.g:4212:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_5 ) )
                     {
-                    // InternalOCLinEcore.g:4210:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_5 ) )
-                    // InternalOCLinEcore.g:4211:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_5 )
+                    // InternalOCLinEcore.g:4212:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_5 ) )
+                    // InternalOCLinEcore.g:4213:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_5 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_5());
                     }
-                    // InternalOCLinEcore.g:4212:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_5 )
-                    // InternalOCLinEcore.g:4212:2: rule__OperationCS__QualifiersAssignment_9_1_0_5
+                    // InternalOCLinEcore.g:4214:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_5 )
+                    // InternalOCLinEcore.g:4214:2: rule__OperationCS__QualifiersAssignment_9_1_0_5
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__QualifiersAssignment_9_1_0_5();
@@ -13776,16 +13776,16 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLinEcore.g:4216:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_6 ) )
+                    // InternalOCLinEcore.g:4218:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_6 ) )
                     {
-                    // InternalOCLinEcore.g:4216:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_6 ) )
-                    // InternalOCLinEcore.g:4217:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_6 )
+                    // InternalOCLinEcore.g:4218:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_6 ) )
+                    // InternalOCLinEcore.g:4219:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_6 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_6());
                     }
-                    // InternalOCLinEcore.g:4218:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_6 )
-                    // InternalOCLinEcore.g:4218:2: rule__OperationCS__QualifiersAssignment_9_1_0_6
+                    // InternalOCLinEcore.g:4220:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_6 )
+                    // InternalOCLinEcore.g:4220:2: rule__OperationCS__QualifiersAssignment_9_1_0_6
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__QualifiersAssignment_9_1_0_6();
@@ -13805,16 +13805,16 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLinEcore.g:4222:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_7 ) )
+                    // InternalOCLinEcore.g:4224:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_7 ) )
                     {
-                    // InternalOCLinEcore.g:4222:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_7 ) )
-                    // InternalOCLinEcore.g:4223:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_7 )
+                    // InternalOCLinEcore.g:4224:6: ( ( rule__OperationCS__QualifiersAssignment_9_1_0_7 ) )
+                    // InternalOCLinEcore.g:4225:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_7 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_7());
                     }
-                    // InternalOCLinEcore.g:4224:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_7 )
-                    // InternalOCLinEcore.g:4224:2: rule__OperationCS__QualifiersAssignment_9_1_0_7
+                    // InternalOCLinEcore.g:4226:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_7 )
+                    // InternalOCLinEcore.g:4226:2: rule__OperationCS__QualifiersAssignment_9_1_0_7
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__QualifiersAssignment_9_1_0_7();
@@ -13851,13 +13851,13 @@
 
 
     // $ANTLR start "rule__OperationCS__Alternatives_10"
-    // InternalOCLinEcore.g:4233:1: rule__OperationCS__Alternatives_10 : ( ( ( rule__OperationCS__Group_10_0__0 ) ) | ( ';' ) );
+    // InternalOCLinEcore.g:4235:1: rule__OperationCS__Alternatives_10 : ( ( ( rule__OperationCS__Group_10_0__0 ) ) | ( ';' ) );
     public final void rule__OperationCS__Alternatives_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4237:1: ( ( ( rule__OperationCS__Group_10_0__0 ) ) | ( ';' ) )
+            // InternalOCLinEcore.g:4239:1: ( ( ( rule__OperationCS__Group_10_0__0 ) ) | ( ';' ) )
             int alt27=2;
             int LA27_0 = input.LA(1);
 
@@ -13876,16 +13876,16 @@
             }
             switch (alt27) {
                 case 1 :
-                    // InternalOCLinEcore.g:4238:1: ( ( rule__OperationCS__Group_10_0__0 ) )
+                    // InternalOCLinEcore.g:4240:1: ( ( rule__OperationCS__Group_10_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:4238:1: ( ( rule__OperationCS__Group_10_0__0 ) )
-                    // InternalOCLinEcore.g:4239:1: ( rule__OperationCS__Group_10_0__0 )
+                    // InternalOCLinEcore.g:4240:1: ( ( rule__OperationCS__Group_10_0__0 ) )
+                    // InternalOCLinEcore.g:4241:1: ( rule__OperationCS__Group_10_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getGroup_10_0());
                     }
-                    // InternalOCLinEcore.g:4240:1: ( rule__OperationCS__Group_10_0__0 )
-                    // InternalOCLinEcore.g:4240:2: rule__OperationCS__Group_10_0__0
+                    // InternalOCLinEcore.g:4242:1: ( rule__OperationCS__Group_10_0__0 )
+                    // InternalOCLinEcore.g:4242:2: rule__OperationCS__Group_10_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__Group_10_0__0();
@@ -13905,10 +13905,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4244:6: ( ';' )
+                    // InternalOCLinEcore.g:4246:6: ( ';' )
                     {
-                    // InternalOCLinEcore.g:4244:6: ( ';' )
-                    // InternalOCLinEcore.g:4245:1: ';'
+                    // InternalOCLinEcore.g:4246:6: ( ';' )
+                    // InternalOCLinEcore.g:4247:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_1());
@@ -13941,13 +13941,13 @@
 
 
     // $ANTLR start "rule__OperationCS__Alternatives_10_0_1"
-    // InternalOCLinEcore.g:4257:1: rule__OperationCS__Alternatives_10_0_1 : ( ( ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 ) ) | ( ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 ) ) | ( ( rule__OperationCS__Group_10_0_1_2__0 ) ) | ( ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 ) ) );
+    // InternalOCLinEcore.g:4259:1: rule__OperationCS__Alternatives_10_0_1 : ( ( ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 ) ) | ( ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 ) ) | ( ( rule__OperationCS__Group_10_0_1_2__0 ) ) | ( ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 ) ) );
     public final void rule__OperationCS__Alternatives_10_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4261:1: ( ( ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 ) ) | ( ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 ) ) | ( ( rule__OperationCS__Group_10_0_1_2__0 ) ) | ( ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 ) ) )
+            // InternalOCLinEcore.g:4263:1: ( ( ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 ) ) | ( ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 ) ) | ( ( rule__OperationCS__Group_10_0_1_2__0 ) ) | ( ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 ) ) )
             int alt28=4;
             switch ( input.LA(1) ) {
             case 54:
@@ -13982,16 +13982,16 @@
 
             switch (alt28) {
                 case 1 :
-                    // InternalOCLinEcore.g:4262:1: ( ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 ) )
+                    // InternalOCLinEcore.g:4264:1: ( ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 ) )
                     {
-                    // InternalOCLinEcore.g:4262:1: ( ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 ) )
-                    // InternalOCLinEcore.g:4263:1: ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 )
+                    // InternalOCLinEcore.g:4264:1: ( ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 ) )
+                    // InternalOCLinEcore.g:4265:1: ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAssignment_10_0_1_0());
                     }
-                    // InternalOCLinEcore.g:4264:1: ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 )
-                    // InternalOCLinEcore.g:4264:2: rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0
+                    // InternalOCLinEcore.g:4266:1: ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 )
+                    // InternalOCLinEcore.g:4266:2: rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0();
@@ -14011,16 +14011,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4268:6: ( ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 ) )
+                    // InternalOCLinEcore.g:4270:6: ( ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 ) )
                     {
-                    // InternalOCLinEcore.g:4268:6: ( ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 ) )
-                    // InternalOCLinEcore.g:4269:1: ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 )
+                    // InternalOCLinEcore.g:4270:6: ( ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 ) )
+                    // InternalOCLinEcore.g:4271:1: ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getOwnedPreconditionsAssignment_10_0_1_1());
                     }
-                    // InternalOCLinEcore.g:4270:1: ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 )
-                    // InternalOCLinEcore.g:4270:2: rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1
+                    // InternalOCLinEcore.g:4272:1: ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 )
+                    // InternalOCLinEcore.g:4272:2: rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1();
@@ -14040,16 +14040,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4274:6: ( ( rule__OperationCS__Group_10_0_1_2__0 ) )
+                    // InternalOCLinEcore.g:4276:6: ( ( rule__OperationCS__Group_10_0_1_2__0 ) )
                     {
-                    // InternalOCLinEcore.g:4274:6: ( ( rule__OperationCS__Group_10_0_1_2__0 ) )
-                    // InternalOCLinEcore.g:4275:1: ( rule__OperationCS__Group_10_0_1_2__0 )
+                    // InternalOCLinEcore.g:4276:6: ( ( rule__OperationCS__Group_10_0_1_2__0 ) )
+                    // InternalOCLinEcore.g:4277:1: ( rule__OperationCS__Group_10_0_1_2__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getGroup_10_0_1_2());
                     }
-                    // InternalOCLinEcore.g:4276:1: ( rule__OperationCS__Group_10_0_1_2__0 )
-                    // InternalOCLinEcore.g:4276:2: rule__OperationCS__Group_10_0_1_2__0
+                    // InternalOCLinEcore.g:4278:1: ( rule__OperationCS__Group_10_0_1_2__0 )
+                    // InternalOCLinEcore.g:4278:2: rule__OperationCS__Group_10_0_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__Group_10_0_1_2__0();
@@ -14069,16 +14069,16 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:4280:6: ( ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 ) )
+                    // InternalOCLinEcore.g:4282:6: ( ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 ) )
                     {
-                    // InternalOCLinEcore.g:4280:6: ( ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 ) )
-                    // InternalOCLinEcore.g:4281:1: ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 )
+                    // InternalOCLinEcore.g:4282:6: ( ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 ) )
+                    // InternalOCLinEcore.g:4283:1: ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getOwnedPostconditionsAssignment_10_0_1_3());
                     }
-                    // InternalOCLinEcore.g:4282:1: ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 )
-                    // InternalOCLinEcore.g:4282:2: rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3
+                    // InternalOCLinEcore.g:4284:1: ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 )
+                    // InternalOCLinEcore.g:4284:2: rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3();
@@ -14115,13 +14115,13 @@
 
 
     // $ANTLR start "rule__PackageCS__Alternatives_4"
-    // InternalOCLinEcore.g:4291:1: rule__PackageCS__Alternatives_4 : ( ( ( rule__PackageCS__Group_4_0__0 ) ) | ( ';' ) );
+    // InternalOCLinEcore.g:4293:1: rule__PackageCS__Alternatives_4 : ( ( ( rule__PackageCS__Group_4_0__0 ) ) | ( ';' ) );
     public final void rule__PackageCS__Alternatives_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4295:1: ( ( ( rule__PackageCS__Group_4_0__0 ) ) | ( ';' ) )
+            // InternalOCLinEcore.g:4297:1: ( ( ( rule__PackageCS__Group_4_0__0 ) ) | ( ';' ) )
             int alt29=2;
             int LA29_0 = input.LA(1);
 
@@ -14140,16 +14140,16 @@
             }
             switch (alt29) {
                 case 1 :
-                    // InternalOCLinEcore.g:4296:1: ( ( rule__PackageCS__Group_4_0__0 ) )
+                    // InternalOCLinEcore.g:4298:1: ( ( rule__PackageCS__Group_4_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:4296:1: ( ( rule__PackageCS__Group_4_0__0 ) )
-                    // InternalOCLinEcore.g:4297:1: ( rule__PackageCS__Group_4_0__0 )
+                    // InternalOCLinEcore.g:4298:1: ( ( rule__PackageCS__Group_4_0__0 ) )
+                    // InternalOCLinEcore.g:4299:1: ( rule__PackageCS__Group_4_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPackageCSAccess().getGroup_4_0());
                     }
-                    // InternalOCLinEcore.g:4298:1: ( rule__PackageCS__Group_4_0__0 )
-                    // InternalOCLinEcore.g:4298:2: rule__PackageCS__Group_4_0__0
+                    // InternalOCLinEcore.g:4300:1: ( rule__PackageCS__Group_4_0__0 )
+                    // InternalOCLinEcore.g:4300:2: rule__PackageCS__Group_4_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PackageCS__Group_4_0__0();
@@ -14169,10 +14169,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4302:6: ( ';' )
+                    // InternalOCLinEcore.g:4304:6: ( ';' )
                     {
-                    // InternalOCLinEcore.g:4302:6: ( ';' )
-                    // InternalOCLinEcore.g:4303:1: ';'
+                    // InternalOCLinEcore.g:4304:6: ( ';' )
+                    // InternalOCLinEcore.g:4305:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPackageCSAccess().getSemicolonKeyword_4_1());
@@ -14205,13 +14205,13 @@
 
 
     // $ANTLR start "rule__PackageCS__Alternatives_4_0_1"
-    // InternalOCLinEcore.g:4315:1: rule__PackageCS__Alternatives_4_0_1 : ( ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 ) ) | ( ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 ) ) | ( ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 ) ) );
+    // InternalOCLinEcore.g:4317:1: rule__PackageCS__Alternatives_4_0_1 : ( ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 ) ) | ( ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 ) ) | ( ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 ) ) );
     public final void rule__PackageCS__Alternatives_4_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4319:1: ( ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 ) ) | ( ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 ) ) | ( ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 ) ) )
+            // InternalOCLinEcore.g:4321:1: ( ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 ) ) | ( ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 ) ) | ( ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 ) ) )
             int alt30=3;
             switch ( input.LA(1) ) {
             case 54:
@@ -14245,16 +14245,16 @@
 
             switch (alt30) {
                 case 1 :
-                    // InternalOCLinEcore.g:4320:1: ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 ) )
+                    // InternalOCLinEcore.g:4322:1: ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 ) )
                     {
-                    // InternalOCLinEcore.g:4320:1: ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 ) )
-                    // InternalOCLinEcore.g:4321:1: ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 )
+                    // InternalOCLinEcore.g:4322:1: ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 ) )
+                    // InternalOCLinEcore.g:4323:1: ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAssignment_4_0_1_0());
                     }
-                    // InternalOCLinEcore.g:4322:1: ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 )
-                    // InternalOCLinEcore.g:4322:2: rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0
+                    // InternalOCLinEcore.g:4324:1: ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 )
+                    // InternalOCLinEcore.g:4324:2: rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0();
@@ -14274,16 +14274,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4326:6: ( ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 ) )
+                    // InternalOCLinEcore.g:4328:6: ( ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 ) )
                     {
-                    // InternalOCLinEcore.g:4326:6: ( ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 ) )
-                    // InternalOCLinEcore.g:4327:1: ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 )
+                    // InternalOCLinEcore.g:4328:6: ( ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 ) )
+                    // InternalOCLinEcore.g:4329:1: ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPackageCSAccess().getOwnedPackagesAssignment_4_0_1_1());
                     }
-                    // InternalOCLinEcore.g:4328:1: ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 )
-                    // InternalOCLinEcore.g:4328:2: rule__PackageCS__OwnedPackagesAssignment_4_0_1_1
+                    // InternalOCLinEcore.g:4330:1: ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 )
+                    // InternalOCLinEcore.g:4330:2: rule__PackageCS__OwnedPackagesAssignment_4_0_1_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PackageCS__OwnedPackagesAssignment_4_0_1_1();
@@ -14303,16 +14303,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4332:6: ( ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 ) )
+                    // InternalOCLinEcore.g:4334:6: ( ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 ) )
                     {
-                    // InternalOCLinEcore.g:4332:6: ( ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 ) )
-                    // InternalOCLinEcore.g:4333:1: ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 )
+                    // InternalOCLinEcore.g:4334:6: ( ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 ) )
+                    // InternalOCLinEcore.g:4335:1: ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPackageCSAccess().getOwnedClassesAssignment_4_0_1_2());
                     }
-                    // InternalOCLinEcore.g:4334:1: ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 )
-                    // InternalOCLinEcore.g:4334:2: rule__PackageCS__OwnedClassesAssignment_4_0_1_2
+                    // InternalOCLinEcore.g:4336:1: ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 )
+                    // InternalOCLinEcore.g:4336:2: rule__PackageCS__OwnedClassesAssignment_4_0_1_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PackageCS__OwnedClassesAssignment_4_0_1_2();
@@ -14349,13 +14349,13 @@
 
 
     // $ANTLR start "rule__ParameterCS__Alternatives_2_1_0"
-    // InternalOCLinEcore.g:4343:1: rule__ParameterCS__Alternatives_2_1_0 : ( ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 ) ) | ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 ) ) | ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 ) ) | ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 ) ) );
+    // InternalOCLinEcore.g:4345:1: rule__ParameterCS__Alternatives_2_1_0 : ( ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 ) ) | ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 ) ) | ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 ) ) | ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 ) ) );
     public final void rule__ParameterCS__Alternatives_2_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4347:1: ( ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 ) ) | ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 ) ) | ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 ) ) | ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 ) ) )
+            // InternalOCLinEcore.g:4349:1: ( ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 ) ) | ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 ) ) | ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 ) ) | ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 ) ) )
             int alt31=4;
             switch ( input.LA(1) ) {
             case 37:
@@ -14388,16 +14388,16 @@
 
             switch (alt31) {
                 case 1 :
-                    // InternalOCLinEcore.g:4348:1: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 ) )
+                    // InternalOCLinEcore.g:4350:1: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 ) )
                     {
-                    // InternalOCLinEcore.g:4348:1: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 ) )
-                    // InternalOCLinEcore.g:4349:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 )
+                    // InternalOCLinEcore.g:4350:1: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 ) )
+                    // InternalOCLinEcore.g:4351:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_0());
                     }
-                    // InternalOCLinEcore.g:4350:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 )
-                    // InternalOCLinEcore.g:4350:2: rule__ParameterCS__QualifiersAssignment_2_1_0_0
+                    // InternalOCLinEcore.g:4352:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 )
+                    // InternalOCLinEcore.g:4352:2: rule__ParameterCS__QualifiersAssignment_2_1_0_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ParameterCS__QualifiersAssignment_2_1_0_0();
@@ -14417,16 +14417,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4354:6: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 ) )
+                    // InternalOCLinEcore.g:4356:6: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 ) )
                     {
-                    // InternalOCLinEcore.g:4354:6: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 ) )
-                    // InternalOCLinEcore.g:4355:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 )
+                    // InternalOCLinEcore.g:4356:6: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 ) )
+                    // InternalOCLinEcore.g:4357:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_1());
                     }
-                    // InternalOCLinEcore.g:4356:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 )
-                    // InternalOCLinEcore.g:4356:2: rule__ParameterCS__QualifiersAssignment_2_1_0_1
+                    // InternalOCLinEcore.g:4358:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 )
+                    // InternalOCLinEcore.g:4358:2: rule__ParameterCS__QualifiersAssignment_2_1_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ParameterCS__QualifiersAssignment_2_1_0_1();
@@ -14446,16 +14446,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4360:6: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 ) )
+                    // InternalOCLinEcore.g:4362:6: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 ) )
                     {
-                    // InternalOCLinEcore.g:4360:6: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 ) )
-                    // InternalOCLinEcore.g:4361:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 )
+                    // InternalOCLinEcore.g:4362:6: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 ) )
+                    // InternalOCLinEcore.g:4363:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_2());
                     }
-                    // InternalOCLinEcore.g:4362:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 )
-                    // InternalOCLinEcore.g:4362:2: rule__ParameterCS__QualifiersAssignment_2_1_0_2
+                    // InternalOCLinEcore.g:4364:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 )
+                    // InternalOCLinEcore.g:4364:2: rule__ParameterCS__QualifiersAssignment_2_1_0_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ParameterCS__QualifiersAssignment_2_1_0_2();
@@ -14475,16 +14475,16 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:4366:6: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 ) )
+                    // InternalOCLinEcore.g:4368:6: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 ) )
                     {
-                    // InternalOCLinEcore.g:4366:6: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 ) )
-                    // InternalOCLinEcore.g:4367:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 )
+                    // InternalOCLinEcore.g:4368:6: ( ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 ) )
+                    // InternalOCLinEcore.g:4369:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_3());
                     }
-                    // InternalOCLinEcore.g:4368:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 )
-                    // InternalOCLinEcore.g:4368:2: rule__ParameterCS__QualifiersAssignment_2_1_0_3
+                    // InternalOCLinEcore.g:4370:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 )
+                    // InternalOCLinEcore.g:4370:2: rule__ParameterCS__QualifiersAssignment_2_1_0_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ParameterCS__QualifiersAssignment_2_1_0_3();
@@ -14521,13 +14521,13 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Alternatives_4_1_0"
-    // InternalOCLinEcore.g:4377:1: rule__ImplicitOppositeCS__Alternatives_4_1_0 : ( ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 ) ) | ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 ) ) | ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 ) ) | ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 ) ) );
+    // InternalOCLinEcore.g:4379:1: rule__ImplicitOppositeCS__Alternatives_4_1_0 : ( ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 ) ) | ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 ) ) | ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 ) ) | ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 ) ) );
     public final void rule__ImplicitOppositeCS__Alternatives_4_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4381:1: ( ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 ) ) | ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 ) ) | ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 ) ) | ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 ) ) )
+            // InternalOCLinEcore.g:4383:1: ( ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 ) ) | ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 ) ) | ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 ) ) | ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 ) ) )
             int alt32=4;
             switch ( input.LA(1) ) {
             case 37:
@@ -14560,16 +14560,16 @@
 
             switch (alt32) {
                 case 1 :
-                    // InternalOCLinEcore.g:4382:1: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 ) )
+                    // InternalOCLinEcore.g:4384:1: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 ) )
                     {
-                    // InternalOCLinEcore.g:4382:1: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 ) )
-                    // InternalOCLinEcore.g:4383:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 )
+                    // InternalOCLinEcore.g:4384:1: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 ) )
+                    // InternalOCLinEcore.g:4385:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getImplicitOppositeCSAccess().getQualifiersAssignment_4_1_0_0());
                     }
-                    // InternalOCLinEcore.g:4384:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 )
-                    // InternalOCLinEcore.g:4384:2: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0
+                    // InternalOCLinEcore.g:4386:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 )
+                    // InternalOCLinEcore.g:4386:2: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0();
@@ -14589,16 +14589,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4388:6: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 ) )
+                    // InternalOCLinEcore.g:4390:6: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 ) )
                     {
-                    // InternalOCLinEcore.g:4388:6: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 ) )
-                    // InternalOCLinEcore.g:4389:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 )
+                    // InternalOCLinEcore.g:4390:6: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 ) )
+                    // InternalOCLinEcore.g:4391:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getImplicitOppositeCSAccess().getQualifiersAssignment_4_1_0_1());
                     }
-                    // InternalOCLinEcore.g:4390:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 )
-                    // InternalOCLinEcore.g:4390:2: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1
+                    // InternalOCLinEcore.g:4392:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 )
+                    // InternalOCLinEcore.g:4392:2: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1();
@@ -14618,16 +14618,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4394:6: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 ) )
+                    // InternalOCLinEcore.g:4396:6: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 ) )
                     {
-                    // InternalOCLinEcore.g:4394:6: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 ) )
-                    // InternalOCLinEcore.g:4395:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 )
+                    // InternalOCLinEcore.g:4396:6: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 ) )
+                    // InternalOCLinEcore.g:4397:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getImplicitOppositeCSAccess().getQualifiersAssignment_4_1_0_2());
                     }
-                    // InternalOCLinEcore.g:4396:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 )
-                    // InternalOCLinEcore.g:4396:2: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2
+                    // InternalOCLinEcore.g:4398:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 )
+                    // InternalOCLinEcore.g:4398:2: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2();
@@ -14647,16 +14647,16 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:4400:6: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 ) )
+                    // InternalOCLinEcore.g:4402:6: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 ) )
                     {
-                    // InternalOCLinEcore.g:4400:6: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 ) )
-                    // InternalOCLinEcore.g:4401:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 )
+                    // InternalOCLinEcore.g:4402:6: ( ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 ) )
+                    // InternalOCLinEcore.g:4403:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getImplicitOppositeCSAccess().getQualifiersAssignment_4_1_0_3());
                     }
-                    // InternalOCLinEcore.g:4402:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 )
-                    // InternalOCLinEcore.g:4402:2: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3
+                    // InternalOCLinEcore.g:4404:1: ( rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 )
+                    // InternalOCLinEcore.g:4404:2: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3();
@@ -14693,13 +14693,13 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Alternatives_0"
-    // InternalOCLinEcore.g:4411:1: rule__ReferenceCS__Alternatives_0 : ( ( ( rule__ReferenceCS__Group_0_0__0 ) ) | ( ( rule__ReferenceCS__Group_0_1__0 ) ) );
+    // InternalOCLinEcore.g:4413:1: rule__ReferenceCS__Alternatives_0 : ( ( ( rule__ReferenceCS__Group_0_0__0 ) ) | ( ( rule__ReferenceCS__Group_0_1__0 ) ) );
     public final void rule__ReferenceCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4415:1: ( ( ( rule__ReferenceCS__Group_0_0__0 ) ) | ( ( rule__ReferenceCS__Group_0_1__0 ) ) )
+            // InternalOCLinEcore.g:4417:1: ( ( ( rule__ReferenceCS__Group_0_0__0 ) ) | ( ( rule__ReferenceCS__Group_0_1__0 ) ) )
             int alt33=2;
             int LA33_0 = input.LA(1);
 
@@ -14718,16 +14718,16 @@
             }
             switch (alt33) {
                 case 1 :
-                    // InternalOCLinEcore.g:4416:1: ( ( rule__ReferenceCS__Group_0_0__0 ) )
+                    // InternalOCLinEcore.g:4418:1: ( ( rule__ReferenceCS__Group_0_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:4416:1: ( ( rule__ReferenceCS__Group_0_0__0 ) )
-                    // InternalOCLinEcore.g:4417:1: ( rule__ReferenceCS__Group_0_0__0 )
+                    // InternalOCLinEcore.g:4418:1: ( ( rule__ReferenceCS__Group_0_0__0 ) )
+                    // InternalOCLinEcore.g:4419:1: ( rule__ReferenceCS__Group_0_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getGroup_0_0());
                     }
-                    // InternalOCLinEcore.g:4418:1: ( rule__ReferenceCS__Group_0_0__0 )
-                    // InternalOCLinEcore.g:4418:2: rule__ReferenceCS__Group_0_0__0
+                    // InternalOCLinEcore.g:4420:1: ( rule__ReferenceCS__Group_0_0__0 )
+                    // InternalOCLinEcore.g:4420:2: rule__ReferenceCS__Group_0_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__Group_0_0__0();
@@ -14747,16 +14747,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4422:6: ( ( rule__ReferenceCS__Group_0_1__0 ) )
+                    // InternalOCLinEcore.g:4424:6: ( ( rule__ReferenceCS__Group_0_1__0 ) )
                     {
-                    // InternalOCLinEcore.g:4422:6: ( ( rule__ReferenceCS__Group_0_1__0 ) )
-                    // InternalOCLinEcore.g:4423:1: ( rule__ReferenceCS__Group_0_1__0 )
+                    // InternalOCLinEcore.g:4424:6: ( ( rule__ReferenceCS__Group_0_1__0 ) )
+                    // InternalOCLinEcore.g:4425:1: ( rule__ReferenceCS__Group_0_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getGroup_0_1());
                     }
-                    // InternalOCLinEcore.g:4424:1: ( rule__ReferenceCS__Group_0_1__0 )
-                    // InternalOCLinEcore.g:4424:2: rule__ReferenceCS__Group_0_1__0
+                    // InternalOCLinEcore.g:4426:1: ( rule__ReferenceCS__Group_0_1__0 )
+                    // InternalOCLinEcore.g:4426:2: rule__ReferenceCS__Group_0_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__Group_0_1__0();
@@ -14793,13 +14793,13 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Alternatives_6_1_0"
-    // InternalOCLinEcore.g:4433:1: rule__ReferenceCS__Alternatives_6_1_0 : ( ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 ) ) );
+    // InternalOCLinEcore.g:4435:1: rule__ReferenceCS__Alternatives_6_1_0 : ( ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 ) ) );
     public final void rule__ReferenceCS__Alternatives_6_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4437:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 ) ) )
+            // InternalOCLinEcore.g:4439:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 ) ) | ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 ) ) )
             int alt34=18;
             switch ( input.LA(1) ) {
             case 22:
@@ -14902,16 +14902,16 @@
 
             switch (alt34) {
                 case 1 :
-                    // InternalOCLinEcore.g:4438:1: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 ) )
+                    // InternalOCLinEcore.g:4440:1: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 ) )
                     {
-                    // InternalOCLinEcore.g:4438:1: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 ) )
-                    // InternalOCLinEcore.g:4439:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 )
+                    // InternalOCLinEcore.g:4440:1: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 ) )
+                    // InternalOCLinEcore.g:4441:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_0());
                     }
-                    // InternalOCLinEcore.g:4440:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 )
-                    // InternalOCLinEcore.g:4440:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_0
+                    // InternalOCLinEcore.g:4442:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 )
+                    // InternalOCLinEcore.g:4442:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_0();
@@ -14931,16 +14931,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4444:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 ) )
+                    // InternalOCLinEcore.g:4446:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 ) )
                     {
-                    // InternalOCLinEcore.g:4444:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 ) )
-                    // InternalOCLinEcore.g:4445:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 )
+                    // InternalOCLinEcore.g:4446:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 ) )
+                    // InternalOCLinEcore.g:4447:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_1());
                     }
-                    // InternalOCLinEcore.g:4446:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 )
-                    // InternalOCLinEcore.g:4446:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_1
+                    // InternalOCLinEcore.g:4448:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 )
+                    // InternalOCLinEcore.g:4448:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_1();
@@ -14960,16 +14960,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4450:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 ) )
+                    // InternalOCLinEcore.g:4452:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 ) )
                     {
-                    // InternalOCLinEcore.g:4450:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 ) )
-                    // InternalOCLinEcore.g:4451:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 )
+                    // InternalOCLinEcore.g:4452:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 ) )
+                    // InternalOCLinEcore.g:4453:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_2());
                     }
-                    // InternalOCLinEcore.g:4452:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 )
-                    // InternalOCLinEcore.g:4452:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_2
+                    // InternalOCLinEcore.g:4454:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 )
+                    // InternalOCLinEcore.g:4454:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_2();
@@ -14989,16 +14989,16 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:4456:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 ) )
+                    // InternalOCLinEcore.g:4458:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 ) )
                     {
-                    // InternalOCLinEcore.g:4456:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 ) )
-                    // InternalOCLinEcore.g:4457:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 )
+                    // InternalOCLinEcore.g:4458:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 ) )
+                    // InternalOCLinEcore.g:4459:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_3());
                     }
-                    // InternalOCLinEcore.g:4458:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 )
-                    // InternalOCLinEcore.g:4458:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_3
+                    // InternalOCLinEcore.g:4460:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 )
+                    // InternalOCLinEcore.g:4460:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_3();
@@ -15018,16 +15018,16 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:4462:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 ) )
+                    // InternalOCLinEcore.g:4464:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 ) )
                     {
-                    // InternalOCLinEcore.g:4462:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 ) )
-                    // InternalOCLinEcore.g:4463:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 )
+                    // InternalOCLinEcore.g:4464:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 ) )
+                    // InternalOCLinEcore.g:4465:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_4());
                     }
-                    // InternalOCLinEcore.g:4464:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 )
-                    // InternalOCLinEcore.g:4464:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_4
+                    // InternalOCLinEcore.g:4466:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 )
+                    // InternalOCLinEcore.g:4466:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_4
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_4();
@@ -15047,16 +15047,16 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLinEcore.g:4468:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 ) )
+                    // InternalOCLinEcore.g:4470:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 ) )
                     {
-                    // InternalOCLinEcore.g:4468:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 ) )
-                    // InternalOCLinEcore.g:4469:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 )
+                    // InternalOCLinEcore.g:4470:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 ) )
+                    // InternalOCLinEcore.g:4471:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_5());
                     }
-                    // InternalOCLinEcore.g:4470:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 )
-                    // InternalOCLinEcore.g:4470:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_5
+                    // InternalOCLinEcore.g:4472:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 )
+                    // InternalOCLinEcore.g:4472:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_5
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_5();
@@ -15076,16 +15076,16 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLinEcore.g:4474:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 ) )
+                    // InternalOCLinEcore.g:4476:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 ) )
                     {
-                    // InternalOCLinEcore.g:4474:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 ) )
-                    // InternalOCLinEcore.g:4475:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 )
+                    // InternalOCLinEcore.g:4476:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 ) )
+                    // InternalOCLinEcore.g:4477:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_6());
                     }
-                    // InternalOCLinEcore.g:4476:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 )
-                    // InternalOCLinEcore.g:4476:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_6
+                    // InternalOCLinEcore.g:4478:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 )
+                    // InternalOCLinEcore.g:4478:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_6
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_6();
@@ -15105,16 +15105,16 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLinEcore.g:4480:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 ) )
+                    // InternalOCLinEcore.g:4482:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 ) )
                     {
-                    // InternalOCLinEcore.g:4480:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 ) )
-                    // InternalOCLinEcore.g:4481:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 )
+                    // InternalOCLinEcore.g:4482:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 ) )
+                    // InternalOCLinEcore.g:4483:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_7());
                     }
-                    // InternalOCLinEcore.g:4482:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 )
-                    // InternalOCLinEcore.g:4482:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_7
+                    // InternalOCLinEcore.g:4484:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 )
+                    // InternalOCLinEcore.g:4484:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_7
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_7();
@@ -15134,16 +15134,16 @@
                     }
                     break;
                 case 9 :
-                    // InternalOCLinEcore.g:4486:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 ) )
+                    // InternalOCLinEcore.g:4488:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 ) )
                     {
-                    // InternalOCLinEcore.g:4486:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 ) )
-                    // InternalOCLinEcore.g:4487:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 )
+                    // InternalOCLinEcore.g:4488:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 ) )
+                    // InternalOCLinEcore.g:4489:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_8());
                     }
-                    // InternalOCLinEcore.g:4488:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 )
-                    // InternalOCLinEcore.g:4488:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_8
+                    // InternalOCLinEcore.g:4490:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 )
+                    // InternalOCLinEcore.g:4490:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_8
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_8();
@@ -15163,16 +15163,16 @@
                     }
                     break;
                 case 10 :
-                    // InternalOCLinEcore.g:4492:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 ) )
+                    // InternalOCLinEcore.g:4494:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 ) )
                     {
-                    // InternalOCLinEcore.g:4492:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 ) )
-                    // InternalOCLinEcore.g:4493:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 )
+                    // InternalOCLinEcore.g:4494:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 ) )
+                    // InternalOCLinEcore.g:4495:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_9());
                     }
-                    // InternalOCLinEcore.g:4494:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 )
-                    // InternalOCLinEcore.g:4494:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_9
+                    // InternalOCLinEcore.g:4496:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 )
+                    // InternalOCLinEcore.g:4496:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_9
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_9();
@@ -15192,16 +15192,16 @@
                     }
                     break;
                 case 11 :
-                    // InternalOCLinEcore.g:4498:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 ) )
+                    // InternalOCLinEcore.g:4500:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 ) )
                     {
-                    // InternalOCLinEcore.g:4498:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 ) )
-                    // InternalOCLinEcore.g:4499:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 )
+                    // InternalOCLinEcore.g:4500:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 ) )
+                    // InternalOCLinEcore.g:4501:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_10());
                     }
-                    // InternalOCLinEcore.g:4500:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 )
-                    // InternalOCLinEcore.g:4500:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_10
+                    // InternalOCLinEcore.g:4502:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 )
+                    // InternalOCLinEcore.g:4502:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_10
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_10();
@@ -15221,16 +15221,16 @@
                     }
                     break;
                 case 12 :
-                    // InternalOCLinEcore.g:4504:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 ) )
+                    // InternalOCLinEcore.g:4506:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 ) )
                     {
-                    // InternalOCLinEcore.g:4504:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 ) )
-                    // InternalOCLinEcore.g:4505:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 )
+                    // InternalOCLinEcore.g:4506:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 ) )
+                    // InternalOCLinEcore.g:4507:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_11());
                     }
-                    // InternalOCLinEcore.g:4506:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 )
-                    // InternalOCLinEcore.g:4506:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_11
+                    // InternalOCLinEcore.g:4508:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 )
+                    // InternalOCLinEcore.g:4508:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_11
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_11();
@@ -15250,16 +15250,16 @@
                     }
                     break;
                 case 13 :
-                    // InternalOCLinEcore.g:4510:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 ) )
+                    // InternalOCLinEcore.g:4512:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 ) )
                     {
-                    // InternalOCLinEcore.g:4510:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 ) )
-                    // InternalOCLinEcore.g:4511:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 )
+                    // InternalOCLinEcore.g:4512:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 ) )
+                    // InternalOCLinEcore.g:4513:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_12());
                     }
-                    // InternalOCLinEcore.g:4512:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 )
-                    // InternalOCLinEcore.g:4512:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_12
+                    // InternalOCLinEcore.g:4514:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 )
+                    // InternalOCLinEcore.g:4514:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_12
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_12();
@@ -15279,16 +15279,16 @@
                     }
                     break;
                 case 14 :
-                    // InternalOCLinEcore.g:4516:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 ) )
+                    // InternalOCLinEcore.g:4518:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 ) )
                     {
-                    // InternalOCLinEcore.g:4516:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 ) )
-                    // InternalOCLinEcore.g:4517:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 )
+                    // InternalOCLinEcore.g:4518:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 ) )
+                    // InternalOCLinEcore.g:4519:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_13());
                     }
-                    // InternalOCLinEcore.g:4518:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 )
-                    // InternalOCLinEcore.g:4518:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_13
+                    // InternalOCLinEcore.g:4520:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 )
+                    // InternalOCLinEcore.g:4520:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_13
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_13();
@@ -15308,16 +15308,16 @@
                     }
                     break;
                 case 15 :
-                    // InternalOCLinEcore.g:4522:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 ) )
+                    // InternalOCLinEcore.g:4524:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 ) )
                     {
-                    // InternalOCLinEcore.g:4522:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 ) )
-                    // InternalOCLinEcore.g:4523:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 )
+                    // InternalOCLinEcore.g:4524:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 ) )
+                    // InternalOCLinEcore.g:4525:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_14());
                     }
-                    // InternalOCLinEcore.g:4524:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 )
-                    // InternalOCLinEcore.g:4524:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_14
+                    // InternalOCLinEcore.g:4526:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 )
+                    // InternalOCLinEcore.g:4526:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_14
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_14();
@@ -15337,16 +15337,16 @@
                     }
                     break;
                 case 16 :
-                    // InternalOCLinEcore.g:4528:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 ) )
+                    // InternalOCLinEcore.g:4530:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 ) )
                     {
-                    // InternalOCLinEcore.g:4528:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 ) )
-                    // InternalOCLinEcore.g:4529:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 )
+                    // InternalOCLinEcore.g:4530:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 ) )
+                    // InternalOCLinEcore.g:4531:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_15());
                     }
-                    // InternalOCLinEcore.g:4530:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 )
-                    // InternalOCLinEcore.g:4530:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_15
+                    // InternalOCLinEcore.g:4532:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 )
+                    // InternalOCLinEcore.g:4532:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_15
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_15();
@@ -15366,16 +15366,16 @@
                     }
                     break;
                 case 17 :
-                    // InternalOCLinEcore.g:4534:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 ) )
+                    // InternalOCLinEcore.g:4536:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 ) )
                     {
-                    // InternalOCLinEcore.g:4534:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 ) )
-                    // InternalOCLinEcore.g:4535:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 )
+                    // InternalOCLinEcore.g:4536:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 ) )
+                    // InternalOCLinEcore.g:4537:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_16());
                     }
-                    // InternalOCLinEcore.g:4536:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 )
-                    // InternalOCLinEcore.g:4536:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_16
+                    // InternalOCLinEcore.g:4538:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 )
+                    // InternalOCLinEcore.g:4538:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_16
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_16();
@@ -15395,16 +15395,16 @@
                     }
                     break;
                 case 18 :
-                    // InternalOCLinEcore.g:4540:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 ) )
+                    // InternalOCLinEcore.g:4542:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 ) )
                     {
-                    // InternalOCLinEcore.g:4540:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 ) )
-                    // InternalOCLinEcore.g:4541:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 )
+                    // InternalOCLinEcore.g:4542:6: ( ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 ) )
+                    // InternalOCLinEcore.g:4543:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_17());
                     }
-                    // InternalOCLinEcore.g:4542:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 )
-                    // InternalOCLinEcore.g:4542:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_17
+                    // InternalOCLinEcore.g:4544:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 )
+                    // InternalOCLinEcore.g:4544:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_17
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_6_1_0_17();
@@ -15441,13 +15441,13 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Alternatives_7"
-    // InternalOCLinEcore.g:4551:1: rule__ReferenceCS__Alternatives_7 : ( ( ( rule__ReferenceCS__Group_7_0__0 ) ) | ( ';' ) );
+    // InternalOCLinEcore.g:4553:1: rule__ReferenceCS__Alternatives_7 : ( ( ( rule__ReferenceCS__Group_7_0__0 ) ) | ( ';' ) );
     public final void rule__ReferenceCS__Alternatives_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4555:1: ( ( ( rule__ReferenceCS__Group_7_0__0 ) ) | ( ';' ) )
+            // InternalOCLinEcore.g:4557:1: ( ( ( rule__ReferenceCS__Group_7_0__0 ) ) | ( ';' ) )
             int alt35=2;
             int LA35_0 = input.LA(1);
 
@@ -15466,16 +15466,16 @@
             }
             switch (alt35) {
                 case 1 :
-                    // InternalOCLinEcore.g:4556:1: ( ( rule__ReferenceCS__Group_7_0__0 ) )
+                    // InternalOCLinEcore.g:4558:1: ( ( rule__ReferenceCS__Group_7_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:4556:1: ( ( rule__ReferenceCS__Group_7_0__0 ) )
-                    // InternalOCLinEcore.g:4557:1: ( rule__ReferenceCS__Group_7_0__0 )
+                    // InternalOCLinEcore.g:4558:1: ( ( rule__ReferenceCS__Group_7_0__0 ) )
+                    // InternalOCLinEcore.g:4559:1: ( rule__ReferenceCS__Group_7_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getGroup_7_0());
                     }
-                    // InternalOCLinEcore.g:4558:1: ( rule__ReferenceCS__Group_7_0__0 )
-                    // InternalOCLinEcore.g:4558:2: rule__ReferenceCS__Group_7_0__0
+                    // InternalOCLinEcore.g:4560:1: ( rule__ReferenceCS__Group_7_0__0 )
+                    // InternalOCLinEcore.g:4560:2: rule__ReferenceCS__Group_7_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__Group_7_0__0();
@@ -15495,10 +15495,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4562:6: ( ';' )
+                    // InternalOCLinEcore.g:4564:6: ( ';' )
                     {
-                    // InternalOCLinEcore.g:4562:6: ( ';' )
-                    // InternalOCLinEcore.g:4563:1: ';'
+                    // InternalOCLinEcore.g:4564:6: ( ';' )
+                    // InternalOCLinEcore.g:4565:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_1());
@@ -15531,13 +15531,13 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Alternatives_7_0_1"
-    // InternalOCLinEcore.g:4575:1: rule__ReferenceCS__Alternatives_7_0_1 : ( ( ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_1__0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_2__0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_3__0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_4__0 ) ) );
+    // InternalOCLinEcore.g:4577:1: rule__ReferenceCS__Alternatives_7_0_1 : ( ( ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_1__0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_2__0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_3__0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_4__0 ) ) );
     public final void rule__ReferenceCS__Alternatives_7_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4579:1: ( ( ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_1__0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_2__0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_3__0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_4__0 ) ) )
+            // InternalOCLinEcore.g:4581:1: ( ( ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_1__0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_2__0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_3__0 ) ) | ( ( rule__ReferenceCS__Group_7_0_1_4__0 ) ) )
             int alt36=5;
             switch ( input.LA(1) ) {
             case 54:
@@ -15577,16 +15577,16 @@
 
             switch (alt36) {
                 case 1 :
-                    // InternalOCLinEcore.g:4580:1: ( ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 ) )
+                    // InternalOCLinEcore.g:4582:1: ( ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 ) )
                     {
-                    // InternalOCLinEcore.g:4580:1: ( ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 ) )
-                    // InternalOCLinEcore.g:4581:1: ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 )
+                    // InternalOCLinEcore.g:4582:1: ( ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 ) )
+                    // InternalOCLinEcore.g:4583:1: ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAssignment_7_0_1_0());
                     }
-                    // InternalOCLinEcore.g:4582:1: ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 )
-                    // InternalOCLinEcore.g:4582:2: rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0
+                    // InternalOCLinEcore.g:4584:1: ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 )
+                    // InternalOCLinEcore.g:4584:2: rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0();
@@ -15606,16 +15606,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4586:6: ( ( rule__ReferenceCS__Group_7_0_1_1__0 ) )
+                    // InternalOCLinEcore.g:4588:6: ( ( rule__ReferenceCS__Group_7_0_1_1__0 ) )
                     {
-                    // InternalOCLinEcore.g:4586:6: ( ( rule__ReferenceCS__Group_7_0_1_1__0 ) )
-                    // InternalOCLinEcore.g:4587:1: ( rule__ReferenceCS__Group_7_0_1_1__0 )
+                    // InternalOCLinEcore.g:4588:6: ( ( rule__ReferenceCS__Group_7_0_1_1__0 ) )
+                    // InternalOCLinEcore.g:4589:1: ( rule__ReferenceCS__Group_7_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_1());
                     }
-                    // InternalOCLinEcore.g:4588:1: ( rule__ReferenceCS__Group_7_0_1_1__0 )
-                    // InternalOCLinEcore.g:4588:2: rule__ReferenceCS__Group_7_0_1_1__0
+                    // InternalOCLinEcore.g:4590:1: ( rule__ReferenceCS__Group_7_0_1_1__0 )
+                    // InternalOCLinEcore.g:4590:2: rule__ReferenceCS__Group_7_0_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__Group_7_0_1_1__0();
@@ -15635,16 +15635,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4592:6: ( ( rule__ReferenceCS__Group_7_0_1_2__0 ) )
+                    // InternalOCLinEcore.g:4594:6: ( ( rule__ReferenceCS__Group_7_0_1_2__0 ) )
                     {
-                    // InternalOCLinEcore.g:4592:6: ( ( rule__ReferenceCS__Group_7_0_1_2__0 ) )
-                    // InternalOCLinEcore.g:4593:1: ( rule__ReferenceCS__Group_7_0_1_2__0 )
+                    // InternalOCLinEcore.g:4594:6: ( ( rule__ReferenceCS__Group_7_0_1_2__0 ) )
+                    // InternalOCLinEcore.g:4595:1: ( rule__ReferenceCS__Group_7_0_1_2__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_2());
                     }
-                    // InternalOCLinEcore.g:4594:1: ( rule__ReferenceCS__Group_7_0_1_2__0 )
-                    // InternalOCLinEcore.g:4594:2: rule__ReferenceCS__Group_7_0_1_2__0
+                    // InternalOCLinEcore.g:4596:1: ( rule__ReferenceCS__Group_7_0_1_2__0 )
+                    // InternalOCLinEcore.g:4596:2: rule__ReferenceCS__Group_7_0_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__Group_7_0_1_2__0();
@@ -15664,16 +15664,16 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:4598:6: ( ( rule__ReferenceCS__Group_7_0_1_3__0 ) )
+                    // InternalOCLinEcore.g:4600:6: ( ( rule__ReferenceCS__Group_7_0_1_3__0 ) )
                     {
-                    // InternalOCLinEcore.g:4598:6: ( ( rule__ReferenceCS__Group_7_0_1_3__0 ) )
-                    // InternalOCLinEcore.g:4599:1: ( rule__ReferenceCS__Group_7_0_1_3__0 )
+                    // InternalOCLinEcore.g:4600:6: ( ( rule__ReferenceCS__Group_7_0_1_3__0 ) )
+                    // InternalOCLinEcore.g:4601:1: ( rule__ReferenceCS__Group_7_0_1_3__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_3());
                     }
-                    // InternalOCLinEcore.g:4600:1: ( rule__ReferenceCS__Group_7_0_1_3__0 )
-                    // InternalOCLinEcore.g:4600:2: rule__ReferenceCS__Group_7_0_1_3__0
+                    // InternalOCLinEcore.g:4602:1: ( rule__ReferenceCS__Group_7_0_1_3__0 )
+                    // InternalOCLinEcore.g:4602:2: rule__ReferenceCS__Group_7_0_1_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__Group_7_0_1_3__0();
@@ -15693,16 +15693,16 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:4604:6: ( ( rule__ReferenceCS__Group_7_0_1_4__0 ) )
+                    // InternalOCLinEcore.g:4606:6: ( ( rule__ReferenceCS__Group_7_0_1_4__0 ) )
                     {
-                    // InternalOCLinEcore.g:4604:6: ( ( rule__ReferenceCS__Group_7_0_1_4__0 ) )
-                    // InternalOCLinEcore.g:4605:1: ( rule__ReferenceCS__Group_7_0_1_4__0 )
+                    // InternalOCLinEcore.g:4606:6: ( ( rule__ReferenceCS__Group_7_0_1_4__0 ) )
+                    // InternalOCLinEcore.g:4607:1: ( rule__ReferenceCS__Group_7_0_1_4__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_4());
                     }
-                    // InternalOCLinEcore.g:4606:1: ( rule__ReferenceCS__Group_7_0_1_4__0 )
-                    // InternalOCLinEcore.g:4606:2: rule__ReferenceCS__Group_7_0_1_4__0
+                    // InternalOCLinEcore.g:4608:1: ( rule__ReferenceCS__Group_7_0_1_4__0 )
+                    // InternalOCLinEcore.g:4608:2: rule__ReferenceCS__Group_7_0_1_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__Group_7_0_1_4__0();
@@ -15739,13 +15739,13 @@
 
 
     // $ANTLR start "rule__SpecificationCS__Alternatives"
-    // InternalOCLinEcore.g:4615:1: rule__SpecificationCS__Alternatives : ( ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) ) | ( ( rule__SpecificationCS__ExprStringAssignment_1 ) ) );
+    // InternalOCLinEcore.g:4617:1: rule__SpecificationCS__Alternatives : ( ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) ) | ( ( rule__SpecificationCS__ExprStringAssignment_1 ) ) );
     public final void rule__SpecificationCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4619:1: ( ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) ) | ( ( rule__SpecificationCS__ExprStringAssignment_1 ) ) )
+            // InternalOCLinEcore.g:4621:1: ( ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) ) | ( ( rule__SpecificationCS__ExprStringAssignment_1 ) ) )
             int alt37=2;
             int LA37_0 = input.LA(1);
 
@@ -15764,16 +15764,16 @@
             }
             switch (alt37) {
                 case 1 :
-                    // InternalOCLinEcore.g:4620:1: ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) )
+                    // InternalOCLinEcore.g:4622:1: ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) )
                     {
-                    // InternalOCLinEcore.g:4620:1: ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) )
-                    // InternalOCLinEcore.g:4621:1: ( rule__SpecificationCS__OwnedExpressionAssignment_0 )
+                    // InternalOCLinEcore.g:4622:1: ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) )
+                    // InternalOCLinEcore.g:4623:1: ( rule__SpecificationCS__OwnedExpressionAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment_0());
                     }
-                    // InternalOCLinEcore.g:4622:1: ( rule__SpecificationCS__OwnedExpressionAssignment_0 )
-                    // InternalOCLinEcore.g:4622:2: rule__SpecificationCS__OwnedExpressionAssignment_0
+                    // InternalOCLinEcore.g:4624:1: ( rule__SpecificationCS__OwnedExpressionAssignment_0 )
+                    // InternalOCLinEcore.g:4624:2: rule__SpecificationCS__OwnedExpressionAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__SpecificationCS__OwnedExpressionAssignment_0();
@@ -15793,16 +15793,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4626:6: ( ( rule__SpecificationCS__ExprStringAssignment_1 ) )
+                    // InternalOCLinEcore.g:4628:6: ( ( rule__SpecificationCS__ExprStringAssignment_1 ) )
                     {
-                    // InternalOCLinEcore.g:4626:6: ( ( rule__SpecificationCS__ExprStringAssignment_1 ) )
-                    // InternalOCLinEcore.g:4627:1: ( rule__SpecificationCS__ExprStringAssignment_1 )
+                    // InternalOCLinEcore.g:4628:6: ( ( rule__SpecificationCS__ExprStringAssignment_1 ) )
+                    // InternalOCLinEcore.g:4629:1: ( rule__SpecificationCS__ExprStringAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getSpecificationCSAccess().getExprStringAssignment_1());
                     }
-                    // InternalOCLinEcore.g:4628:1: ( rule__SpecificationCS__ExprStringAssignment_1 )
-                    // InternalOCLinEcore.g:4628:2: rule__SpecificationCS__ExprStringAssignment_1
+                    // InternalOCLinEcore.g:4630:1: ( rule__SpecificationCS__ExprStringAssignment_1 )
+                    // InternalOCLinEcore.g:4630:2: rule__SpecificationCS__ExprStringAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__SpecificationCS__ExprStringAssignment_1();
@@ -15839,13 +15839,13 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Alternatives_7"
-    // InternalOCLinEcore.g:4637:1: rule__StructuredClassCS__Alternatives_7 : ( ( ( rule__StructuredClassCS__Group_7_0__0 ) ) | ( ';' ) );
+    // InternalOCLinEcore.g:4639:1: rule__StructuredClassCS__Alternatives_7 : ( ( ( rule__StructuredClassCS__Group_7_0__0 ) ) | ( ';' ) );
     public final void rule__StructuredClassCS__Alternatives_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4641:1: ( ( ( rule__StructuredClassCS__Group_7_0__0 ) ) | ( ';' ) )
+            // InternalOCLinEcore.g:4643:1: ( ( ( rule__StructuredClassCS__Group_7_0__0 ) ) | ( ';' ) )
             int alt38=2;
             int LA38_0 = input.LA(1);
 
@@ -15864,16 +15864,16 @@
             }
             switch (alt38) {
                 case 1 :
-                    // InternalOCLinEcore.g:4642:1: ( ( rule__StructuredClassCS__Group_7_0__0 ) )
+                    // InternalOCLinEcore.g:4644:1: ( ( rule__StructuredClassCS__Group_7_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:4642:1: ( ( rule__StructuredClassCS__Group_7_0__0 ) )
-                    // InternalOCLinEcore.g:4643:1: ( rule__StructuredClassCS__Group_7_0__0 )
+                    // InternalOCLinEcore.g:4644:1: ( ( rule__StructuredClassCS__Group_7_0__0 ) )
+                    // InternalOCLinEcore.g:4645:1: ( rule__StructuredClassCS__Group_7_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getStructuredClassCSAccess().getGroup_7_0());
                     }
-                    // InternalOCLinEcore.g:4644:1: ( rule__StructuredClassCS__Group_7_0__0 )
-                    // InternalOCLinEcore.g:4644:2: rule__StructuredClassCS__Group_7_0__0
+                    // InternalOCLinEcore.g:4646:1: ( rule__StructuredClassCS__Group_7_0__0 )
+                    // InternalOCLinEcore.g:4646:2: rule__StructuredClassCS__Group_7_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__StructuredClassCS__Group_7_0__0();
@@ -15893,10 +15893,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4648:6: ( ';' )
+                    // InternalOCLinEcore.g:4650:6: ( ';' )
                     {
-                    // InternalOCLinEcore.g:4648:6: ( ';' )
-                    // InternalOCLinEcore.g:4649:1: ';'
+                    // InternalOCLinEcore.g:4650:6: ( ';' )
+                    // InternalOCLinEcore.g:4651:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getStructuredClassCSAccess().getSemicolonKeyword_7_1());
@@ -15929,13 +15929,13 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Alternatives_7_0_1"
-    // InternalOCLinEcore.g:4661:1: rule__StructuredClassCS__Alternatives_7_0_1 : ( ( ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 ) ) | ( ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 ) ) | ( ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 ) ) | ( ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 ) ) );
+    // InternalOCLinEcore.g:4663:1: rule__StructuredClassCS__Alternatives_7_0_1 : ( ( ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 ) ) | ( ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 ) ) | ( ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 ) ) | ( ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 ) ) );
     public final void rule__StructuredClassCS__Alternatives_7_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4665:1: ( ( ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 ) ) | ( ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 ) ) | ( ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 ) ) | ( ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 ) ) )
+            // InternalOCLinEcore.g:4667:1: ( ( ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 ) ) | ( ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 ) ) | ( ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 ) ) | ( ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 ) ) )
             int alt39=4;
             switch ( input.LA(1) ) {
             case 54:
@@ -16058,16 +16058,16 @@
 
             switch (alt39) {
                 case 1 :
-                    // InternalOCLinEcore.g:4666:1: ( ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 ) )
+                    // InternalOCLinEcore.g:4668:1: ( ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 ) )
                     {
-                    // InternalOCLinEcore.g:4666:1: ( ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 ) )
-                    // InternalOCLinEcore.g:4667:1: ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 )
+                    // InternalOCLinEcore.g:4668:1: ( ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 ) )
+                    // InternalOCLinEcore.g:4669:1: ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAssignment_7_0_1_0());
                     }
-                    // InternalOCLinEcore.g:4668:1: ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 )
-                    // InternalOCLinEcore.g:4668:2: rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0
+                    // InternalOCLinEcore.g:4670:1: ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 )
+                    // InternalOCLinEcore.g:4670:2: rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0();
@@ -16087,16 +16087,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4672:6: ( ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 ) )
+                    // InternalOCLinEcore.g:4674:6: ( ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 ) )
                     {
-                    // InternalOCLinEcore.g:4672:6: ( ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 ) )
-                    // InternalOCLinEcore.g:4673:1: ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 )
+                    // InternalOCLinEcore.g:4674:6: ( ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 ) )
+                    // InternalOCLinEcore.g:4675:1: ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsAssignment_7_0_1_1());
                     }
-                    // InternalOCLinEcore.g:4674:1: ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 )
-                    // InternalOCLinEcore.g:4674:2: rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1
+                    // InternalOCLinEcore.g:4676:1: ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 )
+                    // InternalOCLinEcore.g:4676:2: rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1();
@@ -16116,16 +16116,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4678:6: ( ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 ) )
+                    // InternalOCLinEcore.g:4680:6: ( ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 ) )
                     {
-                    // InternalOCLinEcore.g:4678:6: ( ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 ) )
-                    // InternalOCLinEcore.g:4679:1: ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 )
+                    // InternalOCLinEcore.g:4680:6: ( ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 ) )
+                    // InternalOCLinEcore.g:4681:1: ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesAssignment_7_0_1_2());
                     }
-                    // InternalOCLinEcore.g:4680:1: ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 )
-                    // InternalOCLinEcore.g:4680:2: rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2
+                    // InternalOCLinEcore.g:4682:1: ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 )
+                    // InternalOCLinEcore.g:4682:2: rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2();
@@ -16145,16 +16145,16 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:4684:6: ( ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 ) )
+                    // InternalOCLinEcore.g:4686:6: ( ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 ) )
                     {
-                    // InternalOCLinEcore.g:4684:6: ( ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 ) )
-                    // InternalOCLinEcore.g:4685:1: ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 )
+                    // InternalOCLinEcore.g:4686:6: ( ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 ) )
+                    // InternalOCLinEcore.g:4687:1: ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsAssignment_7_0_1_3());
                     }
-                    // InternalOCLinEcore.g:4686:1: ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 )
-                    // InternalOCLinEcore.g:4686:2: rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3
+                    // InternalOCLinEcore.g:4688:1: ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 )
+                    // InternalOCLinEcore.g:4688:2: rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3();
@@ -16191,13 +16191,13 @@
 
 
     // $ANTLR start "rule__StructuralFeatureCS__Alternatives"
-    // InternalOCLinEcore.g:4695:1: rule__StructuralFeatureCS__Alternatives : ( ( ruleAttributeCS ) | ( ruleReferenceCS ) );
+    // InternalOCLinEcore.g:4697:1: rule__StructuralFeatureCS__Alternatives : ( ( ruleAttributeCS ) | ( ruleReferenceCS ) );
     public final void rule__StructuralFeatureCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4699:1: ( ( ruleAttributeCS ) | ( ruleReferenceCS ) )
+            // InternalOCLinEcore.g:4701:1: ( ( ruleAttributeCS ) | ( ruleReferenceCS ) )
             int alt40=2;
             switch ( input.LA(1) ) {
             case 46:
@@ -16304,10 +16304,10 @@
 
             switch (alt40) {
                 case 1 :
-                    // InternalOCLinEcore.g:4700:1: ( ruleAttributeCS )
+                    // InternalOCLinEcore.g:4702:1: ( ruleAttributeCS )
                     {
-                    // InternalOCLinEcore.g:4700:1: ( ruleAttributeCS )
-                    // InternalOCLinEcore.g:4701:1: ruleAttributeCS
+                    // InternalOCLinEcore.g:4702:1: ( ruleAttributeCS )
+                    // InternalOCLinEcore.g:4703:1: ruleAttributeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getStructuralFeatureCSAccess().getAttributeCSParserRuleCall_0());
@@ -16327,10 +16327,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4706:6: ( ruleReferenceCS )
+                    // InternalOCLinEcore.g:4708:6: ( ruleReferenceCS )
                     {
-                    // InternalOCLinEcore.g:4706:6: ( ruleReferenceCS )
-                    // InternalOCLinEcore.g:4707:1: ruleReferenceCS
+                    // InternalOCLinEcore.g:4708:6: ( ruleReferenceCS )
+                    // InternalOCLinEcore.g:4709:1: ruleReferenceCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getStructuralFeatureCSAccess().getReferenceCSParserRuleCall_1());
@@ -16367,13 +16367,13 @@
 
 
     // $ANTLR start "rule__SysMLCS__Alternatives_2"
-    // InternalOCLinEcore.g:4717:1: rule__SysMLCS__Alternatives_2 : ( ( ( rule__SysMLCS__Group_2_0__0 ) ) | ( ( rule__SysMLCS__Group_2_1__0 ) ) );
+    // InternalOCLinEcore.g:4719:1: rule__SysMLCS__Alternatives_2 : ( ( ( rule__SysMLCS__Group_2_0__0 ) ) | ( ( rule__SysMLCS__Group_2_1__0 ) ) );
     public final void rule__SysMLCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4721:1: ( ( ( rule__SysMLCS__Group_2_0__0 ) ) | ( ( rule__SysMLCS__Group_2_1__0 ) ) )
+            // InternalOCLinEcore.g:4723:1: ( ( ( rule__SysMLCS__Group_2_0__0 ) ) | ( ( rule__SysMLCS__Group_2_1__0 ) ) )
             int alt41=2;
             int LA41_0 = input.LA(1);
 
@@ -16392,16 +16392,16 @@
             }
             switch (alt41) {
                 case 1 :
-                    // InternalOCLinEcore.g:4722:1: ( ( rule__SysMLCS__Group_2_0__0 ) )
+                    // InternalOCLinEcore.g:4724:1: ( ( rule__SysMLCS__Group_2_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:4722:1: ( ( rule__SysMLCS__Group_2_0__0 ) )
-                    // InternalOCLinEcore.g:4723:1: ( rule__SysMLCS__Group_2_0__0 )
+                    // InternalOCLinEcore.g:4724:1: ( ( rule__SysMLCS__Group_2_0__0 ) )
+                    // InternalOCLinEcore.g:4725:1: ( rule__SysMLCS__Group_2_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getSysMLCSAccess().getGroup_2_0());
                     }
-                    // InternalOCLinEcore.g:4724:1: ( rule__SysMLCS__Group_2_0__0 )
-                    // InternalOCLinEcore.g:4724:2: rule__SysMLCS__Group_2_0__0
+                    // InternalOCLinEcore.g:4726:1: ( rule__SysMLCS__Group_2_0__0 )
+                    // InternalOCLinEcore.g:4726:2: rule__SysMLCS__Group_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__SysMLCS__Group_2_0__0();
@@ -16421,16 +16421,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4728:6: ( ( rule__SysMLCS__Group_2_1__0 ) )
+                    // InternalOCLinEcore.g:4730:6: ( ( rule__SysMLCS__Group_2_1__0 ) )
                     {
-                    // InternalOCLinEcore.g:4728:6: ( ( rule__SysMLCS__Group_2_1__0 ) )
-                    // InternalOCLinEcore.g:4729:1: ( rule__SysMLCS__Group_2_1__0 )
+                    // InternalOCLinEcore.g:4730:6: ( ( rule__SysMLCS__Group_2_1__0 ) )
+                    // InternalOCLinEcore.g:4731:1: ( rule__SysMLCS__Group_2_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getSysMLCSAccess().getGroup_2_1());
                     }
-                    // InternalOCLinEcore.g:4730:1: ( rule__SysMLCS__Group_2_1__0 )
-                    // InternalOCLinEcore.g:4730:2: rule__SysMLCS__Group_2_1__0
+                    // InternalOCLinEcore.g:4732:1: ( rule__SysMLCS__Group_2_1__0 )
+                    // InternalOCLinEcore.g:4732:2: rule__SysMLCS__Group_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__SysMLCS__Group_2_1__0();
@@ -16467,13 +16467,13 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Alternatives"
-    // InternalOCLinEcore.g:4740:1: rule__TemplateSignatureCS__Alternatives : ( ( ( rule__TemplateSignatureCS__Group_0__0 ) ) | ( ( rule__TemplateSignatureCS__Group_1__0 ) ) );
+    // InternalOCLinEcore.g:4742:1: rule__TemplateSignatureCS__Alternatives : ( ( ( rule__TemplateSignatureCS__Group_0__0 ) ) | ( ( rule__TemplateSignatureCS__Group_1__0 ) ) );
     public final void rule__TemplateSignatureCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4744:1: ( ( ( rule__TemplateSignatureCS__Group_0__0 ) ) | ( ( rule__TemplateSignatureCS__Group_1__0 ) ) )
+            // InternalOCLinEcore.g:4746:1: ( ( ( rule__TemplateSignatureCS__Group_0__0 ) ) | ( ( rule__TemplateSignatureCS__Group_1__0 ) ) )
             int alt42=2;
             int LA42_0 = input.LA(1);
 
@@ -16492,16 +16492,16 @@
             }
             switch (alt42) {
                 case 1 :
-                    // InternalOCLinEcore.g:4745:1: ( ( rule__TemplateSignatureCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:4747:1: ( ( rule__TemplateSignatureCS__Group_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:4745:1: ( ( rule__TemplateSignatureCS__Group_0__0 ) )
-                    // InternalOCLinEcore.g:4746:1: ( rule__TemplateSignatureCS__Group_0__0 )
+                    // InternalOCLinEcore.g:4747:1: ( ( rule__TemplateSignatureCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:4748:1: ( rule__TemplateSignatureCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTemplateSignatureCSAccess().getGroup_0());
                     }
-                    // InternalOCLinEcore.g:4747:1: ( rule__TemplateSignatureCS__Group_0__0 )
-                    // InternalOCLinEcore.g:4747:2: rule__TemplateSignatureCS__Group_0__0
+                    // InternalOCLinEcore.g:4749:1: ( rule__TemplateSignatureCS__Group_0__0 )
+                    // InternalOCLinEcore.g:4749:2: rule__TemplateSignatureCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TemplateSignatureCS__Group_0__0();
@@ -16521,16 +16521,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4751:6: ( ( rule__TemplateSignatureCS__Group_1__0 ) )
+                    // InternalOCLinEcore.g:4753:6: ( ( rule__TemplateSignatureCS__Group_1__0 ) )
                     {
-                    // InternalOCLinEcore.g:4751:6: ( ( rule__TemplateSignatureCS__Group_1__0 ) )
-                    // InternalOCLinEcore.g:4752:1: ( rule__TemplateSignatureCS__Group_1__0 )
+                    // InternalOCLinEcore.g:4753:6: ( ( rule__TemplateSignatureCS__Group_1__0 ) )
+                    // InternalOCLinEcore.g:4754:1: ( rule__TemplateSignatureCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTemplateSignatureCSAccess().getGroup_1());
                     }
-                    // InternalOCLinEcore.g:4753:1: ( rule__TemplateSignatureCS__Group_1__0 )
-                    // InternalOCLinEcore.g:4753:2: rule__TemplateSignatureCS__Group_1__0
+                    // InternalOCLinEcore.g:4755:1: ( rule__TemplateSignatureCS__Group_1__0 )
+                    // InternalOCLinEcore.g:4755:2: rule__TemplateSignatureCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TemplateSignatureCS__Group_1__0();
@@ -16567,13 +16567,13 @@
 
 
     // $ANTLR start "rule__TypedRefCS__Alternatives"
-    // InternalOCLinEcore.g:4762:1: rule__TypedRefCS__Alternatives : ( ( ruleTypeLiteralCS ) | ( ruleTypedTypeRefCS ) );
+    // InternalOCLinEcore.g:4764:1: rule__TypedRefCS__Alternatives : ( ( ruleTypeLiteralCS ) | ( ruleTypedTypeRefCS ) );
     public final void rule__TypedRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4766:1: ( ( ruleTypeLiteralCS ) | ( ruleTypedTypeRefCS ) )
+            // InternalOCLinEcore.g:4768:1: ( ( ruleTypeLiteralCS ) | ( ruleTypedTypeRefCS ) )
             int alt43=2;
             int LA43_0 = input.LA(1);
 
@@ -16592,10 +16592,10 @@
             }
             switch (alt43) {
                 case 1 :
-                    // InternalOCLinEcore.g:4767:1: ( ruleTypeLiteralCS )
+                    // InternalOCLinEcore.g:4769:1: ( ruleTypeLiteralCS )
                     {
-                    // InternalOCLinEcore.g:4767:1: ( ruleTypeLiteralCS )
-                    // InternalOCLinEcore.g:4768:1: ruleTypeLiteralCS
+                    // InternalOCLinEcore.g:4769:1: ( ruleTypeLiteralCS )
+                    // InternalOCLinEcore.g:4770:1: ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0());
@@ -16615,10 +16615,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4773:6: ( ruleTypedTypeRefCS )
+                    // InternalOCLinEcore.g:4775:6: ( ruleTypedTypeRefCS )
                     {
-                    // InternalOCLinEcore.g:4773:6: ( ruleTypedTypeRefCS )
-                    // InternalOCLinEcore.g:4774:1: ruleTypedTypeRefCS
+                    // InternalOCLinEcore.g:4775:6: ( ruleTypedTypeRefCS )
+                    // InternalOCLinEcore.g:4776:1: ruleTypedTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1());
@@ -16655,13 +16655,13 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Alternatives_1"
-    // InternalOCLinEcore.g:4784:1: rule__TypedTypeRefCS__Alternatives_1 : ( ( ( rule__TypedTypeRefCS__Group_1_0__0 ) ) | ( ( rule__TypedTypeRefCS__Group_1_1__0 ) ) );
+    // InternalOCLinEcore.g:4786:1: rule__TypedTypeRefCS__Alternatives_1 : ( ( ( rule__TypedTypeRefCS__Group_1_0__0 ) ) | ( ( rule__TypedTypeRefCS__Group_1_1__0 ) ) );
     public final void rule__TypedTypeRefCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4788:1: ( ( ( rule__TypedTypeRefCS__Group_1_0__0 ) ) | ( ( rule__TypedTypeRefCS__Group_1_1__0 ) ) )
+            // InternalOCLinEcore.g:4790:1: ( ( ( rule__TypedTypeRefCS__Group_1_0__0 ) ) | ( ( rule__TypedTypeRefCS__Group_1_1__0 ) ) )
             int alt44=2;
             int LA44_0 = input.LA(1);
 
@@ -16680,16 +16680,16 @@
             }
             switch (alt44) {
                 case 1 :
-                    // InternalOCLinEcore.g:4789:1: ( ( rule__TypedTypeRefCS__Group_1_0__0 ) )
+                    // InternalOCLinEcore.g:4791:1: ( ( rule__TypedTypeRefCS__Group_1_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:4789:1: ( ( rule__TypedTypeRefCS__Group_1_0__0 ) )
-                    // InternalOCLinEcore.g:4790:1: ( rule__TypedTypeRefCS__Group_1_0__0 )
+                    // InternalOCLinEcore.g:4791:1: ( ( rule__TypedTypeRefCS__Group_1_0__0 ) )
+                    // InternalOCLinEcore.g:4792:1: ( rule__TypedTypeRefCS__Group_1_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_0());
                     }
-                    // InternalOCLinEcore.g:4791:1: ( rule__TypedTypeRefCS__Group_1_0__0 )
-                    // InternalOCLinEcore.g:4791:2: rule__TypedTypeRefCS__Group_1_0__0
+                    // InternalOCLinEcore.g:4793:1: ( rule__TypedTypeRefCS__Group_1_0__0 )
+                    // InternalOCLinEcore.g:4793:2: rule__TypedTypeRefCS__Group_1_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypedTypeRefCS__Group_1_0__0();
@@ -16709,16 +16709,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4795:6: ( ( rule__TypedTypeRefCS__Group_1_1__0 ) )
+                    // InternalOCLinEcore.g:4797:6: ( ( rule__TypedTypeRefCS__Group_1_1__0 ) )
                     {
-                    // InternalOCLinEcore.g:4795:6: ( ( rule__TypedTypeRefCS__Group_1_1__0 ) )
-                    // InternalOCLinEcore.g:4796:1: ( rule__TypedTypeRefCS__Group_1_1__0 )
+                    // InternalOCLinEcore.g:4797:6: ( ( rule__TypedTypeRefCS__Group_1_1__0 ) )
+                    // InternalOCLinEcore.g:4798:1: ( rule__TypedTypeRefCS__Group_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_1());
                     }
-                    // InternalOCLinEcore.g:4797:1: ( rule__TypedTypeRefCS__Group_1_1__0 )
-                    // InternalOCLinEcore.g:4797:2: rule__TypedTypeRefCS__Group_1_1__0
+                    // InternalOCLinEcore.g:4799:1: ( rule__TypedTypeRefCS__Group_1_1__0 )
+                    // InternalOCLinEcore.g:4799:2: rule__TypedTypeRefCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypedTypeRefCS__Group_1_1__0();
@@ -16755,13 +16755,13 @@
 
 
     // $ANTLR start "rule__UnrestrictedName__Alternatives"
-    // InternalOCLinEcore.g:4806:1: rule__UnrestrictedName__Alternatives : ( ( ruleEnumerationLiteralName ) | ( 'annotation' ) | ( 'documentation' ) | ( 'invariant' ) | ( 'literal' ) | ( 'opposite' ) | ( 'serializable' ) | ( 'sysml' ) );
+    // InternalOCLinEcore.g:4808:1: rule__UnrestrictedName__Alternatives : ( ( ruleEnumerationLiteralName ) | ( 'annotation' ) | ( 'documentation' ) | ( 'invariant' ) | ( 'literal' ) | ( 'opposite' ) | ( 'serializable' ) | ( 'sysml' ) );
     public final void rule__UnrestrictedName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4810:1: ( ( ruleEnumerationLiteralName ) | ( 'annotation' ) | ( 'documentation' ) | ( 'invariant' ) | ( 'literal' ) | ( 'opposite' ) | ( 'serializable' ) | ( 'sysml' ) )
+            // InternalOCLinEcore.g:4812:1: ( ( ruleEnumerationLiteralName ) | ( 'annotation' ) | ( 'documentation' ) | ( 'invariant' ) | ( 'literal' ) | ( 'opposite' ) | ( 'serializable' ) | ( 'sysml' ) )
             int alt45=8;
             switch ( input.LA(1) ) {
             case RULE_SIMPLE_ID:
@@ -16850,10 +16850,10 @@
 
             switch (alt45) {
                 case 1 :
-                    // InternalOCLinEcore.g:4811:1: ( ruleEnumerationLiteralName )
+                    // InternalOCLinEcore.g:4813:1: ( ruleEnumerationLiteralName )
                     {
-                    // InternalOCLinEcore.g:4811:1: ( ruleEnumerationLiteralName )
-                    // InternalOCLinEcore.g:4812:1: ruleEnumerationLiteralName
+                    // InternalOCLinEcore.g:4813:1: ( ruleEnumerationLiteralName )
+                    // InternalOCLinEcore.g:4814:1: ruleEnumerationLiteralName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUnrestrictedNameAccess().getEnumerationLiteralNameParserRuleCall_0());
@@ -16873,10 +16873,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4817:6: ( 'annotation' )
+                    // InternalOCLinEcore.g:4819:6: ( 'annotation' )
                     {
-                    // InternalOCLinEcore.g:4817:6: ( 'annotation' )
-                    // InternalOCLinEcore.g:4818:1: 'annotation'
+                    // InternalOCLinEcore.g:4819:6: ( 'annotation' )
+                    // InternalOCLinEcore.g:4820:1: 'annotation'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUnrestrictedNameAccess().getAnnotationKeyword_1());
@@ -16892,10 +16892,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4825:6: ( 'documentation' )
+                    // InternalOCLinEcore.g:4827:6: ( 'documentation' )
                     {
-                    // InternalOCLinEcore.g:4825:6: ( 'documentation' )
-                    // InternalOCLinEcore.g:4826:1: 'documentation'
+                    // InternalOCLinEcore.g:4827:6: ( 'documentation' )
+                    // InternalOCLinEcore.g:4828:1: 'documentation'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUnrestrictedNameAccess().getDocumentationKeyword_2());
@@ -16911,10 +16911,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:4833:6: ( 'invariant' )
+                    // InternalOCLinEcore.g:4835:6: ( 'invariant' )
                     {
-                    // InternalOCLinEcore.g:4833:6: ( 'invariant' )
-                    // InternalOCLinEcore.g:4834:1: 'invariant'
+                    // InternalOCLinEcore.g:4835:6: ( 'invariant' )
+                    // InternalOCLinEcore.g:4836:1: 'invariant'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUnrestrictedNameAccess().getInvariantKeyword_3());
@@ -16930,10 +16930,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:4841:6: ( 'literal' )
+                    // InternalOCLinEcore.g:4843:6: ( 'literal' )
                     {
-                    // InternalOCLinEcore.g:4841:6: ( 'literal' )
-                    // InternalOCLinEcore.g:4842:1: 'literal'
+                    // InternalOCLinEcore.g:4843:6: ( 'literal' )
+                    // InternalOCLinEcore.g:4844:1: 'literal'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUnrestrictedNameAccess().getLiteralKeyword_4());
@@ -16949,10 +16949,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLinEcore.g:4849:6: ( 'opposite' )
+                    // InternalOCLinEcore.g:4851:6: ( 'opposite' )
                     {
-                    // InternalOCLinEcore.g:4849:6: ( 'opposite' )
-                    // InternalOCLinEcore.g:4850:1: 'opposite'
+                    // InternalOCLinEcore.g:4851:6: ( 'opposite' )
+                    // InternalOCLinEcore.g:4852:1: 'opposite'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUnrestrictedNameAccess().getOppositeKeyword_5());
@@ -16968,10 +16968,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLinEcore.g:4857:6: ( 'serializable' )
+                    // InternalOCLinEcore.g:4859:6: ( 'serializable' )
                     {
-                    // InternalOCLinEcore.g:4857:6: ( 'serializable' )
-                    // InternalOCLinEcore.g:4858:1: 'serializable'
+                    // InternalOCLinEcore.g:4859:6: ( 'serializable' )
+                    // InternalOCLinEcore.g:4860:1: 'serializable'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUnrestrictedNameAccess().getSerializableKeyword_6());
@@ -16987,10 +16987,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLinEcore.g:4865:6: ( 'sysml' )
+                    // InternalOCLinEcore.g:4867:6: ( 'sysml' )
                     {
-                    // InternalOCLinEcore.g:4865:6: ( 'sysml' )
-                    // InternalOCLinEcore.g:4866:1: 'sysml'
+                    // InternalOCLinEcore.g:4867:6: ( 'sysml' )
+                    // InternalOCLinEcore.g:4868:1: 'sysml'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUnrestrictedNameAccess().getSysmlKeyword_7());
@@ -17023,13 +17023,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLUnaryOperatorName__Alternatives"
-    // InternalOCLinEcore.g:4879:1: rule__EssentialOCLUnaryOperatorName__Alternatives : ( ( '-' ) | ( 'not' ) | ( 'not2' ) );
+    // InternalOCLinEcore.g:4881:1: rule__EssentialOCLUnaryOperatorName__Alternatives : ( ( '-' ) | ( 'not' ) | ( 'not2' ) );
     public final void rule__EssentialOCLUnaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4883:1: ( ( '-' ) | ( 'not' ) | ( 'not2' ) )
+            // InternalOCLinEcore.g:4885:1: ( ( '-' ) | ( 'not' ) | ( 'not2' ) )
             int alt46=3;
             switch ( input.LA(1) ) {
             case 61:
@@ -17057,10 +17057,10 @@
 
             switch (alt46) {
                 case 1 :
-                    // InternalOCLinEcore.g:4884:1: ( '-' )
+                    // InternalOCLinEcore.g:4886:1: ( '-' )
                     {
-                    // InternalOCLinEcore.g:4884:1: ( '-' )
-                    // InternalOCLinEcore.g:4885:1: '-'
+                    // InternalOCLinEcore.g:4886:1: ( '-' )
+                    // InternalOCLinEcore.g:4887:1: '-'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
@@ -17076,10 +17076,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4892:6: ( 'not' )
+                    // InternalOCLinEcore.g:4894:6: ( 'not' )
                     {
-                    // InternalOCLinEcore.g:4892:6: ( 'not' )
-                    // InternalOCLinEcore.g:4893:1: 'not'
+                    // InternalOCLinEcore.g:4894:6: ( 'not' )
+                    // InternalOCLinEcore.g:4895:1: 'not'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
@@ -17095,10 +17095,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4900:6: ( 'not2' )
+                    // InternalOCLinEcore.g:4902:6: ( 'not2' )
                     {
-                    // InternalOCLinEcore.g:4900:6: ( 'not2' )
-                    // InternalOCLinEcore.g:4901:1: 'not2'
+                    // InternalOCLinEcore.g:4902:6: ( 'not2' )
+                    // InternalOCLinEcore.g:4903:1: 'not2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNot2Keyword_2());
@@ -17131,13 +17131,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLInfixOperatorName__Alternatives"
-    // InternalOCLinEcore.g:4913:1: rule__EssentialOCLInfixOperatorName__Alternatives : ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) );
+    // InternalOCLinEcore.g:4915:1: rule__EssentialOCLInfixOperatorName__Alternatives : ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) );
     public final void rule__EssentialOCLInfixOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:4917:1: ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) )
+            // InternalOCLinEcore.g:4919:1: ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) )
             int alt47=18;
             switch ( input.LA(1) ) {
             case 64:
@@ -17240,10 +17240,10 @@
 
             switch (alt47) {
                 case 1 :
-                    // InternalOCLinEcore.g:4918:1: ( '*' )
+                    // InternalOCLinEcore.g:4920:1: ( '*' )
                     {
-                    // InternalOCLinEcore.g:4918:1: ( '*' )
-                    // InternalOCLinEcore.g:4919:1: '*'
+                    // InternalOCLinEcore.g:4920:1: ( '*' )
+                    // InternalOCLinEcore.g:4921:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
@@ -17259,10 +17259,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:4926:6: ( '/' )
+                    // InternalOCLinEcore.g:4928:6: ( '/' )
                     {
-                    // InternalOCLinEcore.g:4926:6: ( '/' )
-                    // InternalOCLinEcore.g:4927:1: '/'
+                    // InternalOCLinEcore.g:4928:6: ( '/' )
+                    // InternalOCLinEcore.g:4929:1: '/'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
@@ -17278,10 +17278,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:4934:6: ( '+' )
+                    // InternalOCLinEcore.g:4936:6: ( '+' )
                     {
-                    // InternalOCLinEcore.g:4934:6: ( '+' )
-                    // InternalOCLinEcore.g:4935:1: '+'
+                    // InternalOCLinEcore.g:4936:6: ( '+' )
+                    // InternalOCLinEcore.g:4937:1: '+'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
@@ -17297,10 +17297,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:4942:6: ( '-' )
+                    // InternalOCLinEcore.g:4944:6: ( '-' )
                     {
-                    // InternalOCLinEcore.g:4942:6: ( '-' )
-                    // InternalOCLinEcore.g:4943:1: '-'
+                    // InternalOCLinEcore.g:4944:6: ( '-' )
+                    // InternalOCLinEcore.g:4945:1: '-'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
@@ -17316,10 +17316,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:4950:6: ( '>' )
+                    // InternalOCLinEcore.g:4952:6: ( '>' )
                     {
-                    // InternalOCLinEcore.g:4950:6: ( '>' )
-                    // InternalOCLinEcore.g:4951:1: '>'
+                    // InternalOCLinEcore.g:4952:6: ( '>' )
+                    // InternalOCLinEcore.g:4953:1: '>'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
@@ -17335,10 +17335,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLinEcore.g:4958:6: ( '<' )
+                    // InternalOCLinEcore.g:4960:6: ( '<' )
                     {
-                    // InternalOCLinEcore.g:4958:6: ( '<' )
-                    // InternalOCLinEcore.g:4959:1: '<'
+                    // InternalOCLinEcore.g:4960:6: ( '<' )
+                    // InternalOCLinEcore.g:4961:1: '<'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
@@ -17354,10 +17354,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLinEcore.g:4966:6: ( '>=' )
+                    // InternalOCLinEcore.g:4968:6: ( '>=' )
                     {
-                    // InternalOCLinEcore.g:4966:6: ( '>=' )
-                    // InternalOCLinEcore.g:4967:1: '>='
+                    // InternalOCLinEcore.g:4968:6: ( '>=' )
+                    // InternalOCLinEcore.g:4969:1: '>='
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
@@ -17373,10 +17373,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLinEcore.g:4974:6: ( '<=' )
+                    // InternalOCLinEcore.g:4976:6: ( '<=' )
                     {
-                    // InternalOCLinEcore.g:4974:6: ( '<=' )
-                    // InternalOCLinEcore.g:4975:1: '<='
+                    // InternalOCLinEcore.g:4976:6: ( '<=' )
+                    // InternalOCLinEcore.g:4977:1: '<='
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
@@ -17392,10 +17392,10 @@
                     }
                     break;
                 case 9 :
-                    // InternalOCLinEcore.g:4982:6: ( '=' )
+                    // InternalOCLinEcore.g:4984:6: ( '=' )
                     {
-                    // InternalOCLinEcore.g:4982:6: ( '=' )
-                    // InternalOCLinEcore.g:4983:1: '='
+                    // InternalOCLinEcore.g:4984:6: ( '=' )
+                    // InternalOCLinEcore.g:4985:1: '='
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
@@ -17411,10 +17411,10 @@
                     }
                     break;
                 case 10 :
-                    // InternalOCLinEcore.g:4990:6: ( '<>' )
+                    // InternalOCLinEcore.g:4992:6: ( '<>' )
                     {
-                    // InternalOCLinEcore.g:4990:6: ( '<>' )
-                    // InternalOCLinEcore.g:4991:1: '<>'
+                    // InternalOCLinEcore.g:4992:6: ( '<>' )
+                    // InternalOCLinEcore.g:4993:1: '<>'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
@@ -17430,10 +17430,10 @@
                     }
                     break;
                 case 11 :
-                    // InternalOCLinEcore.g:4998:6: ( 'and' )
+                    // InternalOCLinEcore.g:5000:6: ( 'and' )
                     {
-                    // InternalOCLinEcore.g:4998:6: ( 'and' )
-                    // InternalOCLinEcore.g:4999:1: 'and'
+                    // InternalOCLinEcore.g:5000:6: ( 'and' )
+                    // InternalOCLinEcore.g:5001:1: 'and'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
@@ -17449,10 +17449,10 @@
                     }
                     break;
                 case 12 :
-                    // InternalOCLinEcore.g:5006:6: ( 'and2' )
+                    // InternalOCLinEcore.g:5008:6: ( 'and2' )
                     {
-                    // InternalOCLinEcore.g:5006:6: ( 'and2' )
-                    // InternalOCLinEcore.g:5007:1: 'and2'
+                    // InternalOCLinEcore.g:5008:6: ( 'and2' )
+                    // InternalOCLinEcore.g:5009:1: 'and2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAnd2Keyword_11());
@@ -17468,10 +17468,10 @@
                     }
                     break;
                 case 13 :
-                    // InternalOCLinEcore.g:5014:6: ( 'implies' )
+                    // InternalOCLinEcore.g:5016:6: ( 'implies' )
                     {
-                    // InternalOCLinEcore.g:5014:6: ( 'implies' )
-                    // InternalOCLinEcore.g:5015:1: 'implies'
+                    // InternalOCLinEcore.g:5016:6: ( 'implies' )
+                    // InternalOCLinEcore.g:5017:1: 'implies'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_12());
@@ -17487,10 +17487,10 @@
                     }
                     break;
                 case 14 :
-                    // InternalOCLinEcore.g:5022:6: ( 'implies2' )
+                    // InternalOCLinEcore.g:5024:6: ( 'implies2' )
                     {
-                    // InternalOCLinEcore.g:5022:6: ( 'implies2' )
-                    // InternalOCLinEcore.g:5023:1: 'implies2'
+                    // InternalOCLinEcore.g:5024:6: ( 'implies2' )
+                    // InternalOCLinEcore.g:5025:1: 'implies2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImplies2Keyword_13());
@@ -17506,10 +17506,10 @@
                     }
                     break;
                 case 15 :
-                    // InternalOCLinEcore.g:5030:6: ( 'or' )
+                    // InternalOCLinEcore.g:5032:6: ( 'or' )
                     {
-                    // InternalOCLinEcore.g:5030:6: ( 'or' )
-                    // InternalOCLinEcore.g:5031:1: 'or'
+                    // InternalOCLinEcore.g:5032:6: ( 'or' )
+                    // InternalOCLinEcore.g:5033:1: 'or'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_14());
@@ -17525,10 +17525,10 @@
                     }
                     break;
                 case 16 :
-                    // InternalOCLinEcore.g:5038:6: ( 'or2' )
+                    // InternalOCLinEcore.g:5040:6: ( 'or2' )
                     {
-                    // InternalOCLinEcore.g:5038:6: ( 'or2' )
-                    // InternalOCLinEcore.g:5039:1: 'or2'
+                    // InternalOCLinEcore.g:5040:6: ( 'or2' )
+                    // InternalOCLinEcore.g:5041:1: 'or2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOr2Keyword_15());
@@ -17544,10 +17544,10 @@
                     }
                     break;
                 case 17 :
-                    // InternalOCLinEcore.g:5046:6: ( 'xor' )
+                    // InternalOCLinEcore.g:5048:6: ( 'xor' )
                     {
-                    // InternalOCLinEcore.g:5046:6: ( 'xor' )
-                    // InternalOCLinEcore.g:5047:1: 'xor'
+                    // InternalOCLinEcore.g:5048:6: ( 'xor' )
+                    // InternalOCLinEcore.g:5049:1: 'xor'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_16());
@@ -17563,10 +17563,10 @@
                     }
                     break;
                 case 18 :
-                    // InternalOCLinEcore.g:5054:6: ( 'xor2' )
+                    // InternalOCLinEcore.g:5056:6: ( 'xor2' )
                     {
-                    // InternalOCLinEcore.g:5054:6: ( 'xor2' )
-                    // InternalOCLinEcore.g:5055:1: 'xor2'
+                    // InternalOCLinEcore.g:5056:6: ( 'xor2' )
+                    // InternalOCLinEcore.g:5057:1: 'xor2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXor2Keyword_17());
@@ -17599,13 +17599,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLNavigationOperatorName__Alternatives"
-    // InternalOCLinEcore.g:5067:1: rule__EssentialOCLNavigationOperatorName__Alternatives : ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) );
+    // InternalOCLinEcore.g:5069:1: rule__EssentialOCLNavigationOperatorName__Alternatives : ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) );
     public final void rule__EssentialOCLNavigationOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5071:1: ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) )
+            // InternalOCLinEcore.g:5073:1: ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) )
             int alt48=4;
             switch ( input.LA(1) ) {
             case 81:
@@ -17638,10 +17638,10 @@
 
             switch (alt48) {
                 case 1 :
-                    // InternalOCLinEcore.g:5072:1: ( '.' )
+                    // InternalOCLinEcore.g:5074:1: ( '.' )
                     {
-                    // InternalOCLinEcore.g:5072:1: ( '.' )
-                    // InternalOCLinEcore.g:5073:1: '.'
+                    // InternalOCLinEcore.g:5074:1: ( '.' )
+                    // InternalOCLinEcore.g:5075:1: '.'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
@@ -17657,10 +17657,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5080:6: ( '->' )
+                    // InternalOCLinEcore.g:5082:6: ( '->' )
                     {
-                    // InternalOCLinEcore.g:5080:6: ( '->' )
-                    // InternalOCLinEcore.g:5081:1: '->'
+                    // InternalOCLinEcore.g:5082:6: ( '->' )
+                    // InternalOCLinEcore.g:5083:1: '->'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
@@ -17676,10 +17676,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:5088:6: ( '?.' )
+                    // InternalOCLinEcore.g:5090:6: ( '?.' )
                     {
-                    // InternalOCLinEcore.g:5088:6: ( '?.' )
-                    // InternalOCLinEcore.g:5089:1: '?.'
+                    // InternalOCLinEcore.g:5090:6: ( '?.' )
+                    // InternalOCLinEcore.g:5091:1: '?.'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
@@ -17695,10 +17695,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:5096:6: ( '?->' )
+                    // InternalOCLinEcore.g:5098:6: ( '?->' )
                     {
-                    // InternalOCLinEcore.g:5096:6: ( '?->' )
-                    // InternalOCLinEcore.g:5097:1: '?->'
+                    // InternalOCLinEcore.g:5098:6: ( '?->' )
+                    // InternalOCLinEcore.g:5099:1: '?->'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
@@ -17731,13 +17731,13 @@
 
 
     // $ANTLR start "rule__BinaryOperatorName__Alternatives"
-    // InternalOCLinEcore.g:5109:1: rule__BinaryOperatorName__Alternatives : ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) );
+    // InternalOCLinEcore.g:5111:1: rule__BinaryOperatorName__Alternatives : ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) );
     public final void rule__BinaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5113:1: ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) )
+            // InternalOCLinEcore.g:5115:1: ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) )
             int alt49=2;
             int LA49_0 = input.LA(1);
 
@@ -17756,10 +17756,10 @@
             }
             switch (alt49) {
                 case 1 :
-                    // InternalOCLinEcore.g:5114:1: ( ruleInfixOperatorName )
+                    // InternalOCLinEcore.g:5116:1: ( ruleInfixOperatorName )
                     {
-                    // InternalOCLinEcore.g:5114:1: ( ruleInfixOperatorName )
-                    // InternalOCLinEcore.g:5115:1: ruleInfixOperatorName
+                    // InternalOCLinEcore.g:5116:1: ( ruleInfixOperatorName )
+                    // InternalOCLinEcore.g:5117:1: ruleInfixOperatorName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
@@ -17779,10 +17779,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5120:6: ( ruleNavigationOperatorName )
+                    // InternalOCLinEcore.g:5122:6: ( ruleNavigationOperatorName )
                     {
-                    // InternalOCLinEcore.g:5120:6: ( ruleNavigationOperatorName )
-                    // InternalOCLinEcore.g:5121:1: ruleNavigationOperatorName
+                    // InternalOCLinEcore.g:5122:6: ( ruleNavigationOperatorName )
+                    // InternalOCLinEcore.g:5123:1: ruleNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
@@ -17819,13 +17819,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLUnreservedName__Alternatives"
-    // InternalOCLinEcore.g:5131:1: rule__EssentialOCLUnreservedName__Alternatives : ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) );
+    // InternalOCLinEcore.g:5133:1: rule__EssentialOCLUnreservedName__Alternatives : ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) );
     public final void rule__EssentialOCLUnreservedName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5135:1: ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) )
+            // InternalOCLinEcore.g:5137:1: ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) )
             int alt50=5;
             switch ( input.LA(1) ) {
             case RULE_SIMPLE_ID:
@@ -17917,10 +17917,10 @@
 
             switch (alt50) {
                 case 1 :
-                    // InternalOCLinEcore.g:5136:1: ( ruleUnrestrictedName )
+                    // InternalOCLinEcore.g:5138:1: ( ruleUnrestrictedName )
                     {
-                    // InternalOCLinEcore.g:5136:1: ( ruleUnrestrictedName )
-                    // InternalOCLinEcore.g:5137:1: ruleUnrestrictedName
+                    // InternalOCLinEcore.g:5138:1: ( ruleUnrestrictedName )
+                    // InternalOCLinEcore.g:5139:1: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
@@ -17940,10 +17940,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5142:6: ( ruleCollectionTypeIdentifier )
+                    // InternalOCLinEcore.g:5144:6: ( ruleCollectionTypeIdentifier )
                     {
-                    // InternalOCLinEcore.g:5142:6: ( ruleCollectionTypeIdentifier )
-                    // InternalOCLinEcore.g:5143:1: ruleCollectionTypeIdentifier
+                    // InternalOCLinEcore.g:5144:6: ( ruleCollectionTypeIdentifier )
+                    // InternalOCLinEcore.g:5145:1: ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
@@ -17963,10 +17963,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:5148:6: ( rulePrimitiveTypeIdentifier )
+                    // InternalOCLinEcore.g:5150:6: ( rulePrimitiveTypeIdentifier )
                     {
-                    // InternalOCLinEcore.g:5148:6: ( rulePrimitiveTypeIdentifier )
-                    // InternalOCLinEcore.g:5149:1: rulePrimitiveTypeIdentifier
+                    // InternalOCLinEcore.g:5150:6: ( rulePrimitiveTypeIdentifier )
+                    // InternalOCLinEcore.g:5151:1: rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
@@ -17986,10 +17986,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:5154:6: ( 'Map' )
+                    // InternalOCLinEcore.g:5156:6: ( 'Map' )
                     {
-                    // InternalOCLinEcore.g:5154:6: ( 'Map' )
-                    // InternalOCLinEcore.g:5155:1: 'Map'
+                    // InternalOCLinEcore.g:5156:6: ( 'Map' )
+                    // InternalOCLinEcore.g:5157:1: 'Map'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
@@ -18005,10 +18005,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:5162:6: ( 'Tuple' )
+                    // InternalOCLinEcore.g:5164:6: ( 'Tuple' )
                     {
-                    // InternalOCLinEcore.g:5162:6: ( 'Tuple' )
-                    // InternalOCLinEcore.g:5163:1: 'Tuple'
+                    // InternalOCLinEcore.g:5164:6: ( 'Tuple' )
+                    // InternalOCLinEcore.g:5165:1: 'Tuple'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
@@ -18041,13 +18041,13 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Alternatives"
-    // InternalOCLinEcore.g:5175:1: rule__URIFirstPathElementCS__Alternatives : ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) );
+    // InternalOCLinEcore.g:5177:1: rule__URIFirstPathElementCS__Alternatives : ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) );
     public final void rule__URIFirstPathElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5179:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) )
+            // InternalOCLinEcore.g:5181:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) )
             int alt51=2;
             int LA51_0 = input.LA(1);
 
@@ -18066,16 +18066,16 @@
             }
             switch (alt51) {
                 case 1 :
-                    // InternalOCLinEcore.g:5180:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
+                    // InternalOCLinEcore.g:5182:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
                     {
-                    // InternalOCLinEcore.g:5180:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
-                    // InternalOCLinEcore.g:5181:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
+                    // InternalOCLinEcore.g:5182:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
+                    // InternalOCLinEcore.g:5183:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0());
                     }
-                    // InternalOCLinEcore.g:5182:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
-                    // InternalOCLinEcore.g:5182:2: rule__URIFirstPathElementCS__ReferredElementAssignment_0
+                    // InternalOCLinEcore.g:5184:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
+                    // InternalOCLinEcore.g:5184:2: rule__URIFirstPathElementCS__ReferredElementAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__URIFirstPathElementCS__ReferredElementAssignment_0();
@@ -18095,16 +18095,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5186:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
+                    // InternalOCLinEcore.g:5188:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
                     {
-                    // InternalOCLinEcore.g:5186:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
-                    // InternalOCLinEcore.g:5187:1: ( rule__URIFirstPathElementCS__Group_1__0 )
+                    // InternalOCLinEcore.g:5188:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
+                    // InternalOCLinEcore.g:5189:1: ( rule__URIFirstPathElementCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1());
                     }
-                    // InternalOCLinEcore.g:5188:1: ( rule__URIFirstPathElementCS__Group_1__0 )
-                    // InternalOCLinEcore.g:5188:2: rule__URIFirstPathElementCS__Group_1__0
+                    // InternalOCLinEcore.g:5190:1: ( rule__URIFirstPathElementCS__Group_1__0 )
+                    // InternalOCLinEcore.g:5190:2: rule__URIFirstPathElementCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__URIFirstPathElementCS__Group_1__0();
@@ -18141,13 +18141,13 @@
 
 
     // $ANTLR start "rule__PrimitiveTypeIdentifier__Alternatives"
-    // InternalOCLinEcore.g:5197:1: rule__PrimitiveTypeIdentifier__Alternatives : ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) );
+    // InternalOCLinEcore.g:5199:1: rule__PrimitiveTypeIdentifier__Alternatives : ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) );
     public final void rule__PrimitiveTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5201:1: ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) )
+            // InternalOCLinEcore.g:5203:1: ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) )
             int alt52=8;
             switch ( input.LA(1) ) {
             case 87:
@@ -18200,10 +18200,10 @@
 
             switch (alt52) {
                 case 1 :
-                    // InternalOCLinEcore.g:5202:1: ( 'Boolean' )
+                    // InternalOCLinEcore.g:5204:1: ( 'Boolean' )
                     {
-                    // InternalOCLinEcore.g:5202:1: ( 'Boolean' )
-                    // InternalOCLinEcore.g:5203:1: 'Boolean'
+                    // InternalOCLinEcore.g:5204:1: ( 'Boolean' )
+                    // InternalOCLinEcore.g:5205:1: 'Boolean'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
@@ -18219,10 +18219,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5210:6: ( 'Integer' )
+                    // InternalOCLinEcore.g:5212:6: ( 'Integer' )
                     {
-                    // InternalOCLinEcore.g:5210:6: ( 'Integer' )
-                    // InternalOCLinEcore.g:5211:1: 'Integer'
+                    // InternalOCLinEcore.g:5212:6: ( 'Integer' )
+                    // InternalOCLinEcore.g:5213:1: 'Integer'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
@@ -18238,10 +18238,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:5218:6: ( 'Real' )
+                    // InternalOCLinEcore.g:5220:6: ( 'Real' )
                     {
-                    // InternalOCLinEcore.g:5218:6: ( 'Real' )
-                    // InternalOCLinEcore.g:5219:1: 'Real'
+                    // InternalOCLinEcore.g:5220:6: ( 'Real' )
+                    // InternalOCLinEcore.g:5221:1: 'Real'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
@@ -18257,10 +18257,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:5226:6: ( 'String' )
+                    // InternalOCLinEcore.g:5228:6: ( 'String' )
                     {
-                    // InternalOCLinEcore.g:5226:6: ( 'String' )
-                    // InternalOCLinEcore.g:5227:1: 'String'
+                    // InternalOCLinEcore.g:5228:6: ( 'String' )
+                    // InternalOCLinEcore.g:5229:1: 'String'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
@@ -18276,10 +18276,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:5234:6: ( 'UnlimitedNatural' )
+                    // InternalOCLinEcore.g:5236:6: ( 'UnlimitedNatural' )
                     {
-                    // InternalOCLinEcore.g:5234:6: ( 'UnlimitedNatural' )
-                    // InternalOCLinEcore.g:5235:1: 'UnlimitedNatural'
+                    // InternalOCLinEcore.g:5236:6: ( 'UnlimitedNatural' )
+                    // InternalOCLinEcore.g:5237:1: 'UnlimitedNatural'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
@@ -18295,10 +18295,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLinEcore.g:5242:6: ( 'OclAny' )
+                    // InternalOCLinEcore.g:5244:6: ( 'OclAny' )
                     {
-                    // InternalOCLinEcore.g:5242:6: ( 'OclAny' )
-                    // InternalOCLinEcore.g:5243:1: 'OclAny'
+                    // InternalOCLinEcore.g:5244:6: ( 'OclAny' )
+                    // InternalOCLinEcore.g:5245:1: 'OclAny'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
@@ -18314,10 +18314,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLinEcore.g:5250:6: ( 'OclInvalid' )
+                    // InternalOCLinEcore.g:5252:6: ( 'OclInvalid' )
                     {
-                    // InternalOCLinEcore.g:5250:6: ( 'OclInvalid' )
-                    // InternalOCLinEcore.g:5251:1: 'OclInvalid'
+                    // InternalOCLinEcore.g:5252:6: ( 'OclInvalid' )
+                    // InternalOCLinEcore.g:5253:1: 'OclInvalid'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
@@ -18333,10 +18333,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLinEcore.g:5258:6: ( 'OclVoid' )
+                    // InternalOCLinEcore.g:5260:6: ( 'OclVoid' )
                     {
-                    // InternalOCLinEcore.g:5258:6: ( 'OclVoid' )
-                    // InternalOCLinEcore.g:5259:1: 'OclVoid'
+                    // InternalOCLinEcore.g:5260:6: ( 'OclVoid' )
+                    // InternalOCLinEcore.g:5261:1: 'OclVoid'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
@@ -18369,13 +18369,13 @@
 
 
     // $ANTLR start "rule__CollectionTypeIdentifier__Alternatives"
-    // InternalOCLinEcore.g:5271:1: rule__CollectionTypeIdentifier__Alternatives : ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) );
+    // InternalOCLinEcore.g:5273:1: rule__CollectionTypeIdentifier__Alternatives : ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) );
     public final void rule__CollectionTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5275:1: ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) )
+            // InternalOCLinEcore.g:5277:1: ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) )
             int alt53=5;
             switch ( input.LA(1) ) {
             case 95:
@@ -18413,10 +18413,10 @@
 
             switch (alt53) {
                 case 1 :
-                    // InternalOCLinEcore.g:5276:1: ( 'Set' )
+                    // InternalOCLinEcore.g:5278:1: ( 'Set' )
                     {
-                    // InternalOCLinEcore.g:5276:1: ( 'Set' )
-                    // InternalOCLinEcore.g:5277:1: 'Set'
+                    // InternalOCLinEcore.g:5278:1: ( 'Set' )
+                    // InternalOCLinEcore.g:5279:1: 'Set'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
@@ -18432,10 +18432,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5284:6: ( 'Bag' )
+                    // InternalOCLinEcore.g:5286:6: ( 'Bag' )
                     {
-                    // InternalOCLinEcore.g:5284:6: ( 'Bag' )
-                    // InternalOCLinEcore.g:5285:1: 'Bag'
+                    // InternalOCLinEcore.g:5286:6: ( 'Bag' )
+                    // InternalOCLinEcore.g:5287:1: 'Bag'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
@@ -18451,10 +18451,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:5292:6: ( 'Sequence' )
+                    // InternalOCLinEcore.g:5294:6: ( 'Sequence' )
                     {
-                    // InternalOCLinEcore.g:5292:6: ( 'Sequence' )
-                    // InternalOCLinEcore.g:5293:1: 'Sequence'
+                    // InternalOCLinEcore.g:5294:6: ( 'Sequence' )
+                    // InternalOCLinEcore.g:5295:1: 'Sequence'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
@@ -18470,10 +18470,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:5300:6: ( 'Collection' )
+                    // InternalOCLinEcore.g:5302:6: ( 'Collection' )
                     {
-                    // InternalOCLinEcore.g:5300:6: ( 'Collection' )
-                    // InternalOCLinEcore.g:5301:1: 'Collection'
+                    // InternalOCLinEcore.g:5302:6: ( 'Collection' )
+                    // InternalOCLinEcore.g:5303:1: 'Collection'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
@@ -18489,10 +18489,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:5308:6: ( 'OrderedSet' )
+                    // InternalOCLinEcore.g:5310:6: ( 'OrderedSet' )
                     {
-                    // InternalOCLinEcore.g:5308:6: ( 'OrderedSet' )
-                    // InternalOCLinEcore.g:5309:1: 'OrderedSet'
+                    // InternalOCLinEcore.g:5310:6: ( 'OrderedSet' )
+                    // InternalOCLinEcore.g:5311:1: 'OrderedSet'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
@@ -18525,27 +18525,27 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Alternatives"
-    // InternalOCLinEcore.g:5321:1: rule__CollectionLiteralPartCS__Alternatives : ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) );
+    // InternalOCLinEcore.g:5323:1: rule__CollectionLiteralPartCS__Alternatives : ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) );
     public final void rule__CollectionLiteralPartCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5325:1: ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) )
+            // InternalOCLinEcore.g:5327:1: ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) )
             int alt54=2;
             alt54 = dfa54.predict(input);
             switch (alt54) {
                 case 1 :
-                    // InternalOCLinEcore.g:5326:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:5328:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:5326:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
-                    // InternalOCLinEcore.g:5327:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
+                    // InternalOCLinEcore.g:5328:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:5329:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0());
                     }
-                    // InternalOCLinEcore.g:5328:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
-                    // InternalOCLinEcore.g:5328:2: rule__CollectionLiteralPartCS__Group_0__0
+                    // InternalOCLinEcore.g:5330:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
+                    // InternalOCLinEcore.g:5330:2: rule__CollectionLiteralPartCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralPartCS__Group_0__0();
@@ -18565,16 +18565,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5332:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
+                    // InternalOCLinEcore.g:5334:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
                     {
-                    // InternalOCLinEcore.g:5332:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
-                    // InternalOCLinEcore.g:5333:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
+                    // InternalOCLinEcore.g:5334:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
+                    // InternalOCLinEcore.g:5335:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1());
                     }
-                    // InternalOCLinEcore.g:5334:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
-                    // InternalOCLinEcore.g:5334:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1
+                    // InternalOCLinEcore.g:5336:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
+                    // InternalOCLinEcore.g:5336:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1();
@@ -18611,13 +18611,13 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Alternatives"
-    // InternalOCLinEcore.g:5343:1: rule__ShadowPartCS__Alternatives : ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) );
+    // InternalOCLinEcore.g:5345:1: rule__ShadowPartCS__Alternatives : ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) );
     public final void rule__ShadowPartCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5347:1: ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) )
+            // InternalOCLinEcore.g:5349:1: ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) )
             int alt55=2;
             int LA55_0 = input.LA(1);
 
@@ -18636,16 +18636,16 @@
             }
             switch (alt55) {
                 case 1 :
-                    // InternalOCLinEcore.g:5348:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:5350:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:5348:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
-                    // InternalOCLinEcore.g:5349:1: ( rule__ShadowPartCS__Group_0__0 )
+                    // InternalOCLinEcore.g:5350:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:5351:1: ( rule__ShadowPartCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getGroup_0());
                     }
-                    // InternalOCLinEcore.g:5350:1: ( rule__ShadowPartCS__Group_0__0 )
-                    // InternalOCLinEcore.g:5350:2: rule__ShadowPartCS__Group_0__0
+                    // InternalOCLinEcore.g:5352:1: ( rule__ShadowPartCS__Group_0__0 )
+                    // InternalOCLinEcore.g:5352:2: rule__ShadowPartCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ShadowPartCS__Group_0__0();
@@ -18665,16 +18665,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5354:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
+                    // InternalOCLinEcore.g:5356:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
                     {
-                    // InternalOCLinEcore.g:5354:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
-                    // InternalOCLinEcore.g:5355:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
+                    // InternalOCLinEcore.g:5356:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
+                    // InternalOCLinEcore.g:5357:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_1());
                     }
-                    // InternalOCLinEcore.g:5356:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
-                    // InternalOCLinEcore.g:5356:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_1
+                    // InternalOCLinEcore.g:5358:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
+                    // InternalOCLinEcore.g:5358:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ShadowPartCS__OwnedInitExpressionAssignment_1();
@@ -18711,21 +18711,21 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0"
-    // InternalOCLinEcore.g:5365:1: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
+    // InternalOCLinEcore.g:5367:1: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
     public final void rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5369:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
+            // InternalOCLinEcore.g:5371:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt56=2;
             alt56 = dfa56.predict(input);
             switch (alt56) {
                 case 1 :
-                    // InternalOCLinEcore.g:5370:1: ( ruleExpCS )
+                    // InternalOCLinEcore.g:5372:1: ( ruleExpCS )
                     {
-                    // InternalOCLinEcore.g:5370:1: ( ruleExpCS )
-                    // InternalOCLinEcore.g:5371:1: ruleExpCS
+                    // InternalOCLinEcore.g:5372:1: ( ruleExpCS )
+                    // InternalOCLinEcore.g:5373:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_2_0_0());
@@ -18745,10 +18745,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5376:6: ( rulePatternExpCS )
+                    // InternalOCLinEcore.g:5378:6: ( rulePatternExpCS )
                     {
-                    // InternalOCLinEcore.g:5376:6: ( rulePatternExpCS )
-                    // InternalOCLinEcore.g:5377:1: rulePatternExpCS
+                    // InternalOCLinEcore.g:5378:6: ( rulePatternExpCS )
+                    // InternalOCLinEcore.g:5379:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_0_2_0_1());
@@ -18785,13 +18785,13 @@
 
 
     // $ANTLR start "rule__PrimitiveLiteralExpCS__Alternatives"
-    // InternalOCLinEcore.g:5387:1: rule__PrimitiveLiteralExpCS__Alternatives : ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) );
+    // InternalOCLinEcore.g:5389:1: rule__PrimitiveLiteralExpCS__Alternatives : ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) );
     public final void rule__PrimitiveLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5391:1: ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) )
+            // InternalOCLinEcore.g:5393:1: ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) )
             int alt57=6;
             switch ( input.LA(1) ) {
             case RULE_INT:
@@ -18835,10 +18835,10 @@
 
             switch (alt57) {
                 case 1 :
-                    // InternalOCLinEcore.g:5392:1: ( ruleNumberLiteralExpCS )
+                    // InternalOCLinEcore.g:5394:1: ( ruleNumberLiteralExpCS )
                     {
-                    // InternalOCLinEcore.g:5392:1: ( ruleNumberLiteralExpCS )
-                    // InternalOCLinEcore.g:5393:1: ruleNumberLiteralExpCS
+                    // InternalOCLinEcore.g:5394:1: ( ruleNumberLiteralExpCS )
+                    // InternalOCLinEcore.g:5395:1: ruleNumberLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
@@ -18858,10 +18858,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5398:6: ( ruleStringLiteralExpCS )
+                    // InternalOCLinEcore.g:5400:6: ( ruleStringLiteralExpCS )
                     {
-                    // InternalOCLinEcore.g:5398:6: ( ruleStringLiteralExpCS )
-                    // InternalOCLinEcore.g:5399:1: ruleStringLiteralExpCS
+                    // InternalOCLinEcore.g:5400:6: ( ruleStringLiteralExpCS )
+                    // InternalOCLinEcore.g:5401:1: ruleStringLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
@@ -18881,10 +18881,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:5404:6: ( ruleBooleanLiteralExpCS )
+                    // InternalOCLinEcore.g:5406:6: ( ruleBooleanLiteralExpCS )
                     {
-                    // InternalOCLinEcore.g:5404:6: ( ruleBooleanLiteralExpCS )
-                    // InternalOCLinEcore.g:5405:1: ruleBooleanLiteralExpCS
+                    // InternalOCLinEcore.g:5406:6: ( ruleBooleanLiteralExpCS )
+                    // InternalOCLinEcore.g:5407:1: ruleBooleanLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
@@ -18904,10 +18904,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:5410:6: ( ruleUnlimitedNaturalLiteralExpCS )
+                    // InternalOCLinEcore.g:5412:6: ( ruleUnlimitedNaturalLiteralExpCS )
                     {
-                    // InternalOCLinEcore.g:5410:6: ( ruleUnlimitedNaturalLiteralExpCS )
-                    // InternalOCLinEcore.g:5411:1: ruleUnlimitedNaturalLiteralExpCS
+                    // InternalOCLinEcore.g:5412:6: ( ruleUnlimitedNaturalLiteralExpCS )
+                    // InternalOCLinEcore.g:5413:1: ruleUnlimitedNaturalLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
@@ -18927,10 +18927,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:5416:6: ( ruleInvalidLiteralExpCS )
+                    // InternalOCLinEcore.g:5418:6: ( ruleInvalidLiteralExpCS )
                     {
-                    // InternalOCLinEcore.g:5416:6: ( ruleInvalidLiteralExpCS )
-                    // InternalOCLinEcore.g:5417:1: ruleInvalidLiteralExpCS
+                    // InternalOCLinEcore.g:5418:6: ( ruleInvalidLiteralExpCS )
+                    // InternalOCLinEcore.g:5419:1: ruleInvalidLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
@@ -18950,10 +18950,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLinEcore.g:5422:6: ( ruleNullLiteralExpCS )
+                    // InternalOCLinEcore.g:5424:6: ( ruleNullLiteralExpCS )
                     {
-                    // InternalOCLinEcore.g:5422:6: ( ruleNullLiteralExpCS )
-                    // InternalOCLinEcore.g:5423:1: ruleNullLiteralExpCS
+                    // InternalOCLinEcore.g:5424:6: ( ruleNullLiteralExpCS )
+                    // InternalOCLinEcore.g:5425:1: ruleNullLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
@@ -18990,13 +18990,13 @@
 
 
     // $ANTLR start "rule__BooleanLiteralExpCS__Alternatives"
-    // InternalOCLinEcore.g:5433:1: rule__BooleanLiteralExpCS__Alternatives : ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) );
+    // InternalOCLinEcore.g:5435:1: rule__BooleanLiteralExpCS__Alternatives : ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) );
     public final void rule__BooleanLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5437:1: ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) )
+            // InternalOCLinEcore.g:5439:1: ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) )
             int alt58=2;
             int LA58_0 = input.LA(1);
 
@@ -19015,16 +19015,16 @@
             }
             switch (alt58) {
                 case 1 :
-                    // InternalOCLinEcore.g:5438:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
+                    // InternalOCLinEcore.g:5440:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
                     {
-                    // InternalOCLinEcore.g:5438:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
-                    // InternalOCLinEcore.g:5439:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
+                    // InternalOCLinEcore.g:5440:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
+                    // InternalOCLinEcore.g:5441:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0());
                     }
-                    // InternalOCLinEcore.g:5440:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
-                    // InternalOCLinEcore.g:5440:2: rule__BooleanLiteralExpCS__SymbolAssignment_0
+                    // InternalOCLinEcore.g:5442:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
+                    // InternalOCLinEcore.g:5442:2: rule__BooleanLiteralExpCS__SymbolAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__BooleanLiteralExpCS__SymbolAssignment_0();
@@ -19044,16 +19044,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5444:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
+                    // InternalOCLinEcore.g:5446:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
                     {
-                    // InternalOCLinEcore.g:5444:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
-                    // InternalOCLinEcore.g:5445:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
+                    // InternalOCLinEcore.g:5446:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
+                    // InternalOCLinEcore.g:5447:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1());
                     }
-                    // InternalOCLinEcore.g:5446:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
-                    // InternalOCLinEcore.g:5446:2: rule__BooleanLiteralExpCS__SymbolAssignment_1
+                    // InternalOCLinEcore.g:5448:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
+                    // InternalOCLinEcore.g:5448:2: rule__BooleanLiteralExpCS__SymbolAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__BooleanLiteralExpCS__SymbolAssignment_1();
@@ -19090,13 +19090,13 @@
 
 
     // $ANTLR start "rule__TypeLiteralCS__Alternatives"
-    // InternalOCLinEcore.g:5455:1: rule__TypeLiteralCS__Alternatives : ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) );
+    // InternalOCLinEcore.g:5457:1: rule__TypeLiteralCS__Alternatives : ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) );
     public final void rule__TypeLiteralCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5459:1: ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) )
+            // InternalOCLinEcore.g:5461:1: ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) )
             int alt59=4;
             switch ( input.LA(1) ) {
             case 87:
@@ -19140,10 +19140,10 @@
 
             switch (alt59) {
                 case 1 :
-                    // InternalOCLinEcore.g:5460:1: ( rulePrimitiveTypeCS )
+                    // InternalOCLinEcore.g:5462:1: ( rulePrimitiveTypeCS )
                     {
-                    // InternalOCLinEcore.g:5460:1: ( rulePrimitiveTypeCS )
-                    // InternalOCLinEcore.g:5461:1: rulePrimitiveTypeCS
+                    // InternalOCLinEcore.g:5462:1: ( rulePrimitiveTypeCS )
+                    // InternalOCLinEcore.g:5463:1: rulePrimitiveTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
@@ -19163,10 +19163,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5466:6: ( ruleCollectionTypeCS )
+                    // InternalOCLinEcore.g:5468:6: ( ruleCollectionTypeCS )
                     {
-                    // InternalOCLinEcore.g:5466:6: ( ruleCollectionTypeCS )
-                    // InternalOCLinEcore.g:5467:1: ruleCollectionTypeCS
+                    // InternalOCLinEcore.g:5468:6: ( ruleCollectionTypeCS )
+                    // InternalOCLinEcore.g:5469:1: ruleCollectionTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
@@ -19186,10 +19186,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:5472:6: ( ruleMapTypeCS )
+                    // InternalOCLinEcore.g:5474:6: ( ruleMapTypeCS )
                     {
-                    // InternalOCLinEcore.g:5472:6: ( ruleMapTypeCS )
-                    // InternalOCLinEcore.g:5473:1: ruleMapTypeCS
+                    // InternalOCLinEcore.g:5474:6: ( ruleMapTypeCS )
+                    // InternalOCLinEcore.g:5475:1: ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
@@ -19209,10 +19209,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:5478:6: ( ruleTupleTypeCS )
+                    // InternalOCLinEcore.g:5480:6: ( ruleTupleTypeCS )
                     {
-                    // InternalOCLinEcore.g:5478:6: ( ruleTupleTypeCS )
-                    // InternalOCLinEcore.g:5479:1: ruleTupleTypeCS
+                    // InternalOCLinEcore.g:5480:6: ( ruleTupleTypeCS )
+                    // InternalOCLinEcore.g:5481:1: ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
@@ -19249,21 +19249,21 @@
 
 
     // $ANTLR start "rule__TypeExpWithoutMultiplicityCS__Alternatives"
-    // InternalOCLinEcore.g:5489:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );
+    // InternalOCLinEcore.g:5491:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );
     public final void rule__TypeExpWithoutMultiplicityCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5493:1: ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) )
+            // InternalOCLinEcore.g:5495:1: ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) )
             int alt60=3;
             alt60 = dfa60.predict(input);
             switch (alt60) {
                 case 1 :
-                    // InternalOCLinEcore.g:5494:1: ( ruleTypeNameExpCS )
+                    // InternalOCLinEcore.g:5496:1: ( ruleTypeNameExpCS )
                     {
-                    // InternalOCLinEcore.g:5494:1: ( ruleTypeNameExpCS )
-                    // InternalOCLinEcore.g:5495:1: ruleTypeNameExpCS
+                    // InternalOCLinEcore.g:5496:1: ( ruleTypeNameExpCS )
+                    // InternalOCLinEcore.g:5497:1: ruleTypeNameExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeNameExpCSParserRuleCall_0());
@@ -19283,10 +19283,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5500:6: ( ruleTypeLiteralCS )
+                    // InternalOCLinEcore.g:5502:6: ( ruleTypeLiteralCS )
                     {
-                    // InternalOCLinEcore.g:5500:6: ( ruleTypeLiteralCS )
-                    // InternalOCLinEcore.g:5501:1: ruleTypeLiteralCS
+                    // InternalOCLinEcore.g:5502:6: ( ruleTypeLiteralCS )
+                    // InternalOCLinEcore.g:5503:1: ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_1());
@@ -19306,10 +19306,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:5506:6: ( ruleCollectionPatternCS )
+                    // InternalOCLinEcore.g:5508:6: ( ruleCollectionPatternCS )
                     {
-                    // InternalOCLinEcore.g:5506:6: ( ruleCollectionPatternCS )
-                    // InternalOCLinEcore.g:5507:1: ruleCollectionPatternCS
+                    // InternalOCLinEcore.g:5508:6: ( ruleCollectionPatternCS )
+                    // InternalOCLinEcore.g:5509:1: ruleCollectionPatternCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getCollectionPatternCSParserRuleCall_2());
@@ -19346,27 +19346,27 @@
 
 
     // $ANTLR start "rule__ExpCS__Alternatives"
-    // InternalOCLinEcore.g:5517:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );
+    // InternalOCLinEcore.g:5519:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );
     public final void rule__ExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5521:1: ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) )
+            // InternalOCLinEcore.g:5523:1: ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) )
             int alt61=2;
             alt61 = dfa61.predict(input);
             switch (alt61) {
                 case 1 :
-                    // InternalOCLinEcore.g:5522:1: ( ( rule__ExpCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:5524:1: ( ( rule__ExpCS__Group_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:5522:1: ( ( rule__ExpCS__Group_0__0 ) )
-                    // InternalOCLinEcore.g:5523:1: ( rule__ExpCS__Group_0__0 )
+                    // InternalOCLinEcore.g:5524:1: ( ( rule__ExpCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:5525:1: ( rule__ExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getExpCSAccess().getGroup_0());
                     }
-                    // InternalOCLinEcore.g:5524:1: ( rule__ExpCS__Group_0__0 )
-                    // InternalOCLinEcore.g:5524:2: rule__ExpCS__Group_0__0
+                    // InternalOCLinEcore.g:5526:1: ( rule__ExpCS__Group_0__0 )
+                    // InternalOCLinEcore.g:5526:2: rule__ExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ExpCS__Group_0__0();
@@ -19386,10 +19386,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5528:6: ( rulePrefixedLetExpCS )
+                    // InternalOCLinEcore.g:5530:6: ( rulePrefixedLetExpCS )
                     {
-                    // InternalOCLinEcore.g:5528:6: ( rulePrefixedLetExpCS )
-                    // InternalOCLinEcore.g:5529:1: rulePrefixedLetExpCS
+                    // InternalOCLinEcore.g:5530:6: ( rulePrefixedLetExpCS )
+                    // InternalOCLinEcore.g:5531:1: rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
@@ -19426,13 +19426,13 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Alternatives"
-    // InternalOCLinEcore.g:5539:1: rule__PrefixedLetExpCS__Alternatives : ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) );
+    // InternalOCLinEcore.g:5541:1: rule__PrefixedLetExpCS__Alternatives : ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) );
     public final void rule__PrefixedLetExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5543:1: ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) )
+            // InternalOCLinEcore.g:5545:1: ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) )
             int alt62=2;
             int LA62_0 = input.LA(1);
 
@@ -19451,16 +19451,16 @@
             }
             switch (alt62) {
                 case 1 :
-                    // InternalOCLinEcore.g:5544:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:5546:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:5544:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
-                    // InternalOCLinEcore.g:5545:1: ( rule__PrefixedLetExpCS__Group_0__0 )
+                    // InternalOCLinEcore.g:5546:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:5547:1: ( rule__PrefixedLetExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0());
                     }
-                    // InternalOCLinEcore.g:5546:1: ( rule__PrefixedLetExpCS__Group_0__0 )
-                    // InternalOCLinEcore.g:5546:2: rule__PrefixedLetExpCS__Group_0__0
+                    // InternalOCLinEcore.g:5548:1: ( rule__PrefixedLetExpCS__Group_0__0 )
+                    // InternalOCLinEcore.g:5548:2: rule__PrefixedLetExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PrefixedLetExpCS__Group_0__0();
@@ -19480,10 +19480,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5550:6: ( ruleLetExpCS )
+                    // InternalOCLinEcore.g:5552:6: ( ruleLetExpCS )
                     {
-                    // InternalOCLinEcore.g:5550:6: ( ruleLetExpCS )
-                    // InternalOCLinEcore.g:5551:1: ruleLetExpCS
+                    // InternalOCLinEcore.g:5552:6: ( ruleLetExpCS )
+                    // InternalOCLinEcore.g:5553:1: ruleLetExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
@@ -19520,13 +19520,13 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Alternatives"
-    // InternalOCLinEcore.g:5561:1: rule__PrefixedPrimaryExpCS__Alternatives : ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) );
+    // InternalOCLinEcore.g:5563:1: rule__PrefixedPrimaryExpCS__Alternatives : ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) );
     public final void rule__PrefixedPrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5565:1: ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) )
+            // InternalOCLinEcore.g:5567:1: ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) )
             int alt63=2;
             int LA63_0 = input.LA(1);
 
@@ -19545,16 +19545,16 @@
             }
             switch (alt63) {
                 case 1 :
-                    // InternalOCLinEcore.g:5566:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:5568:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:5566:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
-                    // InternalOCLinEcore.g:5567:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
+                    // InternalOCLinEcore.g:5568:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:5569:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0());
                     }
-                    // InternalOCLinEcore.g:5568:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
-                    // InternalOCLinEcore.g:5568:2: rule__PrefixedPrimaryExpCS__Group_0__0
+                    // InternalOCLinEcore.g:5570:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
+                    // InternalOCLinEcore.g:5570:2: rule__PrefixedPrimaryExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PrefixedPrimaryExpCS__Group_0__0();
@@ -19574,10 +19574,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5572:6: ( rulePrimaryExpCS )
+                    // InternalOCLinEcore.g:5574:6: ( rulePrimaryExpCS )
                     {
-                    // InternalOCLinEcore.g:5572:6: ( rulePrimaryExpCS )
-                    // InternalOCLinEcore.g:5573:1: rulePrimaryExpCS
+                    // InternalOCLinEcore.g:5574:6: ( rulePrimaryExpCS )
+                    // InternalOCLinEcore.g:5575:1: rulePrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
@@ -19614,21 +19614,21 @@
 
 
     // $ANTLR start "rule__PrimaryExpCS__Alternatives"
-    // InternalOCLinEcore.g:5583:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );
+    // InternalOCLinEcore.g:5585:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );
     public final void rule__PrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5587:1: ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) )
+            // InternalOCLinEcore.g:5589:1: ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) )
             int alt64=10;
             alt64 = dfa64.predict(input);
             switch (alt64) {
                 case 1 :
-                    // InternalOCLinEcore.g:5588:1: ( ruleNestedExpCS )
+                    // InternalOCLinEcore.g:5590:1: ( ruleNestedExpCS )
                     {
-                    // InternalOCLinEcore.g:5588:1: ( ruleNestedExpCS )
-                    // InternalOCLinEcore.g:5589:1: ruleNestedExpCS
+                    // InternalOCLinEcore.g:5590:1: ( ruleNestedExpCS )
+                    // InternalOCLinEcore.g:5591:1: ruleNestedExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
@@ -19648,10 +19648,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5594:6: ( ruleIfExpCS )
+                    // InternalOCLinEcore.g:5596:6: ( ruleIfExpCS )
                     {
-                    // InternalOCLinEcore.g:5594:6: ( ruleIfExpCS )
-                    // InternalOCLinEcore.g:5595:1: ruleIfExpCS
+                    // InternalOCLinEcore.g:5596:6: ( ruleIfExpCS )
+                    // InternalOCLinEcore.g:5597:1: ruleIfExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
@@ -19671,10 +19671,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:5600:6: ( ruleSelfExpCS )
+                    // InternalOCLinEcore.g:5602:6: ( ruleSelfExpCS )
                     {
-                    // InternalOCLinEcore.g:5600:6: ( ruleSelfExpCS )
-                    // InternalOCLinEcore.g:5601:1: ruleSelfExpCS
+                    // InternalOCLinEcore.g:5602:6: ( ruleSelfExpCS )
+                    // InternalOCLinEcore.g:5603:1: ruleSelfExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
@@ -19694,10 +19694,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLinEcore.g:5606:6: ( rulePrimitiveLiteralExpCS )
+                    // InternalOCLinEcore.g:5608:6: ( rulePrimitiveLiteralExpCS )
                     {
-                    // InternalOCLinEcore.g:5606:6: ( rulePrimitiveLiteralExpCS )
-                    // InternalOCLinEcore.g:5607:1: rulePrimitiveLiteralExpCS
+                    // InternalOCLinEcore.g:5608:6: ( rulePrimitiveLiteralExpCS )
+                    // InternalOCLinEcore.g:5609:1: rulePrimitiveLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
@@ -19717,10 +19717,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLinEcore.g:5612:6: ( ruleTupleLiteralExpCS )
+                    // InternalOCLinEcore.g:5614:6: ( ruleTupleLiteralExpCS )
                     {
-                    // InternalOCLinEcore.g:5612:6: ( ruleTupleLiteralExpCS )
-                    // InternalOCLinEcore.g:5613:1: ruleTupleLiteralExpCS
+                    // InternalOCLinEcore.g:5614:6: ( ruleTupleLiteralExpCS )
+                    // InternalOCLinEcore.g:5615:1: ruleTupleLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
@@ -19740,10 +19740,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLinEcore.g:5618:6: ( ruleMapLiteralExpCS )
+                    // InternalOCLinEcore.g:5620:6: ( ruleMapLiteralExpCS )
                     {
-                    // InternalOCLinEcore.g:5618:6: ( ruleMapLiteralExpCS )
-                    // InternalOCLinEcore.g:5619:1: ruleMapLiteralExpCS
+                    // InternalOCLinEcore.g:5620:6: ( ruleMapLiteralExpCS )
+                    // InternalOCLinEcore.g:5621:1: ruleMapLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
@@ -19763,10 +19763,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLinEcore.g:5624:6: ( ruleCollectionLiteralExpCS )
+                    // InternalOCLinEcore.g:5626:6: ( ruleCollectionLiteralExpCS )
                     {
-                    // InternalOCLinEcore.g:5624:6: ( ruleCollectionLiteralExpCS )
-                    // InternalOCLinEcore.g:5625:1: ruleCollectionLiteralExpCS
+                    // InternalOCLinEcore.g:5626:6: ( ruleCollectionLiteralExpCS )
+                    // InternalOCLinEcore.g:5627:1: ruleCollectionLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
@@ -19786,10 +19786,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLinEcore.g:5630:6: ( ruleLambdaLiteralExpCS )
+                    // InternalOCLinEcore.g:5632:6: ( ruleLambdaLiteralExpCS )
                     {
-                    // InternalOCLinEcore.g:5630:6: ( ruleLambdaLiteralExpCS )
-                    // InternalOCLinEcore.g:5631:1: ruleLambdaLiteralExpCS
+                    // InternalOCLinEcore.g:5632:6: ( ruleLambdaLiteralExpCS )
+                    // InternalOCLinEcore.g:5633:1: ruleLambdaLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
@@ -19809,10 +19809,10 @@
                     }
                     break;
                 case 9 :
-                    // InternalOCLinEcore.g:5636:6: ( ruleTypeLiteralExpCS )
+                    // InternalOCLinEcore.g:5638:6: ( ruleTypeLiteralExpCS )
                     {
-                    // InternalOCLinEcore.g:5636:6: ( ruleTypeLiteralExpCS )
-                    // InternalOCLinEcore.g:5637:1: ruleTypeLiteralExpCS
+                    // InternalOCLinEcore.g:5638:6: ( ruleTypeLiteralExpCS )
+                    // InternalOCLinEcore.g:5639:1: ruleTypeLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
@@ -19832,10 +19832,10 @@
                     }
                     break;
                 case 10 :
-                    // InternalOCLinEcore.g:5642:6: ( ruleNameExpCS )
+                    // InternalOCLinEcore.g:5644:6: ( ruleNameExpCS )
                     {
-                    // InternalOCLinEcore.g:5642:6: ( ruleNameExpCS )
-                    // InternalOCLinEcore.g:5643:1: ruleNameExpCS
+                    // InternalOCLinEcore.g:5644:6: ( ruleNameExpCS )
+                    // InternalOCLinEcore.g:5645:1: ruleNameExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
@@ -19872,13 +19872,13 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0"
-    // InternalOCLinEcore.g:5653:1: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 : ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) );
+    // InternalOCLinEcore.g:5655:1: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 : ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) );
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5657:1: ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) )
+            // InternalOCLinEcore.g:5659:1: ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) )
             int alt65=3;
             switch ( input.LA(1) ) {
             case 105:
@@ -19906,10 +19906,10 @@
 
             switch (alt65) {
                 case 1 :
-                    // InternalOCLinEcore.g:5658:1: ( ruleNavigatingCommaArgCS )
+                    // InternalOCLinEcore.g:5660:1: ( ruleNavigatingCommaArgCS )
                     {
-                    // InternalOCLinEcore.g:5658:1: ( ruleNavigatingCommaArgCS )
-                    // InternalOCLinEcore.g:5659:1: ruleNavigatingCommaArgCS
+                    // InternalOCLinEcore.g:5660:1: ( ruleNavigatingCommaArgCS )
+                    // InternalOCLinEcore.g:5661:1: ruleNavigatingCommaArgCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0_0());
@@ -19929,10 +19929,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5664:6: ( ruleNavigatingSemiArgCS )
+                    // InternalOCLinEcore.g:5666:6: ( ruleNavigatingSemiArgCS )
                     {
-                    // InternalOCLinEcore.g:5664:6: ( ruleNavigatingSemiArgCS )
-                    // InternalOCLinEcore.g:5665:1: ruleNavigatingSemiArgCS
+                    // InternalOCLinEcore.g:5666:6: ( ruleNavigatingSemiArgCS )
+                    // InternalOCLinEcore.g:5667:1: ruleNavigatingSemiArgCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_1_0_1());
@@ -19952,10 +19952,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:5670:6: ( ruleNavigatingBarArgCS )
+                    // InternalOCLinEcore.g:5672:6: ( ruleNavigatingBarArgCS )
                     {
-                    // InternalOCLinEcore.g:5670:6: ( ruleNavigatingBarArgCS )
-                    // InternalOCLinEcore.g:5671:1: ruleNavigatingBarArgCS
+                    // InternalOCLinEcore.g:5672:6: ( ruleNavigatingBarArgCS )
+                    // InternalOCLinEcore.g:5673:1: ruleNavigatingBarArgCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_1_0_2());
@@ -19992,13 +19992,13 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Alternatives"
-    // InternalOCLinEcore.g:5681:1: rule__NavigatingArgCS__Alternatives : ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) );
+    // InternalOCLinEcore.g:5683:1: rule__NavigatingArgCS__Alternatives : ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) );
     public final void rule__NavigatingArgCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5685:1: ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) )
+            // InternalOCLinEcore.g:5687:1: ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) )
             int alt66=2;
             int LA66_0 = input.LA(1);
 
@@ -20017,16 +20017,16 @@
             }
             switch (alt66) {
                 case 1 :
-                    // InternalOCLinEcore.g:5686:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:5688:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:5686:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
-                    // InternalOCLinEcore.g:5687:1: ( rule__NavigatingArgCS__Group_0__0 )
+                    // InternalOCLinEcore.g:5688:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
+                    // InternalOCLinEcore.g:5689:1: ( rule__NavigatingArgCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0());
                     }
-                    // InternalOCLinEcore.g:5688:1: ( rule__NavigatingArgCS__Group_0__0 )
-                    // InternalOCLinEcore.g:5688:2: rule__NavigatingArgCS__Group_0__0
+                    // InternalOCLinEcore.g:5690:1: ( rule__NavigatingArgCS__Group_0__0 )
+                    // InternalOCLinEcore.g:5690:2: rule__NavigatingArgCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0__0();
@@ -20046,16 +20046,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5692:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
+                    // InternalOCLinEcore.g:5694:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
                     {
-                    // InternalOCLinEcore.g:5692:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
-                    // InternalOCLinEcore.g:5693:1: ( rule__NavigatingArgCS__Group_1__0 )
+                    // InternalOCLinEcore.g:5694:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
+                    // InternalOCLinEcore.g:5695:1: ( rule__NavigatingArgCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_1());
                     }
-                    // InternalOCLinEcore.g:5694:1: ( rule__NavigatingArgCS__Group_1__0 )
-                    // InternalOCLinEcore.g:5694:2: rule__NavigatingArgCS__Group_1__0
+                    // InternalOCLinEcore.g:5696:1: ( rule__NavigatingArgCS__Group_1__0 )
+                    // InternalOCLinEcore.g:5696:2: rule__NavigatingArgCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_1__0();
@@ -20092,13 +20092,13 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Alternatives_0_1"
-    // InternalOCLinEcore.g:5703:1: rule__NavigatingArgCS__Alternatives_0_1 : ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) );
+    // InternalOCLinEcore.g:5705:1: rule__NavigatingArgCS__Alternatives_0_1 : ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) );
     public final void rule__NavigatingArgCS__Alternatives_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5707:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) )
+            // InternalOCLinEcore.g:5709:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) )
             int alt67=3;
             switch ( input.LA(1) ) {
             case 113:
@@ -20154,16 +20154,16 @@
 
             switch (alt67) {
                 case 1 :
-                    // InternalOCLinEcore.g:5708:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+                    // InternalOCLinEcore.g:5710:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:5708:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
-                    // InternalOCLinEcore.g:5709:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+                    // InternalOCLinEcore.g:5710:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+                    // InternalOCLinEcore.g:5711:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
                     }
-                    // InternalOCLinEcore.g:5710:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
-                    // InternalOCLinEcore.g:5710:2: rule__NavigatingArgCS__Group_0_1_0__0
+                    // InternalOCLinEcore.g:5712:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+                    // InternalOCLinEcore.g:5712:2: rule__NavigatingArgCS__Group_0_1_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_0__0();
@@ -20183,16 +20183,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5714:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+                    // InternalOCLinEcore.g:5716:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
                     {
-                    // InternalOCLinEcore.g:5714:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
-                    // InternalOCLinEcore.g:5715:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+                    // InternalOCLinEcore.g:5716:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+                    // InternalOCLinEcore.g:5717:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
                     }
-                    // InternalOCLinEcore.g:5716:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
-                    // InternalOCLinEcore.g:5716:2: rule__NavigatingArgCS__Group_0_1_1__0
+                    // InternalOCLinEcore.g:5718:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+                    // InternalOCLinEcore.g:5718:2: rule__NavigatingArgCS__Group_0_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_1__0();
@@ -20212,16 +20212,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:5720:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
+                    // InternalOCLinEcore.g:5722:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
                     {
-                    // InternalOCLinEcore.g:5720:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
-                    // InternalOCLinEcore.g:5721:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
+                    // InternalOCLinEcore.g:5722:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
+                    // InternalOCLinEcore.g:5723:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_2());
                     }
-                    // InternalOCLinEcore.g:5722:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
-                    // InternalOCLinEcore.g:5722:2: rule__NavigatingArgCS__Group_0_1_2__0
+                    // InternalOCLinEcore.g:5724:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
+                    // InternalOCLinEcore.g:5724:2: rule__NavigatingArgCS__Group_0_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_2__0();
@@ -20258,13 +20258,13 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Alternatives_2"
-    // InternalOCLinEcore.g:5731:1: rule__NavigatingCommaArgCS__Alternatives_2 : ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) );
+    // InternalOCLinEcore.g:5733:1: rule__NavigatingCommaArgCS__Alternatives_2 : ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) );
     public final void rule__NavigatingCommaArgCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5735:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) )
+            // InternalOCLinEcore.g:5737:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) )
             int alt68=3;
             switch ( input.LA(1) ) {
             case 113:
@@ -20320,16 +20320,16 @@
 
             switch (alt68) {
                 case 1 :
-                    // InternalOCLinEcore.g:5736:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+                    // InternalOCLinEcore.g:5738:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
                     {
-                    // InternalOCLinEcore.g:5736:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
-                    // InternalOCLinEcore.g:5737:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+                    // InternalOCLinEcore.g:5738:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+                    // InternalOCLinEcore.g:5739:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
                     }
-                    // InternalOCLinEcore.g:5738:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
-                    // InternalOCLinEcore.g:5738:2: rule__NavigatingCommaArgCS__Group_2_0__0
+                    // InternalOCLinEcore.g:5740:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+                    // InternalOCLinEcore.g:5740:2: rule__NavigatingCommaArgCS__Group_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_0__0();
@@ -20349,16 +20349,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5742:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+                    // InternalOCLinEcore.g:5744:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
                     {
-                    // InternalOCLinEcore.g:5742:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
-                    // InternalOCLinEcore.g:5743:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+                    // InternalOCLinEcore.g:5744:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+                    // InternalOCLinEcore.g:5745:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
                     }
-                    // InternalOCLinEcore.g:5744:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
-                    // InternalOCLinEcore.g:5744:2: rule__NavigatingCommaArgCS__Group_2_1__0
+                    // InternalOCLinEcore.g:5746:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+                    // InternalOCLinEcore.g:5746:2: rule__NavigatingCommaArgCS__Group_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_1__0();
@@ -20378,16 +20378,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:5748:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
+                    // InternalOCLinEcore.g:5750:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
                     {
-                    // InternalOCLinEcore.g:5748:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
-                    // InternalOCLinEcore.g:5749:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
+                    // InternalOCLinEcore.g:5750:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
+                    // InternalOCLinEcore.g:5751:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_2());
                     }
-                    // InternalOCLinEcore.g:5750:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
-                    // InternalOCLinEcore.g:5750:2: rule__NavigatingCommaArgCS__Group_2_2__0
+                    // InternalOCLinEcore.g:5752:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
+                    // InternalOCLinEcore.g:5752:2: rule__NavigatingCommaArgCS__Group_2_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_2__0();
@@ -20424,21 +20424,21 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedConditionAlternatives_1_0"
-    // InternalOCLinEcore.g:5759:1: rule__IfExpCS__OwnedConditionAlternatives_1_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
+    // InternalOCLinEcore.g:5761:1: rule__IfExpCS__OwnedConditionAlternatives_1_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
     public final void rule__IfExpCS__OwnedConditionAlternatives_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5763:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
+            // InternalOCLinEcore.g:5765:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt69=2;
             alt69 = dfa69.predict(input);
             switch (alt69) {
                 case 1 :
-                    // InternalOCLinEcore.g:5764:1: ( ruleExpCS )
+                    // InternalOCLinEcore.g:5766:1: ( ruleExpCS )
                     {
-                    // InternalOCLinEcore.g:5764:1: ( ruleExpCS )
-                    // InternalOCLinEcore.g:5765:1: ruleExpCS
+                    // InternalOCLinEcore.g:5766:1: ( ruleExpCS )
+                    // InternalOCLinEcore.g:5767:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
@@ -20458,10 +20458,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5770:6: ( rulePatternExpCS )
+                    // InternalOCLinEcore.g:5772:6: ( rulePatternExpCS )
                     {
-                    // InternalOCLinEcore.g:5770:6: ( rulePatternExpCS )
-                    // InternalOCLinEcore.g:5771:1: rulePatternExpCS
+                    // InternalOCLinEcore.g:5772:6: ( rulePatternExpCS )
+                    // InternalOCLinEcore.g:5773:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
@@ -20498,13 +20498,13 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Alternatives_1"
-    // InternalOCLinEcore.g:5781:1: rule__MultiplicityCS__Alternatives_1 : ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) );
+    // InternalOCLinEcore.g:5783:1: rule__MultiplicityCS__Alternatives_1 : ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) );
     public final void rule__MultiplicityCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5785:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
+            // InternalOCLinEcore.g:5787:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
             int alt70=2;
             int LA70_0 = input.LA(1);
 
@@ -20523,10 +20523,10 @@
             }
             switch (alt70) {
                 case 1 :
-                    // InternalOCLinEcore.g:5786:1: ( ruleMultiplicityBoundsCS )
+                    // InternalOCLinEcore.g:5788:1: ( ruleMultiplicityBoundsCS )
                     {
-                    // InternalOCLinEcore.g:5786:1: ( ruleMultiplicityBoundsCS )
-                    // InternalOCLinEcore.g:5787:1: ruleMultiplicityBoundsCS
+                    // InternalOCLinEcore.g:5788:1: ( ruleMultiplicityBoundsCS )
+                    // InternalOCLinEcore.g:5789:1: ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
@@ -20546,10 +20546,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5792:6: ( ruleMultiplicityStringCS )
+                    // InternalOCLinEcore.g:5794:6: ( ruleMultiplicityStringCS )
                     {
-                    // InternalOCLinEcore.g:5792:6: ( ruleMultiplicityStringCS )
-                    // InternalOCLinEcore.g:5793:1: ruleMultiplicityStringCS
+                    // InternalOCLinEcore.g:5794:6: ( ruleMultiplicityStringCS )
+                    // InternalOCLinEcore.g:5795:1: ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
@@ -20586,13 +20586,13 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Alternatives_2"
-    // InternalOCLinEcore.g:5803:1: rule__MultiplicityCS__Alternatives_2 : ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) );
+    // InternalOCLinEcore.g:5805:1: rule__MultiplicityCS__Alternatives_2 : ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) );
     public final void rule__MultiplicityCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5807:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
+            // InternalOCLinEcore.g:5809:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
             int alt71=2;
             int LA71_0 = input.LA(1);
 
@@ -20611,10 +20611,10 @@
             }
             switch (alt71) {
                 case 1 :
-                    // InternalOCLinEcore.g:5808:1: ( '|?' )
+                    // InternalOCLinEcore.g:5810:1: ( '|?' )
                     {
-                    // InternalOCLinEcore.g:5808:1: ( '|?' )
-                    // InternalOCLinEcore.g:5809:1: '|?'
+                    // InternalOCLinEcore.g:5810:1: ( '|?' )
+                    // InternalOCLinEcore.g:5811:1: '|?'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
@@ -20630,16 +20630,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5816:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
+                    // InternalOCLinEcore.g:5818:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
                     {
-                    // InternalOCLinEcore.g:5816:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
-                    // InternalOCLinEcore.g:5817:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
+                    // InternalOCLinEcore.g:5818:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
+                    // InternalOCLinEcore.g:5819:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
-                    // InternalOCLinEcore.g:5818:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
-                    // InternalOCLinEcore.g:5818:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
+                    // InternalOCLinEcore.g:5820:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
+                    // InternalOCLinEcore.g:5820:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityCS__IsNullFreeAssignment_2_1();
@@ -20676,13 +20676,13 @@
 
 
     // $ANTLR start "rule__MultiplicityStringCS__StringBoundsAlternatives_0"
-    // InternalOCLinEcore.g:5827:1: rule__MultiplicityStringCS__StringBoundsAlternatives_0 : ( ( '*' ) | ( '+' ) | ( '?' ) );
+    // InternalOCLinEcore.g:5829:1: rule__MultiplicityStringCS__StringBoundsAlternatives_0 : ( ( '*' ) | ( '+' ) | ( '?' ) );
     public final void rule__MultiplicityStringCS__StringBoundsAlternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5831:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
+            // InternalOCLinEcore.g:5833:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
             int alt72=3;
             switch ( input.LA(1) ) {
             case 64:
@@ -20710,10 +20710,10 @@
 
             switch (alt72) {
                 case 1 :
-                    // InternalOCLinEcore.g:5832:1: ( '*' )
+                    // InternalOCLinEcore.g:5834:1: ( '*' )
                     {
-                    // InternalOCLinEcore.g:5832:1: ( '*' )
-                    // InternalOCLinEcore.g:5833:1: '*'
+                    // InternalOCLinEcore.g:5834:1: ( '*' )
+                    // InternalOCLinEcore.g:5835:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
@@ -20729,10 +20729,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5840:6: ( '+' )
+                    // InternalOCLinEcore.g:5842:6: ( '+' )
                     {
-                    // InternalOCLinEcore.g:5840:6: ( '+' )
-                    // InternalOCLinEcore.g:5841:1: '+'
+                    // InternalOCLinEcore.g:5842:6: ( '+' )
+                    // InternalOCLinEcore.g:5843:1: '+'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
@@ -20748,10 +20748,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLinEcore.g:5848:6: ( '?' )
+                    // InternalOCLinEcore.g:5850:6: ( '?' )
                     {
-                    // InternalOCLinEcore.g:5848:6: ( '?' )
-                    // InternalOCLinEcore.g:5849:1: '?'
+                    // InternalOCLinEcore.g:5850:6: ( '?' )
+                    // InternalOCLinEcore.g:5851:1: '?'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
@@ -20784,13 +20784,13 @@
 
 
     // $ANTLR start "rule__TypeRefCS__Alternatives"
-    // InternalOCLinEcore.g:5861:1: rule__TypeRefCS__Alternatives : ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) );
+    // InternalOCLinEcore.g:5863:1: rule__TypeRefCS__Alternatives : ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) );
     public final void rule__TypeRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5865:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
+            // InternalOCLinEcore.g:5867:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
             int alt73=2;
             int LA73_0 = input.LA(1);
 
@@ -20809,10 +20809,10 @@
             }
             switch (alt73) {
                 case 1 :
-                    // InternalOCLinEcore.g:5866:1: ( ruleTypedRefCS )
+                    // InternalOCLinEcore.g:5868:1: ( ruleTypedRefCS )
                     {
-                    // InternalOCLinEcore.g:5866:1: ( ruleTypedRefCS )
-                    // InternalOCLinEcore.g:5867:1: ruleTypedRefCS
+                    // InternalOCLinEcore.g:5868:1: ( ruleTypedRefCS )
+                    // InternalOCLinEcore.g:5869:1: ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
@@ -20832,10 +20832,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5872:6: ( ruleWildcardTypeRefCS )
+                    // InternalOCLinEcore.g:5874:6: ( ruleWildcardTypeRefCS )
                     {
-                    // InternalOCLinEcore.g:5872:6: ( ruleWildcardTypeRefCS )
-                    // InternalOCLinEcore.g:5873:1: ruleWildcardTypeRefCS
+                    // InternalOCLinEcore.g:5874:6: ( ruleWildcardTypeRefCS )
+                    // InternalOCLinEcore.g:5875:1: ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
@@ -20872,13 +20872,13 @@
 
 
     // $ANTLR start "rule__ID__Alternatives"
-    // InternalOCLinEcore.g:5883:1: rule__ID__Alternatives : ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) );
+    // InternalOCLinEcore.g:5885:1: rule__ID__Alternatives : ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) );
     public final void rule__ID__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5887:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
+            // InternalOCLinEcore.g:5889:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
             int alt74=2;
             int LA74_0 = input.LA(1);
 
@@ -20897,10 +20897,10 @@
             }
             switch (alt74) {
                 case 1 :
-                    // InternalOCLinEcore.g:5888:1: ( RULE_SIMPLE_ID )
+                    // InternalOCLinEcore.g:5890:1: ( RULE_SIMPLE_ID )
                     {
-                    // InternalOCLinEcore.g:5888:1: ( RULE_SIMPLE_ID )
-                    // InternalOCLinEcore.g:5889:1: RULE_SIMPLE_ID
+                    // InternalOCLinEcore.g:5890:1: ( RULE_SIMPLE_ID )
+                    // InternalOCLinEcore.g:5891:1: RULE_SIMPLE_ID
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
@@ -20916,10 +20916,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5894:6: ( RULE_ESCAPED_ID )
+                    // InternalOCLinEcore.g:5896:6: ( RULE_ESCAPED_ID )
                     {
-                    // InternalOCLinEcore.g:5894:6: ( RULE_ESCAPED_ID )
-                    // InternalOCLinEcore.g:5895:1: RULE_ESCAPED_ID
+                    // InternalOCLinEcore.g:5896:6: ( RULE_ESCAPED_ID )
+                    // InternalOCLinEcore.g:5897:1: RULE_ESCAPED_ID
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
@@ -20952,13 +20952,13 @@
 
 
     // $ANTLR start "rule__UPPER__Alternatives"
-    // InternalOCLinEcore.g:5905:1: rule__UPPER__Alternatives : ( ( RULE_INT ) | ( '*' ) );
+    // InternalOCLinEcore.g:5907:1: rule__UPPER__Alternatives : ( ( RULE_INT ) | ( '*' ) );
     public final void rule__UPPER__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5909:1: ( ( RULE_INT ) | ( '*' ) )
+            // InternalOCLinEcore.g:5911:1: ( ( RULE_INT ) | ( '*' ) )
             int alt75=2;
             int LA75_0 = input.LA(1);
 
@@ -20977,10 +20977,10 @@
             }
             switch (alt75) {
                 case 1 :
-                    // InternalOCLinEcore.g:5910:1: ( RULE_INT )
+                    // InternalOCLinEcore.g:5912:1: ( RULE_INT )
                     {
-                    // InternalOCLinEcore.g:5910:1: ( RULE_INT )
-                    // InternalOCLinEcore.g:5911:1: RULE_INT
+                    // InternalOCLinEcore.g:5912:1: ( RULE_INT )
+                    // InternalOCLinEcore.g:5913:1: RULE_INT
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
@@ -20996,10 +20996,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:5916:6: ( '*' )
+                    // InternalOCLinEcore.g:5918:6: ( '*' )
                     {
-                    // InternalOCLinEcore.g:5916:6: ( '*' )
-                    // InternalOCLinEcore.g:5917:1: '*'
+                    // InternalOCLinEcore.g:5918:6: ( '*' )
+                    // InternalOCLinEcore.g:5919:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
@@ -21032,14 +21032,14 @@
 
 
     // $ANTLR start "rule__TopLevelCS__Group__0"
-    // InternalOCLinEcore.g:5931:1: rule__TopLevelCS__Group__0 : rule__TopLevelCS__Group__0__Impl rule__TopLevelCS__Group__1 ;
+    // InternalOCLinEcore.g:5933:1: rule__TopLevelCS__Group__0 : rule__TopLevelCS__Group__0__Impl rule__TopLevelCS__Group__1 ;
     public final void rule__TopLevelCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5935:1: ( rule__TopLevelCS__Group__0__Impl rule__TopLevelCS__Group__1 )
-            // InternalOCLinEcore.g:5936:2: rule__TopLevelCS__Group__0__Impl rule__TopLevelCS__Group__1
+            // InternalOCLinEcore.g:5937:1: ( rule__TopLevelCS__Group__0__Impl rule__TopLevelCS__Group__1 )
+            // InternalOCLinEcore.g:5938:2: rule__TopLevelCS__Group__0__Impl rule__TopLevelCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_4);
             rule__TopLevelCS__Group__0__Impl();
@@ -21070,23 +21070,23 @@
 
 
     // $ANTLR start "rule__TopLevelCS__Group__0__Impl"
-    // InternalOCLinEcore.g:5943:1: rule__TopLevelCS__Group__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:5945:1: rule__TopLevelCS__Group__0__Impl : ( () ) ;
     public final void rule__TopLevelCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5947:1: ( ( () ) )
-            // InternalOCLinEcore.g:5948:1: ( () )
+            // InternalOCLinEcore.g:5949:1: ( ( () ) )
+            // InternalOCLinEcore.g:5950:1: ( () )
             {
-            // InternalOCLinEcore.g:5948:1: ( () )
-            // InternalOCLinEcore.g:5949:1: ()
+            // InternalOCLinEcore.g:5950:1: ( () )
+            // InternalOCLinEcore.g:5951:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTopLevelCSAccess().getTopLevelCSAction_0());
             }
-            // InternalOCLinEcore.g:5950:1: ()
-            // InternalOCLinEcore.g:5952:1:
+            // InternalOCLinEcore.g:5952:1: ()
+            // InternalOCLinEcore.g:5954:1:
             {
             }
 
@@ -21111,14 +21111,14 @@
 
 
     // $ANTLR start "rule__TopLevelCS__Group__1"
-    // InternalOCLinEcore.g:5962:1: rule__TopLevelCS__Group__1 : rule__TopLevelCS__Group__1__Impl rule__TopLevelCS__Group__2 ;
+    // InternalOCLinEcore.g:5964:1: rule__TopLevelCS__Group__1 : rule__TopLevelCS__Group__1__Impl rule__TopLevelCS__Group__2 ;
     public final void rule__TopLevelCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5966:1: ( rule__TopLevelCS__Group__1__Impl rule__TopLevelCS__Group__2 )
-            // InternalOCLinEcore.g:5967:2: rule__TopLevelCS__Group__1__Impl rule__TopLevelCS__Group__2
+            // InternalOCLinEcore.g:5968:1: ( rule__TopLevelCS__Group__1__Impl rule__TopLevelCS__Group__2 )
+            // InternalOCLinEcore.g:5969:2: rule__TopLevelCS__Group__1__Impl rule__TopLevelCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_4);
             rule__TopLevelCS__Group__1__Impl();
@@ -21149,22 +21149,22 @@
 
 
     // $ANTLR start "rule__TopLevelCS__Group__1__Impl"
-    // InternalOCLinEcore.g:5974:1: rule__TopLevelCS__Group__1__Impl : ( ( rule__TopLevelCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:5976:1: rule__TopLevelCS__Group__1__Impl : ( ( rule__TopLevelCS__Group_1__0 )? ) ;
     public final void rule__TopLevelCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5978:1: ( ( ( rule__TopLevelCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:5979:1: ( ( rule__TopLevelCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:5980:1: ( ( ( rule__TopLevelCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:5981:1: ( ( rule__TopLevelCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:5979:1: ( ( rule__TopLevelCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:5980:1: ( rule__TopLevelCS__Group_1__0 )?
+            // InternalOCLinEcore.g:5981:1: ( ( rule__TopLevelCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:5982:1: ( rule__TopLevelCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTopLevelCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:5981:1: ( rule__TopLevelCS__Group_1__0 )?
+            // InternalOCLinEcore.g:5983:1: ( rule__TopLevelCS__Group_1__0 )?
             int alt76=2;
             int LA76_0 = input.LA(1);
 
@@ -21173,7 +21173,7 @@
             }
             switch (alt76) {
                 case 1 :
-                    // InternalOCLinEcore.g:5981:2: rule__TopLevelCS__Group_1__0
+                    // InternalOCLinEcore.g:5983:2: rule__TopLevelCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TopLevelCS__Group_1__0();
@@ -21211,14 +21211,14 @@
 
 
     // $ANTLR start "rule__TopLevelCS__Group__2"
-    // InternalOCLinEcore.g:5991:1: rule__TopLevelCS__Group__2 : rule__TopLevelCS__Group__2__Impl rule__TopLevelCS__Group__3 ;
+    // InternalOCLinEcore.g:5993:1: rule__TopLevelCS__Group__2 : rule__TopLevelCS__Group__2__Impl rule__TopLevelCS__Group__3 ;
     public final void rule__TopLevelCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:5995:1: ( rule__TopLevelCS__Group__2__Impl rule__TopLevelCS__Group__3 )
-            // InternalOCLinEcore.g:5996:2: rule__TopLevelCS__Group__2__Impl rule__TopLevelCS__Group__3
+            // InternalOCLinEcore.g:5997:1: ( rule__TopLevelCS__Group__2__Impl rule__TopLevelCS__Group__3 )
+            // InternalOCLinEcore.g:5998:2: rule__TopLevelCS__Group__2__Impl rule__TopLevelCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_4);
             rule__TopLevelCS__Group__2__Impl();
@@ -21249,22 +21249,22 @@
 
 
     // $ANTLR start "rule__TopLevelCS__Group__2__Impl"
-    // InternalOCLinEcore.g:6003:1: rule__TopLevelCS__Group__2__Impl : ( ( rule__TopLevelCS__OwnedImportsAssignment_2 )* ) ;
+    // InternalOCLinEcore.g:6005:1: rule__TopLevelCS__Group__2__Impl : ( ( rule__TopLevelCS__OwnedImportsAssignment_2 )* ) ;
     public final void rule__TopLevelCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6007:1: ( ( ( rule__TopLevelCS__OwnedImportsAssignment_2 )* ) )
-            // InternalOCLinEcore.g:6008:1: ( ( rule__TopLevelCS__OwnedImportsAssignment_2 )* )
+            // InternalOCLinEcore.g:6009:1: ( ( ( rule__TopLevelCS__OwnedImportsAssignment_2 )* ) )
+            // InternalOCLinEcore.g:6010:1: ( ( rule__TopLevelCS__OwnedImportsAssignment_2 )* )
             {
-            // InternalOCLinEcore.g:6008:1: ( ( rule__TopLevelCS__OwnedImportsAssignment_2 )* )
-            // InternalOCLinEcore.g:6009:1: ( rule__TopLevelCS__OwnedImportsAssignment_2 )*
+            // InternalOCLinEcore.g:6010:1: ( ( rule__TopLevelCS__OwnedImportsAssignment_2 )* )
+            // InternalOCLinEcore.g:6011:1: ( rule__TopLevelCS__OwnedImportsAssignment_2 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTopLevelCSAccess().getOwnedImportsAssignment_2());
             }
-            // InternalOCLinEcore.g:6010:1: ( rule__TopLevelCS__OwnedImportsAssignment_2 )*
+            // InternalOCLinEcore.g:6012:1: ( rule__TopLevelCS__OwnedImportsAssignment_2 )*
             loop77:
             do {
                 int alt77=2;
@@ -21277,7 +21277,7 @@
 
                 switch (alt77) {
             	case 1 :
-            	    // InternalOCLinEcore.g:6010:2: rule__TopLevelCS__OwnedImportsAssignment_2
+            	    // InternalOCLinEcore.g:6012:2: rule__TopLevelCS__OwnedImportsAssignment_2
             	    {
             	    pushFollow(FollowSets000.FOLLOW_5);
             	    rule__TopLevelCS__OwnedImportsAssignment_2();
@@ -21318,14 +21318,14 @@
 
 
     // $ANTLR start "rule__TopLevelCS__Group__3"
-    // InternalOCLinEcore.g:6020:1: rule__TopLevelCS__Group__3 : rule__TopLevelCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:6022:1: rule__TopLevelCS__Group__3 : rule__TopLevelCS__Group__3__Impl ;
     public final void rule__TopLevelCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6024:1: ( rule__TopLevelCS__Group__3__Impl )
-            // InternalOCLinEcore.g:6025:2: rule__TopLevelCS__Group__3__Impl
+            // InternalOCLinEcore.g:6026:1: ( rule__TopLevelCS__Group__3__Impl )
+            // InternalOCLinEcore.g:6027:2: rule__TopLevelCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TopLevelCS__Group__3__Impl();
@@ -21351,22 +21351,22 @@
 
 
     // $ANTLR start "rule__TopLevelCS__Group__3__Impl"
-    // InternalOCLinEcore.g:6031:1: rule__TopLevelCS__Group__3__Impl : ( ( rule__TopLevelCS__OwnedPackagesAssignment_3 )* ) ;
+    // InternalOCLinEcore.g:6033:1: rule__TopLevelCS__Group__3__Impl : ( ( rule__TopLevelCS__OwnedPackagesAssignment_3 )* ) ;
     public final void rule__TopLevelCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6035:1: ( ( ( rule__TopLevelCS__OwnedPackagesAssignment_3 )* ) )
-            // InternalOCLinEcore.g:6036:1: ( ( rule__TopLevelCS__OwnedPackagesAssignment_3 )* )
+            // InternalOCLinEcore.g:6037:1: ( ( ( rule__TopLevelCS__OwnedPackagesAssignment_3 )* ) )
+            // InternalOCLinEcore.g:6038:1: ( ( rule__TopLevelCS__OwnedPackagesAssignment_3 )* )
             {
-            // InternalOCLinEcore.g:6036:1: ( ( rule__TopLevelCS__OwnedPackagesAssignment_3 )* )
-            // InternalOCLinEcore.g:6037:1: ( rule__TopLevelCS__OwnedPackagesAssignment_3 )*
+            // InternalOCLinEcore.g:6038:1: ( ( rule__TopLevelCS__OwnedPackagesAssignment_3 )* )
+            // InternalOCLinEcore.g:6039:1: ( rule__TopLevelCS__OwnedPackagesAssignment_3 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTopLevelCSAccess().getOwnedPackagesAssignment_3());
             }
-            // InternalOCLinEcore.g:6038:1: ( rule__TopLevelCS__OwnedPackagesAssignment_3 )*
+            // InternalOCLinEcore.g:6040:1: ( rule__TopLevelCS__OwnedPackagesAssignment_3 )*
             loop78:
             do {
                 int alt78=2;
@@ -21379,7 +21379,7 @@
 
                 switch (alt78) {
             	case 1 :
-            	    // InternalOCLinEcore.g:6038:2: rule__TopLevelCS__OwnedPackagesAssignment_3
+            	    // InternalOCLinEcore.g:6040:2: rule__TopLevelCS__OwnedPackagesAssignment_3
             	    {
             	    pushFollow(FollowSets000.FOLLOW_6);
             	    rule__TopLevelCS__OwnedPackagesAssignment_3();
@@ -21420,14 +21420,14 @@
 
 
     // $ANTLR start "rule__TopLevelCS__Group_1__0"
-    // InternalOCLinEcore.g:6056:1: rule__TopLevelCS__Group_1__0 : rule__TopLevelCS__Group_1__0__Impl rule__TopLevelCS__Group_1__1 ;
+    // InternalOCLinEcore.g:6058:1: rule__TopLevelCS__Group_1__0 : rule__TopLevelCS__Group_1__0__Impl rule__TopLevelCS__Group_1__1 ;
     public final void rule__TopLevelCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6060:1: ( rule__TopLevelCS__Group_1__0__Impl rule__TopLevelCS__Group_1__1 )
-            // InternalOCLinEcore.g:6061:2: rule__TopLevelCS__Group_1__0__Impl rule__TopLevelCS__Group_1__1
+            // InternalOCLinEcore.g:6062:1: ( rule__TopLevelCS__Group_1__0__Impl rule__TopLevelCS__Group_1__1 )
+            // InternalOCLinEcore.g:6063:2: rule__TopLevelCS__Group_1__0__Impl rule__TopLevelCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__TopLevelCS__Group_1__0__Impl();
@@ -21458,17 +21458,17 @@
 
 
     // $ANTLR start "rule__TopLevelCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:6068:1: rule__TopLevelCS__Group_1__0__Impl : ( 'module' ) ;
+    // InternalOCLinEcore.g:6070:1: rule__TopLevelCS__Group_1__0__Impl : ( 'module' ) ;
     public final void rule__TopLevelCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6072:1: ( ( 'module' ) )
-            // InternalOCLinEcore.g:6073:1: ( 'module' )
+            // InternalOCLinEcore.g:6074:1: ( ( 'module' ) )
+            // InternalOCLinEcore.g:6075:1: ( 'module' )
             {
-            // InternalOCLinEcore.g:6073:1: ( 'module' )
-            // InternalOCLinEcore.g:6074:1: 'module'
+            // InternalOCLinEcore.g:6075:1: ( 'module' )
+            // InternalOCLinEcore.g:6076:1: 'module'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTopLevelCSAccess().getModuleKeyword_1_0());
@@ -21499,14 +21499,14 @@
 
 
     // $ANTLR start "rule__TopLevelCS__Group_1__1"
-    // InternalOCLinEcore.g:6087:1: rule__TopLevelCS__Group_1__1 : rule__TopLevelCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:6089:1: rule__TopLevelCS__Group_1__1 : rule__TopLevelCS__Group_1__1__Impl ;
     public final void rule__TopLevelCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6091:1: ( rule__TopLevelCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:6092:2: rule__TopLevelCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:6093:1: ( rule__TopLevelCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:6094:2: rule__TopLevelCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TopLevelCS__Group_1__1__Impl();
@@ -21532,17 +21532,17 @@
 
 
     // $ANTLR start "rule__TopLevelCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:6098:1: rule__TopLevelCS__Group_1__1__Impl : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:6100:1: rule__TopLevelCS__Group_1__1__Impl : ( ruleUnrestrictedName ) ;
     public final void rule__TopLevelCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6102:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:6103:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:6104:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:6105:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:6103:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:6104:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:6105:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:6106:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTopLevelCSAccess().getUnrestrictedNameParserRuleCall_1_1());
@@ -21577,14 +21577,14 @@
 
 
     // $ANTLR start "rule__SIGNED__Group__0"
-    // InternalOCLinEcore.g:6119:1: rule__SIGNED__Group__0 : rule__SIGNED__Group__0__Impl rule__SIGNED__Group__1 ;
+    // InternalOCLinEcore.g:6121:1: rule__SIGNED__Group__0 : rule__SIGNED__Group__0__Impl rule__SIGNED__Group__1 ;
     public final void rule__SIGNED__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6123:1: ( rule__SIGNED__Group__0__Impl rule__SIGNED__Group__1 )
-            // InternalOCLinEcore.g:6124:2: rule__SIGNED__Group__0__Impl rule__SIGNED__Group__1
+            // InternalOCLinEcore.g:6125:1: ( rule__SIGNED__Group__0__Impl rule__SIGNED__Group__1 )
+            // InternalOCLinEcore.g:6126:2: rule__SIGNED__Group__0__Impl rule__SIGNED__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_8);
             rule__SIGNED__Group__0__Impl();
@@ -21615,22 +21615,22 @@
 
 
     // $ANTLR start "rule__SIGNED__Group__0__Impl"
-    // InternalOCLinEcore.g:6131:1: rule__SIGNED__Group__0__Impl : ( ( '-' )? ) ;
+    // InternalOCLinEcore.g:6133:1: rule__SIGNED__Group__0__Impl : ( ( '-' )? ) ;
     public final void rule__SIGNED__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6135:1: ( ( ( '-' )? ) )
-            // InternalOCLinEcore.g:6136:1: ( ( '-' )? )
+            // InternalOCLinEcore.g:6137:1: ( ( ( '-' )? ) )
+            // InternalOCLinEcore.g:6138:1: ( ( '-' )? )
             {
-            // InternalOCLinEcore.g:6136:1: ( ( '-' )? )
-            // InternalOCLinEcore.g:6137:1: ( '-' )?
+            // InternalOCLinEcore.g:6138:1: ( ( '-' )? )
+            // InternalOCLinEcore.g:6139:1: ( '-' )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSIGNEDAccess().getHyphenMinusKeyword_0());
             }
-            // InternalOCLinEcore.g:6138:1: ( '-' )?
+            // InternalOCLinEcore.g:6140:1: ( '-' )?
             int alt79=2;
             int LA79_0 = input.LA(1);
 
@@ -21639,7 +21639,7 @@
             }
             switch (alt79) {
                 case 1 :
-                    // InternalOCLinEcore.g:6139:2: '-'
+                    // InternalOCLinEcore.g:6141:2: '-'
                     {
                     match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -21673,14 +21673,14 @@
 
 
     // $ANTLR start "rule__SIGNED__Group__1"
-    // InternalOCLinEcore.g:6150:1: rule__SIGNED__Group__1 : rule__SIGNED__Group__1__Impl ;
+    // InternalOCLinEcore.g:6152:1: rule__SIGNED__Group__1 : rule__SIGNED__Group__1__Impl ;
     public final void rule__SIGNED__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6154:1: ( rule__SIGNED__Group__1__Impl )
-            // InternalOCLinEcore.g:6155:2: rule__SIGNED__Group__1__Impl
+            // InternalOCLinEcore.g:6156:1: ( rule__SIGNED__Group__1__Impl )
+            // InternalOCLinEcore.g:6157:2: rule__SIGNED__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SIGNED__Group__1__Impl();
@@ -21706,17 +21706,17 @@
 
 
     // $ANTLR start "rule__SIGNED__Group__1__Impl"
-    // InternalOCLinEcore.g:6161:1: rule__SIGNED__Group__1__Impl : ( RULE_INT ) ;
+    // InternalOCLinEcore.g:6163:1: rule__SIGNED__Group__1__Impl : ( RULE_INT ) ;
     public final void rule__SIGNED__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6165:1: ( ( RULE_INT ) )
-            // InternalOCLinEcore.g:6166:1: ( RULE_INT )
+            // InternalOCLinEcore.g:6167:1: ( ( RULE_INT ) )
+            // InternalOCLinEcore.g:6168:1: ( RULE_INT )
             {
-            // InternalOCLinEcore.g:6166:1: ( RULE_INT )
-            // InternalOCLinEcore.g:6167:1: RULE_INT
+            // InternalOCLinEcore.g:6168:1: ( RULE_INT )
+            // InternalOCLinEcore.g:6169:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSIGNEDAccess().getINTTerminalRuleCall_1());
@@ -21747,14 +21747,14 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group__0"
-    // InternalOCLinEcore.g:6182:1: rule__InvariantConstraintCS__Group__0 : rule__InvariantConstraintCS__Group__0__Impl rule__InvariantConstraintCS__Group__1 ;
+    // InternalOCLinEcore.g:6184:1: rule__InvariantConstraintCS__Group__0 : rule__InvariantConstraintCS__Group__0__Impl rule__InvariantConstraintCS__Group__1 ;
     public final void rule__InvariantConstraintCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6186:1: ( rule__InvariantConstraintCS__Group__0__Impl rule__InvariantConstraintCS__Group__1 )
-            // InternalOCLinEcore.g:6187:2: rule__InvariantConstraintCS__Group__0__Impl rule__InvariantConstraintCS__Group__1
+            // InternalOCLinEcore.g:6188:1: ( rule__InvariantConstraintCS__Group__0__Impl rule__InvariantConstraintCS__Group__1 )
+            // InternalOCLinEcore.g:6189:2: rule__InvariantConstraintCS__Group__0__Impl rule__InvariantConstraintCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_9);
             rule__InvariantConstraintCS__Group__0__Impl();
@@ -21785,22 +21785,22 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group__0__Impl"
-    // InternalOCLinEcore.g:6194:1: rule__InvariantConstraintCS__Group__0__Impl : ( ( rule__InvariantConstraintCS__IsCallableAssignment_0 )? ) ;
+    // InternalOCLinEcore.g:6196:1: rule__InvariantConstraintCS__Group__0__Impl : ( ( rule__InvariantConstraintCS__IsCallableAssignment_0 )? ) ;
     public final void rule__InvariantConstraintCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6198:1: ( ( ( rule__InvariantConstraintCS__IsCallableAssignment_0 )? ) )
-            // InternalOCLinEcore.g:6199:1: ( ( rule__InvariantConstraintCS__IsCallableAssignment_0 )? )
+            // InternalOCLinEcore.g:6200:1: ( ( ( rule__InvariantConstraintCS__IsCallableAssignment_0 )? ) )
+            // InternalOCLinEcore.g:6201:1: ( ( rule__InvariantConstraintCS__IsCallableAssignment_0 )? )
             {
-            // InternalOCLinEcore.g:6199:1: ( ( rule__InvariantConstraintCS__IsCallableAssignment_0 )? )
-            // InternalOCLinEcore.g:6200:1: ( rule__InvariantConstraintCS__IsCallableAssignment_0 )?
+            // InternalOCLinEcore.g:6201:1: ( ( rule__InvariantConstraintCS__IsCallableAssignment_0 )? )
+            // InternalOCLinEcore.g:6202:1: ( rule__InvariantConstraintCS__IsCallableAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getIsCallableAssignment_0());
             }
-            // InternalOCLinEcore.g:6201:1: ( rule__InvariantConstraintCS__IsCallableAssignment_0 )?
+            // InternalOCLinEcore.g:6203:1: ( rule__InvariantConstraintCS__IsCallableAssignment_0 )?
             int alt80=2;
             int LA80_0 = input.LA(1);
 
@@ -21809,7 +21809,7 @@
             }
             switch (alt80) {
                 case 1 :
-                    // InternalOCLinEcore.g:6201:2: rule__InvariantConstraintCS__IsCallableAssignment_0
+                    // InternalOCLinEcore.g:6203:2: rule__InvariantConstraintCS__IsCallableAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__InvariantConstraintCS__IsCallableAssignment_0();
@@ -21847,14 +21847,14 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group__1"
-    // InternalOCLinEcore.g:6211:1: rule__InvariantConstraintCS__Group__1 : rule__InvariantConstraintCS__Group__1__Impl rule__InvariantConstraintCS__Group__2 ;
+    // InternalOCLinEcore.g:6213:1: rule__InvariantConstraintCS__Group__1 : rule__InvariantConstraintCS__Group__1__Impl rule__InvariantConstraintCS__Group__2 ;
     public final void rule__InvariantConstraintCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6215:1: ( rule__InvariantConstraintCS__Group__1__Impl rule__InvariantConstraintCS__Group__2 )
-            // InternalOCLinEcore.g:6216:2: rule__InvariantConstraintCS__Group__1__Impl rule__InvariantConstraintCS__Group__2
+            // InternalOCLinEcore.g:6217:1: ( rule__InvariantConstraintCS__Group__1__Impl rule__InvariantConstraintCS__Group__2 )
+            // InternalOCLinEcore.g:6218:2: rule__InvariantConstraintCS__Group__1__Impl rule__InvariantConstraintCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__InvariantConstraintCS__Group__1__Impl();
@@ -21885,23 +21885,23 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group__1__Impl"
-    // InternalOCLinEcore.g:6223:1: rule__InvariantConstraintCS__Group__1__Impl : ( ( rule__InvariantConstraintCS__StereotypeAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:6225:1: rule__InvariantConstraintCS__Group__1__Impl : ( ( rule__InvariantConstraintCS__StereotypeAssignment_1 ) ) ;
     public final void rule__InvariantConstraintCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6227:1: ( ( ( rule__InvariantConstraintCS__StereotypeAssignment_1 ) ) )
-            // InternalOCLinEcore.g:6228:1: ( ( rule__InvariantConstraintCS__StereotypeAssignment_1 ) )
+            // InternalOCLinEcore.g:6229:1: ( ( ( rule__InvariantConstraintCS__StereotypeAssignment_1 ) ) )
+            // InternalOCLinEcore.g:6230:1: ( ( rule__InvariantConstraintCS__StereotypeAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:6228:1: ( ( rule__InvariantConstraintCS__StereotypeAssignment_1 ) )
-            // InternalOCLinEcore.g:6229:1: ( rule__InvariantConstraintCS__StereotypeAssignment_1 )
+            // InternalOCLinEcore.g:6230:1: ( ( rule__InvariantConstraintCS__StereotypeAssignment_1 ) )
+            // InternalOCLinEcore.g:6231:1: ( rule__InvariantConstraintCS__StereotypeAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getStereotypeAssignment_1());
             }
-            // InternalOCLinEcore.g:6230:1: ( rule__InvariantConstraintCS__StereotypeAssignment_1 )
-            // InternalOCLinEcore.g:6230:2: rule__InvariantConstraintCS__StereotypeAssignment_1
+            // InternalOCLinEcore.g:6232:1: ( rule__InvariantConstraintCS__StereotypeAssignment_1 )
+            // InternalOCLinEcore.g:6232:2: rule__InvariantConstraintCS__StereotypeAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvariantConstraintCS__StereotypeAssignment_1();
@@ -21936,14 +21936,14 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group__2"
-    // InternalOCLinEcore.g:6240:1: rule__InvariantConstraintCS__Group__2 : rule__InvariantConstraintCS__Group__2__Impl rule__InvariantConstraintCS__Group__3 ;
+    // InternalOCLinEcore.g:6242:1: rule__InvariantConstraintCS__Group__2 : rule__InvariantConstraintCS__Group__2__Impl rule__InvariantConstraintCS__Group__3 ;
     public final void rule__InvariantConstraintCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6244:1: ( rule__InvariantConstraintCS__Group__2__Impl rule__InvariantConstraintCS__Group__3 )
-            // InternalOCLinEcore.g:6245:2: rule__InvariantConstraintCS__Group__2__Impl rule__InvariantConstraintCS__Group__3
+            // InternalOCLinEcore.g:6246:1: ( rule__InvariantConstraintCS__Group__2__Impl rule__InvariantConstraintCS__Group__3 )
+            // InternalOCLinEcore.g:6247:2: rule__InvariantConstraintCS__Group__2__Impl rule__InvariantConstraintCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__InvariantConstraintCS__Group__2__Impl();
@@ -21974,22 +21974,22 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group__2__Impl"
-    // InternalOCLinEcore.g:6252:1: rule__InvariantConstraintCS__Group__2__Impl : ( ( rule__InvariantConstraintCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:6254:1: rule__InvariantConstraintCS__Group__2__Impl : ( ( rule__InvariantConstraintCS__Group_2__0 )? ) ;
     public final void rule__InvariantConstraintCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6256:1: ( ( ( rule__InvariantConstraintCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:6257:1: ( ( rule__InvariantConstraintCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:6258:1: ( ( ( rule__InvariantConstraintCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:6259:1: ( ( rule__InvariantConstraintCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:6257:1: ( ( rule__InvariantConstraintCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:6258:1: ( rule__InvariantConstraintCS__Group_2__0 )?
+            // InternalOCLinEcore.g:6259:1: ( ( rule__InvariantConstraintCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:6260:1: ( rule__InvariantConstraintCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:6259:1: ( rule__InvariantConstraintCS__Group_2__0 )?
+            // InternalOCLinEcore.g:6261:1: ( rule__InvariantConstraintCS__Group_2__0 )?
             int alt81=2;
             int LA81_0 = input.LA(1);
 
@@ -21998,7 +21998,7 @@
             }
             switch (alt81) {
                 case 1 :
-                    // InternalOCLinEcore.g:6259:2: rule__InvariantConstraintCS__Group_2__0
+                    // InternalOCLinEcore.g:6261:2: rule__InvariantConstraintCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__InvariantConstraintCS__Group_2__0();
@@ -22036,14 +22036,14 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group__3"
-    // InternalOCLinEcore.g:6269:1: rule__InvariantConstraintCS__Group__3 : rule__InvariantConstraintCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:6271:1: rule__InvariantConstraintCS__Group__3 : rule__InvariantConstraintCS__Group__3__Impl ;
     public final void rule__InvariantConstraintCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6273:1: ( rule__InvariantConstraintCS__Group__3__Impl )
-            // InternalOCLinEcore.g:6274:2: rule__InvariantConstraintCS__Group__3__Impl
+            // InternalOCLinEcore.g:6275:1: ( rule__InvariantConstraintCS__Group__3__Impl )
+            // InternalOCLinEcore.g:6276:2: rule__InvariantConstraintCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvariantConstraintCS__Group__3__Impl();
@@ -22069,23 +22069,23 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group__3__Impl"
-    // InternalOCLinEcore.g:6280:1: rule__InvariantConstraintCS__Group__3__Impl : ( ( rule__InvariantConstraintCS__Alternatives_3 ) ) ;
+    // InternalOCLinEcore.g:6282:1: rule__InvariantConstraintCS__Group__3__Impl : ( ( rule__InvariantConstraintCS__Alternatives_3 ) ) ;
     public final void rule__InvariantConstraintCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6284:1: ( ( ( rule__InvariantConstraintCS__Alternatives_3 ) ) )
-            // InternalOCLinEcore.g:6285:1: ( ( rule__InvariantConstraintCS__Alternatives_3 ) )
+            // InternalOCLinEcore.g:6286:1: ( ( ( rule__InvariantConstraintCS__Alternatives_3 ) ) )
+            // InternalOCLinEcore.g:6287:1: ( ( rule__InvariantConstraintCS__Alternatives_3 ) )
             {
-            // InternalOCLinEcore.g:6285:1: ( ( rule__InvariantConstraintCS__Alternatives_3 ) )
-            // InternalOCLinEcore.g:6286:1: ( rule__InvariantConstraintCS__Alternatives_3 )
+            // InternalOCLinEcore.g:6287:1: ( ( rule__InvariantConstraintCS__Alternatives_3 ) )
+            // InternalOCLinEcore.g:6288:1: ( rule__InvariantConstraintCS__Alternatives_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getAlternatives_3());
             }
-            // InternalOCLinEcore.g:6287:1: ( rule__InvariantConstraintCS__Alternatives_3 )
-            // InternalOCLinEcore.g:6287:2: rule__InvariantConstraintCS__Alternatives_3
+            // InternalOCLinEcore.g:6289:1: ( rule__InvariantConstraintCS__Alternatives_3 )
+            // InternalOCLinEcore.g:6289:2: rule__InvariantConstraintCS__Alternatives_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvariantConstraintCS__Alternatives_3();
@@ -22120,14 +22120,14 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_2__0"
-    // InternalOCLinEcore.g:6305:1: rule__InvariantConstraintCS__Group_2__0 : rule__InvariantConstraintCS__Group_2__0__Impl rule__InvariantConstraintCS__Group_2__1 ;
+    // InternalOCLinEcore.g:6307:1: rule__InvariantConstraintCS__Group_2__0 : rule__InvariantConstraintCS__Group_2__0__Impl rule__InvariantConstraintCS__Group_2__1 ;
     public final void rule__InvariantConstraintCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6309:1: ( rule__InvariantConstraintCS__Group_2__0__Impl rule__InvariantConstraintCS__Group_2__1 )
-            // InternalOCLinEcore.g:6310:2: rule__InvariantConstraintCS__Group_2__0__Impl rule__InvariantConstraintCS__Group_2__1
+            // InternalOCLinEcore.g:6311:1: ( rule__InvariantConstraintCS__Group_2__0__Impl rule__InvariantConstraintCS__Group_2__1 )
+            // InternalOCLinEcore.g:6312:2: rule__InvariantConstraintCS__Group_2__0__Impl rule__InvariantConstraintCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__InvariantConstraintCS__Group_2__0__Impl();
@@ -22158,23 +22158,23 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:6317:1: rule__InvariantConstraintCS__Group_2__0__Impl : ( ( rule__InvariantConstraintCS__NameAssignment_2_0 ) ) ;
+    // InternalOCLinEcore.g:6319:1: rule__InvariantConstraintCS__Group_2__0__Impl : ( ( rule__InvariantConstraintCS__NameAssignment_2_0 ) ) ;
     public final void rule__InvariantConstraintCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6321:1: ( ( ( rule__InvariantConstraintCS__NameAssignment_2_0 ) ) )
-            // InternalOCLinEcore.g:6322:1: ( ( rule__InvariantConstraintCS__NameAssignment_2_0 ) )
+            // InternalOCLinEcore.g:6323:1: ( ( ( rule__InvariantConstraintCS__NameAssignment_2_0 ) ) )
+            // InternalOCLinEcore.g:6324:1: ( ( rule__InvariantConstraintCS__NameAssignment_2_0 ) )
             {
-            // InternalOCLinEcore.g:6322:1: ( ( rule__InvariantConstraintCS__NameAssignment_2_0 ) )
-            // InternalOCLinEcore.g:6323:1: ( rule__InvariantConstraintCS__NameAssignment_2_0 )
+            // InternalOCLinEcore.g:6324:1: ( ( rule__InvariantConstraintCS__NameAssignment_2_0 ) )
+            // InternalOCLinEcore.g:6325:1: ( rule__InvariantConstraintCS__NameAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getNameAssignment_2_0());
             }
-            // InternalOCLinEcore.g:6324:1: ( rule__InvariantConstraintCS__NameAssignment_2_0 )
-            // InternalOCLinEcore.g:6324:2: rule__InvariantConstraintCS__NameAssignment_2_0
+            // InternalOCLinEcore.g:6326:1: ( rule__InvariantConstraintCS__NameAssignment_2_0 )
+            // InternalOCLinEcore.g:6326:2: rule__InvariantConstraintCS__NameAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvariantConstraintCS__NameAssignment_2_0();
@@ -22209,14 +22209,14 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_2__1"
-    // InternalOCLinEcore.g:6334:1: rule__InvariantConstraintCS__Group_2__1 : rule__InvariantConstraintCS__Group_2__1__Impl ;
+    // InternalOCLinEcore.g:6336:1: rule__InvariantConstraintCS__Group_2__1 : rule__InvariantConstraintCS__Group_2__1__Impl ;
     public final void rule__InvariantConstraintCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6338:1: ( rule__InvariantConstraintCS__Group_2__1__Impl )
-            // InternalOCLinEcore.g:6339:2: rule__InvariantConstraintCS__Group_2__1__Impl
+            // InternalOCLinEcore.g:6340:1: ( rule__InvariantConstraintCS__Group_2__1__Impl )
+            // InternalOCLinEcore.g:6341:2: rule__InvariantConstraintCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvariantConstraintCS__Group_2__1__Impl();
@@ -22242,22 +22242,22 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:6345:1: rule__InvariantConstraintCS__Group_2__1__Impl : ( ( rule__InvariantConstraintCS__Group_2_1__0 )? ) ;
+    // InternalOCLinEcore.g:6347:1: rule__InvariantConstraintCS__Group_2__1__Impl : ( ( rule__InvariantConstraintCS__Group_2_1__0 )? ) ;
     public final void rule__InvariantConstraintCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6349:1: ( ( ( rule__InvariantConstraintCS__Group_2_1__0 )? ) )
-            // InternalOCLinEcore.g:6350:1: ( ( rule__InvariantConstraintCS__Group_2_1__0 )? )
+            // InternalOCLinEcore.g:6351:1: ( ( ( rule__InvariantConstraintCS__Group_2_1__0 )? ) )
+            // InternalOCLinEcore.g:6352:1: ( ( rule__InvariantConstraintCS__Group_2_1__0 )? )
             {
-            // InternalOCLinEcore.g:6350:1: ( ( rule__InvariantConstraintCS__Group_2_1__0 )? )
-            // InternalOCLinEcore.g:6351:1: ( rule__InvariantConstraintCS__Group_2_1__0 )?
+            // InternalOCLinEcore.g:6352:1: ( ( rule__InvariantConstraintCS__Group_2_1__0 )? )
+            // InternalOCLinEcore.g:6353:1: ( rule__InvariantConstraintCS__Group_2_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getGroup_2_1());
             }
-            // InternalOCLinEcore.g:6352:1: ( rule__InvariantConstraintCS__Group_2_1__0 )?
+            // InternalOCLinEcore.g:6354:1: ( rule__InvariantConstraintCS__Group_2_1__0 )?
             int alt82=2;
             int LA82_0 = input.LA(1);
 
@@ -22266,7 +22266,7 @@
             }
             switch (alt82) {
                 case 1 :
-                    // InternalOCLinEcore.g:6352:2: rule__InvariantConstraintCS__Group_2_1__0
+                    // InternalOCLinEcore.g:6354:2: rule__InvariantConstraintCS__Group_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__InvariantConstraintCS__Group_2_1__0();
@@ -22304,14 +22304,14 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_2_1__0"
-    // InternalOCLinEcore.g:6366:1: rule__InvariantConstraintCS__Group_2_1__0 : rule__InvariantConstraintCS__Group_2_1__0__Impl rule__InvariantConstraintCS__Group_2_1__1 ;
+    // InternalOCLinEcore.g:6368:1: rule__InvariantConstraintCS__Group_2_1__0 : rule__InvariantConstraintCS__Group_2_1__0__Impl rule__InvariantConstraintCS__Group_2_1__1 ;
     public final void rule__InvariantConstraintCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6370:1: ( rule__InvariantConstraintCS__Group_2_1__0__Impl rule__InvariantConstraintCS__Group_2_1__1 )
-            // InternalOCLinEcore.g:6371:2: rule__InvariantConstraintCS__Group_2_1__0__Impl rule__InvariantConstraintCS__Group_2_1__1
+            // InternalOCLinEcore.g:6372:1: ( rule__InvariantConstraintCS__Group_2_1__0__Impl rule__InvariantConstraintCS__Group_2_1__1 )
+            // InternalOCLinEcore.g:6373:2: rule__InvariantConstraintCS__Group_2_1__0__Impl rule__InvariantConstraintCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__InvariantConstraintCS__Group_2_1__0__Impl();
@@ -22342,17 +22342,17 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_2_1__0__Impl"
-    // InternalOCLinEcore.g:6378:1: rule__InvariantConstraintCS__Group_2_1__0__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:6380:1: rule__InvariantConstraintCS__Group_2_1__0__Impl : ( '(' ) ;
     public final void rule__InvariantConstraintCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6382:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:6383:1: ( '(' )
+            // InternalOCLinEcore.g:6384:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:6385:1: ( '(' )
             {
-            // InternalOCLinEcore.g:6383:1: ( '(' )
-            // InternalOCLinEcore.g:6384:1: '('
+            // InternalOCLinEcore.g:6385:1: ( '(' )
+            // InternalOCLinEcore.g:6386:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getLeftParenthesisKeyword_2_1_0());
@@ -22383,14 +22383,14 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_2_1__1"
-    // InternalOCLinEcore.g:6397:1: rule__InvariantConstraintCS__Group_2_1__1 : rule__InvariantConstraintCS__Group_2_1__1__Impl rule__InvariantConstraintCS__Group_2_1__2 ;
+    // InternalOCLinEcore.g:6399:1: rule__InvariantConstraintCS__Group_2_1__1 : rule__InvariantConstraintCS__Group_2_1__1__Impl rule__InvariantConstraintCS__Group_2_1__2 ;
     public final void rule__InvariantConstraintCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6401:1: ( rule__InvariantConstraintCS__Group_2_1__1__Impl rule__InvariantConstraintCS__Group_2_1__2 )
-            // InternalOCLinEcore.g:6402:2: rule__InvariantConstraintCS__Group_2_1__1__Impl rule__InvariantConstraintCS__Group_2_1__2
+            // InternalOCLinEcore.g:6403:1: ( rule__InvariantConstraintCS__Group_2_1__1__Impl rule__InvariantConstraintCS__Group_2_1__2 )
+            // InternalOCLinEcore.g:6404:2: rule__InvariantConstraintCS__Group_2_1__1__Impl rule__InvariantConstraintCS__Group_2_1__2
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__InvariantConstraintCS__Group_2_1__1__Impl();
@@ -22421,23 +22421,23 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_2_1__1__Impl"
-    // InternalOCLinEcore.g:6409:1: rule__InvariantConstraintCS__Group_2_1__1__Impl : ( ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 ) ) ;
+    // InternalOCLinEcore.g:6411:1: rule__InvariantConstraintCS__Group_2_1__1__Impl : ( ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 ) ) ;
     public final void rule__InvariantConstraintCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6413:1: ( ( ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 ) ) )
-            // InternalOCLinEcore.g:6414:1: ( ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 ) )
+            // InternalOCLinEcore.g:6415:1: ( ( ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 ) ) )
+            // InternalOCLinEcore.g:6416:1: ( ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 ) )
             {
-            // InternalOCLinEcore.g:6414:1: ( ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 ) )
-            // InternalOCLinEcore.g:6415:1: ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 )
+            // InternalOCLinEcore.g:6416:1: ( ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 ) )
+            // InternalOCLinEcore.g:6417:1: ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationAssignment_2_1_1());
             }
-            // InternalOCLinEcore.g:6416:1: ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 )
-            // InternalOCLinEcore.g:6416:2: rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1
+            // InternalOCLinEcore.g:6418:1: ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 )
+            // InternalOCLinEcore.g:6418:2: rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1();
@@ -22472,14 +22472,14 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_2_1__2"
-    // InternalOCLinEcore.g:6426:1: rule__InvariantConstraintCS__Group_2_1__2 : rule__InvariantConstraintCS__Group_2_1__2__Impl ;
+    // InternalOCLinEcore.g:6428:1: rule__InvariantConstraintCS__Group_2_1__2 : rule__InvariantConstraintCS__Group_2_1__2__Impl ;
     public final void rule__InvariantConstraintCS__Group_2_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6430:1: ( rule__InvariantConstraintCS__Group_2_1__2__Impl )
-            // InternalOCLinEcore.g:6431:2: rule__InvariantConstraintCS__Group_2_1__2__Impl
+            // InternalOCLinEcore.g:6432:1: ( rule__InvariantConstraintCS__Group_2_1__2__Impl )
+            // InternalOCLinEcore.g:6433:2: rule__InvariantConstraintCS__Group_2_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvariantConstraintCS__Group_2_1__2__Impl();
@@ -22505,17 +22505,17 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_2_1__2__Impl"
-    // InternalOCLinEcore.g:6437:1: rule__InvariantConstraintCS__Group_2_1__2__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:6439:1: rule__InvariantConstraintCS__Group_2_1__2__Impl : ( ')' ) ;
     public final void rule__InvariantConstraintCS__Group_2_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6441:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:6442:1: ( ')' )
+            // InternalOCLinEcore.g:6443:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:6444:1: ( ')' )
             {
-            // InternalOCLinEcore.g:6442:1: ( ')' )
-            // InternalOCLinEcore.g:6443:1: ')'
+            // InternalOCLinEcore.g:6444:1: ( ')' )
+            // InternalOCLinEcore.g:6445:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getRightParenthesisKeyword_2_1_2());
@@ -22546,14 +22546,14 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_3_0__0"
-    // InternalOCLinEcore.g:6462:1: rule__InvariantConstraintCS__Group_3_0__0 : rule__InvariantConstraintCS__Group_3_0__0__Impl rule__InvariantConstraintCS__Group_3_0__1 ;
+    // InternalOCLinEcore.g:6464:1: rule__InvariantConstraintCS__Group_3_0__0 : rule__InvariantConstraintCS__Group_3_0__0__Impl rule__InvariantConstraintCS__Group_3_0__1 ;
     public final void rule__InvariantConstraintCS__Group_3_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6466:1: ( rule__InvariantConstraintCS__Group_3_0__0__Impl rule__InvariantConstraintCS__Group_3_0__1 )
-            // InternalOCLinEcore.g:6467:2: rule__InvariantConstraintCS__Group_3_0__0__Impl rule__InvariantConstraintCS__Group_3_0__1
+            // InternalOCLinEcore.g:6468:1: ( rule__InvariantConstraintCS__Group_3_0__0__Impl rule__InvariantConstraintCS__Group_3_0__1 )
+            // InternalOCLinEcore.g:6469:2: rule__InvariantConstraintCS__Group_3_0__0__Impl rule__InvariantConstraintCS__Group_3_0__1
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__InvariantConstraintCS__Group_3_0__0__Impl();
@@ -22584,17 +22584,17 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_3_0__0__Impl"
-    // InternalOCLinEcore.g:6474:1: rule__InvariantConstraintCS__Group_3_0__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:6476:1: rule__InvariantConstraintCS__Group_3_0__0__Impl : ( ':' ) ;
     public final void rule__InvariantConstraintCS__Group_3_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6478:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:6479:1: ( ':' )
+            // InternalOCLinEcore.g:6480:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:6481:1: ( ':' )
             {
-            // InternalOCLinEcore.g:6479:1: ( ':' )
-            // InternalOCLinEcore.g:6480:1: ':'
+            // InternalOCLinEcore.g:6481:1: ( ':' )
+            // InternalOCLinEcore.g:6482:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getColonKeyword_3_0_0());
@@ -22625,14 +22625,14 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_3_0__1"
-    // InternalOCLinEcore.g:6493:1: rule__InvariantConstraintCS__Group_3_0__1 : rule__InvariantConstraintCS__Group_3_0__1__Impl rule__InvariantConstraintCS__Group_3_0__2 ;
+    // InternalOCLinEcore.g:6495:1: rule__InvariantConstraintCS__Group_3_0__1 : rule__InvariantConstraintCS__Group_3_0__1__Impl rule__InvariantConstraintCS__Group_3_0__2 ;
     public final void rule__InvariantConstraintCS__Group_3_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6497:1: ( rule__InvariantConstraintCS__Group_3_0__1__Impl rule__InvariantConstraintCS__Group_3_0__2 )
-            // InternalOCLinEcore.g:6498:2: rule__InvariantConstraintCS__Group_3_0__1__Impl rule__InvariantConstraintCS__Group_3_0__2
+            // InternalOCLinEcore.g:6499:1: ( rule__InvariantConstraintCS__Group_3_0__1__Impl rule__InvariantConstraintCS__Group_3_0__2 )
+            // InternalOCLinEcore.g:6500:2: rule__InvariantConstraintCS__Group_3_0__1__Impl rule__InvariantConstraintCS__Group_3_0__2
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__InvariantConstraintCS__Group_3_0__1__Impl();
@@ -22663,22 +22663,22 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_3_0__1__Impl"
-    // InternalOCLinEcore.g:6505:1: rule__InvariantConstraintCS__Group_3_0__1__Impl : ( ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )? ) ;
+    // InternalOCLinEcore.g:6507:1: rule__InvariantConstraintCS__Group_3_0__1__Impl : ( ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )? ) ;
     public final void rule__InvariantConstraintCS__Group_3_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6509:1: ( ( ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )? ) )
-            // InternalOCLinEcore.g:6510:1: ( ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )? )
+            // InternalOCLinEcore.g:6511:1: ( ( ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )? ) )
+            // InternalOCLinEcore.g:6512:1: ( ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )? )
             {
-            // InternalOCLinEcore.g:6510:1: ( ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )? )
-            // InternalOCLinEcore.g:6511:1: ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )?
+            // InternalOCLinEcore.g:6512:1: ( ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )? )
+            // InternalOCLinEcore.g:6513:1: ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationAssignment_3_0_1());
             }
-            // InternalOCLinEcore.g:6512:1: ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )?
+            // InternalOCLinEcore.g:6514:1: ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )?
             int alt83=2;
             int LA83_0 = input.LA(1);
 
@@ -22687,7 +22687,7 @@
             }
             switch (alt83) {
                 case 1 :
-                    // InternalOCLinEcore.g:6512:2: rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1
+                    // InternalOCLinEcore.g:6514:2: rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1();
@@ -22725,14 +22725,14 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_3_0__2"
-    // InternalOCLinEcore.g:6522:1: rule__InvariantConstraintCS__Group_3_0__2 : rule__InvariantConstraintCS__Group_3_0__2__Impl ;
+    // InternalOCLinEcore.g:6524:1: rule__InvariantConstraintCS__Group_3_0__2 : rule__InvariantConstraintCS__Group_3_0__2__Impl ;
     public final void rule__InvariantConstraintCS__Group_3_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6526:1: ( rule__InvariantConstraintCS__Group_3_0__2__Impl )
-            // InternalOCLinEcore.g:6527:2: rule__InvariantConstraintCS__Group_3_0__2__Impl
+            // InternalOCLinEcore.g:6528:1: ( rule__InvariantConstraintCS__Group_3_0__2__Impl )
+            // InternalOCLinEcore.g:6529:2: rule__InvariantConstraintCS__Group_3_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvariantConstraintCS__Group_3_0__2__Impl();
@@ -22758,17 +22758,17 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__Group_3_0__2__Impl"
-    // InternalOCLinEcore.g:6533:1: rule__InvariantConstraintCS__Group_3_0__2__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:6535:1: rule__InvariantConstraintCS__Group_3_0__2__Impl : ( ';' ) ;
     public final void rule__InvariantConstraintCS__Group_3_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6537:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:6538:1: ( ';' )
+            // InternalOCLinEcore.g:6539:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:6540:1: ( ';' )
             {
-            // InternalOCLinEcore.g:6538:1: ( ';' )
-            // InternalOCLinEcore.g:6539:1: ';'
+            // InternalOCLinEcore.g:6540:1: ( ';' )
+            // InternalOCLinEcore.g:6541:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_0_2());
@@ -22799,14 +22799,14 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group__0"
-    // InternalOCLinEcore.g:6558:1: rule__PostconditionConstraintCS__Group__0 : rule__PostconditionConstraintCS__Group__0__Impl rule__PostconditionConstraintCS__Group__1 ;
+    // InternalOCLinEcore.g:6560:1: rule__PostconditionConstraintCS__Group__0 : rule__PostconditionConstraintCS__Group__0__Impl rule__PostconditionConstraintCS__Group__1 ;
     public final void rule__PostconditionConstraintCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6562:1: ( rule__PostconditionConstraintCS__Group__0__Impl rule__PostconditionConstraintCS__Group__1 )
-            // InternalOCLinEcore.g:6563:2: rule__PostconditionConstraintCS__Group__0__Impl rule__PostconditionConstraintCS__Group__1
+            // InternalOCLinEcore.g:6564:1: ( rule__PostconditionConstraintCS__Group__0__Impl rule__PostconditionConstraintCS__Group__1 )
+            // InternalOCLinEcore.g:6565:2: rule__PostconditionConstraintCS__Group__0__Impl rule__PostconditionConstraintCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__PostconditionConstraintCS__Group__0__Impl();
@@ -22837,23 +22837,23 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group__0__Impl"
-    // InternalOCLinEcore.g:6570:1: rule__PostconditionConstraintCS__Group__0__Impl : ( ( rule__PostconditionConstraintCS__StereotypeAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:6572:1: rule__PostconditionConstraintCS__Group__0__Impl : ( ( rule__PostconditionConstraintCS__StereotypeAssignment_0 ) ) ;
     public final void rule__PostconditionConstraintCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6574:1: ( ( ( rule__PostconditionConstraintCS__StereotypeAssignment_0 ) ) )
-            // InternalOCLinEcore.g:6575:1: ( ( rule__PostconditionConstraintCS__StereotypeAssignment_0 ) )
+            // InternalOCLinEcore.g:6576:1: ( ( ( rule__PostconditionConstraintCS__StereotypeAssignment_0 ) ) )
+            // InternalOCLinEcore.g:6577:1: ( ( rule__PostconditionConstraintCS__StereotypeAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:6575:1: ( ( rule__PostconditionConstraintCS__StereotypeAssignment_0 ) )
-            // InternalOCLinEcore.g:6576:1: ( rule__PostconditionConstraintCS__StereotypeAssignment_0 )
+            // InternalOCLinEcore.g:6577:1: ( ( rule__PostconditionConstraintCS__StereotypeAssignment_0 ) )
+            // InternalOCLinEcore.g:6578:1: ( rule__PostconditionConstraintCS__StereotypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getStereotypeAssignment_0());
             }
-            // InternalOCLinEcore.g:6577:1: ( rule__PostconditionConstraintCS__StereotypeAssignment_0 )
-            // InternalOCLinEcore.g:6577:2: rule__PostconditionConstraintCS__StereotypeAssignment_0
+            // InternalOCLinEcore.g:6579:1: ( rule__PostconditionConstraintCS__StereotypeAssignment_0 )
+            // InternalOCLinEcore.g:6579:2: rule__PostconditionConstraintCS__StereotypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostconditionConstraintCS__StereotypeAssignment_0();
@@ -22888,14 +22888,14 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group__1"
-    // InternalOCLinEcore.g:6587:1: rule__PostconditionConstraintCS__Group__1 : rule__PostconditionConstraintCS__Group__1__Impl rule__PostconditionConstraintCS__Group__2 ;
+    // InternalOCLinEcore.g:6589:1: rule__PostconditionConstraintCS__Group__1 : rule__PostconditionConstraintCS__Group__1__Impl rule__PostconditionConstraintCS__Group__2 ;
     public final void rule__PostconditionConstraintCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6591:1: ( rule__PostconditionConstraintCS__Group__1__Impl rule__PostconditionConstraintCS__Group__2 )
-            // InternalOCLinEcore.g:6592:2: rule__PostconditionConstraintCS__Group__1__Impl rule__PostconditionConstraintCS__Group__2
+            // InternalOCLinEcore.g:6593:1: ( rule__PostconditionConstraintCS__Group__1__Impl rule__PostconditionConstraintCS__Group__2 )
+            // InternalOCLinEcore.g:6594:2: rule__PostconditionConstraintCS__Group__1__Impl rule__PostconditionConstraintCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__PostconditionConstraintCS__Group__1__Impl();
@@ -22926,22 +22926,22 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group__1__Impl"
-    // InternalOCLinEcore.g:6599:1: rule__PostconditionConstraintCS__Group__1__Impl : ( ( rule__PostconditionConstraintCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:6601:1: rule__PostconditionConstraintCS__Group__1__Impl : ( ( rule__PostconditionConstraintCS__Group_1__0 )? ) ;
     public final void rule__PostconditionConstraintCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6603:1: ( ( ( rule__PostconditionConstraintCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:6604:1: ( ( rule__PostconditionConstraintCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:6605:1: ( ( ( rule__PostconditionConstraintCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:6606:1: ( ( rule__PostconditionConstraintCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:6604:1: ( ( rule__PostconditionConstraintCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:6605:1: ( rule__PostconditionConstraintCS__Group_1__0 )?
+            // InternalOCLinEcore.g:6606:1: ( ( rule__PostconditionConstraintCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:6607:1: ( rule__PostconditionConstraintCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:6606:1: ( rule__PostconditionConstraintCS__Group_1__0 )?
+            // InternalOCLinEcore.g:6608:1: ( rule__PostconditionConstraintCS__Group_1__0 )?
             int alt84=2;
             int LA84_0 = input.LA(1);
 
@@ -22950,7 +22950,7 @@
             }
             switch (alt84) {
                 case 1 :
-                    // InternalOCLinEcore.g:6606:2: rule__PostconditionConstraintCS__Group_1__0
+                    // InternalOCLinEcore.g:6608:2: rule__PostconditionConstraintCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PostconditionConstraintCS__Group_1__0();
@@ -22988,14 +22988,14 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group__2"
-    // InternalOCLinEcore.g:6616:1: rule__PostconditionConstraintCS__Group__2 : rule__PostconditionConstraintCS__Group__2__Impl rule__PostconditionConstraintCS__Group__3 ;
+    // InternalOCLinEcore.g:6618:1: rule__PostconditionConstraintCS__Group__2 : rule__PostconditionConstraintCS__Group__2__Impl rule__PostconditionConstraintCS__Group__3 ;
     public final void rule__PostconditionConstraintCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6620:1: ( rule__PostconditionConstraintCS__Group__2__Impl rule__PostconditionConstraintCS__Group__3 )
-            // InternalOCLinEcore.g:6621:2: rule__PostconditionConstraintCS__Group__2__Impl rule__PostconditionConstraintCS__Group__3
+            // InternalOCLinEcore.g:6622:1: ( rule__PostconditionConstraintCS__Group__2__Impl rule__PostconditionConstraintCS__Group__3 )
+            // InternalOCLinEcore.g:6623:2: rule__PostconditionConstraintCS__Group__2__Impl rule__PostconditionConstraintCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__PostconditionConstraintCS__Group__2__Impl();
@@ -23026,17 +23026,17 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group__2__Impl"
-    // InternalOCLinEcore.g:6628:1: rule__PostconditionConstraintCS__Group__2__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:6630:1: rule__PostconditionConstraintCS__Group__2__Impl : ( ':' ) ;
     public final void rule__PostconditionConstraintCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6632:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:6633:1: ( ':' )
+            // InternalOCLinEcore.g:6634:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:6635:1: ( ':' )
             {
-            // InternalOCLinEcore.g:6633:1: ( ':' )
-            // InternalOCLinEcore.g:6634:1: ':'
+            // InternalOCLinEcore.g:6635:1: ( ':' )
+            // InternalOCLinEcore.g:6636:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getColonKeyword_2());
@@ -23067,14 +23067,14 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group__3"
-    // InternalOCLinEcore.g:6647:1: rule__PostconditionConstraintCS__Group__3 : rule__PostconditionConstraintCS__Group__3__Impl rule__PostconditionConstraintCS__Group__4 ;
+    // InternalOCLinEcore.g:6649:1: rule__PostconditionConstraintCS__Group__3 : rule__PostconditionConstraintCS__Group__3__Impl rule__PostconditionConstraintCS__Group__4 ;
     public final void rule__PostconditionConstraintCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6651:1: ( rule__PostconditionConstraintCS__Group__3__Impl rule__PostconditionConstraintCS__Group__4 )
-            // InternalOCLinEcore.g:6652:2: rule__PostconditionConstraintCS__Group__3__Impl rule__PostconditionConstraintCS__Group__4
+            // InternalOCLinEcore.g:6653:1: ( rule__PostconditionConstraintCS__Group__3__Impl rule__PostconditionConstraintCS__Group__4 )
+            // InternalOCLinEcore.g:6654:2: rule__PostconditionConstraintCS__Group__3__Impl rule__PostconditionConstraintCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__PostconditionConstraintCS__Group__3__Impl();
@@ -23105,22 +23105,22 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group__3__Impl"
-    // InternalOCLinEcore.g:6659:1: rule__PostconditionConstraintCS__Group__3__Impl : ( ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )? ) ;
+    // InternalOCLinEcore.g:6661:1: rule__PostconditionConstraintCS__Group__3__Impl : ( ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )? ) ;
     public final void rule__PostconditionConstraintCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6663:1: ( ( ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )? ) )
-            // InternalOCLinEcore.g:6664:1: ( ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )? )
+            // InternalOCLinEcore.g:6665:1: ( ( ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )? ) )
+            // InternalOCLinEcore.g:6666:1: ( ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )? )
             {
-            // InternalOCLinEcore.g:6664:1: ( ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )? )
-            // InternalOCLinEcore.g:6665:1: ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )?
+            // InternalOCLinEcore.g:6666:1: ( ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )? )
+            // InternalOCLinEcore.g:6667:1: ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationAssignment_3());
             }
-            // InternalOCLinEcore.g:6666:1: ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )?
+            // InternalOCLinEcore.g:6668:1: ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )?
             int alt85=2;
             int LA85_0 = input.LA(1);
 
@@ -23129,7 +23129,7 @@
             }
             switch (alt85) {
                 case 1 :
-                    // InternalOCLinEcore.g:6666:2: rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3
+                    // InternalOCLinEcore.g:6668:2: rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3();
@@ -23167,14 +23167,14 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group__4"
-    // InternalOCLinEcore.g:6676:1: rule__PostconditionConstraintCS__Group__4 : rule__PostconditionConstraintCS__Group__4__Impl ;
+    // InternalOCLinEcore.g:6678:1: rule__PostconditionConstraintCS__Group__4 : rule__PostconditionConstraintCS__Group__4__Impl ;
     public final void rule__PostconditionConstraintCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6680:1: ( rule__PostconditionConstraintCS__Group__4__Impl )
-            // InternalOCLinEcore.g:6681:2: rule__PostconditionConstraintCS__Group__4__Impl
+            // InternalOCLinEcore.g:6682:1: ( rule__PostconditionConstraintCS__Group__4__Impl )
+            // InternalOCLinEcore.g:6683:2: rule__PostconditionConstraintCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostconditionConstraintCS__Group__4__Impl();
@@ -23200,17 +23200,17 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group__4__Impl"
-    // InternalOCLinEcore.g:6687:1: rule__PostconditionConstraintCS__Group__4__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:6689:1: rule__PostconditionConstraintCS__Group__4__Impl : ( ';' ) ;
     public final void rule__PostconditionConstraintCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6691:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:6692:1: ( ';' )
+            // InternalOCLinEcore.g:6693:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:6694:1: ( ';' )
             {
-            // InternalOCLinEcore.g:6692:1: ( ';' )
-            // InternalOCLinEcore.g:6693:1: ';'
+            // InternalOCLinEcore.g:6694:1: ( ';' )
+            // InternalOCLinEcore.g:6695:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getSemicolonKeyword_4());
@@ -23241,14 +23241,14 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group_1__0"
-    // InternalOCLinEcore.g:6716:1: rule__PostconditionConstraintCS__Group_1__0 : rule__PostconditionConstraintCS__Group_1__0__Impl rule__PostconditionConstraintCS__Group_1__1 ;
+    // InternalOCLinEcore.g:6718:1: rule__PostconditionConstraintCS__Group_1__0 : rule__PostconditionConstraintCS__Group_1__0__Impl rule__PostconditionConstraintCS__Group_1__1 ;
     public final void rule__PostconditionConstraintCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6720:1: ( rule__PostconditionConstraintCS__Group_1__0__Impl rule__PostconditionConstraintCS__Group_1__1 )
-            // InternalOCLinEcore.g:6721:2: rule__PostconditionConstraintCS__Group_1__0__Impl rule__PostconditionConstraintCS__Group_1__1
+            // InternalOCLinEcore.g:6722:1: ( rule__PostconditionConstraintCS__Group_1__0__Impl rule__PostconditionConstraintCS__Group_1__1 )
+            // InternalOCLinEcore.g:6723:2: rule__PostconditionConstraintCS__Group_1__0__Impl rule__PostconditionConstraintCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__PostconditionConstraintCS__Group_1__0__Impl();
@@ -23279,23 +23279,23 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:6728:1: rule__PostconditionConstraintCS__Group_1__0__Impl : ( ( rule__PostconditionConstraintCS__NameAssignment_1_0 ) ) ;
+    // InternalOCLinEcore.g:6730:1: rule__PostconditionConstraintCS__Group_1__0__Impl : ( ( rule__PostconditionConstraintCS__NameAssignment_1_0 ) ) ;
     public final void rule__PostconditionConstraintCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6732:1: ( ( ( rule__PostconditionConstraintCS__NameAssignment_1_0 ) ) )
-            // InternalOCLinEcore.g:6733:1: ( ( rule__PostconditionConstraintCS__NameAssignment_1_0 ) )
+            // InternalOCLinEcore.g:6734:1: ( ( ( rule__PostconditionConstraintCS__NameAssignment_1_0 ) ) )
+            // InternalOCLinEcore.g:6735:1: ( ( rule__PostconditionConstraintCS__NameAssignment_1_0 ) )
             {
-            // InternalOCLinEcore.g:6733:1: ( ( rule__PostconditionConstraintCS__NameAssignment_1_0 ) )
-            // InternalOCLinEcore.g:6734:1: ( rule__PostconditionConstraintCS__NameAssignment_1_0 )
+            // InternalOCLinEcore.g:6735:1: ( ( rule__PostconditionConstraintCS__NameAssignment_1_0 ) )
+            // InternalOCLinEcore.g:6736:1: ( rule__PostconditionConstraintCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getNameAssignment_1_0());
             }
-            // InternalOCLinEcore.g:6735:1: ( rule__PostconditionConstraintCS__NameAssignment_1_0 )
-            // InternalOCLinEcore.g:6735:2: rule__PostconditionConstraintCS__NameAssignment_1_0
+            // InternalOCLinEcore.g:6737:1: ( rule__PostconditionConstraintCS__NameAssignment_1_0 )
+            // InternalOCLinEcore.g:6737:2: rule__PostconditionConstraintCS__NameAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostconditionConstraintCS__NameAssignment_1_0();
@@ -23330,14 +23330,14 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group_1__1"
-    // InternalOCLinEcore.g:6745:1: rule__PostconditionConstraintCS__Group_1__1 : rule__PostconditionConstraintCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:6747:1: rule__PostconditionConstraintCS__Group_1__1 : rule__PostconditionConstraintCS__Group_1__1__Impl ;
     public final void rule__PostconditionConstraintCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6749:1: ( rule__PostconditionConstraintCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:6750:2: rule__PostconditionConstraintCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:6751:1: ( rule__PostconditionConstraintCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:6752:2: rule__PostconditionConstraintCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostconditionConstraintCS__Group_1__1__Impl();
@@ -23363,22 +23363,22 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:6756:1: rule__PostconditionConstraintCS__Group_1__1__Impl : ( ( rule__PostconditionConstraintCS__Group_1_1__0 )? ) ;
+    // InternalOCLinEcore.g:6758:1: rule__PostconditionConstraintCS__Group_1__1__Impl : ( ( rule__PostconditionConstraintCS__Group_1_1__0 )? ) ;
     public final void rule__PostconditionConstraintCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6760:1: ( ( ( rule__PostconditionConstraintCS__Group_1_1__0 )? ) )
-            // InternalOCLinEcore.g:6761:1: ( ( rule__PostconditionConstraintCS__Group_1_1__0 )? )
+            // InternalOCLinEcore.g:6762:1: ( ( ( rule__PostconditionConstraintCS__Group_1_1__0 )? ) )
+            // InternalOCLinEcore.g:6763:1: ( ( rule__PostconditionConstraintCS__Group_1_1__0 )? )
             {
-            // InternalOCLinEcore.g:6761:1: ( ( rule__PostconditionConstraintCS__Group_1_1__0 )? )
-            // InternalOCLinEcore.g:6762:1: ( rule__PostconditionConstraintCS__Group_1_1__0 )?
+            // InternalOCLinEcore.g:6763:1: ( ( rule__PostconditionConstraintCS__Group_1_1__0 )? )
+            // InternalOCLinEcore.g:6764:1: ( rule__PostconditionConstraintCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getGroup_1_1());
             }
-            // InternalOCLinEcore.g:6763:1: ( rule__PostconditionConstraintCS__Group_1_1__0 )?
+            // InternalOCLinEcore.g:6765:1: ( rule__PostconditionConstraintCS__Group_1_1__0 )?
             int alt86=2;
             int LA86_0 = input.LA(1);
 
@@ -23387,7 +23387,7 @@
             }
             switch (alt86) {
                 case 1 :
-                    // InternalOCLinEcore.g:6763:2: rule__PostconditionConstraintCS__Group_1_1__0
+                    // InternalOCLinEcore.g:6765:2: rule__PostconditionConstraintCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PostconditionConstraintCS__Group_1_1__0();
@@ -23425,14 +23425,14 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group_1_1__0"
-    // InternalOCLinEcore.g:6777:1: rule__PostconditionConstraintCS__Group_1_1__0 : rule__PostconditionConstraintCS__Group_1_1__0__Impl rule__PostconditionConstraintCS__Group_1_1__1 ;
+    // InternalOCLinEcore.g:6779:1: rule__PostconditionConstraintCS__Group_1_1__0 : rule__PostconditionConstraintCS__Group_1_1__0__Impl rule__PostconditionConstraintCS__Group_1_1__1 ;
     public final void rule__PostconditionConstraintCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6781:1: ( rule__PostconditionConstraintCS__Group_1_1__0__Impl rule__PostconditionConstraintCS__Group_1_1__1 )
-            // InternalOCLinEcore.g:6782:2: rule__PostconditionConstraintCS__Group_1_1__0__Impl rule__PostconditionConstraintCS__Group_1_1__1
+            // InternalOCLinEcore.g:6783:1: ( rule__PostconditionConstraintCS__Group_1_1__0__Impl rule__PostconditionConstraintCS__Group_1_1__1 )
+            // InternalOCLinEcore.g:6784:2: rule__PostconditionConstraintCS__Group_1_1__0__Impl rule__PostconditionConstraintCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__PostconditionConstraintCS__Group_1_1__0__Impl();
@@ -23463,17 +23463,17 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group_1_1__0__Impl"
-    // InternalOCLinEcore.g:6789:1: rule__PostconditionConstraintCS__Group_1_1__0__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:6791:1: rule__PostconditionConstraintCS__Group_1_1__0__Impl : ( '(' ) ;
     public final void rule__PostconditionConstraintCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6793:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:6794:1: ( '(' )
+            // InternalOCLinEcore.g:6795:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:6796:1: ( '(' )
             {
-            // InternalOCLinEcore.g:6794:1: ( '(' )
-            // InternalOCLinEcore.g:6795:1: '('
+            // InternalOCLinEcore.g:6796:1: ( '(' )
+            // InternalOCLinEcore.g:6797:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0());
@@ -23504,14 +23504,14 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group_1_1__1"
-    // InternalOCLinEcore.g:6808:1: rule__PostconditionConstraintCS__Group_1_1__1 : rule__PostconditionConstraintCS__Group_1_1__1__Impl rule__PostconditionConstraintCS__Group_1_1__2 ;
+    // InternalOCLinEcore.g:6810:1: rule__PostconditionConstraintCS__Group_1_1__1 : rule__PostconditionConstraintCS__Group_1_1__1__Impl rule__PostconditionConstraintCS__Group_1_1__2 ;
     public final void rule__PostconditionConstraintCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6812:1: ( rule__PostconditionConstraintCS__Group_1_1__1__Impl rule__PostconditionConstraintCS__Group_1_1__2 )
-            // InternalOCLinEcore.g:6813:2: rule__PostconditionConstraintCS__Group_1_1__1__Impl rule__PostconditionConstraintCS__Group_1_1__2
+            // InternalOCLinEcore.g:6814:1: ( rule__PostconditionConstraintCS__Group_1_1__1__Impl rule__PostconditionConstraintCS__Group_1_1__2 )
+            // InternalOCLinEcore.g:6815:2: rule__PostconditionConstraintCS__Group_1_1__1__Impl rule__PostconditionConstraintCS__Group_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__PostconditionConstraintCS__Group_1_1__1__Impl();
@@ -23542,23 +23542,23 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group_1_1__1__Impl"
-    // InternalOCLinEcore.g:6820:1: rule__PostconditionConstraintCS__Group_1_1__1__Impl : ( ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) ;
+    // InternalOCLinEcore.g:6822:1: rule__PostconditionConstraintCS__Group_1_1__1__Impl : ( ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) ;
     public final void rule__PostconditionConstraintCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6824:1: ( ( ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
-            // InternalOCLinEcore.g:6825:1: ( ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
+            // InternalOCLinEcore.g:6826:1: ( ( ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
+            // InternalOCLinEcore.g:6827:1: ( ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
             {
-            // InternalOCLinEcore.g:6825:1: ( ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
-            // InternalOCLinEcore.g:6826:1: ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 )
+            // InternalOCLinEcore.g:6827:1: ( ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
+            // InternalOCLinEcore.g:6828:1: ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
-            // InternalOCLinEcore.g:6827:1: ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 )
-            // InternalOCLinEcore.g:6827:2: rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1
+            // InternalOCLinEcore.g:6829:1: ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 )
+            // InternalOCLinEcore.g:6829:2: rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1();
@@ -23593,14 +23593,14 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group_1_1__2"
-    // InternalOCLinEcore.g:6837:1: rule__PostconditionConstraintCS__Group_1_1__2 : rule__PostconditionConstraintCS__Group_1_1__2__Impl ;
+    // InternalOCLinEcore.g:6839:1: rule__PostconditionConstraintCS__Group_1_1__2 : rule__PostconditionConstraintCS__Group_1_1__2__Impl ;
     public final void rule__PostconditionConstraintCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6841:1: ( rule__PostconditionConstraintCS__Group_1_1__2__Impl )
-            // InternalOCLinEcore.g:6842:2: rule__PostconditionConstraintCS__Group_1_1__2__Impl
+            // InternalOCLinEcore.g:6843:1: ( rule__PostconditionConstraintCS__Group_1_1__2__Impl )
+            // InternalOCLinEcore.g:6844:2: rule__PostconditionConstraintCS__Group_1_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostconditionConstraintCS__Group_1_1__2__Impl();
@@ -23626,17 +23626,17 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__Group_1_1__2__Impl"
-    // InternalOCLinEcore.g:6848:1: rule__PostconditionConstraintCS__Group_1_1__2__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:6850:1: rule__PostconditionConstraintCS__Group_1_1__2__Impl : ( ')' ) ;
     public final void rule__PostconditionConstraintCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6852:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:6853:1: ( ')' )
+            // InternalOCLinEcore.g:6854:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:6855:1: ( ')' )
             {
-            // InternalOCLinEcore.g:6853:1: ( ')' )
-            // InternalOCLinEcore.g:6854:1: ')'
+            // InternalOCLinEcore.g:6855:1: ( ')' )
+            // InternalOCLinEcore.g:6856:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2());
@@ -23667,14 +23667,14 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group__0"
-    // InternalOCLinEcore.g:6873:1: rule__PreconditionConstraintCS__Group__0 : rule__PreconditionConstraintCS__Group__0__Impl rule__PreconditionConstraintCS__Group__1 ;
+    // InternalOCLinEcore.g:6875:1: rule__PreconditionConstraintCS__Group__0 : rule__PreconditionConstraintCS__Group__0__Impl rule__PreconditionConstraintCS__Group__1 ;
     public final void rule__PreconditionConstraintCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6877:1: ( rule__PreconditionConstraintCS__Group__0__Impl rule__PreconditionConstraintCS__Group__1 )
-            // InternalOCLinEcore.g:6878:2: rule__PreconditionConstraintCS__Group__0__Impl rule__PreconditionConstraintCS__Group__1
+            // InternalOCLinEcore.g:6879:1: ( rule__PreconditionConstraintCS__Group__0__Impl rule__PreconditionConstraintCS__Group__1 )
+            // InternalOCLinEcore.g:6880:2: rule__PreconditionConstraintCS__Group__0__Impl rule__PreconditionConstraintCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__PreconditionConstraintCS__Group__0__Impl();
@@ -23705,23 +23705,23 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group__0__Impl"
-    // InternalOCLinEcore.g:6885:1: rule__PreconditionConstraintCS__Group__0__Impl : ( ( rule__PreconditionConstraintCS__StereotypeAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:6887:1: rule__PreconditionConstraintCS__Group__0__Impl : ( ( rule__PreconditionConstraintCS__StereotypeAssignment_0 ) ) ;
     public final void rule__PreconditionConstraintCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6889:1: ( ( ( rule__PreconditionConstraintCS__StereotypeAssignment_0 ) ) )
-            // InternalOCLinEcore.g:6890:1: ( ( rule__PreconditionConstraintCS__StereotypeAssignment_0 ) )
+            // InternalOCLinEcore.g:6891:1: ( ( ( rule__PreconditionConstraintCS__StereotypeAssignment_0 ) ) )
+            // InternalOCLinEcore.g:6892:1: ( ( rule__PreconditionConstraintCS__StereotypeAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:6890:1: ( ( rule__PreconditionConstraintCS__StereotypeAssignment_0 ) )
-            // InternalOCLinEcore.g:6891:1: ( rule__PreconditionConstraintCS__StereotypeAssignment_0 )
+            // InternalOCLinEcore.g:6892:1: ( ( rule__PreconditionConstraintCS__StereotypeAssignment_0 ) )
+            // InternalOCLinEcore.g:6893:1: ( rule__PreconditionConstraintCS__StereotypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getStereotypeAssignment_0());
             }
-            // InternalOCLinEcore.g:6892:1: ( rule__PreconditionConstraintCS__StereotypeAssignment_0 )
-            // InternalOCLinEcore.g:6892:2: rule__PreconditionConstraintCS__StereotypeAssignment_0
+            // InternalOCLinEcore.g:6894:1: ( rule__PreconditionConstraintCS__StereotypeAssignment_0 )
+            // InternalOCLinEcore.g:6894:2: rule__PreconditionConstraintCS__StereotypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreconditionConstraintCS__StereotypeAssignment_0();
@@ -23756,14 +23756,14 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group__1"
-    // InternalOCLinEcore.g:6902:1: rule__PreconditionConstraintCS__Group__1 : rule__PreconditionConstraintCS__Group__1__Impl rule__PreconditionConstraintCS__Group__2 ;
+    // InternalOCLinEcore.g:6904:1: rule__PreconditionConstraintCS__Group__1 : rule__PreconditionConstraintCS__Group__1__Impl rule__PreconditionConstraintCS__Group__2 ;
     public final void rule__PreconditionConstraintCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6906:1: ( rule__PreconditionConstraintCS__Group__1__Impl rule__PreconditionConstraintCS__Group__2 )
-            // InternalOCLinEcore.g:6907:2: rule__PreconditionConstraintCS__Group__1__Impl rule__PreconditionConstraintCS__Group__2
+            // InternalOCLinEcore.g:6908:1: ( rule__PreconditionConstraintCS__Group__1__Impl rule__PreconditionConstraintCS__Group__2 )
+            // InternalOCLinEcore.g:6909:2: rule__PreconditionConstraintCS__Group__1__Impl rule__PreconditionConstraintCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__PreconditionConstraintCS__Group__1__Impl();
@@ -23794,22 +23794,22 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group__1__Impl"
-    // InternalOCLinEcore.g:6914:1: rule__PreconditionConstraintCS__Group__1__Impl : ( ( rule__PreconditionConstraintCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:6916:1: rule__PreconditionConstraintCS__Group__1__Impl : ( ( rule__PreconditionConstraintCS__Group_1__0 )? ) ;
     public final void rule__PreconditionConstraintCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6918:1: ( ( ( rule__PreconditionConstraintCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:6919:1: ( ( rule__PreconditionConstraintCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:6920:1: ( ( ( rule__PreconditionConstraintCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:6921:1: ( ( rule__PreconditionConstraintCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:6919:1: ( ( rule__PreconditionConstraintCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:6920:1: ( rule__PreconditionConstraintCS__Group_1__0 )?
+            // InternalOCLinEcore.g:6921:1: ( ( rule__PreconditionConstraintCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:6922:1: ( rule__PreconditionConstraintCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:6921:1: ( rule__PreconditionConstraintCS__Group_1__0 )?
+            // InternalOCLinEcore.g:6923:1: ( rule__PreconditionConstraintCS__Group_1__0 )?
             int alt87=2;
             int LA87_0 = input.LA(1);
 
@@ -23818,7 +23818,7 @@
             }
             switch (alt87) {
                 case 1 :
-                    // InternalOCLinEcore.g:6921:2: rule__PreconditionConstraintCS__Group_1__0
+                    // InternalOCLinEcore.g:6923:2: rule__PreconditionConstraintCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PreconditionConstraintCS__Group_1__0();
@@ -23856,14 +23856,14 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group__2"
-    // InternalOCLinEcore.g:6931:1: rule__PreconditionConstraintCS__Group__2 : rule__PreconditionConstraintCS__Group__2__Impl rule__PreconditionConstraintCS__Group__3 ;
+    // InternalOCLinEcore.g:6933:1: rule__PreconditionConstraintCS__Group__2 : rule__PreconditionConstraintCS__Group__2__Impl rule__PreconditionConstraintCS__Group__3 ;
     public final void rule__PreconditionConstraintCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6935:1: ( rule__PreconditionConstraintCS__Group__2__Impl rule__PreconditionConstraintCS__Group__3 )
-            // InternalOCLinEcore.g:6936:2: rule__PreconditionConstraintCS__Group__2__Impl rule__PreconditionConstraintCS__Group__3
+            // InternalOCLinEcore.g:6937:1: ( rule__PreconditionConstraintCS__Group__2__Impl rule__PreconditionConstraintCS__Group__3 )
+            // InternalOCLinEcore.g:6938:2: rule__PreconditionConstraintCS__Group__2__Impl rule__PreconditionConstraintCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__PreconditionConstraintCS__Group__2__Impl();
@@ -23894,17 +23894,17 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group__2__Impl"
-    // InternalOCLinEcore.g:6943:1: rule__PreconditionConstraintCS__Group__2__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:6945:1: rule__PreconditionConstraintCS__Group__2__Impl : ( ':' ) ;
     public final void rule__PreconditionConstraintCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6947:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:6948:1: ( ':' )
+            // InternalOCLinEcore.g:6949:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:6950:1: ( ':' )
             {
-            // InternalOCLinEcore.g:6948:1: ( ':' )
-            // InternalOCLinEcore.g:6949:1: ':'
+            // InternalOCLinEcore.g:6950:1: ( ':' )
+            // InternalOCLinEcore.g:6951:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getColonKeyword_2());
@@ -23935,14 +23935,14 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group__3"
-    // InternalOCLinEcore.g:6962:1: rule__PreconditionConstraintCS__Group__3 : rule__PreconditionConstraintCS__Group__3__Impl rule__PreconditionConstraintCS__Group__4 ;
+    // InternalOCLinEcore.g:6964:1: rule__PreconditionConstraintCS__Group__3 : rule__PreconditionConstraintCS__Group__3__Impl rule__PreconditionConstraintCS__Group__4 ;
     public final void rule__PreconditionConstraintCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6966:1: ( rule__PreconditionConstraintCS__Group__3__Impl rule__PreconditionConstraintCS__Group__4 )
-            // InternalOCLinEcore.g:6967:2: rule__PreconditionConstraintCS__Group__3__Impl rule__PreconditionConstraintCS__Group__4
+            // InternalOCLinEcore.g:6968:1: ( rule__PreconditionConstraintCS__Group__3__Impl rule__PreconditionConstraintCS__Group__4 )
+            // InternalOCLinEcore.g:6969:2: rule__PreconditionConstraintCS__Group__3__Impl rule__PreconditionConstraintCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__PreconditionConstraintCS__Group__3__Impl();
@@ -23973,22 +23973,22 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group__3__Impl"
-    // InternalOCLinEcore.g:6974:1: rule__PreconditionConstraintCS__Group__3__Impl : ( ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )? ) ;
+    // InternalOCLinEcore.g:6976:1: rule__PreconditionConstraintCS__Group__3__Impl : ( ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )? ) ;
     public final void rule__PreconditionConstraintCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6978:1: ( ( ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )? ) )
-            // InternalOCLinEcore.g:6979:1: ( ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )? )
+            // InternalOCLinEcore.g:6980:1: ( ( ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )? ) )
+            // InternalOCLinEcore.g:6981:1: ( ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )? )
             {
-            // InternalOCLinEcore.g:6979:1: ( ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )? )
-            // InternalOCLinEcore.g:6980:1: ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )?
+            // InternalOCLinEcore.g:6981:1: ( ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )? )
+            // InternalOCLinEcore.g:6982:1: ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationAssignment_3());
             }
-            // InternalOCLinEcore.g:6981:1: ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )?
+            // InternalOCLinEcore.g:6983:1: ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )?
             int alt88=2;
             int LA88_0 = input.LA(1);
 
@@ -23997,7 +23997,7 @@
             }
             switch (alt88) {
                 case 1 :
-                    // InternalOCLinEcore.g:6981:2: rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3
+                    // InternalOCLinEcore.g:6983:2: rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3();
@@ -24035,14 +24035,14 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group__4"
-    // InternalOCLinEcore.g:6991:1: rule__PreconditionConstraintCS__Group__4 : rule__PreconditionConstraintCS__Group__4__Impl ;
+    // InternalOCLinEcore.g:6993:1: rule__PreconditionConstraintCS__Group__4 : rule__PreconditionConstraintCS__Group__4__Impl ;
     public final void rule__PreconditionConstraintCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:6995:1: ( rule__PreconditionConstraintCS__Group__4__Impl )
-            // InternalOCLinEcore.g:6996:2: rule__PreconditionConstraintCS__Group__4__Impl
+            // InternalOCLinEcore.g:6997:1: ( rule__PreconditionConstraintCS__Group__4__Impl )
+            // InternalOCLinEcore.g:6998:2: rule__PreconditionConstraintCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreconditionConstraintCS__Group__4__Impl();
@@ -24068,17 +24068,17 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group__4__Impl"
-    // InternalOCLinEcore.g:7002:1: rule__PreconditionConstraintCS__Group__4__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:7004:1: rule__PreconditionConstraintCS__Group__4__Impl : ( ';' ) ;
     public final void rule__PreconditionConstraintCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7006:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:7007:1: ( ';' )
+            // InternalOCLinEcore.g:7008:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:7009:1: ( ';' )
             {
-            // InternalOCLinEcore.g:7007:1: ( ';' )
-            // InternalOCLinEcore.g:7008:1: ';'
+            // InternalOCLinEcore.g:7009:1: ( ';' )
+            // InternalOCLinEcore.g:7010:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getSemicolonKeyword_4());
@@ -24109,14 +24109,14 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group_1__0"
-    // InternalOCLinEcore.g:7031:1: rule__PreconditionConstraintCS__Group_1__0 : rule__PreconditionConstraintCS__Group_1__0__Impl rule__PreconditionConstraintCS__Group_1__1 ;
+    // InternalOCLinEcore.g:7033:1: rule__PreconditionConstraintCS__Group_1__0 : rule__PreconditionConstraintCS__Group_1__0__Impl rule__PreconditionConstraintCS__Group_1__1 ;
     public final void rule__PreconditionConstraintCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7035:1: ( rule__PreconditionConstraintCS__Group_1__0__Impl rule__PreconditionConstraintCS__Group_1__1 )
-            // InternalOCLinEcore.g:7036:2: rule__PreconditionConstraintCS__Group_1__0__Impl rule__PreconditionConstraintCS__Group_1__1
+            // InternalOCLinEcore.g:7037:1: ( rule__PreconditionConstraintCS__Group_1__0__Impl rule__PreconditionConstraintCS__Group_1__1 )
+            // InternalOCLinEcore.g:7038:2: rule__PreconditionConstraintCS__Group_1__0__Impl rule__PreconditionConstraintCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__PreconditionConstraintCS__Group_1__0__Impl();
@@ -24147,23 +24147,23 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:7043:1: rule__PreconditionConstraintCS__Group_1__0__Impl : ( ( rule__PreconditionConstraintCS__NameAssignment_1_0 ) ) ;
+    // InternalOCLinEcore.g:7045:1: rule__PreconditionConstraintCS__Group_1__0__Impl : ( ( rule__PreconditionConstraintCS__NameAssignment_1_0 ) ) ;
     public final void rule__PreconditionConstraintCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7047:1: ( ( ( rule__PreconditionConstraintCS__NameAssignment_1_0 ) ) )
-            // InternalOCLinEcore.g:7048:1: ( ( rule__PreconditionConstraintCS__NameAssignment_1_0 ) )
+            // InternalOCLinEcore.g:7049:1: ( ( ( rule__PreconditionConstraintCS__NameAssignment_1_0 ) ) )
+            // InternalOCLinEcore.g:7050:1: ( ( rule__PreconditionConstraintCS__NameAssignment_1_0 ) )
             {
-            // InternalOCLinEcore.g:7048:1: ( ( rule__PreconditionConstraintCS__NameAssignment_1_0 ) )
-            // InternalOCLinEcore.g:7049:1: ( rule__PreconditionConstraintCS__NameAssignment_1_0 )
+            // InternalOCLinEcore.g:7050:1: ( ( rule__PreconditionConstraintCS__NameAssignment_1_0 ) )
+            // InternalOCLinEcore.g:7051:1: ( rule__PreconditionConstraintCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getNameAssignment_1_0());
             }
-            // InternalOCLinEcore.g:7050:1: ( rule__PreconditionConstraintCS__NameAssignment_1_0 )
-            // InternalOCLinEcore.g:7050:2: rule__PreconditionConstraintCS__NameAssignment_1_0
+            // InternalOCLinEcore.g:7052:1: ( rule__PreconditionConstraintCS__NameAssignment_1_0 )
+            // InternalOCLinEcore.g:7052:2: rule__PreconditionConstraintCS__NameAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreconditionConstraintCS__NameAssignment_1_0();
@@ -24198,14 +24198,14 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group_1__1"
-    // InternalOCLinEcore.g:7060:1: rule__PreconditionConstraintCS__Group_1__1 : rule__PreconditionConstraintCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:7062:1: rule__PreconditionConstraintCS__Group_1__1 : rule__PreconditionConstraintCS__Group_1__1__Impl ;
     public final void rule__PreconditionConstraintCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7064:1: ( rule__PreconditionConstraintCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:7065:2: rule__PreconditionConstraintCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:7066:1: ( rule__PreconditionConstraintCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:7067:2: rule__PreconditionConstraintCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreconditionConstraintCS__Group_1__1__Impl();
@@ -24231,22 +24231,22 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:7071:1: rule__PreconditionConstraintCS__Group_1__1__Impl : ( ( rule__PreconditionConstraintCS__Group_1_1__0 )? ) ;
+    // InternalOCLinEcore.g:7073:1: rule__PreconditionConstraintCS__Group_1__1__Impl : ( ( rule__PreconditionConstraintCS__Group_1_1__0 )? ) ;
     public final void rule__PreconditionConstraintCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7075:1: ( ( ( rule__PreconditionConstraintCS__Group_1_1__0 )? ) )
-            // InternalOCLinEcore.g:7076:1: ( ( rule__PreconditionConstraintCS__Group_1_1__0 )? )
+            // InternalOCLinEcore.g:7077:1: ( ( ( rule__PreconditionConstraintCS__Group_1_1__0 )? ) )
+            // InternalOCLinEcore.g:7078:1: ( ( rule__PreconditionConstraintCS__Group_1_1__0 )? )
             {
-            // InternalOCLinEcore.g:7076:1: ( ( rule__PreconditionConstraintCS__Group_1_1__0 )? )
-            // InternalOCLinEcore.g:7077:1: ( rule__PreconditionConstraintCS__Group_1_1__0 )?
+            // InternalOCLinEcore.g:7078:1: ( ( rule__PreconditionConstraintCS__Group_1_1__0 )? )
+            // InternalOCLinEcore.g:7079:1: ( rule__PreconditionConstraintCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getGroup_1_1());
             }
-            // InternalOCLinEcore.g:7078:1: ( rule__PreconditionConstraintCS__Group_1_1__0 )?
+            // InternalOCLinEcore.g:7080:1: ( rule__PreconditionConstraintCS__Group_1_1__0 )?
             int alt89=2;
             int LA89_0 = input.LA(1);
 
@@ -24255,7 +24255,7 @@
             }
             switch (alt89) {
                 case 1 :
-                    // InternalOCLinEcore.g:7078:2: rule__PreconditionConstraintCS__Group_1_1__0
+                    // InternalOCLinEcore.g:7080:2: rule__PreconditionConstraintCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PreconditionConstraintCS__Group_1_1__0();
@@ -24293,14 +24293,14 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group_1_1__0"
-    // InternalOCLinEcore.g:7092:1: rule__PreconditionConstraintCS__Group_1_1__0 : rule__PreconditionConstraintCS__Group_1_1__0__Impl rule__PreconditionConstraintCS__Group_1_1__1 ;
+    // InternalOCLinEcore.g:7094:1: rule__PreconditionConstraintCS__Group_1_1__0 : rule__PreconditionConstraintCS__Group_1_1__0__Impl rule__PreconditionConstraintCS__Group_1_1__1 ;
     public final void rule__PreconditionConstraintCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7096:1: ( rule__PreconditionConstraintCS__Group_1_1__0__Impl rule__PreconditionConstraintCS__Group_1_1__1 )
-            // InternalOCLinEcore.g:7097:2: rule__PreconditionConstraintCS__Group_1_1__0__Impl rule__PreconditionConstraintCS__Group_1_1__1
+            // InternalOCLinEcore.g:7098:1: ( rule__PreconditionConstraintCS__Group_1_1__0__Impl rule__PreconditionConstraintCS__Group_1_1__1 )
+            // InternalOCLinEcore.g:7099:2: rule__PreconditionConstraintCS__Group_1_1__0__Impl rule__PreconditionConstraintCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__PreconditionConstraintCS__Group_1_1__0__Impl();
@@ -24331,17 +24331,17 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group_1_1__0__Impl"
-    // InternalOCLinEcore.g:7104:1: rule__PreconditionConstraintCS__Group_1_1__0__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:7106:1: rule__PreconditionConstraintCS__Group_1_1__0__Impl : ( '(' ) ;
     public final void rule__PreconditionConstraintCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7108:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:7109:1: ( '(' )
+            // InternalOCLinEcore.g:7110:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:7111:1: ( '(' )
             {
-            // InternalOCLinEcore.g:7109:1: ( '(' )
-            // InternalOCLinEcore.g:7110:1: '('
+            // InternalOCLinEcore.g:7111:1: ( '(' )
+            // InternalOCLinEcore.g:7112:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0());
@@ -24372,14 +24372,14 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group_1_1__1"
-    // InternalOCLinEcore.g:7123:1: rule__PreconditionConstraintCS__Group_1_1__1 : rule__PreconditionConstraintCS__Group_1_1__1__Impl rule__PreconditionConstraintCS__Group_1_1__2 ;
+    // InternalOCLinEcore.g:7125:1: rule__PreconditionConstraintCS__Group_1_1__1 : rule__PreconditionConstraintCS__Group_1_1__1__Impl rule__PreconditionConstraintCS__Group_1_1__2 ;
     public final void rule__PreconditionConstraintCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7127:1: ( rule__PreconditionConstraintCS__Group_1_1__1__Impl rule__PreconditionConstraintCS__Group_1_1__2 )
-            // InternalOCLinEcore.g:7128:2: rule__PreconditionConstraintCS__Group_1_1__1__Impl rule__PreconditionConstraintCS__Group_1_1__2
+            // InternalOCLinEcore.g:7129:1: ( rule__PreconditionConstraintCS__Group_1_1__1__Impl rule__PreconditionConstraintCS__Group_1_1__2 )
+            // InternalOCLinEcore.g:7130:2: rule__PreconditionConstraintCS__Group_1_1__1__Impl rule__PreconditionConstraintCS__Group_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__PreconditionConstraintCS__Group_1_1__1__Impl();
@@ -24410,23 +24410,23 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group_1_1__1__Impl"
-    // InternalOCLinEcore.g:7135:1: rule__PreconditionConstraintCS__Group_1_1__1__Impl : ( ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) ;
+    // InternalOCLinEcore.g:7137:1: rule__PreconditionConstraintCS__Group_1_1__1__Impl : ( ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) ;
     public final void rule__PreconditionConstraintCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7139:1: ( ( ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
-            // InternalOCLinEcore.g:7140:1: ( ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
+            // InternalOCLinEcore.g:7141:1: ( ( ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
+            // InternalOCLinEcore.g:7142:1: ( ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
             {
-            // InternalOCLinEcore.g:7140:1: ( ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
-            // InternalOCLinEcore.g:7141:1: ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 )
+            // InternalOCLinEcore.g:7142:1: ( ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
+            // InternalOCLinEcore.g:7143:1: ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
-            // InternalOCLinEcore.g:7142:1: ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 )
-            // InternalOCLinEcore.g:7142:2: rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1
+            // InternalOCLinEcore.g:7144:1: ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 )
+            // InternalOCLinEcore.g:7144:2: rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1();
@@ -24461,14 +24461,14 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group_1_1__2"
-    // InternalOCLinEcore.g:7152:1: rule__PreconditionConstraintCS__Group_1_1__2 : rule__PreconditionConstraintCS__Group_1_1__2__Impl ;
+    // InternalOCLinEcore.g:7154:1: rule__PreconditionConstraintCS__Group_1_1__2 : rule__PreconditionConstraintCS__Group_1_1__2__Impl ;
     public final void rule__PreconditionConstraintCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7156:1: ( rule__PreconditionConstraintCS__Group_1_1__2__Impl )
-            // InternalOCLinEcore.g:7157:2: rule__PreconditionConstraintCS__Group_1_1__2__Impl
+            // InternalOCLinEcore.g:7158:1: ( rule__PreconditionConstraintCS__Group_1_1__2__Impl )
+            // InternalOCLinEcore.g:7159:2: rule__PreconditionConstraintCS__Group_1_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreconditionConstraintCS__Group_1_1__2__Impl();
@@ -24494,17 +24494,17 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__Group_1_1__2__Impl"
-    // InternalOCLinEcore.g:7163:1: rule__PreconditionConstraintCS__Group_1_1__2__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:7165:1: rule__PreconditionConstraintCS__Group_1_1__2__Impl : ( ')' ) ;
     public final void rule__PreconditionConstraintCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7167:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:7168:1: ( ')' )
+            // InternalOCLinEcore.g:7169:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:7170:1: ( ')' )
             {
-            // InternalOCLinEcore.g:7168:1: ( ')' )
-            // InternalOCLinEcore.g:7169:1: ')'
+            // InternalOCLinEcore.g:7170:1: ( ')' )
+            // InternalOCLinEcore.g:7171:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2());
@@ -24535,14 +24535,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__0"
-    // InternalOCLinEcore.g:7188:1: rule__AnnotationCS__Group__0 : rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1 ;
+    // InternalOCLinEcore.g:7190:1: rule__AnnotationCS__Group__0 : rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1 ;
     public final void rule__AnnotationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7192:1: ( rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1 )
-            // InternalOCLinEcore.g:7193:2: rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1
+            // InternalOCLinEcore.g:7194:1: ( rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1 )
+            // InternalOCLinEcore.g:7195:2: rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__AnnotationCS__Group__0__Impl();
@@ -24573,23 +24573,23 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__0__Impl"
-    // InternalOCLinEcore.g:7200:1: rule__AnnotationCS__Group__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:7202:1: rule__AnnotationCS__Group__0__Impl : ( () ) ;
     public final void rule__AnnotationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7204:1: ( ( () ) )
-            // InternalOCLinEcore.g:7205:1: ( () )
+            // InternalOCLinEcore.g:7206:1: ( ( () ) )
+            // InternalOCLinEcore.g:7207:1: ( () )
             {
-            // InternalOCLinEcore.g:7205:1: ( () )
-            // InternalOCLinEcore.g:7206:1: ()
+            // InternalOCLinEcore.g:7207:1: ( () )
+            // InternalOCLinEcore.g:7208:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getAnnotationCSAction_0());
             }
-            // InternalOCLinEcore.g:7207:1: ()
-            // InternalOCLinEcore.g:7209:1:
+            // InternalOCLinEcore.g:7209:1: ()
+            // InternalOCLinEcore.g:7211:1:
             {
             }
 
@@ -24614,14 +24614,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__1"
-    // InternalOCLinEcore.g:7219:1: rule__AnnotationCS__Group__1 : rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2 ;
+    // InternalOCLinEcore.g:7221:1: rule__AnnotationCS__Group__1 : rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2 ;
     public final void rule__AnnotationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7223:1: ( rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2 )
-            // InternalOCLinEcore.g:7224:2: rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2
+            // InternalOCLinEcore.g:7225:1: ( rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2 )
+            // InternalOCLinEcore.g:7226:2: rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_17);
             rule__AnnotationCS__Group__1__Impl();
@@ -24652,17 +24652,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__1__Impl"
-    // InternalOCLinEcore.g:7231:1: rule__AnnotationCS__Group__1__Impl : ( 'annotation' ) ;
+    // InternalOCLinEcore.g:7233:1: rule__AnnotationCS__Group__1__Impl : ( 'annotation' ) ;
     public final void rule__AnnotationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7235:1: ( ( 'annotation' ) )
-            // InternalOCLinEcore.g:7236:1: ( 'annotation' )
+            // InternalOCLinEcore.g:7237:1: ( ( 'annotation' ) )
+            // InternalOCLinEcore.g:7238:1: ( 'annotation' )
             {
-            // InternalOCLinEcore.g:7236:1: ( 'annotation' )
-            // InternalOCLinEcore.g:7237:1: 'annotation'
+            // InternalOCLinEcore.g:7238:1: ( 'annotation' )
+            // InternalOCLinEcore.g:7239:1: 'annotation'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_1());
@@ -24693,14 +24693,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__2"
-    // InternalOCLinEcore.g:7250:1: rule__AnnotationCS__Group__2 : rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3 ;
+    // InternalOCLinEcore.g:7252:1: rule__AnnotationCS__Group__2 : rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3 ;
     public final void rule__AnnotationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7254:1: ( rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3 )
-            // InternalOCLinEcore.g:7255:2: rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3
+            // InternalOCLinEcore.g:7256:1: ( rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3 )
+            // InternalOCLinEcore.g:7257:2: rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_17);
             rule__AnnotationCS__Group__2__Impl();
@@ -24731,22 +24731,22 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__2__Impl"
-    // InternalOCLinEcore.g:7262:1: rule__AnnotationCS__Group__2__Impl : ( ( rule__AnnotationCS__NameAssignment_2 )? ) ;
+    // InternalOCLinEcore.g:7264:1: rule__AnnotationCS__Group__2__Impl : ( ( rule__AnnotationCS__NameAssignment_2 )? ) ;
     public final void rule__AnnotationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7266:1: ( ( ( rule__AnnotationCS__NameAssignment_2 )? ) )
-            // InternalOCLinEcore.g:7267:1: ( ( rule__AnnotationCS__NameAssignment_2 )? )
+            // InternalOCLinEcore.g:7268:1: ( ( ( rule__AnnotationCS__NameAssignment_2 )? ) )
+            // InternalOCLinEcore.g:7269:1: ( ( rule__AnnotationCS__NameAssignment_2 )? )
             {
-            // InternalOCLinEcore.g:7267:1: ( ( rule__AnnotationCS__NameAssignment_2 )? )
-            // InternalOCLinEcore.g:7268:1: ( rule__AnnotationCS__NameAssignment_2 )?
+            // InternalOCLinEcore.g:7269:1: ( ( rule__AnnotationCS__NameAssignment_2 )? )
+            // InternalOCLinEcore.g:7270:1: ( rule__AnnotationCS__NameAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getNameAssignment_2());
             }
-            // InternalOCLinEcore.g:7269:1: ( rule__AnnotationCS__NameAssignment_2 )?
+            // InternalOCLinEcore.g:7271:1: ( rule__AnnotationCS__NameAssignment_2 )?
             int alt90=2;
             int LA90_0 = input.LA(1);
 
@@ -24755,7 +24755,7 @@
             }
             switch (alt90) {
                 case 1 :
-                    // InternalOCLinEcore.g:7269:2: rule__AnnotationCS__NameAssignment_2
+                    // InternalOCLinEcore.g:7271:2: rule__AnnotationCS__NameAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AnnotationCS__NameAssignment_2();
@@ -24793,14 +24793,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__3"
-    // InternalOCLinEcore.g:7279:1: rule__AnnotationCS__Group__3 : rule__AnnotationCS__Group__3__Impl rule__AnnotationCS__Group__4 ;
+    // InternalOCLinEcore.g:7281:1: rule__AnnotationCS__Group__3 : rule__AnnotationCS__Group__3__Impl rule__AnnotationCS__Group__4 ;
     public final void rule__AnnotationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7283:1: ( rule__AnnotationCS__Group__3__Impl rule__AnnotationCS__Group__4 )
-            // InternalOCLinEcore.g:7284:2: rule__AnnotationCS__Group__3__Impl rule__AnnotationCS__Group__4
+            // InternalOCLinEcore.g:7285:1: ( rule__AnnotationCS__Group__3__Impl rule__AnnotationCS__Group__4 )
+            // InternalOCLinEcore.g:7286:2: rule__AnnotationCS__Group__3__Impl rule__AnnotationCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_17);
             rule__AnnotationCS__Group__3__Impl();
@@ -24831,22 +24831,22 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__3__Impl"
-    // InternalOCLinEcore.g:7291:1: rule__AnnotationCS__Group__3__Impl : ( ( rule__AnnotationCS__Group_3__0 )? ) ;
+    // InternalOCLinEcore.g:7293:1: rule__AnnotationCS__Group__3__Impl : ( ( rule__AnnotationCS__Group_3__0 )? ) ;
     public final void rule__AnnotationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7295:1: ( ( ( rule__AnnotationCS__Group_3__0 )? ) )
-            // InternalOCLinEcore.g:7296:1: ( ( rule__AnnotationCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:7297:1: ( ( ( rule__AnnotationCS__Group_3__0 )? ) )
+            // InternalOCLinEcore.g:7298:1: ( ( rule__AnnotationCS__Group_3__0 )? )
             {
-            // InternalOCLinEcore.g:7296:1: ( ( rule__AnnotationCS__Group_3__0 )? )
-            // InternalOCLinEcore.g:7297:1: ( rule__AnnotationCS__Group_3__0 )?
+            // InternalOCLinEcore.g:7298:1: ( ( rule__AnnotationCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:7299:1: ( rule__AnnotationCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getGroup_3());
             }
-            // InternalOCLinEcore.g:7298:1: ( rule__AnnotationCS__Group_3__0 )?
+            // InternalOCLinEcore.g:7300:1: ( rule__AnnotationCS__Group_3__0 )?
             int alt91=2;
             int LA91_0 = input.LA(1);
 
@@ -24855,7 +24855,7 @@
             }
             switch (alt91) {
                 case 1 :
-                    // InternalOCLinEcore.g:7298:2: rule__AnnotationCS__Group_3__0
+                    // InternalOCLinEcore.g:7300:2: rule__AnnotationCS__Group_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AnnotationCS__Group_3__0();
@@ -24893,14 +24893,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__4"
-    // InternalOCLinEcore.g:7308:1: rule__AnnotationCS__Group__4 : rule__AnnotationCS__Group__4__Impl ;
+    // InternalOCLinEcore.g:7310:1: rule__AnnotationCS__Group__4 : rule__AnnotationCS__Group__4__Impl ;
     public final void rule__AnnotationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7312:1: ( rule__AnnotationCS__Group__4__Impl )
-            // InternalOCLinEcore.g:7313:2: rule__AnnotationCS__Group__4__Impl
+            // InternalOCLinEcore.g:7314:1: ( rule__AnnotationCS__Group__4__Impl )
+            // InternalOCLinEcore.g:7315:2: rule__AnnotationCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__Group__4__Impl();
@@ -24926,23 +24926,23 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__4__Impl"
-    // InternalOCLinEcore.g:7319:1: rule__AnnotationCS__Group__4__Impl : ( ( rule__AnnotationCS__Alternatives_4 ) ) ;
+    // InternalOCLinEcore.g:7321:1: rule__AnnotationCS__Group__4__Impl : ( ( rule__AnnotationCS__Alternatives_4 ) ) ;
     public final void rule__AnnotationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7323:1: ( ( ( rule__AnnotationCS__Alternatives_4 ) ) )
-            // InternalOCLinEcore.g:7324:1: ( ( rule__AnnotationCS__Alternatives_4 ) )
+            // InternalOCLinEcore.g:7325:1: ( ( ( rule__AnnotationCS__Alternatives_4 ) ) )
+            // InternalOCLinEcore.g:7326:1: ( ( rule__AnnotationCS__Alternatives_4 ) )
             {
-            // InternalOCLinEcore.g:7324:1: ( ( rule__AnnotationCS__Alternatives_4 ) )
-            // InternalOCLinEcore.g:7325:1: ( rule__AnnotationCS__Alternatives_4 )
+            // InternalOCLinEcore.g:7326:1: ( ( rule__AnnotationCS__Alternatives_4 ) )
+            // InternalOCLinEcore.g:7327:1: ( rule__AnnotationCS__Alternatives_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getAlternatives_4());
             }
-            // InternalOCLinEcore.g:7326:1: ( rule__AnnotationCS__Alternatives_4 )
-            // InternalOCLinEcore.g:7326:2: rule__AnnotationCS__Alternatives_4
+            // InternalOCLinEcore.g:7328:1: ( rule__AnnotationCS__Alternatives_4 )
+            // InternalOCLinEcore.g:7328:2: rule__AnnotationCS__Alternatives_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__Alternatives_4();
@@ -24977,14 +24977,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3__0"
-    // InternalOCLinEcore.g:7346:1: rule__AnnotationCS__Group_3__0 : rule__AnnotationCS__Group_3__0__Impl rule__AnnotationCS__Group_3__1 ;
+    // InternalOCLinEcore.g:7348:1: rule__AnnotationCS__Group_3__0 : rule__AnnotationCS__Group_3__0__Impl rule__AnnotationCS__Group_3__1 ;
     public final void rule__AnnotationCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7350:1: ( rule__AnnotationCS__Group_3__0__Impl rule__AnnotationCS__Group_3__1 )
-            // InternalOCLinEcore.g:7351:2: rule__AnnotationCS__Group_3__0__Impl rule__AnnotationCS__Group_3__1
+            // InternalOCLinEcore.g:7352:1: ( rule__AnnotationCS__Group_3__0__Impl rule__AnnotationCS__Group_3__1 )
+            // InternalOCLinEcore.g:7353:2: rule__AnnotationCS__Group_3__0__Impl rule__AnnotationCS__Group_3__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__AnnotationCS__Group_3__0__Impl();
@@ -25015,17 +25015,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3__0__Impl"
-    // InternalOCLinEcore.g:7358:1: rule__AnnotationCS__Group_3__0__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:7360:1: rule__AnnotationCS__Group_3__0__Impl : ( '(' ) ;
     public final void rule__AnnotationCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7362:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:7363:1: ( '(' )
+            // InternalOCLinEcore.g:7364:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:7365:1: ( '(' )
             {
-            // InternalOCLinEcore.g:7363:1: ( '(' )
-            // InternalOCLinEcore.g:7364:1: '('
+            // InternalOCLinEcore.g:7365:1: ( '(' )
+            // InternalOCLinEcore.g:7366:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_3_0());
@@ -25056,14 +25056,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3__1"
-    // InternalOCLinEcore.g:7377:1: rule__AnnotationCS__Group_3__1 : rule__AnnotationCS__Group_3__1__Impl rule__AnnotationCS__Group_3__2 ;
+    // InternalOCLinEcore.g:7379:1: rule__AnnotationCS__Group_3__1 : rule__AnnotationCS__Group_3__1__Impl rule__AnnotationCS__Group_3__2 ;
     public final void rule__AnnotationCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7381:1: ( rule__AnnotationCS__Group_3__1__Impl rule__AnnotationCS__Group_3__2 )
-            // InternalOCLinEcore.g:7382:2: rule__AnnotationCS__Group_3__1__Impl rule__AnnotationCS__Group_3__2
+            // InternalOCLinEcore.g:7383:1: ( rule__AnnotationCS__Group_3__1__Impl rule__AnnotationCS__Group_3__2 )
+            // InternalOCLinEcore.g:7384:2: rule__AnnotationCS__Group_3__1__Impl rule__AnnotationCS__Group_3__2
             {
             pushFollow(FollowSets000.FOLLOW_19);
             rule__AnnotationCS__Group_3__1__Impl();
@@ -25094,23 +25094,23 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3__1__Impl"
-    // InternalOCLinEcore.g:7389:1: rule__AnnotationCS__Group_3__1__Impl : ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 ) ) ;
+    // InternalOCLinEcore.g:7391:1: rule__AnnotationCS__Group_3__1__Impl : ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 ) ) ;
     public final void rule__AnnotationCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7393:1: ( ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 ) ) )
-            // InternalOCLinEcore.g:7394:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 ) )
+            // InternalOCLinEcore.g:7395:1: ( ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 ) ) )
+            // InternalOCLinEcore.g:7396:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 ) )
             {
-            // InternalOCLinEcore.g:7394:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 ) )
-            // InternalOCLinEcore.g:7395:1: ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 )
+            // InternalOCLinEcore.g:7396:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 ) )
+            // InternalOCLinEcore.g:7397:1: ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_3_1());
             }
-            // InternalOCLinEcore.g:7396:1: ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 )
-            // InternalOCLinEcore.g:7396:2: rule__AnnotationCS__OwnedDetailsAssignment_3_1
+            // InternalOCLinEcore.g:7398:1: ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 )
+            // InternalOCLinEcore.g:7398:2: rule__AnnotationCS__OwnedDetailsAssignment_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__OwnedDetailsAssignment_3_1();
@@ -25145,14 +25145,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3__2"
-    // InternalOCLinEcore.g:7406:1: rule__AnnotationCS__Group_3__2 : rule__AnnotationCS__Group_3__2__Impl rule__AnnotationCS__Group_3__3 ;
+    // InternalOCLinEcore.g:7408:1: rule__AnnotationCS__Group_3__2 : rule__AnnotationCS__Group_3__2__Impl rule__AnnotationCS__Group_3__3 ;
     public final void rule__AnnotationCS__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7410:1: ( rule__AnnotationCS__Group_3__2__Impl rule__AnnotationCS__Group_3__3 )
-            // InternalOCLinEcore.g:7411:2: rule__AnnotationCS__Group_3__2__Impl rule__AnnotationCS__Group_3__3
+            // InternalOCLinEcore.g:7412:1: ( rule__AnnotationCS__Group_3__2__Impl rule__AnnotationCS__Group_3__3 )
+            // InternalOCLinEcore.g:7413:2: rule__AnnotationCS__Group_3__2__Impl rule__AnnotationCS__Group_3__3
             {
             pushFollow(FollowSets000.FOLLOW_19);
             rule__AnnotationCS__Group_3__2__Impl();
@@ -25183,22 +25183,22 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3__2__Impl"
-    // InternalOCLinEcore.g:7418:1: rule__AnnotationCS__Group_3__2__Impl : ( ( rule__AnnotationCS__Group_3_2__0 )* ) ;
+    // InternalOCLinEcore.g:7420:1: rule__AnnotationCS__Group_3__2__Impl : ( ( rule__AnnotationCS__Group_3_2__0 )* ) ;
     public final void rule__AnnotationCS__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7422:1: ( ( ( rule__AnnotationCS__Group_3_2__0 )* ) )
-            // InternalOCLinEcore.g:7423:1: ( ( rule__AnnotationCS__Group_3_2__0 )* )
+            // InternalOCLinEcore.g:7424:1: ( ( ( rule__AnnotationCS__Group_3_2__0 )* ) )
+            // InternalOCLinEcore.g:7425:1: ( ( rule__AnnotationCS__Group_3_2__0 )* )
             {
-            // InternalOCLinEcore.g:7423:1: ( ( rule__AnnotationCS__Group_3_2__0 )* )
-            // InternalOCLinEcore.g:7424:1: ( rule__AnnotationCS__Group_3_2__0 )*
+            // InternalOCLinEcore.g:7425:1: ( ( rule__AnnotationCS__Group_3_2__0 )* )
+            // InternalOCLinEcore.g:7426:1: ( rule__AnnotationCS__Group_3_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getGroup_3_2());
             }
-            // InternalOCLinEcore.g:7425:1: ( rule__AnnotationCS__Group_3_2__0 )*
+            // InternalOCLinEcore.g:7427:1: ( rule__AnnotationCS__Group_3_2__0 )*
             loop92:
             do {
                 int alt92=2;
@@ -25211,7 +25211,7 @@
 
                 switch (alt92) {
             	case 1 :
-            	    // InternalOCLinEcore.g:7425:2: rule__AnnotationCS__Group_3_2__0
+            	    // InternalOCLinEcore.g:7427:2: rule__AnnotationCS__Group_3_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__AnnotationCS__Group_3_2__0();
@@ -25252,14 +25252,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3__3"
-    // InternalOCLinEcore.g:7435:1: rule__AnnotationCS__Group_3__3 : rule__AnnotationCS__Group_3__3__Impl ;
+    // InternalOCLinEcore.g:7437:1: rule__AnnotationCS__Group_3__3 : rule__AnnotationCS__Group_3__3__Impl ;
     public final void rule__AnnotationCS__Group_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7439:1: ( rule__AnnotationCS__Group_3__3__Impl )
-            // InternalOCLinEcore.g:7440:2: rule__AnnotationCS__Group_3__3__Impl
+            // InternalOCLinEcore.g:7441:1: ( rule__AnnotationCS__Group_3__3__Impl )
+            // InternalOCLinEcore.g:7442:2: rule__AnnotationCS__Group_3__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__Group_3__3__Impl();
@@ -25285,17 +25285,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3__3__Impl"
-    // InternalOCLinEcore.g:7446:1: rule__AnnotationCS__Group_3__3__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:7448:1: rule__AnnotationCS__Group_3__3__Impl : ( ')' ) ;
     public final void rule__AnnotationCS__Group_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7450:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:7451:1: ( ')' )
+            // InternalOCLinEcore.g:7452:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:7453:1: ( ')' )
             {
-            // InternalOCLinEcore.g:7451:1: ( ')' )
-            // InternalOCLinEcore.g:7452:1: ')'
+            // InternalOCLinEcore.g:7453:1: ( ')' )
+            // InternalOCLinEcore.g:7454:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_3_3());
@@ -25326,14 +25326,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3_2__0"
-    // InternalOCLinEcore.g:7473:1: rule__AnnotationCS__Group_3_2__0 : rule__AnnotationCS__Group_3_2__0__Impl rule__AnnotationCS__Group_3_2__1 ;
+    // InternalOCLinEcore.g:7475:1: rule__AnnotationCS__Group_3_2__0 : rule__AnnotationCS__Group_3_2__0__Impl rule__AnnotationCS__Group_3_2__1 ;
     public final void rule__AnnotationCS__Group_3_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7477:1: ( rule__AnnotationCS__Group_3_2__0__Impl rule__AnnotationCS__Group_3_2__1 )
-            // InternalOCLinEcore.g:7478:2: rule__AnnotationCS__Group_3_2__0__Impl rule__AnnotationCS__Group_3_2__1
+            // InternalOCLinEcore.g:7479:1: ( rule__AnnotationCS__Group_3_2__0__Impl rule__AnnotationCS__Group_3_2__1 )
+            // InternalOCLinEcore.g:7480:2: rule__AnnotationCS__Group_3_2__0__Impl rule__AnnotationCS__Group_3_2__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__AnnotationCS__Group_3_2__0__Impl();
@@ -25364,17 +25364,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3_2__0__Impl"
-    // InternalOCLinEcore.g:7485:1: rule__AnnotationCS__Group_3_2__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:7487:1: rule__AnnotationCS__Group_3_2__0__Impl : ( ',' ) ;
     public final void rule__AnnotationCS__Group_3_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7489:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:7490:1: ( ',' )
+            // InternalOCLinEcore.g:7491:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:7492:1: ( ',' )
             {
-            // InternalOCLinEcore.g:7490:1: ( ',' )
-            // InternalOCLinEcore.g:7491:1: ','
+            // InternalOCLinEcore.g:7492:1: ( ',' )
+            // InternalOCLinEcore.g:7493:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getCommaKeyword_3_2_0());
@@ -25405,14 +25405,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3_2__1"
-    // InternalOCLinEcore.g:7504:1: rule__AnnotationCS__Group_3_2__1 : rule__AnnotationCS__Group_3_2__1__Impl ;
+    // InternalOCLinEcore.g:7506:1: rule__AnnotationCS__Group_3_2__1 : rule__AnnotationCS__Group_3_2__1__Impl ;
     public final void rule__AnnotationCS__Group_3_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7508:1: ( rule__AnnotationCS__Group_3_2__1__Impl )
-            // InternalOCLinEcore.g:7509:2: rule__AnnotationCS__Group_3_2__1__Impl
+            // InternalOCLinEcore.g:7510:1: ( rule__AnnotationCS__Group_3_2__1__Impl )
+            // InternalOCLinEcore.g:7511:2: rule__AnnotationCS__Group_3_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__Group_3_2__1__Impl();
@@ -25438,23 +25438,23 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3_2__1__Impl"
-    // InternalOCLinEcore.g:7515:1: rule__AnnotationCS__Group_3_2__1__Impl : ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 ) ) ;
+    // InternalOCLinEcore.g:7517:1: rule__AnnotationCS__Group_3_2__1__Impl : ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 ) ) ;
     public final void rule__AnnotationCS__Group_3_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7519:1: ( ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 ) ) )
-            // InternalOCLinEcore.g:7520:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 ) )
+            // InternalOCLinEcore.g:7521:1: ( ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 ) ) )
+            // InternalOCLinEcore.g:7522:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 ) )
             {
-            // InternalOCLinEcore.g:7520:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 ) )
-            // InternalOCLinEcore.g:7521:1: ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 )
+            // InternalOCLinEcore.g:7522:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 ) )
+            // InternalOCLinEcore.g:7523:1: ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_3_2_1());
             }
-            // InternalOCLinEcore.g:7522:1: ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 )
-            // InternalOCLinEcore.g:7522:2: rule__AnnotationCS__OwnedDetailsAssignment_3_2_1
+            // InternalOCLinEcore.g:7524:1: ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 )
+            // InternalOCLinEcore.g:7524:2: rule__AnnotationCS__OwnedDetailsAssignment_3_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__OwnedDetailsAssignment_3_2_1();
@@ -25489,14 +25489,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_4_0__0"
-    // InternalOCLinEcore.g:7536:1: rule__AnnotationCS__Group_4_0__0 : rule__AnnotationCS__Group_4_0__0__Impl rule__AnnotationCS__Group_4_0__1 ;
+    // InternalOCLinEcore.g:7538:1: rule__AnnotationCS__Group_4_0__0 : rule__AnnotationCS__Group_4_0__0__Impl rule__AnnotationCS__Group_4_0__1 ;
     public final void rule__AnnotationCS__Group_4_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7540:1: ( rule__AnnotationCS__Group_4_0__0__Impl rule__AnnotationCS__Group_4_0__1 )
-            // InternalOCLinEcore.g:7541:2: rule__AnnotationCS__Group_4_0__0__Impl rule__AnnotationCS__Group_4_0__1
+            // InternalOCLinEcore.g:7542:1: ( rule__AnnotationCS__Group_4_0__0__Impl rule__AnnotationCS__Group_4_0__1 )
+            // InternalOCLinEcore.g:7543:2: rule__AnnotationCS__Group_4_0__0__Impl rule__AnnotationCS__Group_4_0__1
             {
             pushFollow(FollowSets000.FOLLOW_21);
             rule__AnnotationCS__Group_4_0__0__Impl();
@@ -25527,17 +25527,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_4_0__0__Impl"
-    // InternalOCLinEcore.g:7548:1: rule__AnnotationCS__Group_4_0__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:7550:1: rule__AnnotationCS__Group_4_0__0__Impl : ( '{' ) ;
     public final void rule__AnnotationCS__Group_4_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7552:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:7553:1: ( '{' )
+            // InternalOCLinEcore.g:7554:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:7555:1: ( '{' )
             {
-            // InternalOCLinEcore.g:7553:1: ( '{' )
-            // InternalOCLinEcore.g:7554:1: '{'
+            // InternalOCLinEcore.g:7555:1: ( '{' )
+            // InternalOCLinEcore.g:7556:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_4_0_0());
@@ -25568,14 +25568,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_4_0__1"
-    // InternalOCLinEcore.g:7567:1: rule__AnnotationCS__Group_4_0__1 : rule__AnnotationCS__Group_4_0__1__Impl rule__AnnotationCS__Group_4_0__2 ;
+    // InternalOCLinEcore.g:7569:1: rule__AnnotationCS__Group_4_0__1 : rule__AnnotationCS__Group_4_0__1__Impl rule__AnnotationCS__Group_4_0__2 ;
     public final void rule__AnnotationCS__Group_4_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7571:1: ( rule__AnnotationCS__Group_4_0__1__Impl rule__AnnotationCS__Group_4_0__2 )
-            // InternalOCLinEcore.g:7572:2: rule__AnnotationCS__Group_4_0__1__Impl rule__AnnotationCS__Group_4_0__2
+            // InternalOCLinEcore.g:7573:1: ( rule__AnnotationCS__Group_4_0__1__Impl rule__AnnotationCS__Group_4_0__2 )
+            // InternalOCLinEcore.g:7574:2: rule__AnnotationCS__Group_4_0__1__Impl rule__AnnotationCS__Group_4_0__2
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__AnnotationCS__Group_4_0__1__Impl();
@@ -25606,26 +25606,26 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_4_0__1__Impl"
-    // InternalOCLinEcore.g:7579:1: rule__AnnotationCS__Group_4_0__1__Impl : ( ( ( rule__AnnotationCS__Alternatives_4_0_1 ) ) ( ( rule__AnnotationCS__Alternatives_4_0_1 )* ) ) ;
+    // InternalOCLinEcore.g:7581:1: rule__AnnotationCS__Group_4_0__1__Impl : ( ( ( rule__AnnotationCS__Alternatives_4_0_1 ) ) ( ( rule__AnnotationCS__Alternatives_4_0_1 )* ) ) ;
     public final void rule__AnnotationCS__Group_4_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7583:1: ( ( ( ( rule__AnnotationCS__Alternatives_4_0_1 ) ) ( ( rule__AnnotationCS__Alternatives_4_0_1 )* ) ) )
-            // InternalOCLinEcore.g:7584:1: ( ( ( rule__AnnotationCS__Alternatives_4_0_1 ) ) ( ( rule__AnnotationCS__Alternatives_4_0_1 )* ) )
+            // InternalOCLinEcore.g:7585:1: ( ( ( ( rule__AnnotationCS__Alternatives_4_0_1 ) ) ( ( rule__AnnotationCS__Alternatives_4_0_1 )* ) ) )
+            // InternalOCLinEcore.g:7586:1: ( ( ( rule__AnnotationCS__Alternatives_4_0_1 ) ) ( ( rule__AnnotationCS__Alternatives_4_0_1 )* ) )
             {
-            // InternalOCLinEcore.g:7584:1: ( ( ( rule__AnnotationCS__Alternatives_4_0_1 ) ) ( ( rule__AnnotationCS__Alternatives_4_0_1 )* ) )
-            // InternalOCLinEcore.g:7585:1: ( ( rule__AnnotationCS__Alternatives_4_0_1 ) ) ( ( rule__AnnotationCS__Alternatives_4_0_1 )* )
+            // InternalOCLinEcore.g:7586:1: ( ( ( rule__AnnotationCS__Alternatives_4_0_1 ) ) ( ( rule__AnnotationCS__Alternatives_4_0_1 )* ) )
+            // InternalOCLinEcore.g:7587:1: ( ( rule__AnnotationCS__Alternatives_4_0_1 ) ) ( ( rule__AnnotationCS__Alternatives_4_0_1 )* )
             {
-            // InternalOCLinEcore.g:7585:1: ( ( rule__AnnotationCS__Alternatives_4_0_1 ) )
-            // InternalOCLinEcore.g:7586:1: ( rule__AnnotationCS__Alternatives_4_0_1 )
+            // InternalOCLinEcore.g:7587:1: ( ( rule__AnnotationCS__Alternatives_4_0_1 ) )
+            // InternalOCLinEcore.g:7588:1: ( rule__AnnotationCS__Alternatives_4_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getAlternatives_4_0_1());
             }
-            // InternalOCLinEcore.g:7587:1: ( rule__AnnotationCS__Alternatives_4_0_1 )
-            // InternalOCLinEcore.g:7587:2: rule__AnnotationCS__Alternatives_4_0_1
+            // InternalOCLinEcore.g:7589:1: ( rule__AnnotationCS__Alternatives_4_0_1 )
+            // InternalOCLinEcore.g:7589:2: rule__AnnotationCS__Alternatives_4_0_1
             {
             pushFollow(FollowSets000.FOLLOW_23);
             rule__AnnotationCS__Alternatives_4_0_1();
@@ -25641,13 +25641,13 @@
 
             }
 
-            // InternalOCLinEcore.g:7590:1: ( ( rule__AnnotationCS__Alternatives_4_0_1 )* )
-            // InternalOCLinEcore.g:7591:1: ( rule__AnnotationCS__Alternatives_4_0_1 )*
+            // InternalOCLinEcore.g:7592:1: ( ( rule__AnnotationCS__Alternatives_4_0_1 )* )
+            // InternalOCLinEcore.g:7593:1: ( rule__AnnotationCS__Alternatives_4_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getAlternatives_4_0_1());
             }
-            // InternalOCLinEcore.g:7592:1: ( rule__AnnotationCS__Alternatives_4_0_1 )*
+            // InternalOCLinEcore.g:7594:1: ( rule__AnnotationCS__Alternatives_4_0_1 )*
             loop93:
             do {
                 int alt93=2;
@@ -25660,7 +25660,7 @@
 
                 switch (alt93) {
             	case 1 :
-            	    // InternalOCLinEcore.g:7592:2: rule__AnnotationCS__Alternatives_4_0_1
+            	    // InternalOCLinEcore.g:7594:2: rule__AnnotationCS__Alternatives_4_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_23);
             	    rule__AnnotationCS__Alternatives_4_0_1();
@@ -25704,14 +25704,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_4_0__2"
-    // InternalOCLinEcore.g:7603:1: rule__AnnotationCS__Group_4_0__2 : rule__AnnotationCS__Group_4_0__2__Impl ;
+    // InternalOCLinEcore.g:7605:1: rule__AnnotationCS__Group_4_0__2 : rule__AnnotationCS__Group_4_0__2__Impl ;
     public final void rule__AnnotationCS__Group_4_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7607:1: ( rule__AnnotationCS__Group_4_0__2__Impl )
-            // InternalOCLinEcore.g:7608:2: rule__AnnotationCS__Group_4_0__2__Impl
+            // InternalOCLinEcore.g:7609:1: ( rule__AnnotationCS__Group_4_0__2__Impl )
+            // InternalOCLinEcore.g:7610:2: rule__AnnotationCS__Group_4_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__Group_4_0__2__Impl();
@@ -25737,17 +25737,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_4_0__2__Impl"
-    // InternalOCLinEcore.g:7614:1: rule__AnnotationCS__Group_4_0__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:7616:1: rule__AnnotationCS__Group_4_0__2__Impl : ( '}' ) ;
     public final void rule__AnnotationCS__Group_4_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7618:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:7619:1: ( '}' )
+            // InternalOCLinEcore.g:7620:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:7621:1: ( '}' )
             {
-            // InternalOCLinEcore.g:7619:1: ( '}' )
-            // InternalOCLinEcore.g:7620:1: '}'
+            // InternalOCLinEcore.g:7621:1: ( '}' )
+            // InternalOCLinEcore.g:7622:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_4_0_2());
@@ -25778,14 +25778,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__0"
-    // InternalOCLinEcore.g:7639:1: rule__AttributeCS__Group__0 : rule__AttributeCS__Group__0__Impl rule__AttributeCS__Group__1 ;
+    // InternalOCLinEcore.g:7641:1: rule__AttributeCS__Group__0 : rule__AttributeCS__Group__0__Impl rule__AttributeCS__Group__1 ;
     public final void rule__AttributeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7643:1: ( rule__AttributeCS__Group__0__Impl rule__AttributeCS__Group__1 )
-            // InternalOCLinEcore.g:7644:2: rule__AttributeCS__Group__0__Impl rule__AttributeCS__Group__1
+            // InternalOCLinEcore.g:7645:1: ( rule__AttributeCS__Group__0__Impl rule__AttributeCS__Group__1 )
+            // InternalOCLinEcore.g:7646:2: rule__AttributeCS__Group__0__Impl rule__AttributeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_24);
             rule__AttributeCS__Group__0__Impl();
@@ -25816,22 +25816,22 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__0__Impl"
-    // InternalOCLinEcore.g:7651:1: rule__AttributeCS__Group__0__Impl : ( ( rule__AttributeCS__Alternatives_0 )? ) ;
+    // InternalOCLinEcore.g:7653:1: rule__AttributeCS__Group__0__Impl : ( ( rule__AttributeCS__Alternatives_0 )? ) ;
     public final void rule__AttributeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7655:1: ( ( ( rule__AttributeCS__Alternatives_0 )? ) )
-            // InternalOCLinEcore.g:7656:1: ( ( rule__AttributeCS__Alternatives_0 )? )
+            // InternalOCLinEcore.g:7657:1: ( ( ( rule__AttributeCS__Alternatives_0 )? ) )
+            // InternalOCLinEcore.g:7658:1: ( ( rule__AttributeCS__Alternatives_0 )? )
             {
-            // InternalOCLinEcore.g:7656:1: ( ( rule__AttributeCS__Alternatives_0 )? )
-            // InternalOCLinEcore.g:7657:1: ( rule__AttributeCS__Alternatives_0 )?
+            // InternalOCLinEcore.g:7658:1: ( ( rule__AttributeCS__Alternatives_0 )? )
+            // InternalOCLinEcore.g:7659:1: ( rule__AttributeCS__Alternatives_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getAlternatives_0());
             }
-            // InternalOCLinEcore.g:7658:1: ( rule__AttributeCS__Alternatives_0 )?
+            // InternalOCLinEcore.g:7660:1: ( rule__AttributeCS__Alternatives_0 )?
             int alt94=2;
             int LA94_0 = input.LA(1);
 
@@ -25840,7 +25840,7 @@
             }
             switch (alt94) {
                 case 1 :
-                    // InternalOCLinEcore.g:7658:2: rule__AttributeCS__Alternatives_0
+                    // InternalOCLinEcore.g:7660:2: rule__AttributeCS__Alternatives_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__Alternatives_0();
@@ -25878,14 +25878,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__1"
-    // InternalOCLinEcore.g:7668:1: rule__AttributeCS__Group__1 : rule__AttributeCS__Group__1__Impl rule__AttributeCS__Group__2 ;
+    // InternalOCLinEcore.g:7670:1: rule__AttributeCS__Group__1 : rule__AttributeCS__Group__1__Impl rule__AttributeCS__Group__2 ;
     public final void rule__AttributeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7672:1: ( rule__AttributeCS__Group__1__Impl rule__AttributeCS__Group__2 )
-            // InternalOCLinEcore.g:7673:2: rule__AttributeCS__Group__1__Impl rule__AttributeCS__Group__2
+            // InternalOCLinEcore.g:7674:1: ( rule__AttributeCS__Group__1__Impl rule__AttributeCS__Group__2 )
+            // InternalOCLinEcore.g:7675:2: rule__AttributeCS__Group__1__Impl rule__AttributeCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__AttributeCS__Group__1__Impl();
@@ -25916,17 +25916,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__1__Impl"
-    // InternalOCLinEcore.g:7680:1: rule__AttributeCS__Group__1__Impl : ( 'attribute' ) ;
+    // InternalOCLinEcore.g:7682:1: rule__AttributeCS__Group__1__Impl : ( 'attribute' ) ;
     public final void rule__AttributeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7684:1: ( ( 'attribute' ) )
-            // InternalOCLinEcore.g:7685:1: ( 'attribute' )
+            // InternalOCLinEcore.g:7686:1: ( ( 'attribute' ) )
+            // InternalOCLinEcore.g:7687:1: ( 'attribute' )
             {
-            // InternalOCLinEcore.g:7685:1: ( 'attribute' )
-            // InternalOCLinEcore.g:7686:1: 'attribute'
+            // InternalOCLinEcore.g:7687:1: ( 'attribute' )
+            // InternalOCLinEcore.g:7688:1: 'attribute'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getAttributeKeyword_1());
@@ -25957,14 +25957,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__2"
-    // InternalOCLinEcore.g:7699:1: rule__AttributeCS__Group__2 : rule__AttributeCS__Group__2__Impl rule__AttributeCS__Group__3 ;
+    // InternalOCLinEcore.g:7701:1: rule__AttributeCS__Group__2 : rule__AttributeCS__Group__2__Impl rule__AttributeCS__Group__3 ;
     public final void rule__AttributeCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7703:1: ( rule__AttributeCS__Group__2__Impl rule__AttributeCS__Group__3 )
-            // InternalOCLinEcore.g:7704:2: rule__AttributeCS__Group__2__Impl rule__AttributeCS__Group__3
+            // InternalOCLinEcore.g:7705:1: ( rule__AttributeCS__Group__2__Impl rule__AttributeCS__Group__3 )
+            // InternalOCLinEcore.g:7706:2: rule__AttributeCS__Group__2__Impl rule__AttributeCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__AttributeCS__Group__2__Impl();
@@ -25995,23 +25995,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__2__Impl"
-    // InternalOCLinEcore.g:7711:1: rule__AttributeCS__Group__2__Impl : ( ( rule__AttributeCS__NameAssignment_2 ) ) ;
+    // InternalOCLinEcore.g:7713:1: rule__AttributeCS__Group__2__Impl : ( ( rule__AttributeCS__NameAssignment_2 ) ) ;
     public final void rule__AttributeCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7715:1: ( ( ( rule__AttributeCS__NameAssignment_2 ) ) )
-            // InternalOCLinEcore.g:7716:1: ( ( rule__AttributeCS__NameAssignment_2 ) )
+            // InternalOCLinEcore.g:7717:1: ( ( ( rule__AttributeCS__NameAssignment_2 ) ) )
+            // InternalOCLinEcore.g:7718:1: ( ( rule__AttributeCS__NameAssignment_2 ) )
             {
-            // InternalOCLinEcore.g:7716:1: ( ( rule__AttributeCS__NameAssignment_2 ) )
-            // InternalOCLinEcore.g:7717:1: ( rule__AttributeCS__NameAssignment_2 )
+            // InternalOCLinEcore.g:7718:1: ( ( rule__AttributeCS__NameAssignment_2 ) )
+            // InternalOCLinEcore.g:7719:1: ( rule__AttributeCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getNameAssignment_2());
             }
-            // InternalOCLinEcore.g:7718:1: ( rule__AttributeCS__NameAssignment_2 )
-            // InternalOCLinEcore.g:7718:2: rule__AttributeCS__NameAssignment_2
+            // InternalOCLinEcore.g:7720:1: ( rule__AttributeCS__NameAssignment_2 )
+            // InternalOCLinEcore.g:7720:2: rule__AttributeCS__NameAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__NameAssignment_2();
@@ -26046,14 +26046,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__3"
-    // InternalOCLinEcore.g:7728:1: rule__AttributeCS__Group__3 : rule__AttributeCS__Group__3__Impl rule__AttributeCS__Group__4 ;
+    // InternalOCLinEcore.g:7730:1: rule__AttributeCS__Group__3 : rule__AttributeCS__Group__3__Impl rule__AttributeCS__Group__4 ;
     public final void rule__AttributeCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7732:1: ( rule__AttributeCS__Group__3__Impl rule__AttributeCS__Group__4 )
-            // InternalOCLinEcore.g:7733:2: rule__AttributeCS__Group__3__Impl rule__AttributeCS__Group__4
+            // InternalOCLinEcore.g:7734:1: ( rule__AttributeCS__Group__3__Impl rule__AttributeCS__Group__4 )
+            // InternalOCLinEcore.g:7735:2: rule__AttributeCS__Group__3__Impl rule__AttributeCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__AttributeCS__Group__3__Impl();
@@ -26084,22 +26084,22 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__3__Impl"
-    // InternalOCLinEcore.g:7740:1: rule__AttributeCS__Group__3__Impl : ( ( rule__AttributeCS__Group_3__0 )? ) ;
+    // InternalOCLinEcore.g:7742:1: rule__AttributeCS__Group__3__Impl : ( ( rule__AttributeCS__Group_3__0 )? ) ;
     public final void rule__AttributeCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7744:1: ( ( ( rule__AttributeCS__Group_3__0 )? ) )
-            // InternalOCLinEcore.g:7745:1: ( ( rule__AttributeCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:7746:1: ( ( ( rule__AttributeCS__Group_3__0 )? ) )
+            // InternalOCLinEcore.g:7747:1: ( ( rule__AttributeCS__Group_3__0 )? )
             {
-            // InternalOCLinEcore.g:7745:1: ( ( rule__AttributeCS__Group_3__0 )? )
-            // InternalOCLinEcore.g:7746:1: ( rule__AttributeCS__Group_3__0 )?
+            // InternalOCLinEcore.g:7747:1: ( ( rule__AttributeCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:7748:1: ( rule__AttributeCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getGroup_3());
             }
-            // InternalOCLinEcore.g:7747:1: ( rule__AttributeCS__Group_3__0 )?
+            // InternalOCLinEcore.g:7749:1: ( rule__AttributeCS__Group_3__0 )?
             int alt95=2;
             int LA95_0 = input.LA(1);
 
@@ -26108,7 +26108,7 @@
             }
             switch (alt95) {
                 case 1 :
-                    // InternalOCLinEcore.g:7747:2: rule__AttributeCS__Group_3__0
+                    // InternalOCLinEcore.g:7749:2: rule__AttributeCS__Group_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__Group_3__0();
@@ -26146,14 +26146,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__4"
-    // InternalOCLinEcore.g:7757:1: rule__AttributeCS__Group__4 : rule__AttributeCS__Group__4__Impl rule__AttributeCS__Group__5 ;
+    // InternalOCLinEcore.g:7759:1: rule__AttributeCS__Group__4 : rule__AttributeCS__Group__4__Impl rule__AttributeCS__Group__5 ;
     public final void rule__AttributeCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7761:1: ( rule__AttributeCS__Group__4__Impl rule__AttributeCS__Group__5 )
-            // InternalOCLinEcore.g:7762:2: rule__AttributeCS__Group__4__Impl rule__AttributeCS__Group__5
+            // InternalOCLinEcore.g:7763:1: ( rule__AttributeCS__Group__4__Impl rule__AttributeCS__Group__5 )
+            // InternalOCLinEcore.g:7764:2: rule__AttributeCS__Group__4__Impl rule__AttributeCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__AttributeCS__Group__4__Impl();
@@ -26184,22 +26184,22 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__4__Impl"
-    // InternalOCLinEcore.g:7769:1: rule__AttributeCS__Group__4__Impl : ( ( rule__AttributeCS__Group_4__0 )? ) ;
+    // InternalOCLinEcore.g:7771:1: rule__AttributeCS__Group__4__Impl : ( ( rule__AttributeCS__Group_4__0 )? ) ;
     public final void rule__AttributeCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7773:1: ( ( ( rule__AttributeCS__Group_4__0 )? ) )
-            // InternalOCLinEcore.g:7774:1: ( ( rule__AttributeCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:7775:1: ( ( ( rule__AttributeCS__Group_4__0 )? ) )
+            // InternalOCLinEcore.g:7776:1: ( ( rule__AttributeCS__Group_4__0 )? )
             {
-            // InternalOCLinEcore.g:7774:1: ( ( rule__AttributeCS__Group_4__0 )? )
-            // InternalOCLinEcore.g:7775:1: ( rule__AttributeCS__Group_4__0 )?
+            // InternalOCLinEcore.g:7776:1: ( ( rule__AttributeCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:7777:1: ( rule__AttributeCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getGroup_4());
             }
-            // InternalOCLinEcore.g:7776:1: ( rule__AttributeCS__Group_4__0 )?
+            // InternalOCLinEcore.g:7778:1: ( rule__AttributeCS__Group_4__0 )?
             int alt96=2;
             int LA96_0 = input.LA(1);
 
@@ -26208,7 +26208,7 @@
             }
             switch (alt96) {
                 case 1 :
-                    // InternalOCLinEcore.g:7776:2: rule__AttributeCS__Group_4__0
+                    // InternalOCLinEcore.g:7778:2: rule__AttributeCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__Group_4__0();
@@ -26246,14 +26246,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__5"
-    // InternalOCLinEcore.g:7786:1: rule__AttributeCS__Group__5 : rule__AttributeCS__Group__5__Impl rule__AttributeCS__Group__6 ;
+    // InternalOCLinEcore.g:7788:1: rule__AttributeCS__Group__5 : rule__AttributeCS__Group__5__Impl rule__AttributeCS__Group__6 ;
     public final void rule__AttributeCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7790:1: ( rule__AttributeCS__Group__5__Impl rule__AttributeCS__Group__6 )
-            // InternalOCLinEcore.g:7791:2: rule__AttributeCS__Group__5__Impl rule__AttributeCS__Group__6
+            // InternalOCLinEcore.g:7792:1: ( rule__AttributeCS__Group__5__Impl rule__AttributeCS__Group__6 )
+            // InternalOCLinEcore.g:7793:2: rule__AttributeCS__Group__5__Impl rule__AttributeCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__AttributeCS__Group__5__Impl();
@@ -26284,22 +26284,22 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__5__Impl"
-    // InternalOCLinEcore.g:7798:1: rule__AttributeCS__Group__5__Impl : ( ( rule__AttributeCS__Group_5__0 )? ) ;
+    // InternalOCLinEcore.g:7800:1: rule__AttributeCS__Group__5__Impl : ( ( rule__AttributeCS__Group_5__0 )? ) ;
     public final void rule__AttributeCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7802:1: ( ( ( rule__AttributeCS__Group_5__0 )? ) )
-            // InternalOCLinEcore.g:7803:1: ( ( rule__AttributeCS__Group_5__0 )? )
+            // InternalOCLinEcore.g:7804:1: ( ( ( rule__AttributeCS__Group_5__0 )? ) )
+            // InternalOCLinEcore.g:7805:1: ( ( rule__AttributeCS__Group_5__0 )? )
             {
-            // InternalOCLinEcore.g:7803:1: ( ( rule__AttributeCS__Group_5__0 )? )
-            // InternalOCLinEcore.g:7804:1: ( rule__AttributeCS__Group_5__0 )?
+            // InternalOCLinEcore.g:7805:1: ( ( rule__AttributeCS__Group_5__0 )? )
+            // InternalOCLinEcore.g:7806:1: ( rule__AttributeCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getGroup_5());
             }
-            // InternalOCLinEcore.g:7805:1: ( rule__AttributeCS__Group_5__0 )?
+            // InternalOCLinEcore.g:7807:1: ( rule__AttributeCS__Group_5__0 )?
             int alt97=2;
             int LA97_0 = input.LA(1);
 
@@ -26312,7 +26312,7 @@
             }
             switch (alt97) {
                 case 1 :
-                    // InternalOCLinEcore.g:7805:2: rule__AttributeCS__Group_5__0
+                    // InternalOCLinEcore.g:7807:2: rule__AttributeCS__Group_5__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__Group_5__0();
@@ -26350,14 +26350,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__6"
-    // InternalOCLinEcore.g:7815:1: rule__AttributeCS__Group__6 : rule__AttributeCS__Group__6__Impl ;
+    // InternalOCLinEcore.g:7817:1: rule__AttributeCS__Group__6 : rule__AttributeCS__Group__6__Impl ;
     public final void rule__AttributeCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7819:1: ( rule__AttributeCS__Group__6__Impl )
-            // InternalOCLinEcore.g:7820:2: rule__AttributeCS__Group__6__Impl
+            // InternalOCLinEcore.g:7821:1: ( rule__AttributeCS__Group__6__Impl )
+            // InternalOCLinEcore.g:7822:2: rule__AttributeCS__Group__6__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__Group__6__Impl();
@@ -26383,23 +26383,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group__6__Impl"
-    // InternalOCLinEcore.g:7826:1: rule__AttributeCS__Group__6__Impl : ( ( rule__AttributeCS__Alternatives_6 ) ) ;
+    // InternalOCLinEcore.g:7828:1: rule__AttributeCS__Group__6__Impl : ( ( rule__AttributeCS__Alternatives_6 ) ) ;
     public final void rule__AttributeCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7830:1: ( ( ( rule__AttributeCS__Alternatives_6 ) ) )
-            // InternalOCLinEcore.g:7831:1: ( ( rule__AttributeCS__Alternatives_6 ) )
+            // InternalOCLinEcore.g:7832:1: ( ( ( rule__AttributeCS__Alternatives_6 ) ) )
+            // InternalOCLinEcore.g:7833:1: ( ( rule__AttributeCS__Alternatives_6 ) )
             {
-            // InternalOCLinEcore.g:7831:1: ( ( rule__AttributeCS__Alternatives_6 ) )
-            // InternalOCLinEcore.g:7832:1: ( rule__AttributeCS__Alternatives_6 )
+            // InternalOCLinEcore.g:7833:1: ( ( rule__AttributeCS__Alternatives_6 ) )
+            // InternalOCLinEcore.g:7834:1: ( rule__AttributeCS__Alternatives_6 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getAlternatives_6());
             }
-            // InternalOCLinEcore.g:7833:1: ( rule__AttributeCS__Alternatives_6 )
-            // InternalOCLinEcore.g:7833:2: rule__AttributeCS__Alternatives_6
+            // InternalOCLinEcore.g:7835:1: ( rule__AttributeCS__Alternatives_6 )
+            // InternalOCLinEcore.g:7835:2: rule__AttributeCS__Alternatives_6
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__Alternatives_6();
@@ -26434,14 +26434,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_0_0__0"
-    // InternalOCLinEcore.g:7857:1: rule__AttributeCS__Group_0_0__0 : rule__AttributeCS__Group_0_0__0__Impl rule__AttributeCS__Group_0_0__1 ;
+    // InternalOCLinEcore.g:7859:1: rule__AttributeCS__Group_0_0__0 : rule__AttributeCS__Group_0_0__0__Impl rule__AttributeCS__Group_0_0__1 ;
     public final void rule__AttributeCS__Group_0_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7861:1: ( rule__AttributeCS__Group_0_0__0__Impl rule__AttributeCS__Group_0_0__1 )
-            // InternalOCLinEcore.g:7862:2: rule__AttributeCS__Group_0_0__0__Impl rule__AttributeCS__Group_0_0__1
+            // InternalOCLinEcore.g:7863:1: ( rule__AttributeCS__Group_0_0__0__Impl rule__AttributeCS__Group_0_0__1 )
+            // InternalOCLinEcore.g:7864:2: rule__AttributeCS__Group_0_0__0__Impl rule__AttributeCS__Group_0_0__1
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__AttributeCS__Group_0_0__0__Impl();
@@ -26472,23 +26472,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_0_0__0__Impl"
-    // InternalOCLinEcore.g:7869:1: rule__AttributeCS__Group_0_0__0__Impl : ( ( rule__AttributeCS__QualifiersAssignment_0_0_0 ) ) ;
+    // InternalOCLinEcore.g:7871:1: rule__AttributeCS__Group_0_0__0__Impl : ( ( rule__AttributeCS__QualifiersAssignment_0_0_0 ) ) ;
     public final void rule__AttributeCS__Group_0_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7873:1: ( ( ( rule__AttributeCS__QualifiersAssignment_0_0_0 ) ) )
-            // InternalOCLinEcore.g:7874:1: ( ( rule__AttributeCS__QualifiersAssignment_0_0_0 ) )
+            // InternalOCLinEcore.g:7875:1: ( ( ( rule__AttributeCS__QualifiersAssignment_0_0_0 ) ) )
+            // InternalOCLinEcore.g:7876:1: ( ( rule__AttributeCS__QualifiersAssignment_0_0_0 ) )
             {
-            // InternalOCLinEcore.g:7874:1: ( ( rule__AttributeCS__QualifiersAssignment_0_0_0 ) )
-            // InternalOCLinEcore.g:7875:1: ( rule__AttributeCS__QualifiersAssignment_0_0_0 )
+            // InternalOCLinEcore.g:7876:1: ( ( rule__AttributeCS__QualifiersAssignment_0_0_0 ) )
+            // InternalOCLinEcore.g:7877:1: ( rule__AttributeCS__QualifiersAssignment_0_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_0_0());
             }
-            // InternalOCLinEcore.g:7876:1: ( rule__AttributeCS__QualifiersAssignment_0_0_0 )
-            // InternalOCLinEcore.g:7876:2: rule__AttributeCS__QualifiersAssignment_0_0_0
+            // InternalOCLinEcore.g:7878:1: ( rule__AttributeCS__QualifiersAssignment_0_0_0 )
+            // InternalOCLinEcore.g:7878:2: rule__AttributeCS__QualifiersAssignment_0_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__QualifiersAssignment_0_0_0();
@@ -26523,14 +26523,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_0_0__1"
-    // InternalOCLinEcore.g:7886:1: rule__AttributeCS__Group_0_0__1 : rule__AttributeCS__Group_0_0__1__Impl ;
+    // InternalOCLinEcore.g:7888:1: rule__AttributeCS__Group_0_0__1 : rule__AttributeCS__Group_0_0__1__Impl ;
     public final void rule__AttributeCS__Group_0_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7890:1: ( rule__AttributeCS__Group_0_0__1__Impl )
-            // InternalOCLinEcore.g:7891:2: rule__AttributeCS__Group_0_0__1__Impl
+            // InternalOCLinEcore.g:7892:1: ( rule__AttributeCS__Group_0_0__1__Impl )
+            // InternalOCLinEcore.g:7893:2: rule__AttributeCS__Group_0_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__Group_0_0__1__Impl();
@@ -26556,22 +26556,22 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_0_0__1__Impl"
-    // InternalOCLinEcore.g:7897:1: rule__AttributeCS__Group_0_0__1__Impl : ( ( rule__AttributeCS__QualifiersAssignment_0_0_1 )? ) ;
+    // InternalOCLinEcore.g:7899:1: rule__AttributeCS__Group_0_0__1__Impl : ( ( rule__AttributeCS__QualifiersAssignment_0_0_1 )? ) ;
     public final void rule__AttributeCS__Group_0_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7901:1: ( ( ( rule__AttributeCS__QualifiersAssignment_0_0_1 )? ) )
-            // InternalOCLinEcore.g:7902:1: ( ( rule__AttributeCS__QualifiersAssignment_0_0_1 )? )
+            // InternalOCLinEcore.g:7903:1: ( ( ( rule__AttributeCS__QualifiersAssignment_0_0_1 )? ) )
+            // InternalOCLinEcore.g:7904:1: ( ( rule__AttributeCS__QualifiersAssignment_0_0_1 )? )
             {
-            // InternalOCLinEcore.g:7902:1: ( ( rule__AttributeCS__QualifiersAssignment_0_0_1 )? )
-            // InternalOCLinEcore.g:7903:1: ( rule__AttributeCS__QualifiersAssignment_0_0_1 )?
+            // InternalOCLinEcore.g:7904:1: ( ( rule__AttributeCS__QualifiersAssignment_0_0_1 )? )
+            // InternalOCLinEcore.g:7905:1: ( rule__AttributeCS__QualifiersAssignment_0_0_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_0_1());
             }
-            // InternalOCLinEcore.g:7904:1: ( rule__AttributeCS__QualifiersAssignment_0_0_1 )?
+            // InternalOCLinEcore.g:7906:1: ( rule__AttributeCS__QualifiersAssignment_0_0_1 )?
             int alt98=2;
             int LA98_0 = input.LA(1);
 
@@ -26580,7 +26580,7 @@
             }
             switch (alt98) {
                 case 1 :
-                    // InternalOCLinEcore.g:7904:2: rule__AttributeCS__QualifiersAssignment_0_0_1
+                    // InternalOCLinEcore.g:7906:2: rule__AttributeCS__QualifiersAssignment_0_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_0_0_1();
@@ -26618,14 +26618,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_0_1__0"
-    // InternalOCLinEcore.g:7918:1: rule__AttributeCS__Group_0_1__0 : rule__AttributeCS__Group_0_1__0__Impl rule__AttributeCS__Group_0_1__1 ;
+    // InternalOCLinEcore.g:7920:1: rule__AttributeCS__Group_0_1__0 : rule__AttributeCS__Group_0_1__0__Impl rule__AttributeCS__Group_0_1__1 ;
     public final void rule__AttributeCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7922:1: ( rule__AttributeCS__Group_0_1__0__Impl rule__AttributeCS__Group_0_1__1 )
-            // InternalOCLinEcore.g:7923:2: rule__AttributeCS__Group_0_1__0__Impl rule__AttributeCS__Group_0_1__1
+            // InternalOCLinEcore.g:7924:1: ( rule__AttributeCS__Group_0_1__0__Impl rule__AttributeCS__Group_0_1__1 )
+            // InternalOCLinEcore.g:7925:2: rule__AttributeCS__Group_0_1__0__Impl rule__AttributeCS__Group_0_1__1
             {
             pushFollow(FollowSets000.FOLLOW_27);
             rule__AttributeCS__Group_0_1__0__Impl();
@@ -26656,23 +26656,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_0_1__0__Impl"
-    // InternalOCLinEcore.g:7930:1: rule__AttributeCS__Group_0_1__0__Impl : ( ( rule__AttributeCS__QualifiersAssignment_0_1_0 ) ) ;
+    // InternalOCLinEcore.g:7932:1: rule__AttributeCS__Group_0_1__0__Impl : ( ( rule__AttributeCS__QualifiersAssignment_0_1_0 ) ) ;
     public final void rule__AttributeCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7934:1: ( ( ( rule__AttributeCS__QualifiersAssignment_0_1_0 ) ) )
-            // InternalOCLinEcore.g:7935:1: ( ( rule__AttributeCS__QualifiersAssignment_0_1_0 ) )
+            // InternalOCLinEcore.g:7936:1: ( ( ( rule__AttributeCS__QualifiersAssignment_0_1_0 ) ) )
+            // InternalOCLinEcore.g:7937:1: ( ( rule__AttributeCS__QualifiersAssignment_0_1_0 ) )
             {
-            // InternalOCLinEcore.g:7935:1: ( ( rule__AttributeCS__QualifiersAssignment_0_1_0 ) )
-            // InternalOCLinEcore.g:7936:1: ( rule__AttributeCS__QualifiersAssignment_0_1_0 )
+            // InternalOCLinEcore.g:7937:1: ( ( rule__AttributeCS__QualifiersAssignment_0_1_0 ) )
+            // InternalOCLinEcore.g:7938:1: ( rule__AttributeCS__QualifiersAssignment_0_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_1_0());
             }
-            // InternalOCLinEcore.g:7937:1: ( rule__AttributeCS__QualifiersAssignment_0_1_0 )
-            // InternalOCLinEcore.g:7937:2: rule__AttributeCS__QualifiersAssignment_0_1_0
+            // InternalOCLinEcore.g:7939:1: ( rule__AttributeCS__QualifiersAssignment_0_1_0 )
+            // InternalOCLinEcore.g:7939:2: rule__AttributeCS__QualifiersAssignment_0_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__QualifiersAssignment_0_1_0();
@@ -26707,14 +26707,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_0_1__1"
-    // InternalOCLinEcore.g:7947:1: rule__AttributeCS__Group_0_1__1 : rule__AttributeCS__Group_0_1__1__Impl ;
+    // InternalOCLinEcore.g:7949:1: rule__AttributeCS__Group_0_1__1 : rule__AttributeCS__Group_0_1__1__Impl ;
     public final void rule__AttributeCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7951:1: ( rule__AttributeCS__Group_0_1__1__Impl )
-            // InternalOCLinEcore.g:7952:2: rule__AttributeCS__Group_0_1__1__Impl
+            // InternalOCLinEcore.g:7953:1: ( rule__AttributeCS__Group_0_1__1__Impl )
+            // InternalOCLinEcore.g:7954:2: rule__AttributeCS__Group_0_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__Group_0_1__1__Impl();
@@ -26740,22 +26740,22 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_0_1__1__Impl"
-    // InternalOCLinEcore.g:7958:1: rule__AttributeCS__Group_0_1__1__Impl : ( ( rule__AttributeCS__QualifiersAssignment_0_1_1 )? ) ;
+    // InternalOCLinEcore.g:7960:1: rule__AttributeCS__Group_0_1__1__Impl : ( ( rule__AttributeCS__QualifiersAssignment_0_1_1 )? ) ;
     public final void rule__AttributeCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7962:1: ( ( ( rule__AttributeCS__QualifiersAssignment_0_1_1 )? ) )
-            // InternalOCLinEcore.g:7963:1: ( ( rule__AttributeCS__QualifiersAssignment_0_1_1 )? )
+            // InternalOCLinEcore.g:7964:1: ( ( ( rule__AttributeCS__QualifiersAssignment_0_1_1 )? ) )
+            // InternalOCLinEcore.g:7965:1: ( ( rule__AttributeCS__QualifiersAssignment_0_1_1 )? )
             {
-            // InternalOCLinEcore.g:7963:1: ( ( rule__AttributeCS__QualifiersAssignment_0_1_1 )? )
-            // InternalOCLinEcore.g:7964:1: ( rule__AttributeCS__QualifiersAssignment_0_1_1 )?
+            // InternalOCLinEcore.g:7965:1: ( ( rule__AttributeCS__QualifiersAssignment_0_1_1 )? )
+            // InternalOCLinEcore.g:7966:1: ( rule__AttributeCS__QualifiersAssignment_0_1_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_1_1());
             }
-            // InternalOCLinEcore.g:7965:1: ( rule__AttributeCS__QualifiersAssignment_0_1_1 )?
+            // InternalOCLinEcore.g:7967:1: ( rule__AttributeCS__QualifiersAssignment_0_1_1 )?
             int alt99=2;
             int LA99_0 = input.LA(1);
 
@@ -26764,7 +26764,7 @@
             }
             switch (alt99) {
                 case 1 :
-                    // InternalOCLinEcore.g:7965:2: rule__AttributeCS__QualifiersAssignment_0_1_1
+                    // InternalOCLinEcore.g:7967:2: rule__AttributeCS__QualifiersAssignment_0_1_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__QualifiersAssignment_0_1_1();
@@ -26802,14 +26802,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_3__0"
-    // InternalOCLinEcore.g:7979:1: rule__AttributeCS__Group_3__0 : rule__AttributeCS__Group_3__0__Impl rule__AttributeCS__Group_3__1 ;
+    // InternalOCLinEcore.g:7981:1: rule__AttributeCS__Group_3__0 : rule__AttributeCS__Group_3__0__Impl rule__AttributeCS__Group_3__1 ;
     public final void rule__AttributeCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7983:1: ( rule__AttributeCS__Group_3__0__Impl rule__AttributeCS__Group_3__1 )
-            // InternalOCLinEcore.g:7984:2: rule__AttributeCS__Group_3__0__Impl rule__AttributeCS__Group_3__1
+            // InternalOCLinEcore.g:7985:1: ( rule__AttributeCS__Group_3__0__Impl rule__AttributeCS__Group_3__1 )
+            // InternalOCLinEcore.g:7986:2: rule__AttributeCS__Group_3__0__Impl rule__AttributeCS__Group_3__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__AttributeCS__Group_3__0__Impl();
@@ -26840,17 +26840,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_3__0__Impl"
-    // InternalOCLinEcore.g:7991:1: rule__AttributeCS__Group_3__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:7993:1: rule__AttributeCS__Group_3__0__Impl : ( ':' ) ;
     public final void rule__AttributeCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:7995:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:7996:1: ( ':' )
+            // InternalOCLinEcore.g:7997:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:7998:1: ( ':' )
             {
-            // InternalOCLinEcore.g:7996:1: ( ':' )
-            // InternalOCLinEcore.g:7997:1: ':'
+            // InternalOCLinEcore.g:7998:1: ( ':' )
+            // InternalOCLinEcore.g:7999:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getColonKeyword_3_0());
@@ -26881,14 +26881,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_3__1"
-    // InternalOCLinEcore.g:8010:1: rule__AttributeCS__Group_3__1 : rule__AttributeCS__Group_3__1__Impl ;
+    // InternalOCLinEcore.g:8012:1: rule__AttributeCS__Group_3__1 : rule__AttributeCS__Group_3__1__Impl ;
     public final void rule__AttributeCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8014:1: ( rule__AttributeCS__Group_3__1__Impl )
-            // InternalOCLinEcore.g:8015:2: rule__AttributeCS__Group_3__1__Impl
+            // InternalOCLinEcore.g:8016:1: ( rule__AttributeCS__Group_3__1__Impl )
+            // InternalOCLinEcore.g:8017:2: rule__AttributeCS__Group_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__Group_3__1__Impl();
@@ -26914,23 +26914,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_3__1__Impl"
-    // InternalOCLinEcore.g:8021:1: rule__AttributeCS__Group_3__1__Impl : ( ( rule__AttributeCS__OwnedTypeAssignment_3_1 ) ) ;
+    // InternalOCLinEcore.g:8023:1: rule__AttributeCS__Group_3__1__Impl : ( ( rule__AttributeCS__OwnedTypeAssignment_3_1 ) ) ;
     public final void rule__AttributeCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8025:1: ( ( ( rule__AttributeCS__OwnedTypeAssignment_3_1 ) ) )
-            // InternalOCLinEcore.g:8026:1: ( ( rule__AttributeCS__OwnedTypeAssignment_3_1 ) )
+            // InternalOCLinEcore.g:8027:1: ( ( ( rule__AttributeCS__OwnedTypeAssignment_3_1 ) ) )
+            // InternalOCLinEcore.g:8028:1: ( ( rule__AttributeCS__OwnedTypeAssignment_3_1 ) )
             {
-            // InternalOCLinEcore.g:8026:1: ( ( rule__AttributeCS__OwnedTypeAssignment_3_1 ) )
-            // InternalOCLinEcore.g:8027:1: ( rule__AttributeCS__OwnedTypeAssignment_3_1 )
+            // InternalOCLinEcore.g:8028:1: ( ( rule__AttributeCS__OwnedTypeAssignment_3_1 ) )
+            // InternalOCLinEcore.g:8029:1: ( rule__AttributeCS__OwnedTypeAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getOwnedTypeAssignment_3_1());
             }
-            // InternalOCLinEcore.g:8028:1: ( rule__AttributeCS__OwnedTypeAssignment_3_1 )
-            // InternalOCLinEcore.g:8028:2: rule__AttributeCS__OwnedTypeAssignment_3_1
+            // InternalOCLinEcore.g:8030:1: ( rule__AttributeCS__OwnedTypeAssignment_3_1 )
+            // InternalOCLinEcore.g:8030:2: rule__AttributeCS__OwnedTypeAssignment_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__OwnedTypeAssignment_3_1();
@@ -26965,14 +26965,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_4__0"
-    // InternalOCLinEcore.g:8042:1: rule__AttributeCS__Group_4__0 : rule__AttributeCS__Group_4__0__Impl rule__AttributeCS__Group_4__1 ;
+    // InternalOCLinEcore.g:8044:1: rule__AttributeCS__Group_4__0 : rule__AttributeCS__Group_4__0__Impl rule__AttributeCS__Group_4__1 ;
     public final void rule__AttributeCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8046:1: ( rule__AttributeCS__Group_4__0__Impl rule__AttributeCS__Group_4__1 )
-            // InternalOCLinEcore.g:8047:2: rule__AttributeCS__Group_4__0__Impl rule__AttributeCS__Group_4__1
+            // InternalOCLinEcore.g:8048:1: ( rule__AttributeCS__Group_4__0__Impl rule__AttributeCS__Group_4__1 )
+            // InternalOCLinEcore.g:8049:2: rule__AttributeCS__Group_4__0__Impl rule__AttributeCS__Group_4__1
             {
             pushFollow(FollowSets000.FOLLOW_29);
             rule__AttributeCS__Group_4__0__Impl();
@@ -27003,17 +27003,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_4__0__Impl"
-    // InternalOCLinEcore.g:8054:1: rule__AttributeCS__Group_4__0__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:8056:1: rule__AttributeCS__Group_4__0__Impl : ( '=' ) ;
     public final void rule__AttributeCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8058:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:8059:1: ( '=' )
+            // InternalOCLinEcore.g:8060:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:8061:1: ( '=' )
             {
-            // InternalOCLinEcore.g:8059:1: ( '=' )
-            // InternalOCLinEcore.g:8060:1: '='
+            // InternalOCLinEcore.g:8061:1: ( '=' )
+            // InternalOCLinEcore.g:8062:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getEqualsSignKeyword_4_0());
@@ -27044,14 +27044,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_4__1"
-    // InternalOCLinEcore.g:8073:1: rule__AttributeCS__Group_4__1 : rule__AttributeCS__Group_4__1__Impl ;
+    // InternalOCLinEcore.g:8075:1: rule__AttributeCS__Group_4__1 : rule__AttributeCS__Group_4__1__Impl ;
     public final void rule__AttributeCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8077:1: ( rule__AttributeCS__Group_4__1__Impl )
-            // InternalOCLinEcore.g:8078:2: rule__AttributeCS__Group_4__1__Impl
+            // InternalOCLinEcore.g:8079:1: ( rule__AttributeCS__Group_4__1__Impl )
+            // InternalOCLinEcore.g:8080:2: rule__AttributeCS__Group_4__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__Group_4__1__Impl();
@@ -27077,23 +27077,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_4__1__Impl"
-    // InternalOCLinEcore.g:8084:1: rule__AttributeCS__Group_4__1__Impl : ( ( rule__AttributeCS__DefaultAssignment_4_1 ) ) ;
+    // InternalOCLinEcore.g:8086:1: rule__AttributeCS__Group_4__1__Impl : ( ( rule__AttributeCS__DefaultAssignment_4_1 ) ) ;
     public final void rule__AttributeCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8088:1: ( ( ( rule__AttributeCS__DefaultAssignment_4_1 ) ) )
-            // InternalOCLinEcore.g:8089:1: ( ( rule__AttributeCS__DefaultAssignment_4_1 ) )
+            // InternalOCLinEcore.g:8090:1: ( ( ( rule__AttributeCS__DefaultAssignment_4_1 ) ) )
+            // InternalOCLinEcore.g:8091:1: ( ( rule__AttributeCS__DefaultAssignment_4_1 ) )
             {
-            // InternalOCLinEcore.g:8089:1: ( ( rule__AttributeCS__DefaultAssignment_4_1 ) )
-            // InternalOCLinEcore.g:8090:1: ( rule__AttributeCS__DefaultAssignment_4_1 )
+            // InternalOCLinEcore.g:8091:1: ( ( rule__AttributeCS__DefaultAssignment_4_1 ) )
+            // InternalOCLinEcore.g:8092:1: ( rule__AttributeCS__DefaultAssignment_4_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getDefaultAssignment_4_1());
             }
-            // InternalOCLinEcore.g:8091:1: ( rule__AttributeCS__DefaultAssignment_4_1 )
-            // InternalOCLinEcore.g:8091:2: rule__AttributeCS__DefaultAssignment_4_1
+            // InternalOCLinEcore.g:8093:1: ( rule__AttributeCS__DefaultAssignment_4_1 )
+            // InternalOCLinEcore.g:8093:2: rule__AttributeCS__DefaultAssignment_4_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__DefaultAssignment_4_1();
@@ -27128,14 +27128,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_5__0"
-    // InternalOCLinEcore.g:8105:1: rule__AttributeCS__Group_5__0 : rule__AttributeCS__Group_5__0__Impl rule__AttributeCS__Group_5__1 ;
+    // InternalOCLinEcore.g:8107:1: rule__AttributeCS__Group_5__0 : rule__AttributeCS__Group_5__0__Impl rule__AttributeCS__Group_5__1 ;
     public final void rule__AttributeCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8109:1: ( rule__AttributeCS__Group_5__0__Impl rule__AttributeCS__Group_5__1 )
-            // InternalOCLinEcore.g:8110:2: rule__AttributeCS__Group_5__0__Impl rule__AttributeCS__Group_5__1
+            // InternalOCLinEcore.g:8111:1: ( rule__AttributeCS__Group_5__0__Impl rule__AttributeCS__Group_5__1 )
+            // InternalOCLinEcore.g:8112:2: rule__AttributeCS__Group_5__0__Impl rule__AttributeCS__Group_5__1
             {
             pushFollow(FollowSets000.FOLLOW_30);
             rule__AttributeCS__Group_5__0__Impl();
@@ -27166,17 +27166,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_5__0__Impl"
-    // InternalOCLinEcore.g:8117:1: rule__AttributeCS__Group_5__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:8119:1: rule__AttributeCS__Group_5__0__Impl : ( '{' ) ;
     public final void rule__AttributeCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8121:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:8122:1: ( '{' )
+            // InternalOCLinEcore.g:8123:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:8124:1: ( '{' )
             {
-            // InternalOCLinEcore.g:8122:1: ( '{' )
-            // InternalOCLinEcore.g:8123:1: '{'
+            // InternalOCLinEcore.g:8124:1: ( '{' )
+            // InternalOCLinEcore.g:8125:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_5_0());
@@ -27207,14 +27207,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_5__1"
-    // InternalOCLinEcore.g:8136:1: rule__AttributeCS__Group_5__1 : rule__AttributeCS__Group_5__1__Impl rule__AttributeCS__Group_5__2 ;
+    // InternalOCLinEcore.g:8138:1: rule__AttributeCS__Group_5__1 : rule__AttributeCS__Group_5__1__Impl rule__AttributeCS__Group_5__2 ;
     public final void rule__AttributeCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8140:1: ( rule__AttributeCS__Group_5__1__Impl rule__AttributeCS__Group_5__2 )
-            // InternalOCLinEcore.g:8141:2: rule__AttributeCS__Group_5__1__Impl rule__AttributeCS__Group_5__2
+            // InternalOCLinEcore.g:8142:1: ( rule__AttributeCS__Group_5__1__Impl rule__AttributeCS__Group_5__2 )
+            // InternalOCLinEcore.g:8143:2: rule__AttributeCS__Group_5__1__Impl rule__AttributeCS__Group_5__2
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__AttributeCS__Group_5__1__Impl();
@@ -27245,26 +27245,26 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_5__1__Impl"
-    // InternalOCLinEcore.g:8148:1: rule__AttributeCS__Group_5__1__Impl : ( ( ( rule__AttributeCS__Group_5_1__0 ) ) ( ( rule__AttributeCS__Group_5_1__0 )* ) ) ;
+    // InternalOCLinEcore.g:8150:1: rule__AttributeCS__Group_5__1__Impl : ( ( ( rule__AttributeCS__Group_5_1__0 ) ) ( ( rule__AttributeCS__Group_5_1__0 )* ) ) ;
     public final void rule__AttributeCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8152:1: ( ( ( ( rule__AttributeCS__Group_5_1__0 ) ) ( ( rule__AttributeCS__Group_5_1__0 )* ) ) )
-            // InternalOCLinEcore.g:8153:1: ( ( ( rule__AttributeCS__Group_5_1__0 ) ) ( ( rule__AttributeCS__Group_5_1__0 )* ) )
+            // InternalOCLinEcore.g:8154:1: ( ( ( ( rule__AttributeCS__Group_5_1__0 ) ) ( ( rule__AttributeCS__Group_5_1__0 )* ) ) )
+            // InternalOCLinEcore.g:8155:1: ( ( ( rule__AttributeCS__Group_5_1__0 ) ) ( ( rule__AttributeCS__Group_5_1__0 )* ) )
             {
-            // InternalOCLinEcore.g:8153:1: ( ( ( rule__AttributeCS__Group_5_1__0 ) ) ( ( rule__AttributeCS__Group_5_1__0 )* ) )
-            // InternalOCLinEcore.g:8154:1: ( ( rule__AttributeCS__Group_5_1__0 ) ) ( ( rule__AttributeCS__Group_5_1__0 )* )
+            // InternalOCLinEcore.g:8155:1: ( ( ( rule__AttributeCS__Group_5_1__0 ) ) ( ( rule__AttributeCS__Group_5_1__0 )* ) )
+            // InternalOCLinEcore.g:8156:1: ( ( rule__AttributeCS__Group_5_1__0 ) ) ( ( rule__AttributeCS__Group_5_1__0 )* )
             {
-            // InternalOCLinEcore.g:8154:1: ( ( rule__AttributeCS__Group_5_1__0 ) )
-            // InternalOCLinEcore.g:8155:1: ( rule__AttributeCS__Group_5_1__0 )
+            // InternalOCLinEcore.g:8156:1: ( ( rule__AttributeCS__Group_5_1__0 ) )
+            // InternalOCLinEcore.g:8157:1: ( rule__AttributeCS__Group_5_1__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getGroup_5_1());
             }
-            // InternalOCLinEcore.g:8156:1: ( rule__AttributeCS__Group_5_1__0 )
-            // InternalOCLinEcore.g:8156:2: rule__AttributeCS__Group_5_1__0
+            // InternalOCLinEcore.g:8158:1: ( rule__AttributeCS__Group_5_1__0 )
+            // InternalOCLinEcore.g:8158:2: rule__AttributeCS__Group_5_1__0
             {
             pushFollow(FollowSets000.FOLLOW_31);
             rule__AttributeCS__Group_5_1__0();
@@ -27280,13 +27280,13 @@
 
             }
 
-            // InternalOCLinEcore.g:8159:1: ( ( rule__AttributeCS__Group_5_1__0 )* )
-            // InternalOCLinEcore.g:8160:1: ( rule__AttributeCS__Group_5_1__0 )*
+            // InternalOCLinEcore.g:8161:1: ( ( rule__AttributeCS__Group_5_1__0 )* )
+            // InternalOCLinEcore.g:8162:1: ( rule__AttributeCS__Group_5_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getGroup_5_1());
             }
-            // InternalOCLinEcore.g:8161:1: ( rule__AttributeCS__Group_5_1__0 )*
+            // InternalOCLinEcore.g:8163:1: ( rule__AttributeCS__Group_5_1__0 )*
             loop100:
             do {
                 int alt100=2;
@@ -27299,7 +27299,7 @@
 
                 switch (alt100) {
             	case 1 :
-            	    // InternalOCLinEcore.g:8161:2: rule__AttributeCS__Group_5_1__0
+            	    // InternalOCLinEcore.g:8163:2: rule__AttributeCS__Group_5_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_31);
             	    rule__AttributeCS__Group_5_1__0();
@@ -27343,14 +27343,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_5__2"
-    // InternalOCLinEcore.g:8172:1: rule__AttributeCS__Group_5__2 : rule__AttributeCS__Group_5__2__Impl ;
+    // InternalOCLinEcore.g:8174:1: rule__AttributeCS__Group_5__2 : rule__AttributeCS__Group_5__2__Impl ;
     public final void rule__AttributeCS__Group_5__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8176:1: ( rule__AttributeCS__Group_5__2__Impl )
-            // InternalOCLinEcore.g:8177:2: rule__AttributeCS__Group_5__2__Impl
+            // InternalOCLinEcore.g:8178:1: ( rule__AttributeCS__Group_5__2__Impl )
+            // InternalOCLinEcore.g:8179:2: rule__AttributeCS__Group_5__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__Group_5__2__Impl();
@@ -27376,17 +27376,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_5__2__Impl"
-    // InternalOCLinEcore.g:8183:1: rule__AttributeCS__Group_5__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:8185:1: rule__AttributeCS__Group_5__2__Impl : ( '}' ) ;
     public final void rule__AttributeCS__Group_5__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8187:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:8188:1: ( '}' )
+            // InternalOCLinEcore.g:8189:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:8190:1: ( '}' )
             {
-            // InternalOCLinEcore.g:8188:1: ( '}' )
-            // InternalOCLinEcore.g:8189:1: '}'
+            // InternalOCLinEcore.g:8190:1: ( '}' )
+            // InternalOCLinEcore.g:8191:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_5_2());
@@ -27417,14 +27417,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_5_1__0"
-    // InternalOCLinEcore.g:8208:1: rule__AttributeCS__Group_5_1__0 : rule__AttributeCS__Group_5_1__0__Impl rule__AttributeCS__Group_5_1__1 ;
+    // InternalOCLinEcore.g:8210:1: rule__AttributeCS__Group_5_1__0 : rule__AttributeCS__Group_5_1__0__Impl rule__AttributeCS__Group_5_1__1 ;
     public final void rule__AttributeCS__Group_5_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8212:1: ( rule__AttributeCS__Group_5_1__0__Impl rule__AttributeCS__Group_5_1__1 )
-            // InternalOCLinEcore.g:8213:2: rule__AttributeCS__Group_5_1__0__Impl rule__AttributeCS__Group_5_1__1
+            // InternalOCLinEcore.g:8214:1: ( rule__AttributeCS__Group_5_1__0__Impl rule__AttributeCS__Group_5_1__1 )
+            // InternalOCLinEcore.g:8215:2: rule__AttributeCS__Group_5_1__0__Impl rule__AttributeCS__Group_5_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__AttributeCS__Group_5_1__0__Impl();
@@ -27455,23 +27455,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_5_1__0__Impl"
-    // InternalOCLinEcore.g:8220:1: rule__AttributeCS__Group_5_1__0__Impl : ( ( rule__AttributeCS__Alternatives_5_1_0 ) ) ;
+    // InternalOCLinEcore.g:8222:1: rule__AttributeCS__Group_5_1__0__Impl : ( ( rule__AttributeCS__Alternatives_5_1_0 ) ) ;
     public final void rule__AttributeCS__Group_5_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8224:1: ( ( ( rule__AttributeCS__Alternatives_5_1_0 ) ) )
-            // InternalOCLinEcore.g:8225:1: ( ( rule__AttributeCS__Alternatives_5_1_0 ) )
+            // InternalOCLinEcore.g:8226:1: ( ( ( rule__AttributeCS__Alternatives_5_1_0 ) ) )
+            // InternalOCLinEcore.g:8227:1: ( ( rule__AttributeCS__Alternatives_5_1_0 ) )
             {
-            // InternalOCLinEcore.g:8225:1: ( ( rule__AttributeCS__Alternatives_5_1_0 ) )
-            // InternalOCLinEcore.g:8226:1: ( rule__AttributeCS__Alternatives_5_1_0 )
+            // InternalOCLinEcore.g:8227:1: ( ( rule__AttributeCS__Alternatives_5_1_0 ) )
+            // InternalOCLinEcore.g:8228:1: ( rule__AttributeCS__Alternatives_5_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getAlternatives_5_1_0());
             }
-            // InternalOCLinEcore.g:8227:1: ( rule__AttributeCS__Alternatives_5_1_0 )
-            // InternalOCLinEcore.g:8227:2: rule__AttributeCS__Alternatives_5_1_0
+            // InternalOCLinEcore.g:8229:1: ( rule__AttributeCS__Alternatives_5_1_0 )
+            // InternalOCLinEcore.g:8229:2: rule__AttributeCS__Alternatives_5_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__Alternatives_5_1_0();
@@ -27506,14 +27506,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_5_1__1"
-    // InternalOCLinEcore.g:8237:1: rule__AttributeCS__Group_5_1__1 : rule__AttributeCS__Group_5_1__1__Impl ;
+    // InternalOCLinEcore.g:8239:1: rule__AttributeCS__Group_5_1__1 : rule__AttributeCS__Group_5_1__1__Impl ;
     public final void rule__AttributeCS__Group_5_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8241:1: ( rule__AttributeCS__Group_5_1__1__Impl )
-            // InternalOCLinEcore.g:8242:2: rule__AttributeCS__Group_5_1__1__Impl
+            // InternalOCLinEcore.g:8243:1: ( rule__AttributeCS__Group_5_1__1__Impl )
+            // InternalOCLinEcore.g:8244:2: rule__AttributeCS__Group_5_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__Group_5_1__1__Impl();
@@ -27539,22 +27539,22 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_5_1__1__Impl"
-    // InternalOCLinEcore.g:8248:1: rule__AttributeCS__Group_5_1__1__Impl : ( ( ',' )? ) ;
+    // InternalOCLinEcore.g:8250:1: rule__AttributeCS__Group_5_1__1__Impl : ( ( ',' )? ) ;
     public final void rule__AttributeCS__Group_5_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8252:1: ( ( ( ',' )? ) )
-            // InternalOCLinEcore.g:8253:1: ( ( ',' )? )
+            // InternalOCLinEcore.g:8254:1: ( ( ( ',' )? ) )
+            // InternalOCLinEcore.g:8255:1: ( ( ',' )? )
             {
-            // InternalOCLinEcore.g:8253:1: ( ( ',' )? )
-            // InternalOCLinEcore.g:8254:1: ( ',' )?
+            // InternalOCLinEcore.g:8255:1: ( ( ',' )? )
+            // InternalOCLinEcore.g:8256:1: ( ',' )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getCommaKeyword_5_1_1());
             }
-            // InternalOCLinEcore.g:8255:1: ( ',' )?
+            // InternalOCLinEcore.g:8257:1: ( ',' )?
             int alt101=2;
             int LA101_0 = input.LA(1);
 
@@ -27563,7 +27563,7 @@
             }
             switch (alt101) {
                 case 1 :
-                    // InternalOCLinEcore.g:8256:2: ','
+                    // InternalOCLinEcore.g:8258:2: ','
                     {
                     match(input,105,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -27597,14 +27597,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0__0"
-    // InternalOCLinEcore.g:8271:1: rule__AttributeCS__Group_6_0__0 : rule__AttributeCS__Group_6_0__0__Impl rule__AttributeCS__Group_6_0__1 ;
+    // InternalOCLinEcore.g:8273:1: rule__AttributeCS__Group_6_0__0 : rule__AttributeCS__Group_6_0__0__Impl rule__AttributeCS__Group_6_0__1 ;
     public final void rule__AttributeCS__Group_6_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8275:1: ( rule__AttributeCS__Group_6_0__0__Impl rule__AttributeCS__Group_6_0__1 )
-            // InternalOCLinEcore.g:8276:2: rule__AttributeCS__Group_6_0__0__Impl rule__AttributeCS__Group_6_0__1
+            // InternalOCLinEcore.g:8277:1: ( rule__AttributeCS__Group_6_0__0__Impl rule__AttributeCS__Group_6_0__1 )
+            // InternalOCLinEcore.g:8278:2: rule__AttributeCS__Group_6_0__0__Impl rule__AttributeCS__Group_6_0__1
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__AttributeCS__Group_6_0__0__Impl();
@@ -27635,17 +27635,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0__0__Impl"
-    // InternalOCLinEcore.g:8283:1: rule__AttributeCS__Group_6_0__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:8285:1: rule__AttributeCS__Group_6_0__0__Impl : ( '{' ) ;
     public final void rule__AttributeCS__Group_6_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8287:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:8288:1: ( '{' )
+            // InternalOCLinEcore.g:8289:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:8290:1: ( '{' )
             {
-            // InternalOCLinEcore.g:8288:1: ( '{' )
-            // InternalOCLinEcore.g:8289:1: '{'
+            // InternalOCLinEcore.g:8290:1: ( '{' )
+            // InternalOCLinEcore.g:8291:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_6_0_0());
@@ -27676,14 +27676,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0__1"
-    // InternalOCLinEcore.g:8302:1: rule__AttributeCS__Group_6_0__1 : rule__AttributeCS__Group_6_0__1__Impl rule__AttributeCS__Group_6_0__2 ;
+    // InternalOCLinEcore.g:8304:1: rule__AttributeCS__Group_6_0__1 : rule__AttributeCS__Group_6_0__1__Impl rule__AttributeCS__Group_6_0__2 ;
     public final void rule__AttributeCS__Group_6_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8306:1: ( rule__AttributeCS__Group_6_0__1__Impl rule__AttributeCS__Group_6_0__2 )
-            // InternalOCLinEcore.g:8307:2: rule__AttributeCS__Group_6_0__1__Impl rule__AttributeCS__Group_6_0__2
+            // InternalOCLinEcore.g:8308:1: ( rule__AttributeCS__Group_6_0__1__Impl rule__AttributeCS__Group_6_0__2 )
+            // InternalOCLinEcore.g:8309:2: rule__AttributeCS__Group_6_0__1__Impl rule__AttributeCS__Group_6_0__2
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__AttributeCS__Group_6_0__1__Impl();
@@ -27714,22 +27714,22 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0__1__Impl"
-    // InternalOCLinEcore.g:8314:1: rule__AttributeCS__Group_6_0__1__Impl : ( ( rule__AttributeCS__Alternatives_6_0_1 )* ) ;
+    // InternalOCLinEcore.g:8316:1: rule__AttributeCS__Group_6_0__1__Impl : ( ( rule__AttributeCS__Alternatives_6_0_1 )* ) ;
     public final void rule__AttributeCS__Group_6_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8318:1: ( ( ( rule__AttributeCS__Alternatives_6_0_1 )* ) )
-            // InternalOCLinEcore.g:8319:1: ( ( rule__AttributeCS__Alternatives_6_0_1 )* )
+            // InternalOCLinEcore.g:8320:1: ( ( ( rule__AttributeCS__Alternatives_6_0_1 )* ) )
+            // InternalOCLinEcore.g:8321:1: ( ( rule__AttributeCS__Alternatives_6_0_1 )* )
             {
-            // InternalOCLinEcore.g:8319:1: ( ( rule__AttributeCS__Alternatives_6_0_1 )* )
-            // InternalOCLinEcore.g:8320:1: ( rule__AttributeCS__Alternatives_6_0_1 )*
+            // InternalOCLinEcore.g:8321:1: ( ( rule__AttributeCS__Alternatives_6_0_1 )* )
+            // InternalOCLinEcore.g:8322:1: ( rule__AttributeCS__Alternatives_6_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getAlternatives_6_0_1());
             }
-            // InternalOCLinEcore.g:8321:1: ( rule__AttributeCS__Alternatives_6_0_1 )*
+            // InternalOCLinEcore.g:8323:1: ( rule__AttributeCS__Alternatives_6_0_1 )*
             loop102:
             do {
                 int alt102=2;
@@ -27742,7 +27742,7 @@
 
                 switch (alt102) {
             	case 1 :
-            	    // InternalOCLinEcore.g:8321:2: rule__AttributeCS__Alternatives_6_0_1
+            	    // InternalOCLinEcore.g:8323:2: rule__AttributeCS__Alternatives_6_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_34);
             	    rule__AttributeCS__Alternatives_6_0_1();
@@ -27783,14 +27783,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0__2"
-    // InternalOCLinEcore.g:8331:1: rule__AttributeCS__Group_6_0__2 : rule__AttributeCS__Group_6_0__2__Impl ;
+    // InternalOCLinEcore.g:8333:1: rule__AttributeCS__Group_6_0__2 : rule__AttributeCS__Group_6_0__2__Impl ;
     public final void rule__AttributeCS__Group_6_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8335:1: ( rule__AttributeCS__Group_6_0__2__Impl )
-            // InternalOCLinEcore.g:8336:2: rule__AttributeCS__Group_6_0__2__Impl
+            // InternalOCLinEcore.g:8337:1: ( rule__AttributeCS__Group_6_0__2__Impl )
+            // InternalOCLinEcore.g:8338:2: rule__AttributeCS__Group_6_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__Group_6_0__2__Impl();
@@ -27816,17 +27816,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0__2__Impl"
-    // InternalOCLinEcore.g:8342:1: rule__AttributeCS__Group_6_0__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:8344:1: rule__AttributeCS__Group_6_0__2__Impl : ( '}' ) ;
     public final void rule__AttributeCS__Group_6_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8346:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:8347:1: ( '}' )
+            // InternalOCLinEcore.g:8348:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:8349:1: ( '}' )
             {
-            // InternalOCLinEcore.g:8347:1: ( '}' )
-            // InternalOCLinEcore.g:8348:1: '}'
+            // InternalOCLinEcore.g:8349:1: ( '}' )
+            // InternalOCLinEcore.g:8350:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_6_0_2());
@@ -27857,14 +27857,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_1__0"
-    // InternalOCLinEcore.g:8367:1: rule__AttributeCS__Group_6_0_1_1__0 : rule__AttributeCS__Group_6_0_1_1__0__Impl rule__AttributeCS__Group_6_0_1_1__1 ;
+    // InternalOCLinEcore.g:8369:1: rule__AttributeCS__Group_6_0_1_1__0 : rule__AttributeCS__Group_6_0_1_1__0__Impl rule__AttributeCS__Group_6_0_1_1__1 ;
     public final void rule__AttributeCS__Group_6_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8371:1: ( rule__AttributeCS__Group_6_0_1_1__0__Impl rule__AttributeCS__Group_6_0_1_1__1 )
-            // InternalOCLinEcore.g:8372:2: rule__AttributeCS__Group_6_0_1_1__0__Impl rule__AttributeCS__Group_6_0_1_1__1
+            // InternalOCLinEcore.g:8373:1: ( rule__AttributeCS__Group_6_0_1_1__0__Impl rule__AttributeCS__Group_6_0_1_1__1 )
+            // InternalOCLinEcore.g:8374:2: rule__AttributeCS__Group_6_0_1_1__0__Impl rule__AttributeCS__Group_6_0_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__AttributeCS__Group_6_0_1_1__0__Impl();
@@ -27895,17 +27895,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_1__0__Impl"
-    // InternalOCLinEcore.g:8379:1: rule__AttributeCS__Group_6_0_1_1__0__Impl : ( 'initial' ) ;
+    // InternalOCLinEcore.g:8381:1: rule__AttributeCS__Group_6_0_1_1__0__Impl : ( 'initial' ) ;
     public final void rule__AttributeCS__Group_6_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8383:1: ( ( 'initial' ) )
-            // InternalOCLinEcore.g:8384:1: ( 'initial' )
+            // InternalOCLinEcore.g:8385:1: ( ( 'initial' ) )
+            // InternalOCLinEcore.g:8386:1: ( 'initial' )
             {
-            // InternalOCLinEcore.g:8384:1: ( 'initial' )
-            // InternalOCLinEcore.g:8385:1: 'initial'
+            // InternalOCLinEcore.g:8386:1: ( 'initial' )
+            // InternalOCLinEcore.g:8387:1: 'initial'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getInitialKeyword_6_0_1_1_0());
@@ -27936,14 +27936,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_1__1"
-    // InternalOCLinEcore.g:8398:1: rule__AttributeCS__Group_6_0_1_1__1 : rule__AttributeCS__Group_6_0_1_1__1__Impl rule__AttributeCS__Group_6_0_1_1__2 ;
+    // InternalOCLinEcore.g:8400:1: rule__AttributeCS__Group_6_0_1_1__1 : rule__AttributeCS__Group_6_0_1_1__1__Impl rule__AttributeCS__Group_6_0_1_1__2 ;
     public final void rule__AttributeCS__Group_6_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8402:1: ( rule__AttributeCS__Group_6_0_1_1__1__Impl rule__AttributeCS__Group_6_0_1_1__2 )
-            // InternalOCLinEcore.g:8403:2: rule__AttributeCS__Group_6_0_1_1__1__Impl rule__AttributeCS__Group_6_0_1_1__2
+            // InternalOCLinEcore.g:8404:1: ( rule__AttributeCS__Group_6_0_1_1__1__Impl rule__AttributeCS__Group_6_0_1_1__2 )
+            // InternalOCLinEcore.g:8405:2: rule__AttributeCS__Group_6_0_1_1__1__Impl rule__AttributeCS__Group_6_0_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__AttributeCS__Group_6_0_1_1__1__Impl();
@@ -27974,22 +27974,22 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_1__1__Impl"
-    // InternalOCLinEcore.g:8410:1: rule__AttributeCS__Group_6_0_1_1__1__Impl : ( ( ruleUnrestrictedName )? ) ;
+    // InternalOCLinEcore.g:8412:1: rule__AttributeCS__Group_6_0_1_1__1__Impl : ( ( ruleUnrestrictedName )? ) ;
     public final void rule__AttributeCS__Group_6_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8414:1: ( ( ( ruleUnrestrictedName )? ) )
-            // InternalOCLinEcore.g:8415:1: ( ( ruleUnrestrictedName )? )
+            // InternalOCLinEcore.g:8416:1: ( ( ( ruleUnrestrictedName )? ) )
+            // InternalOCLinEcore.g:8417:1: ( ( ruleUnrestrictedName )? )
             {
-            // InternalOCLinEcore.g:8415:1: ( ( ruleUnrestrictedName )? )
-            // InternalOCLinEcore.g:8416:1: ( ruleUnrestrictedName )?
+            // InternalOCLinEcore.g:8417:1: ( ( ruleUnrestrictedName )? )
+            // InternalOCLinEcore.g:8418:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_1_1());
             }
-            // InternalOCLinEcore.g:8417:1: ( ruleUnrestrictedName )?
+            // InternalOCLinEcore.g:8419:1: ( ruleUnrestrictedName )?
             int alt103=2;
             int LA103_0 = input.LA(1);
 
@@ -27998,7 +27998,7 @@
             }
             switch (alt103) {
                 case 1 :
-                    // InternalOCLinEcore.g:8417:3: ruleUnrestrictedName
+                    // InternalOCLinEcore.g:8419:3: ruleUnrestrictedName
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -28036,14 +28036,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_1__2"
-    // InternalOCLinEcore.g:8427:1: rule__AttributeCS__Group_6_0_1_1__2 : rule__AttributeCS__Group_6_0_1_1__2__Impl rule__AttributeCS__Group_6_0_1_1__3 ;
+    // InternalOCLinEcore.g:8429:1: rule__AttributeCS__Group_6_0_1_1__2 : rule__AttributeCS__Group_6_0_1_1__2__Impl rule__AttributeCS__Group_6_0_1_1__3 ;
     public final void rule__AttributeCS__Group_6_0_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8431:1: ( rule__AttributeCS__Group_6_0_1_1__2__Impl rule__AttributeCS__Group_6_0_1_1__3 )
-            // InternalOCLinEcore.g:8432:2: rule__AttributeCS__Group_6_0_1_1__2__Impl rule__AttributeCS__Group_6_0_1_1__3
+            // InternalOCLinEcore.g:8433:1: ( rule__AttributeCS__Group_6_0_1_1__2__Impl rule__AttributeCS__Group_6_0_1_1__3 )
+            // InternalOCLinEcore.g:8434:2: rule__AttributeCS__Group_6_0_1_1__2__Impl rule__AttributeCS__Group_6_0_1_1__3
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__AttributeCS__Group_6_0_1_1__2__Impl();
@@ -28074,17 +28074,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_1__2__Impl"
-    // InternalOCLinEcore.g:8439:1: rule__AttributeCS__Group_6_0_1_1__2__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:8441:1: rule__AttributeCS__Group_6_0_1_1__2__Impl : ( ':' ) ;
     public final void rule__AttributeCS__Group_6_0_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8443:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:8444:1: ( ':' )
+            // InternalOCLinEcore.g:8445:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:8446:1: ( ':' )
             {
-            // InternalOCLinEcore.g:8444:1: ( ':' )
-            // InternalOCLinEcore.g:8445:1: ':'
+            // InternalOCLinEcore.g:8446:1: ( ':' )
+            // InternalOCLinEcore.g:8447:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_1_2());
@@ -28115,14 +28115,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_1__3"
-    // InternalOCLinEcore.g:8458:1: rule__AttributeCS__Group_6_0_1_1__3 : rule__AttributeCS__Group_6_0_1_1__3__Impl rule__AttributeCS__Group_6_0_1_1__4 ;
+    // InternalOCLinEcore.g:8460:1: rule__AttributeCS__Group_6_0_1_1__3 : rule__AttributeCS__Group_6_0_1_1__3__Impl rule__AttributeCS__Group_6_0_1_1__4 ;
     public final void rule__AttributeCS__Group_6_0_1_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8462:1: ( rule__AttributeCS__Group_6_0_1_1__3__Impl rule__AttributeCS__Group_6_0_1_1__4 )
-            // InternalOCLinEcore.g:8463:2: rule__AttributeCS__Group_6_0_1_1__3__Impl rule__AttributeCS__Group_6_0_1_1__4
+            // InternalOCLinEcore.g:8464:1: ( rule__AttributeCS__Group_6_0_1_1__3__Impl rule__AttributeCS__Group_6_0_1_1__4 )
+            // InternalOCLinEcore.g:8465:2: rule__AttributeCS__Group_6_0_1_1__3__Impl rule__AttributeCS__Group_6_0_1_1__4
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__AttributeCS__Group_6_0_1_1__3__Impl();
@@ -28153,22 +28153,22 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_1__3__Impl"
-    // InternalOCLinEcore.g:8470:1: rule__AttributeCS__Group_6_0_1_1__3__Impl : ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )? ) ;
+    // InternalOCLinEcore.g:8472:1: rule__AttributeCS__Group_6_0_1_1__3__Impl : ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )? ) ;
     public final void rule__AttributeCS__Group_6_0_1_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8474:1: ( ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )? ) )
-            // InternalOCLinEcore.g:8475:1: ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )? )
+            // InternalOCLinEcore.g:8476:1: ( ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )? ) )
+            // InternalOCLinEcore.g:8477:1: ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )? )
             {
-            // InternalOCLinEcore.g:8475:1: ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )? )
-            // InternalOCLinEcore.g:8476:1: ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )?
+            // InternalOCLinEcore.g:8477:1: ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )? )
+            // InternalOCLinEcore.g:8478:1: ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsAssignment_6_0_1_1_3());
             }
-            // InternalOCLinEcore.g:8477:1: ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )?
+            // InternalOCLinEcore.g:8479:1: ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )?
             int alt104=2;
             int LA104_0 = input.LA(1);
 
@@ -28177,7 +28177,7 @@
             }
             switch (alt104) {
                 case 1 :
-                    // InternalOCLinEcore.g:8477:2: rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3
+                    // InternalOCLinEcore.g:8479:2: rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3();
@@ -28215,14 +28215,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_1__4"
-    // InternalOCLinEcore.g:8487:1: rule__AttributeCS__Group_6_0_1_1__4 : rule__AttributeCS__Group_6_0_1_1__4__Impl ;
+    // InternalOCLinEcore.g:8489:1: rule__AttributeCS__Group_6_0_1_1__4 : rule__AttributeCS__Group_6_0_1_1__4__Impl ;
     public final void rule__AttributeCS__Group_6_0_1_1__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8491:1: ( rule__AttributeCS__Group_6_0_1_1__4__Impl )
-            // InternalOCLinEcore.g:8492:2: rule__AttributeCS__Group_6_0_1_1__4__Impl
+            // InternalOCLinEcore.g:8493:1: ( rule__AttributeCS__Group_6_0_1_1__4__Impl )
+            // InternalOCLinEcore.g:8494:2: rule__AttributeCS__Group_6_0_1_1__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__Group_6_0_1_1__4__Impl();
@@ -28248,17 +28248,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_1__4__Impl"
-    // InternalOCLinEcore.g:8498:1: rule__AttributeCS__Group_6_0_1_1__4__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:8500:1: rule__AttributeCS__Group_6_0_1_1__4__Impl : ( ';' ) ;
     public final void rule__AttributeCS__Group_6_0_1_1__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8502:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:8503:1: ( ';' )
+            // InternalOCLinEcore.g:8504:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:8505:1: ( ';' )
             {
-            // InternalOCLinEcore.g:8503:1: ( ';' )
-            // InternalOCLinEcore.g:8504:1: ';'
+            // InternalOCLinEcore.g:8505:1: ( ';' )
+            // InternalOCLinEcore.g:8506:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_1_4());
@@ -28289,14 +28289,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_2__0"
-    // InternalOCLinEcore.g:8527:1: rule__AttributeCS__Group_6_0_1_2__0 : rule__AttributeCS__Group_6_0_1_2__0__Impl rule__AttributeCS__Group_6_0_1_2__1 ;
+    // InternalOCLinEcore.g:8529:1: rule__AttributeCS__Group_6_0_1_2__0 : rule__AttributeCS__Group_6_0_1_2__0__Impl rule__AttributeCS__Group_6_0_1_2__1 ;
     public final void rule__AttributeCS__Group_6_0_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8531:1: ( rule__AttributeCS__Group_6_0_1_2__0__Impl rule__AttributeCS__Group_6_0_1_2__1 )
-            // InternalOCLinEcore.g:8532:2: rule__AttributeCS__Group_6_0_1_2__0__Impl rule__AttributeCS__Group_6_0_1_2__1
+            // InternalOCLinEcore.g:8533:1: ( rule__AttributeCS__Group_6_0_1_2__0__Impl rule__AttributeCS__Group_6_0_1_2__1 )
+            // InternalOCLinEcore.g:8534:2: rule__AttributeCS__Group_6_0_1_2__0__Impl rule__AttributeCS__Group_6_0_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__AttributeCS__Group_6_0_1_2__0__Impl();
@@ -28327,17 +28327,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_2__0__Impl"
-    // InternalOCLinEcore.g:8539:1: rule__AttributeCS__Group_6_0_1_2__0__Impl : ( 'derivation' ) ;
+    // InternalOCLinEcore.g:8541:1: rule__AttributeCS__Group_6_0_1_2__0__Impl : ( 'derivation' ) ;
     public final void rule__AttributeCS__Group_6_0_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8543:1: ( ( 'derivation' ) )
-            // InternalOCLinEcore.g:8544:1: ( 'derivation' )
+            // InternalOCLinEcore.g:8545:1: ( ( 'derivation' ) )
+            // InternalOCLinEcore.g:8546:1: ( 'derivation' )
             {
-            // InternalOCLinEcore.g:8544:1: ( 'derivation' )
-            // InternalOCLinEcore.g:8545:1: 'derivation'
+            // InternalOCLinEcore.g:8546:1: ( 'derivation' )
+            // InternalOCLinEcore.g:8547:1: 'derivation'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getDerivationKeyword_6_0_1_2_0());
@@ -28368,14 +28368,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_2__1"
-    // InternalOCLinEcore.g:8558:1: rule__AttributeCS__Group_6_0_1_2__1 : rule__AttributeCS__Group_6_0_1_2__1__Impl rule__AttributeCS__Group_6_0_1_2__2 ;
+    // InternalOCLinEcore.g:8560:1: rule__AttributeCS__Group_6_0_1_2__1 : rule__AttributeCS__Group_6_0_1_2__1__Impl rule__AttributeCS__Group_6_0_1_2__2 ;
     public final void rule__AttributeCS__Group_6_0_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8562:1: ( rule__AttributeCS__Group_6_0_1_2__1__Impl rule__AttributeCS__Group_6_0_1_2__2 )
-            // InternalOCLinEcore.g:8563:2: rule__AttributeCS__Group_6_0_1_2__1__Impl rule__AttributeCS__Group_6_0_1_2__2
+            // InternalOCLinEcore.g:8564:1: ( rule__AttributeCS__Group_6_0_1_2__1__Impl rule__AttributeCS__Group_6_0_1_2__2 )
+            // InternalOCLinEcore.g:8565:2: rule__AttributeCS__Group_6_0_1_2__1__Impl rule__AttributeCS__Group_6_0_1_2__2
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__AttributeCS__Group_6_0_1_2__1__Impl();
@@ -28406,22 +28406,22 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_2__1__Impl"
-    // InternalOCLinEcore.g:8570:1: rule__AttributeCS__Group_6_0_1_2__1__Impl : ( ( ruleUnrestrictedName )? ) ;
+    // InternalOCLinEcore.g:8572:1: rule__AttributeCS__Group_6_0_1_2__1__Impl : ( ( ruleUnrestrictedName )? ) ;
     public final void rule__AttributeCS__Group_6_0_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8574:1: ( ( ( ruleUnrestrictedName )? ) )
-            // InternalOCLinEcore.g:8575:1: ( ( ruleUnrestrictedName )? )
+            // InternalOCLinEcore.g:8576:1: ( ( ( ruleUnrestrictedName )? ) )
+            // InternalOCLinEcore.g:8577:1: ( ( ruleUnrestrictedName )? )
             {
-            // InternalOCLinEcore.g:8575:1: ( ( ruleUnrestrictedName )? )
-            // InternalOCLinEcore.g:8576:1: ( ruleUnrestrictedName )?
+            // InternalOCLinEcore.g:8577:1: ( ( ruleUnrestrictedName )? )
+            // InternalOCLinEcore.g:8578:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_2_1());
             }
-            // InternalOCLinEcore.g:8577:1: ( ruleUnrestrictedName )?
+            // InternalOCLinEcore.g:8579:1: ( ruleUnrestrictedName )?
             int alt105=2;
             int LA105_0 = input.LA(1);
 
@@ -28430,7 +28430,7 @@
             }
             switch (alt105) {
                 case 1 :
-                    // InternalOCLinEcore.g:8577:3: ruleUnrestrictedName
+                    // InternalOCLinEcore.g:8579:3: ruleUnrestrictedName
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -28468,14 +28468,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_2__2"
-    // InternalOCLinEcore.g:8587:1: rule__AttributeCS__Group_6_0_1_2__2 : rule__AttributeCS__Group_6_0_1_2__2__Impl rule__AttributeCS__Group_6_0_1_2__3 ;
+    // InternalOCLinEcore.g:8589:1: rule__AttributeCS__Group_6_0_1_2__2 : rule__AttributeCS__Group_6_0_1_2__2__Impl rule__AttributeCS__Group_6_0_1_2__3 ;
     public final void rule__AttributeCS__Group_6_0_1_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8591:1: ( rule__AttributeCS__Group_6_0_1_2__2__Impl rule__AttributeCS__Group_6_0_1_2__3 )
-            // InternalOCLinEcore.g:8592:2: rule__AttributeCS__Group_6_0_1_2__2__Impl rule__AttributeCS__Group_6_0_1_2__3
+            // InternalOCLinEcore.g:8593:1: ( rule__AttributeCS__Group_6_0_1_2__2__Impl rule__AttributeCS__Group_6_0_1_2__3 )
+            // InternalOCLinEcore.g:8594:2: rule__AttributeCS__Group_6_0_1_2__2__Impl rule__AttributeCS__Group_6_0_1_2__3
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__AttributeCS__Group_6_0_1_2__2__Impl();
@@ -28506,17 +28506,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_2__2__Impl"
-    // InternalOCLinEcore.g:8599:1: rule__AttributeCS__Group_6_0_1_2__2__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:8601:1: rule__AttributeCS__Group_6_0_1_2__2__Impl : ( ':' ) ;
     public final void rule__AttributeCS__Group_6_0_1_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8603:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:8604:1: ( ':' )
+            // InternalOCLinEcore.g:8605:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:8606:1: ( ':' )
             {
-            // InternalOCLinEcore.g:8604:1: ( ':' )
-            // InternalOCLinEcore.g:8605:1: ':'
+            // InternalOCLinEcore.g:8606:1: ( ':' )
+            // InternalOCLinEcore.g:8607:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_2_2());
@@ -28547,14 +28547,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_2__3"
-    // InternalOCLinEcore.g:8618:1: rule__AttributeCS__Group_6_0_1_2__3 : rule__AttributeCS__Group_6_0_1_2__3__Impl rule__AttributeCS__Group_6_0_1_2__4 ;
+    // InternalOCLinEcore.g:8620:1: rule__AttributeCS__Group_6_0_1_2__3 : rule__AttributeCS__Group_6_0_1_2__3__Impl rule__AttributeCS__Group_6_0_1_2__4 ;
     public final void rule__AttributeCS__Group_6_0_1_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8622:1: ( rule__AttributeCS__Group_6_0_1_2__3__Impl rule__AttributeCS__Group_6_0_1_2__4 )
-            // InternalOCLinEcore.g:8623:2: rule__AttributeCS__Group_6_0_1_2__3__Impl rule__AttributeCS__Group_6_0_1_2__4
+            // InternalOCLinEcore.g:8624:1: ( rule__AttributeCS__Group_6_0_1_2__3__Impl rule__AttributeCS__Group_6_0_1_2__4 )
+            // InternalOCLinEcore.g:8625:2: rule__AttributeCS__Group_6_0_1_2__3__Impl rule__AttributeCS__Group_6_0_1_2__4
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__AttributeCS__Group_6_0_1_2__3__Impl();
@@ -28585,22 +28585,22 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_2__3__Impl"
-    // InternalOCLinEcore.g:8630:1: rule__AttributeCS__Group_6_0_1_2__3__Impl : ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )? ) ;
+    // InternalOCLinEcore.g:8632:1: rule__AttributeCS__Group_6_0_1_2__3__Impl : ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )? ) ;
     public final void rule__AttributeCS__Group_6_0_1_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8634:1: ( ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )? ) )
-            // InternalOCLinEcore.g:8635:1: ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )? )
+            // InternalOCLinEcore.g:8636:1: ( ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )? ) )
+            // InternalOCLinEcore.g:8637:1: ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )? )
             {
-            // InternalOCLinEcore.g:8635:1: ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )? )
-            // InternalOCLinEcore.g:8636:1: ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )?
+            // InternalOCLinEcore.g:8637:1: ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )? )
+            // InternalOCLinEcore.g:8638:1: ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsAssignment_6_0_1_2_3());
             }
-            // InternalOCLinEcore.g:8637:1: ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )?
+            // InternalOCLinEcore.g:8639:1: ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )?
             int alt106=2;
             int LA106_0 = input.LA(1);
 
@@ -28609,7 +28609,7 @@
             }
             switch (alt106) {
                 case 1 :
-                    // InternalOCLinEcore.g:8637:2: rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3
+                    // InternalOCLinEcore.g:8639:2: rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3();
@@ -28647,14 +28647,14 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_2__4"
-    // InternalOCLinEcore.g:8647:1: rule__AttributeCS__Group_6_0_1_2__4 : rule__AttributeCS__Group_6_0_1_2__4__Impl ;
+    // InternalOCLinEcore.g:8649:1: rule__AttributeCS__Group_6_0_1_2__4 : rule__AttributeCS__Group_6_0_1_2__4__Impl ;
     public final void rule__AttributeCS__Group_6_0_1_2__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8651:1: ( rule__AttributeCS__Group_6_0_1_2__4__Impl )
-            // InternalOCLinEcore.g:8652:2: rule__AttributeCS__Group_6_0_1_2__4__Impl
+            // InternalOCLinEcore.g:8653:1: ( rule__AttributeCS__Group_6_0_1_2__4__Impl )
+            // InternalOCLinEcore.g:8654:2: rule__AttributeCS__Group_6_0_1_2__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AttributeCS__Group_6_0_1_2__4__Impl();
@@ -28680,17 +28680,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__Group_6_0_1_2__4__Impl"
-    // InternalOCLinEcore.g:8658:1: rule__AttributeCS__Group_6_0_1_2__4__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:8660:1: rule__AttributeCS__Group_6_0_1_2__4__Impl : ( ';' ) ;
     public final void rule__AttributeCS__Group_6_0_1_2__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8662:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:8663:1: ( ';' )
+            // InternalOCLinEcore.g:8664:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:8665:1: ( ';' )
             {
-            // InternalOCLinEcore.g:8663:1: ( ';' )
-            // InternalOCLinEcore.g:8664:1: ';'
+            // InternalOCLinEcore.g:8665:1: ( ';' )
+            // InternalOCLinEcore.g:8666:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_2_4());
@@ -28721,14 +28721,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__0"
-    // InternalOCLinEcore.g:8687:1: rule__DataTypeCS__Group__0 : rule__DataTypeCS__Group__0__Impl rule__DataTypeCS__Group__1 ;
+    // InternalOCLinEcore.g:8689:1: rule__DataTypeCS__Group__0 : rule__DataTypeCS__Group__0__Impl rule__DataTypeCS__Group__1 ;
     public final void rule__DataTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8691:1: ( rule__DataTypeCS__Group__0__Impl rule__DataTypeCS__Group__1 )
-            // InternalOCLinEcore.g:8692:2: rule__DataTypeCS__Group__0__Impl rule__DataTypeCS__Group__1
+            // InternalOCLinEcore.g:8693:1: ( rule__DataTypeCS__Group__0__Impl rule__DataTypeCS__Group__1 )
+            // InternalOCLinEcore.g:8694:2: rule__DataTypeCS__Group__0__Impl rule__DataTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_35);
             rule__DataTypeCS__Group__0__Impl();
@@ -28759,22 +28759,22 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__0__Impl"
-    // InternalOCLinEcore.g:8699:1: rule__DataTypeCS__Group__0__Impl : ( ( rule__DataTypeCS__IsPrimitiveAssignment_0 )? ) ;
+    // InternalOCLinEcore.g:8701:1: rule__DataTypeCS__Group__0__Impl : ( ( rule__DataTypeCS__IsPrimitiveAssignment_0 )? ) ;
     public final void rule__DataTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8703:1: ( ( ( rule__DataTypeCS__IsPrimitiveAssignment_0 )? ) )
-            // InternalOCLinEcore.g:8704:1: ( ( rule__DataTypeCS__IsPrimitiveAssignment_0 )? )
+            // InternalOCLinEcore.g:8705:1: ( ( ( rule__DataTypeCS__IsPrimitiveAssignment_0 )? ) )
+            // InternalOCLinEcore.g:8706:1: ( ( rule__DataTypeCS__IsPrimitiveAssignment_0 )? )
             {
-            // InternalOCLinEcore.g:8704:1: ( ( rule__DataTypeCS__IsPrimitiveAssignment_0 )? )
-            // InternalOCLinEcore.g:8705:1: ( rule__DataTypeCS__IsPrimitiveAssignment_0 )?
+            // InternalOCLinEcore.g:8706:1: ( ( rule__DataTypeCS__IsPrimitiveAssignment_0 )? )
+            // InternalOCLinEcore.g:8707:1: ( rule__DataTypeCS__IsPrimitiveAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getIsPrimitiveAssignment_0());
             }
-            // InternalOCLinEcore.g:8706:1: ( rule__DataTypeCS__IsPrimitiveAssignment_0 )?
+            // InternalOCLinEcore.g:8708:1: ( rule__DataTypeCS__IsPrimitiveAssignment_0 )?
             int alt107=2;
             int LA107_0 = input.LA(1);
 
@@ -28783,7 +28783,7 @@
             }
             switch (alt107) {
                 case 1 :
-                    // InternalOCLinEcore.g:8706:2: rule__DataTypeCS__IsPrimitiveAssignment_0
+                    // InternalOCLinEcore.g:8708:2: rule__DataTypeCS__IsPrimitiveAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DataTypeCS__IsPrimitiveAssignment_0();
@@ -28821,14 +28821,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__1"
-    // InternalOCLinEcore.g:8716:1: rule__DataTypeCS__Group__1 : rule__DataTypeCS__Group__1__Impl rule__DataTypeCS__Group__2 ;
+    // InternalOCLinEcore.g:8718:1: rule__DataTypeCS__Group__1 : rule__DataTypeCS__Group__1__Impl rule__DataTypeCS__Group__2 ;
     public final void rule__DataTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8720:1: ( rule__DataTypeCS__Group__1__Impl rule__DataTypeCS__Group__2 )
-            // InternalOCLinEcore.g:8721:2: rule__DataTypeCS__Group__1__Impl rule__DataTypeCS__Group__2
+            // InternalOCLinEcore.g:8722:1: ( rule__DataTypeCS__Group__1__Impl rule__DataTypeCS__Group__2 )
+            // InternalOCLinEcore.g:8723:2: rule__DataTypeCS__Group__1__Impl rule__DataTypeCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__DataTypeCS__Group__1__Impl();
@@ -28859,17 +28859,17 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__1__Impl"
-    // InternalOCLinEcore.g:8728:1: rule__DataTypeCS__Group__1__Impl : ( 'datatype' ) ;
+    // InternalOCLinEcore.g:8730:1: rule__DataTypeCS__Group__1__Impl : ( 'datatype' ) ;
     public final void rule__DataTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8732:1: ( ( 'datatype' ) )
-            // InternalOCLinEcore.g:8733:1: ( 'datatype' )
+            // InternalOCLinEcore.g:8734:1: ( ( 'datatype' ) )
+            // InternalOCLinEcore.g:8735:1: ( 'datatype' )
             {
-            // InternalOCLinEcore.g:8733:1: ( 'datatype' )
-            // InternalOCLinEcore.g:8734:1: 'datatype'
+            // InternalOCLinEcore.g:8735:1: ( 'datatype' )
+            // InternalOCLinEcore.g:8736:1: 'datatype'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getDatatypeKeyword_1());
@@ -28900,14 +28900,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__2"
-    // InternalOCLinEcore.g:8747:1: rule__DataTypeCS__Group__2 : rule__DataTypeCS__Group__2__Impl rule__DataTypeCS__Group__3 ;
+    // InternalOCLinEcore.g:8749:1: rule__DataTypeCS__Group__2 : rule__DataTypeCS__Group__2__Impl rule__DataTypeCS__Group__3 ;
     public final void rule__DataTypeCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8751:1: ( rule__DataTypeCS__Group__2__Impl rule__DataTypeCS__Group__3 )
-            // InternalOCLinEcore.g:8752:2: rule__DataTypeCS__Group__2__Impl rule__DataTypeCS__Group__3
+            // InternalOCLinEcore.g:8753:1: ( rule__DataTypeCS__Group__2__Impl rule__DataTypeCS__Group__3 )
+            // InternalOCLinEcore.g:8754:2: rule__DataTypeCS__Group__2__Impl rule__DataTypeCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__DataTypeCS__Group__2__Impl();
@@ -28938,23 +28938,23 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__2__Impl"
-    // InternalOCLinEcore.g:8759:1: rule__DataTypeCS__Group__2__Impl : ( ( rule__DataTypeCS__NameAssignment_2 ) ) ;
+    // InternalOCLinEcore.g:8761:1: rule__DataTypeCS__Group__2__Impl : ( ( rule__DataTypeCS__NameAssignment_2 ) ) ;
     public final void rule__DataTypeCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8763:1: ( ( ( rule__DataTypeCS__NameAssignment_2 ) ) )
-            // InternalOCLinEcore.g:8764:1: ( ( rule__DataTypeCS__NameAssignment_2 ) )
+            // InternalOCLinEcore.g:8765:1: ( ( ( rule__DataTypeCS__NameAssignment_2 ) ) )
+            // InternalOCLinEcore.g:8766:1: ( ( rule__DataTypeCS__NameAssignment_2 ) )
             {
-            // InternalOCLinEcore.g:8764:1: ( ( rule__DataTypeCS__NameAssignment_2 ) )
-            // InternalOCLinEcore.g:8765:1: ( rule__DataTypeCS__NameAssignment_2 )
+            // InternalOCLinEcore.g:8766:1: ( ( rule__DataTypeCS__NameAssignment_2 ) )
+            // InternalOCLinEcore.g:8767:1: ( rule__DataTypeCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getNameAssignment_2());
             }
-            // InternalOCLinEcore.g:8766:1: ( rule__DataTypeCS__NameAssignment_2 )
-            // InternalOCLinEcore.g:8766:2: rule__DataTypeCS__NameAssignment_2
+            // InternalOCLinEcore.g:8768:1: ( rule__DataTypeCS__NameAssignment_2 )
+            // InternalOCLinEcore.g:8768:2: rule__DataTypeCS__NameAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DataTypeCS__NameAssignment_2();
@@ -28989,14 +28989,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__3"
-    // InternalOCLinEcore.g:8776:1: rule__DataTypeCS__Group__3 : rule__DataTypeCS__Group__3__Impl rule__DataTypeCS__Group__4 ;
+    // InternalOCLinEcore.g:8778:1: rule__DataTypeCS__Group__3 : rule__DataTypeCS__Group__3__Impl rule__DataTypeCS__Group__4 ;
     public final void rule__DataTypeCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8780:1: ( rule__DataTypeCS__Group__3__Impl rule__DataTypeCS__Group__4 )
-            // InternalOCLinEcore.g:8781:2: rule__DataTypeCS__Group__3__Impl rule__DataTypeCS__Group__4
+            // InternalOCLinEcore.g:8782:1: ( rule__DataTypeCS__Group__3__Impl rule__DataTypeCS__Group__4 )
+            // InternalOCLinEcore.g:8783:2: rule__DataTypeCS__Group__3__Impl rule__DataTypeCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__DataTypeCS__Group__3__Impl();
@@ -29027,22 +29027,22 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__3__Impl"
-    // InternalOCLinEcore.g:8788:1: rule__DataTypeCS__Group__3__Impl : ( ( rule__DataTypeCS__OwnedSignatureAssignment_3 )? ) ;
+    // InternalOCLinEcore.g:8790:1: rule__DataTypeCS__Group__3__Impl : ( ( rule__DataTypeCS__OwnedSignatureAssignment_3 )? ) ;
     public final void rule__DataTypeCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8792:1: ( ( ( rule__DataTypeCS__OwnedSignatureAssignment_3 )? ) )
-            // InternalOCLinEcore.g:8793:1: ( ( rule__DataTypeCS__OwnedSignatureAssignment_3 )? )
+            // InternalOCLinEcore.g:8794:1: ( ( ( rule__DataTypeCS__OwnedSignatureAssignment_3 )? ) )
+            // InternalOCLinEcore.g:8795:1: ( ( rule__DataTypeCS__OwnedSignatureAssignment_3 )? )
             {
-            // InternalOCLinEcore.g:8793:1: ( ( rule__DataTypeCS__OwnedSignatureAssignment_3 )? )
-            // InternalOCLinEcore.g:8794:1: ( rule__DataTypeCS__OwnedSignatureAssignment_3 )?
+            // InternalOCLinEcore.g:8795:1: ( ( rule__DataTypeCS__OwnedSignatureAssignment_3 )? )
+            // InternalOCLinEcore.g:8796:1: ( rule__DataTypeCS__OwnedSignatureAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getOwnedSignatureAssignment_3());
             }
-            // InternalOCLinEcore.g:8795:1: ( rule__DataTypeCS__OwnedSignatureAssignment_3 )?
+            // InternalOCLinEcore.g:8797:1: ( rule__DataTypeCS__OwnedSignatureAssignment_3 )?
             int alt108=2;
             int LA108_0 = input.LA(1);
 
@@ -29051,7 +29051,7 @@
             }
             switch (alt108) {
                 case 1 :
-                    // InternalOCLinEcore.g:8795:2: rule__DataTypeCS__OwnedSignatureAssignment_3
+                    // InternalOCLinEcore.g:8797:2: rule__DataTypeCS__OwnedSignatureAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DataTypeCS__OwnedSignatureAssignment_3();
@@ -29089,14 +29089,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__4"
-    // InternalOCLinEcore.g:8805:1: rule__DataTypeCS__Group__4 : rule__DataTypeCS__Group__4__Impl rule__DataTypeCS__Group__5 ;
+    // InternalOCLinEcore.g:8807:1: rule__DataTypeCS__Group__4 : rule__DataTypeCS__Group__4__Impl rule__DataTypeCS__Group__5 ;
     public final void rule__DataTypeCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8809:1: ( rule__DataTypeCS__Group__4__Impl rule__DataTypeCS__Group__5 )
-            // InternalOCLinEcore.g:8810:2: rule__DataTypeCS__Group__4__Impl rule__DataTypeCS__Group__5
+            // InternalOCLinEcore.g:8811:1: ( rule__DataTypeCS__Group__4__Impl rule__DataTypeCS__Group__5 )
+            // InternalOCLinEcore.g:8812:2: rule__DataTypeCS__Group__4__Impl rule__DataTypeCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__DataTypeCS__Group__4__Impl();
@@ -29127,22 +29127,22 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__4__Impl"
-    // InternalOCLinEcore.g:8817:1: rule__DataTypeCS__Group__4__Impl : ( ( rule__DataTypeCS__Group_4__0 )? ) ;
+    // InternalOCLinEcore.g:8819:1: rule__DataTypeCS__Group__4__Impl : ( ( rule__DataTypeCS__Group_4__0 )? ) ;
     public final void rule__DataTypeCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8821:1: ( ( ( rule__DataTypeCS__Group_4__0 )? ) )
-            // InternalOCLinEcore.g:8822:1: ( ( rule__DataTypeCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:8823:1: ( ( ( rule__DataTypeCS__Group_4__0 )? ) )
+            // InternalOCLinEcore.g:8824:1: ( ( rule__DataTypeCS__Group_4__0 )? )
             {
-            // InternalOCLinEcore.g:8822:1: ( ( rule__DataTypeCS__Group_4__0 )? )
-            // InternalOCLinEcore.g:8823:1: ( rule__DataTypeCS__Group_4__0 )?
+            // InternalOCLinEcore.g:8824:1: ( ( rule__DataTypeCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:8825:1: ( rule__DataTypeCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getGroup_4());
             }
-            // InternalOCLinEcore.g:8824:1: ( rule__DataTypeCS__Group_4__0 )?
+            // InternalOCLinEcore.g:8826:1: ( rule__DataTypeCS__Group_4__0 )?
             int alt109=2;
             int LA109_0 = input.LA(1);
 
@@ -29151,7 +29151,7 @@
             }
             switch (alt109) {
                 case 1 :
-                    // InternalOCLinEcore.g:8824:2: rule__DataTypeCS__Group_4__0
+                    // InternalOCLinEcore.g:8826:2: rule__DataTypeCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DataTypeCS__Group_4__0();
@@ -29189,14 +29189,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__5"
-    // InternalOCLinEcore.g:8834:1: rule__DataTypeCS__Group__5 : rule__DataTypeCS__Group__5__Impl rule__DataTypeCS__Group__6 ;
+    // InternalOCLinEcore.g:8836:1: rule__DataTypeCS__Group__5 : rule__DataTypeCS__Group__5__Impl rule__DataTypeCS__Group__6 ;
     public final void rule__DataTypeCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8838:1: ( rule__DataTypeCS__Group__5__Impl rule__DataTypeCS__Group__6 )
-            // InternalOCLinEcore.g:8839:2: rule__DataTypeCS__Group__5__Impl rule__DataTypeCS__Group__6
+            // InternalOCLinEcore.g:8840:1: ( rule__DataTypeCS__Group__5__Impl rule__DataTypeCS__Group__6 )
+            // InternalOCLinEcore.g:8841:2: rule__DataTypeCS__Group__5__Impl rule__DataTypeCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__DataTypeCS__Group__5__Impl();
@@ -29227,22 +29227,22 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__5__Impl"
-    // InternalOCLinEcore.g:8846:1: rule__DataTypeCS__Group__5__Impl : ( ( rule__DataTypeCS__Group_5__0 )? ) ;
+    // InternalOCLinEcore.g:8848:1: rule__DataTypeCS__Group__5__Impl : ( ( rule__DataTypeCS__Group_5__0 )? ) ;
     public final void rule__DataTypeCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8850:1: ( ( ( rule__DataTypeCS__Group_5__0 )? ) )
-            // InternalOCLinEcore.g:8851:1: ( ( rule__DataTypeCS__Group_5__0 )? )
+            // InternalOCLinEcore.g:8852:1: ( ( ( rule__DataTypeCS__Group_5__0 )? ) )
+            // InternalOCLinEcore.g:8853:1: ( ( rule__DataTypeCS__Group_5__0 )? )
             {
-            // InternalOCLinEcore.g:8851:1: ( ( rule__DataTypeCS__Group_5__0 )? )
-            // InternalOCLinEcore.g:8852:1: ( rule__DataTypeCS__Group_5__0 )?
+            // InternalOCLinEcore.g:8853:1: ( ( rule__DataTypeCS__Group_5__0 )? )
+            // InternalOCLinEcore.g:8854:1: ( rule__DataTypeCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getGroup_5());
             }
-            // InternalOCLinEcore.g:8853:1: ( rule__DataTypeCS__Group_5__0 )?
+            // InternalOCLinEcore.g:8855:1: ( rule__DataTypeCS__Group_5__0 )?
             int alt110=2;
             int LA110_0 = input.LA(1);
 
@@ -29262,7 +29262,7 @@
             }
             switch (alt110) {
                 case 1 :
-                    // InternalOCLinEcore.g:8853:2: rule__DataTypeCS__Group_5__0
+                    // InternalOCLinEcore.g:8855:2: rule__DataTypeCS__Group_5__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DataTypeCS__Group_5__0();
@@ -29300,14 +29300,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__6"
-    // InternalOCLinEcore.g:8863:1: rule__DataTypeCS__Group__6 : rule__DataTypeCS__Group__6__Impl ;
+    // InternalOCLinEcore.g:8865:1: rule__DataTypeCS__Group__6 : rule__DataTypeCS__Group__6__Impl ;
     public final void rule__DataTypeCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8867:1: ( rule__DataTypeCS__Group__6__Impl )
-            // InternalOCLinEcore.g:8868:2: rule__DataTypeCS__Group__6__Impl
+            // InternalOCLinEcore.g:8869:1: ( rule__DataTypeCS__Group__6__Impl )
+            // InternalOCLinEcore.g:8870:2: rule__DataTypeCS__Group__6__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DataTypeCS__Group__6__Impl();
@@ -29333,23 +29333,23 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group__6__Impl"
-    // InternalOCLinEcore.g:8874:1: rule__DataTypeCS__Group__6__Impl : ( ( rule__DataTypeCS__Alternatives_6 ) ) ;
+    // InternalOCLinEcore.g:8876:1: rule__DataTypeCS__Group__6__Impl : ( ( rule__DataTypeCS__Alternatives_6 ) ) ;
     public final void rule__DataTypeCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8878:1: ( ( ( rule__DataTypeCS__Alternatives_6 ) ) )
-            // InternalOCLinEcore.g:8879:1: ( ( rule__DataTypeCS__Alternatives_6 ) )
+            // InternalOCLinEcore.g:8880:1: ( ( ( rule__DataTypeCS__Alternatives_6 ) ) )
+            // InternalOCLinEcore.g:8881:1: ( ( rule__DataTypeCS__Alternatives_6 ) )
             {
-            // InternalOCLinEcore.g:8879:1: ( ( rule__DataTypeCS__Alternatives_6 ) )
-            // InternalOCLinEcore.g:8880:1: ( rule__DataTypeCS__Alternatives_6 )
+            // InternalOCLinEcore.g:8881:1: ( ( rule__DataTypeCS__Alternatives_6 ) )
+            // InternalOCLinEcore.g:8882:1: ( rule__DataTypeCS__Alternatives_6 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getAlternatives_6());
             }
-            // InternalOCLinEcore.g:8881:1: ( rule__DataTypeCS__Alternatives_6 )
-            // InternalOCLinEcore.g:8881:2: rule__DataTypeCS__Alternatives_6
+            // InternalOCLinEcore.g:8883:1: ( rule__DataTypeCS__Alternatives_6 )
+            // InternalOCLinEcore.g:8883:2: rule__DataTypeCS__Alternatives_6
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DataTypeCS__Alternatives_6();
@@ -29384,14 +29384,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_4__0"
-    // InternalOCLinEcore.g:8905:1: rule__DataTypeCS__Group_4__0 : rule__DataTypeCS__Group_4__0__Impl rule__DataTypeCS__Group_4__1 ;
+    // InternalOCLinEcore.g:8907:1: rule__DataTypeCS__Group_4__0 : rule__DataTypeCS__Group_4__0__Impl rule__DataTypeCS__Group_4__1 ;
     public final void rule__DataTypeCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8909:1: ( rule__DataTypeCS__Group_4__0__Impl rule__DataTypeCS__Group_4__1 )
-            // InternalOCLinEcore.g:8910:2: rule__DataTypeCS__Group_4__0__Impl rule__DataTypeCS__Group_4__1
+            // InternalOCLinEcore.g:8911:1: ( rule__DataTypeCS__Group_4__0__Impl rule__DataTypeCS__Group_4__1 )
+            // InternalOCLinEcore.g:8912:2: rule__DataTypeCS__Group_4__0__Impl rule__DataTypeCS__Group_4__1
             {
             pushFollow(FollowSets000.FOLLOW_29);
             rule__DataTypeCS__Group_4__0__Impl();
@@ -29422,17 +29422,17 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_4__0__Impl"
-    // InternalOCLinEcore.g:8917:1: rule__DataTypeCS__Group_4__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:8919:1: rule__DataTypeCS__Group_4__0__Impl : ( ':' ) ;
     public final void rule__DataTypeCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8921:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:8922:1: ( ':' )
+            // InternalOCLinEcore.g:8923:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:8924:1: ( ':' )
             {
-            // InternalOCLinEcore.g:8922:1: ( ':' )
-            // InternalOCLinEcore.g:8923:1: ':'
+            // InternalOCLinEcore.g:8924:1: ( ':' )
+            // InternalOCLinEcore.g:8925:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getColonKeyword_4_0());
@@ -29463,14 +29463,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_4__1"
-    // InternalOCLinEcore.g:8936:1: rule__DataTypeCS__Group_4__1 : rule__DataTypeCS__Group_4__1__Impl ;
+    // InternalOCLinEcore.g:8938:1: rule__DataTypeCS__Group_4__1 : rule__DataTypeCS__Group_4__1__Impl ;
     public final void rule__DataTypeCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8940:1: ( rule__DataTypeCS__Group_4__1__Impl )
-            // InternalOCLinEcore.g:8941:2: rule__DataTypeCS__Group_4__1__Impl
+            // InternalOCLinEcore.g:8942:1: ( rule__DataTypeCS__Group_4__1__Impl )
+            // InternalOCLinEcore.g:8943:2: rule__DataTypeCS__Group_4__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DataTypeCS__Group_4__1__Impl();
@@ -29496,23 +29496,23 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_4__1__Impl"
-    // InternalOCLinEcore.g:8947:1: rule__DataTypeCS__Group_4__1__Impl : ( ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 ) ) ;
+    // InternalOCLinEcore.g:8949:1: rule__DataTypeCS__Group_4__1__Impl : ( ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 ) ) ;
     public final void rule__DataTypeCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8951:1: ( ( ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 ) ) )
-            // InternalOCLinEcore.g:8952:1: ( ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 ) )
+            // InternalOCLinEcore.g:8953:1: ( ( ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 ) ) )
+            // InternalOCLinEcore.g:8954:1: ( ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 ) )
             {
-            // InternalOCLinEcore.g:8952:1: ( ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 ) )
-            // InternalOCLinEcore.g:8953:1: ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 )
+            // InternalOCLinEcore.g:8954:1: ( ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 ) )
+            // InternalOCLinEcore.g:8955:1: ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getInstanceClassNameAssignment_4_1());
             }
-            // InternalOCLinEcore.g:8954:1: ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 )
-            // InternalOCLinEcore.g:8954:2: rule__DataTypeCS__InstanceClassNameAssignment_4_1
+            // InternalOCLinEcore.g:8956:1: ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 )
+            // InternalOCLinEcore.g:8956:2: rule__DataTypeCS__InstanceClassNameAssignment_4_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DataTypeCS__InstanceClassNameAssignment_4_1();
@@ -29547,14 +29547,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_5__0"
-    // InternalOCLinEcore.g:8968:1: rule__DataTypeCS__Group_5__0 : rule__DataTypeCS__Group_5__0__Impl rule__DataTypeCS__Group_5__1 ;
+    // InternalOCLinEcore.g:8970:1: rule__DataTypeCS__Group_5__0 : rule__DataTypeCS__Group_5__0__Impl rule__DataTypeCS__Group_5__1 ;
     public final void rule__DataTypeCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8972:1: ( rule__DataTypeCS__Group_5__0__Impl rule__DataTypeCS__Group_5__1 )
-            // InternalOCLinEcore.g:8973:2: rule__DataTypeCS__Group_5__0__Impl rule__DataTypeCS__Group_5__1
+            // InternalOCLinEcore.g:8974:1: ( rule__DataTypeCS__Group_5__0__Impl rule__DataTypeCS__Group_5__1 )
+            // InternalOCLinEcore.g:8975:2: rule__DataTypeCS__Group_5__0__Impl rule__DataTypeCS__Group_5__1
             {
             pushFollow(FollowSets000.FOLLOW_37);
             rule__DataTypeCS__Group_5__0__Impl();
@@ -29585,17 +29585,17 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_5__0__Impl"
-    // InternalOCLinEcore.g:8980:1: rule__DataTypeCS__Group_5__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:8982:1: rule__DataTypeCS__Group_5__0__Impl : ( '{' ) ;
     public final void rule__DataTypeCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:8984:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:8985:1: ( '{' )
+            // InternalOCLinEcore.g:8986:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:8987:1: ( '{' )
             {
-            // InternalOCLinEcore.g:8985:1: ( '{' )
-            // InternalOCLinEcore.g:8986:1: '{'
+            // InternalOCLinEcore.g:8987:1: ( '{' )
+            // InternalOCLinEcore.g:8988:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_5_0());
@@ -29626,14 +29626,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_5__1"
-    // InternalOCLinEcore.g:8999:1: rule__DataTypeCS__Group_5__1 : rule__DataTypeCS__Group_5__1__Impl rule__DataTypeCS__Group_5__2 ;
+    // InternalOCLinEcore.g:9001:1: rule__DataTypeCS__Group_5__1 : rule__DataTypeCS__Group_5__1__Impl rule__DataTypeCS__Group_5__2 ;
     public final void rule__DataTypeCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9003:1: ( rule__DataTypeCS__Group_5__1__Impl rule__DataTypeCS__Group_5__2 )
-            // InternalOCLinEcore.g:9004:2: rule__DataTypeCS__Group_5__1__Impl rule__DataTypeCS__Group_5__2
+            // InternalOCLinEcore.g:9005:1: ( rule__DataTypeCS__Group_5__1__Impl rule__DataTypeCS__Group_5__2 )
+            // InternalOCLinEcore.g:9006:2: rule__DataTypeCS__Group_5__1__Impl rule__DataTypeCS__Group_5__2
             {
             pushFollow(FollowSets000.FOLLOW_37);
             rule__DataTypeCS__Group_5__1__Impl();
@@ -29664,22 +29664,22 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_5__1__Impl"
-    // InternalOCLinEcore.g:9011:1: rule__DataTypeCS__Group_5__1__Impl : ( ( rule__DataTypeCS__Alternatives_5_1 )? ) ;
+    // InternalOCLinEcore.g:9013:1: rule__DataTypeCS__Group_5__1__Impl : ( ( rule__DataTypeCS__Alternatives_5_1 )? ) ;
     public final void rule__DataTypeCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9015:1: ( ( ( rule__DataTypeCS__Alternatives_5_1 )? ) )
-            // InternalOCLinEcore.g:9016:1: ( ( rule__DataTypeCS__Alternatives_5_1 )? )
+            // InternalOCLinEcore.g:9017:1: ( ( ( rule__DataTypeCS__Alternatives_5_1 )? ) )
+            // InternalOCLinEcore.g:9018:1: ( ( rule__DataTypeCS__Alternatives_5_1 )? )
             {
-            // InternalOCLinEcore.g:9016:1: ( ( rule__DataTypeCS__Alternatives_5_1 )? )
-            // InternalOCLinEcore.g:9017:1: ( rule__DataTypeCS__Alternatives_5_1 )?
+            // InternalOCLinEcore.g:9018:1: ( ( rule__DataTypeCS__Alternatives_5_1 )? )
+            // InternalOCLinEcore.g:9019:1: ( rule__DataTypeCS__Alternatives_5_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getAlternatives_5_1());
             }
-            // InternalOCLinEcore.g:9018:1: ( rule__DataTypeCS__Alternatives_5_1 )?
+            // InternalOCLinEcore.g:9020:1: ( rule__DataTypeCS__Alternatives_5_1 )?
             int alt111=2;
             int LA111_0 = input.LA(1);
 
@@ -29688,7 +29688,7 @@
             }
             switch (alt111) {
                 case 1 :
-                    // InternalOCLinEcore.g:9018:2: rule__DataTypeCS__Alternatives_5_1
+                    // InternalOCLinEcore.g:9020:2: rule__DataTypeCS__Alternatives_5_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DataTypeCS__Alternatives_5_1();
@@ -29726,14 +29726,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_5__2"
-    // InternalOCLinEcore.g:9028:1: rule__DataTypeCS__Group_5__2 : rule__DataTypeCS__Group_5__2__Impl ;
+    // InternalOCLinEcore.g:9030:1: rule__DataTypeCS__Group_5__2 : rule__DataTypeCS__Group_5__2__Impl ;
     public final void rule__DataTypeCS__Group_5__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9032:1: ( rule__DataTypeCS__Group_5__2__Impl )
-            // InternalOCLinEcore.g:9033:2: rule__DataTypeCS__Group_5__2__Impl
+            // InternalOCLinEcore.g:9034:1: ( rule__DataTypeCS__Group_5__2__Impl )
+            // InternalOCLinEcore.g:9035:2: rule__DataTypeCS__Group_5__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DataTypeCS__Group_5__2__Impl();
@@ -29759,17 +29759,17 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_5__2__Impl"
-    // InternalOCLinEcore.g:9039:1: rule__DataTypeCS__Group_5__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:9041:1: rule__DataTypeCS__Group_5__2__Impl : ( '}' ) ;
     public final void rule__DataTypeCS__Group_5__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9043:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:9044:1: ( '}' )
+            // InternalOCLinEcore.g:9045:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:9046:1: ( '}' )
             {
-            // InternalOCLinEcore.g:9044:1: ( '}' )
-            // InternalOCLinEcore.g:9045:1: '}'
+            // InternalOCLinEcore.g:9046:1: ( '}' )
+            // InternalOCLinEcore.g:9047:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_5_2());
@@ -29800,14 +29800,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_6_0__0"
-    // InternalOCLinEcore.g:9064:1: rule__DataTypeCS__Group_6_0__0 : rule__DataTypeCS__Group_6_0__0__Impl rule__DataTypeCS__Group_6_0__1 ;
+    // InternalOCLinEcore.g:9066:1: rule__DataTypeCS__Group_6_0__0 : rule__DataTypeCS__Group_6_0__0__Impl rule__DataTypeCS__Group_6_0__1 ;
     public final void rule__DataTypeCS__Group_6_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9068:1: ( rule__DataTypeCS__Group_6_0__0__Impl rule__DataTypeCS__Group_6_0__1 )
-            // InternalOCLinEcore.g:9069:2: rule__DataTypeCS__Group_6_0__0__Impl rule__DataTypeCS__Group_6_0__1
+            // InternalOCLinEcore.g:9070:1: ( rule__DataTypeCS__Group_6_0__0__Impl rule__DataTypeCS__Group_6_0__1 )
+            // InternalOCLinEcore.g:9071:2: rule__DataTypeCS__Group_6_0__0__Impl rule__DataTypeCS__Group_6_0__1
             {
             pushFollow(FollowSets000.FOLLOW_38);
             rule__DataTypeCS__Group_6_0__0__Impl();
@@ -29838,17 +29838,17 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_6_0__0__Impl"
-    // InternalOCLinEcore.g:9076:1: rule__DataTypeCS__Group_6_0__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:9078:1: rule__DataTypeCS__Group_6_0__0__Impl : ( '{' ) ;
     public final void rule__DataTypeCS__Group_6_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9080:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:9081:1: ( '{' )
+            // InternalOCLinEcore.g:9082:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:9083:1: ( '{' )
             {
-            // InternalOCLinEcore.g:9081:1: ( '{' )
-            // InternalOCLinEcore.g:9082:1: '{'
+            // InternalOCLinEcore.g:9083:1: ( '{' )
+            // InternalOCLinEcore.g:9084:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_6_0_0());
@@ -29879,14 +29879,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_6_0__1"
-    // InternalOCLinEcore.g:9095:1: rule__DataTypeCS__Group_6_0__1 : rule__DataTypeCS__Group_6_0__1__Impl rule__DataTypeCS__Group_6_0__2 ;
+    // InternalOCLinEcore.g:9097:1: rule__DataTypeCS__Group_6_0__1 : rule__DataTypeCS__Group_6_0__1__Impl rule__DataTypeCS__Group_6_0__2 ;
     public final void rule__DataTypeCS__Group_6_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9099:1: ( rule__DataTypeCS__Group_6_0__1__Impl rule__DataTypeCS__Group_6_0__2 )
-            // InternalOCLinEcore.g:9100:2: rule__DataTypeCS__Group_6_0__1__Impl rule__DataTypeCS__Group_6_0__2
+            // InternalOCLinEcore.g:9101:1: ( rule__DataTypeCS__Group_6_0__1__Impl rule__DataTypeCS__Group_6_0__2 )
+            // InternalOCLinEcore.g:9102:2: rule__DataTypeCS__Group_6_0__1__Impl rule__DataTypeCS__Group_6_0__2
             {
             pushFollow(FollowSets000.FOLLOW_38);
             rule__DataTypeCS__Group_6_0__1__Impl();
@@ -29917,22 +29917,22 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_6_0__1__Impl"
-    // InternalOCLinEcore.g:9107:1: rule__DataTypeCS__Group_6_0__1__Impl : ( ( rule__DataTypeCS__Alternatives_6_0_1 )* ) ;
+    // InternalOCLinEcore.g:9109:1: rule__DataTypeCS__Group_6_0__1__Impl : ( ( rule__DataTypeCS__Alternatives_6_0_1 )* ) ;
     public final void rule__DataTypeCS__Group_6_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9111:1: ( ( ( rule__DataTypeCS__Alternatives_6_0_1 )* ) )
-            // InternalOCLinEcore.g:9112:1: ( ( rule__DataTypeCS__Alternatives_6_0_1 )* )
+            // InternalOCLinEcore.g:9113:1: ( ( ( rule__DataTypeCS__Alternatives_6_0_1 )* ) )
+            // InternalOCLinEcore.g:9114:1: ( ( rule__DataTypeCS__Alternatives_6_0_1 )* )
             {
-            // InternalOCLinEcore.g:9112:1: ( ( rule__DataTypeCS__Alternatives_6_0_1 )* )
-            // InternalOCLinEcore.g:9113:1: ( rule__DataTypeCS__Alternatives_6_0_1 )*
+            // InternalOCLinEcore.g:9114:1: ( ( rule__DataTypeCS__Alternatives_6_0_1 )* )
+            // InternalOCLinEcore.g:9115:1: ( rule__DataTypeCS__Alternatives_6_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getAlternatives_6_0_1());
             }
-            // InternalOCLinEcore.g:9114:1: ( rule__DataTypeCS__Alternatives_6_0_1 )*
+            // InternalOCLinEcore.g:9116:1: ( rule__DataTypeCS__Alternatives_6_0_1 )*
             loop112:
             do {
                 int alt112=2;
@@ -29945,7 +29945,7 @@
 
                 switch (alt112) {
             	case 1 :
-            	    // InternalOCLinEcore.g:9114:2: rule__DataTypeCS__Alternatives_6_0_1
+            	    // InternalOCLinEcore.g:9116:2: rule__DataTypeCS__Alternatives_6_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_39);
             	    rule__DataTypeCS__Alternatives_6_0_1();
@@ -29986,14 +29986,14 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_6_0__2"
-    // InternalOCLinEcore.g:9124:1: rule__DataTypeCS__Group_6_0__2 : rule__DataTypeCS__Group_6_0__2__Impl ;
+    // InternalOCLinEcore.g:9126:1: rule__DataTypeCS__Group_6_0__2 : rule__DataTypeCS__Group_6_0__2__Impl ;
     public final void rule__DataTypeCS__Group_6_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9128:1: ( rule__DataTypeCS__Group_6_0__2__Impl )
-            // InternalOCLinEcore.g:9129:2: rule__DataTypeCS__Group_6_0__2__Impl
+            // InternalOCLinEcore.g:9130:1: ( rule__DataTypeCS__Group_6_0__2__Impl )
+            // InternalOCLinEcore.g:9131:2: rule__DataTypeCS__Group_6_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DataTypeCS__Group_6_0__2__Impl();
@@ -30019,17 +30019,17 @@
 
 
     // $ANTLR start "rule__DataTypeCS__Group_6_0__2__Impl"
-    // InternalOCLinEcore.g:9135:1: rule__DataTypeCS__Group_6_0__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:9137:1: rule__DataTypeCS__Group_6_0__2__Impl : ( '}' ) ;
     public final void rule__DataTypeCS__Group_6_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9139:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:9140:1: ( '}' )
+            // InternalOCLinEcore.g:9141:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:9142:1: ( '}' )
             {
-            // InternalOCLinEcore.g:9140:1: ( '}' )
-            // InternalOCLinEcore.g:9141:1: '}'
+            // InternalOCLinEcore.g:9142:1: ( '}' )
+            // InternalOCLinEcore.g:9143:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_6_0_2());
@@ -30060,14 +30060,14 @@
 
 
     // $ANTLR start "rule__DetailCS__Group__0"
-    // InternalOCLinEcore.g:9160:1: rule__DetailCS__Group__0 : rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1 ;
+    // InternalOCLinEcore.g:9162:1: rule__DetailCS__Group__0 : rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1 ;
     public final void rule__DetailCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9164:1: ( rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1 )
-            // InternalOCLinEcore.g:9165:2: rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1
+            // InternalOCLinEcore.g:9166:1: ( rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1 )
+            // InternalOCLinEcore.g:9167:2: rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__DetailCS__Group__0__Impl();
@@ -30098,23 +30098,23 @@
 
 
     // $ANTLR start "rule__DetailCS__Group__0__Impl"
-    // InternalOCLinEcore.g:9172:1: rule__DetailCS__Group__0__Impl : ( ( rule__DetailCS__NameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:9174:1: rule__DetailCS__Group__0__Impl : ( ( rule__DetailCS__NameAssignment_0 ) ) ;
     public final void rule__DetailCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9176:1: ( ( ( rule__DetailCS__NameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:9177:1: ( ( rule__DetailCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:9178:1: ( ( ( rule__DetailCS__NameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:9179:1: ( ( rule__DetailCS__NameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:9177:1: ( ( rule__DetailCS__NameAssignment_0 ) )
-            // InternalOCLinEcore.g:9178:1: ( rule__DetailCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:9179:1: ( ( rule__DetailCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:9180:1: ( rule__DetailCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDetailCSAccess().getNameAssignment_0());
             }
-            // InternalOCLinEcore.g:9179:1: ( rule__DetailCS__NameAssignment_0 )
-            // InternalOCLinEcore.g:9179:2: rule__DetailCS__NameAssignment_0
+            // InternalOCLinEcore.g:9181:1: ( rule__DetailCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:9181:2: rule__DetailCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DetailCS__NameAssignment_0();
@@ -30149,14 +30149,14 @@
 
 
     // $ANTLR start "rule__DetailCS__Group__1"
-    // InternalOCLinEcore.g:9189:1: rule__DetailCS__Group__1 : rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2 ;
+    // InternalOCLinEcore.g:9191:1: rule__DetailCS__Group__1 : rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2 ;
     public final void rule__DetailCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9193:1: ( rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2 )
-            // InternalOCLinEcore.g:9194:2: rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2
+            // InternalOCLinEcore.g:9195:1: ( rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2 )
+            // InternalOCLinEcore.g:9196:2: rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_41);
             rule__DetailCS__Group__1__Impl();
@@ -30187,17 +30187,17 @@
 
 
     // $ANTLR start "rule__DetailCS__Group__1__Impl"
-    // InternalOCLinEcore.g:9201:1: rule__DetailCS__Group__1__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:9203:1: rule__DetailCS__Group__1__Impl : ( '=' ) ;
     public final void rule__DetailCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9205:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:9206:1: ( '=' )
+            // InternalOCLinEcore.g:9207:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:9208:1: ( '=' )
             {
-            // InternalOCLinEcore.g:9206:1: ( '=' )
-            // InternalOCLinEcore.g:9207:1: '='
+            // InternalOCLinEcore.g:9208:1: ( '=' )
+            // InternalOCLinEcore.g:9209:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1());
@@ -30228,14 +30228,14 @@
 
 
     // $ANTLR start "rule__DetailCS__Group__2"
-    // InternalOCLinEcore.g:9220:1: rule__DetailCS__Group__2 : rule__DetailCS__Group__2__Impl ;
+    // InternalOCLinEcore.g:9222:1: rule__DetailCS__Group__2 : rule__DetailCS__Group__2__Impl ;
     public final void rule__DetailCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9224:1: ( rule__DetailCS__Group__2__Impl )
-            // InternalOCLinEcore.g:9225:2: rule__DetailCS__Group__2__Impl
+            // InternalOCLinEcore.g:9226:1: ( rule__DetailCS__Group__2__Impl )
+            // InternalOCLinEcore.g:9227:2: rule__DetailCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DetailCS__Group__2__Impl();
@@ -30261,22 +30261,22 @@
 
 
     // $ANTLR start "rule__DetailCS__Group__2__Impl"
-    // InternalOCLinEcore.g:9231:1: rule__DetailCS__Group__2__Impl : ( ( rule__DetailCS__ValuesAssignment_2 )* ) ;
+    // InternalOCLinEcore.g:9233:1: rule__DetailCS__Group__2__Impl : ( ( rule__DetailCS__ValuesAssignment_2 )* ) ;
     public final void rule__DetailCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9235:1: ( ( ( rule__DetailCS__ValuesAssignment_2 )* ) )
-            // InternalOCLinEcore.g:9236:1: ( ( rule__DetailCS__ValuesAssignment_2 )* )
+            // InternalOCLinEcore.g:9237:1: ( ( ( rule__DetailCS__ValuesAssignment_2 )* ) )
+            // InternalOCLinEcore.g:9238:1: ( ( rule__DetailCS__ValuesAssignment_2 )* )
             {
-            // InternalOCLinEcore.g:9236:1: ( ( rule__DetailCS__ValuesAssignment_2 )* )
-            // InternalOCLinEcore.g:9237:1: ( rule__DetailCS__ValuesAssignment_2 )*
+            // InternalOCLinEcore.g:9238:1: ( ( rule__DetailCS__ValuesAssignment_2 )* )
+            // InternalOCLinEcore.g:9239:1: ( rule__DetailCS__ValuesAssignment_2 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDetailCSAccess().getValuesAssignment_2());
             }
-            // InternalOCLinEcore.g:9238:1: ( rule__DetailCS__ValuesAssignment_2 )*
+            // InternalOCLinEcore.g:9240:1: ( rule__DetailCS__ValuesAssignment_2 )*
             loop113:
             do {
                 int alt113=2;
@@ -30289,7 +30289,7 @@
 
                 switch (alt113) {
             	case 1 :
-            	    // InternalOCLinEcore.g:9238:2: rule__DetailCS__ValuesAssignment_2
+            	    // InternalOCLinEcore.g:9240:2: rule__DetailCS__ValuesAssignment_2
             	    {
             	    pushFollow(FollowSets000.FOLLOW_42);
             	    rule__DetailCS__ValuesAssignment_2();
@@ -30330,14 +30330,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__0"
-    // InternalOCLinEcore.g:9254:1: rule__DocumentationCS__Group__0 : rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1 ;
+    // InternalOCLinEcore.g:9256:1: rule__DocumentationCS__Group__0 : rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1 ;
     public final void rule__DocumentationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9258:1: ( rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1 )
-            // InternalOCLinEcore.g:9259:2: rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1
+            // InternalOCLinEcore.g:9260:1: ( rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1 )
+            // InternalOCLinEcore.g:9261:2: rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__DocumentationCS__Group__0__Impl();
@@ -30368,23 +30368,23 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__0__Impl"
-    // InternalOCLinEcore.g:9266:1: rule__DocumentationCS__Group__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:9268:1: rule__DocumentationCS__Group__0__Impl : ( () ) ;
     public final void rule__DocumentationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9270:1: ( ( () ) )
-            // InternalOCLinEcore.g:9271:1: ( () )
+            // InternalOCLinEcore.g:9272:1: ( ( () ) )
+            // InternalOCLinEcore.g:9273:1: ( () )
             {
-            // InternalOCLinEcore.g:9271:1: ( () )
-            // InternalOCLinEcore.g:9272:1: ()
+            // InternalOCLinEcore.g:9273:1: ( () )
+            // InternalOCLinEcore.g:9274:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0());
             }
-            // InternalOCLinEcore.g:9273:1: ()
-            // InternalOCLinEcore.g:9275:1:
+            // InternalOCLinEcore.g:9275:1: ()
+            // InternalOCLinEcore.g:9277:1:
             {
             }
 
@@ -30409,14 +30409,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__1"
-    // InternalOCLinEcore.g:9285:1: rule__DocumentationCS__Group__1 : rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2 ;
+    // InternalOCLinEcore.g:9287:1: rule__DocumentationCS__Group__1 : rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2 ;
     public final void rule__DocumentationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9289:1: ( rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2 )
-            // InternalOCLinEcore.g:9290:2: rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2
+            // InternalOCLinEcore.g:9291:1: ( rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2 )
+            // InternalOCLinEcore.g:9292:2: rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_44);
             rule__DocumentationCS__Group__1__Impl();
@@ -30447,17 +30447,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__1__Impl"
-    // InternalOCLinEcore.g:9297:1: rule__DocumentationCS__Group__1__Impl : ( 'documentation' ) ;
+    // InternalOCLinEcore.g:9299:1: rule__DocumentationCS__Group__1__Impl : ( 'documentation' ) ;
     public final void rule__DocumentationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9301:1: ( ( 'documentation' ) )
-            // InternalOCLinEcore.g:9302:1: ( 'documentation' )
+            // InternalOCLinEcore.g:9303:1: ( ( 'documentation' ) )
+            // InternalOCLinEcore.g:9304:1: ( 'documentation' )
             {
-            // InternalOCLinEcore.g:9302:1: ( 'documentation' )
-            // InternalOCLinEcore.g:9303:1: 'documentation'
+            // InternalOCLinEcore.g:9304:1: ( 'documentation' )
+            // InternalOCLinEcore.g:9305:1: 'documentation'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1());
@@ -30488,14 +30488,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__2"
-    // InternalOCLinEcore.g:9316:1: rule__DocumentationCS__Group__2 : rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3 ;
+    // InternalOCLinEcore.g:9318:1: rule__DocumentationCS__Group__2 : rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3 ;
     public final void rule__DocumentationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9320:1: ( rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3 )
-            // InternalOCLinEcore.g:9321:2: rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3
+            // InternalOCLinEcore.g:9322:1: ( rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3 )
+            // InternalOCLinEcore.g:9323:2: rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_44);
             rule__DocumentationCS__Group__2__Impl();
@@ -30526,22 +30526,22 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__2__Impl"
-    // InternalOCLinEcore.g:9328:1: rule__DocumentationCS__Group__2__Impl : ( ( rule__DocumentationCS__ValueAssignment_2 )? ) ;
+    // InternalOCLinEcore.g:9330:1: rule__DocumentationCS__Group__2__Impl : ( ( rule__DocumentationCS__ValueAssignment_2 )? ) ;
     public final void rule__DocumentationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9332:1: ( ( ( rule__DocumentationCS__ValueAssignment_2 )? ) )
-            // InternalOCLinEcore.g:9333:1: ( ( rule__DocumentationCS__ValueAssignment_2 )? )
+            // InternalOCLinEcore.g:9334:1: ( ( ( rule__DocumentationCS__ValueAssignment_2 )? ) )
+            // InternalOCLinEcore.g:9335:1: ( ( rule__DocumentationCS__ValueAssignment_2 )? )
             {
-            // InternalOCLinEcore.g:9333:1: ( ( rule__DocumentationCS__ValueAssignment_2 )? )
-            // InternalOCLinEcore.g:9334:1: ( rule__DocumentationCS__ValueAssignment_2 )?
+            // InternalOCLinEcore.g:9335:1: ( ( rule__DocumentationCS__ValueAssignment_2 )? )
+            // InternalOCLinEcore.g:9336:1: ( rule__DocumentationCS__ValueAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getValueAssignment_2());
             }
-            // InternalOCLinEcore.g:9335:1: ( rule__DocumentationCS__ValueAssignment_2 )?
+            // InternalOCLinEcore.g:9337:1: ( rule__DocumentationCS__ValueAssignment_2 )?
             int alt114=2;
             int LA114_0 = input.LA(1);
 
@@ -30550,7 +30550,7 @@
             }
             switch (alt114) {
                 case 1 :
-                    // InternalOCLinEcore.g:9335:2: rule__DocumentationCS__ValueAssignment_2
+                    // InternalOCLinEcore.g:9337:2: rule__DocumentationCS__ValueAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DocumentationCS__ValueAssignment_2();
@@ -30588,14 +30588,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__3"
-    // InternalOCLinEcore.g:9345:1: rule__DocumentationCS__Group__3 : rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4 ;
+    // InternalOCLinEcore.g:9347:1: rule__DocumentationCS__Group__3 : rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4 ;
     public final void rule__DocumentationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9349:1: ( rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4 )
-            // InternalOCLinEcore.g:9350:2: rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4
+            // InternalOCLinEcore.g:9351:1: ( rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4 )
+            // InternalOCLinEcore.g:9352:2: rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_44);
             rule__DocumentationCS__Group__3__Impl();
@@ -30626,22 +30626,22 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__3__Impl"
-    // InternalOCLinEcore.g:9357:1: rule__DocumentationCS__Group__3__Impl : ( ( rule__DocumentationCS__Group_3__0 )? ) ;
+    // InternalOCLinEcore.g:9359:1: rule__DocumentationCS__Group__3__Impl : ( ( rule__DocumentationCS__Group_3__0 )? ) ;
     public final void rule__DocumentationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9361:1: ( ( ( rule__DocumentationCS__Group_3__0 )? ) )
-            // InternalOCLinEcore.g:9362:1: ( ( rule__DocumentationCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:9363:1: ( ( ( rule__DocumentationCS__Group_3__0 )? ) )
+            // InternalOCLinEcore.g:9364:1: ( ( rule__DocumentationCS__Group_3__0 )? )
             {
-            // InternalOCLinEcore.g:9362:1: ( ( rule__DocumentationCS__Group_3__0 )? )
-            // InternalOCLinEcore.g:9363:1: ( rule__DocumentationCS__Group_3__0 )?
+            // InternalOCLinEcore.g:9364:1: ( ( rule__DocumentationCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:9365:1: ( rule__DocumentationCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getGroup_3());
             }
-            // InternalOCLinEcore.g:9364:1: ( rule__DocumentationCS__Group_3__0 )?
+            // InternalOCLinEcore.g:9366:1: ( rule__DocumentationCS__Group_3__0 )?
             int alt115=2;
             int LA115_0 = input.LA(1);
 
@@ -30650,7 +30650,7 @@
             }
             switch (alt115) {
                 case 1 :
-                    // InternalOCLinEcore.g:9364:2: rule__DocumentationCS__Group_3__0
+                    // InternalOCLinEcore.g:9366:2: rule__DocumentationCS__Group_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DocumentationCS__Group_3__0();
@@ -30688,14 +30688,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__4"
-    // InternalOCLinEcore.g:9374:1: rule__DocumentationCS__Group__4 : rule__DocumentationCS__Group__4__Impl ;
+    // InternalOCLinEcore.g:9376:1: rule__DocumentationCS__Group__4 : rule__DocumentationCS__Group__4__Impl ;
     public final void rule__DocumentationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9378:1: ( rule__DocumentationCS__Group__4__Impl )
-            // InternalOCLinEcore.g:9379:2: rule__DocumentationCS__Group__4__Impl
+            // InternalOCLinEcore.g:9380:1: ( rule__DocumentationCS__Group__4__Impl )
+            // InternalOCLinEcore.g:9381:2: rule__DocumentationCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DocumentationCS__Group__4__Impl();
@@ -30721,17 +30721,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__4__Impl"
-    // InternalOCLinEcore.g:9385:1: rule__DocumentationCS__Group__4__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:9387:1: rule__DocumentationCS__Group__4__Impl : ( ';' ) ;
     public final void rule__DocumentationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9389:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:9390:1: ( ';' )
+            // InternalOCLinEcore.g:9391:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:9392:1: ( ';' )
             {
-            // InternalOCLinEcore.g:9390:1: ( ';' )
-            // InternalOCLinEcore.g:9391:1: ';'
+            // InternalOCLinEcore.g:9392:1: ( ';' )
+            // InternalOCLinEcore.g:9393:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4());
@@ -30762,14 +30762,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__0"
-    // InternalOCLinEcore.g:9414:1: rule__DocumentationCS__Group_3__0 : rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1 ;
+    // InternalOCLinEcore.g:9416:1: rule__DocumentationCS__Group_3__0 : rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1 ;
     public final void rule__DocumentationCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9418:1: ( rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1 )
-            // InternalOCLinEcore.g:9419:2: rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1
+            // InternalOCLinEcore.g:9420:1: ( rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1 )
+            // InternalOCLinEcore.g:9421:2: rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__DocumentationCS__Group_3__0__Impl();
@@ -30800,17 +30800,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__0__Impl"
-    // InternalOCLinEcore.g:9426:1: rule__DocumentationCS__Group_3__0__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:9428:1: rule__DocumentationCS__Group_3__0__Impl : ( '(' ) ;
     public final void rule__DocumentationCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9430:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:9431:1: ( '(' )
+            // InternalOCLinEcore.g:9432:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:9433:1: ( '(' )
             {
-            // InternalOCLinEcore.g:9431:1: ( '(' )
-            // InternalOCLinEcore.g:9432:1: '('
+            // InternalOCLinEcore.g:9433:1: ( '(' )
+            // InternalOCLinEcore.g:9434:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0());
@@ -30841,14 +30841,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__1"
-    // InternalOCLinEcore.g:9445:1: rule__DocumentationCS__Group_3__1 : rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2 ;
+    // InternalOCLinEcore.g:9447:1: rule__DocumentationCS__Group_3__1 : rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2 ;
     public final void rule__DocumentationCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9449:1: ( rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2 )
-            // InternalOCLinEcore.g:9450:2: rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2
+            // InternalOCLinEcore.g:9451:1: ( rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2 )
+            // InternalOCLinEcore.g:9452:2: rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2
             {
             pushFollow(FollowSets000.FOLLOW_19);
             rule__DocumentationCS__Group_3__1__Impl();
@@ -30879,23 +30879,23 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__1__Impl"
-    // InternalOCLinEcore.g:9457:1: rule__DocumentationCS__Group_3__1__Impl : ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) ) ;
+    // InternalOCLinEcore.g:9459:1: rule__DocumentationCS__Group_3__1__Impl : ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) ) ;
     public final void rule__DocumentationCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9461:1: ( ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) ) )
-            // InternalOCLinEcore.g:9462:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) )
+            // InternalOCLinEcore.g:9463:1: ( ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) ) )
+            // InternalOCLinEcore.g:9464:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) )
             {
-            // InternalOCLinEcore.g:9462:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) )
-            // InternalOCLinEcore.g:9463:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 )
+            // InternalOCLinEcore.g:9464:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) )
+            // InternalOCLinEcore.g:9465:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_1());
             }
-            // InternalOCLinEcore.g:9464:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 )
-            // InternalOCLinEcore.g:9464:2: rule__DocumentationCS__OwnedDetailsAssignment_3_1
+            // InternalOCLinEcore.g:9466:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 )
+            // InternalOCLinEcore.g:9466:2: rule__DocumentationCS__OwnedDetailsAssignment_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DocumentationCS__OwnedDetailsAssignment_3_1();
@@ -30930,14 +30930,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__2"
-    // InternalOCLinEcore.g:9474:1: rule__DocumentationCS__Group_3__2 : rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3 ;
+    // InternalOCLinEcore.g:9476:1: rule__DocumentationCS__Group_3__2 : rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3 ;
     public final void rule__DocumentationCS__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9478:1: ( rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3 )
-            // InternalOCLinEcore.g:9479:2: rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3
+            // InternalOCLinEcore.g:9480:1: ( rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3 )
+            // InternalOCLinEcore.g:9481:2: rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3
             {
             pushFollow(FollowSets000.FOLLOW_19);
             rule__DocumentationCS__Group_3__2__Impl();
@@ -30968,22 +30968,22 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__2__Impl"
-    // InternalOCLinEcore.g:9486:1: rule__DocumentationCS__Group_3__2__Impl : ( ( rule__DocumentationCS__Group_3_2__0 )* ) ;
+    // InternalOCLinEcore.g:9488:1: rule__DocumentationCS__Group_3__2__Impl : ( ( rule__DocumentationCS__Group_3_2__0 )* ) ;
     public final void rule__DocumentationCS__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9490:1: ( ( ( rule__DocumentationCS__Group_3_2__0 )* ) )
-            // InternalOCLinEcore.g:9491:1: ( ( rule__DocumentationCS__Group_3_2__0 )* )
+            // InternalOCLinEcore.g:9492:1: ( ( ( rule__DocumentationCS__Group_3_2__0 )* ) )
+            // InternalOCLinEcore.g:9493:1: ( ( rule__DocumentationCS__Group_3_2__0 )* )
             {
-            // InternalOCLinEcore.g:9491:1: ( ( rule__DocumentationCS__Group_3_2__0 )* )
-            // InternalOCLinEcore.g:9492:1: ( rule__DocumentationCS__Group_3_2__0 )*
+            // InternalOCLinEcore.g:9493:1: ( ( rule__DocumentationCS__Group_3_2__0 )* )
+            // InternalOCLinEcore.g:9494:1: ( rule__DocumentationCS__Group_3_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getGroup_3_2());
             }
-            // InternalOCLinEcore.g:9493:1: ( rule__DocumentationCS__Group_3_2__0 )*
+            // InternalOCLinEcore.g:9495:1: ( rule__DocumentationCS__Group_3_2__0 )*
             loop116:
             do {
                 int alt116=2;
@@ -30996,7 +30996,7 @@
 
                 switch (alt116) {
             	case 1 :
-            	    // InternalOCLinEcore.g:9493:2: rule__DocumentationCS__Group_3_2__0
+            	    // InternalOCLinEcore.g:9495:2: rule__DocumentationCS__Group_3_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__DocumentationCS__Group_3_2__0();
@@ -31037,14 +31037,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__3"
-    // InternalOCLinEcore.g:9503:1: rule__DocumentationCS__Group_3__3 : rule__DocumentationCS__Group_3__3__Impl ;
+    // InternalOCLinEcore.g:9505:1: rule__DocumentationCS__Group_3__3 : rule__DocumentationCS__Group_3__3__Impl ;
     public final void rule__DocumentationCS__Group_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9507:1: ( rule__DocumentationCS__Group_3__3__Impl )
-            // InternalOCLinEcore.g:9508:2: rule__DocumentationCS__Group_3__3__Impl
+            // InternalOCLinEcore.g:9509:1: ( rule__DocumentationCS__Group_3__3__Impl )
+            // InternalOCLinEcore.g:9510:2: rule__DocumentationCS__Group_3__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DocumentationCS__Group_3__3__Impl();
@@ -31070,17 +31070,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__3__Impl"
-    // InternalOCLinEcore.g:9514:1: rule__DocumentationCS__Group_3__3__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:9516:1: rule__DocumentationCS__Group_3__3__Impl : ( ')' ) ;
     public final void rule__DocumentationCS__Group_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9518:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:9519:1: ( ')' )
+            // InternalOCLinEcore.g:9520:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:9521:1: ( ')' )
             {
-            // InternalOCLinEcore.g:9519:1: ( ')' )
-            // InternalOCLinEcore.g:9520:1: ')'
+            // InternalOCLinEcore.g:9521:1: ( ')' )
+            // InternalOCLinEcore.g:9522:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3());
@@ -31111,14 +31111,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3_2__0"
-    // InternalOCLinEcore.g:9541:1: rule__DocumentationCS__Group_3_2__0 : rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1 ;
+    // InternalOCLinEcore.g:9543:1: rule__DocumentationCS__Group_3_2__0 : rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1 ;
     public final void rule__DocumentationCS__Group_3_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9545:1: ( rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1 )
-            // InternalOCLinEcore.g:9546:2: rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1
+            // InternalOCLinEcore.g:9547:1: ( rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1 )
+            // InternalOCLinEcore.g:9548:2: rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__DocumentationCS__Group_3_2__0__Impl();
@@ -31149,17 +31149,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3_2__0__Impl"
-    // InternalOCLinEcore.g:9553:1: rule__DocumentationCS__Group_3_2__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:9555:1: rule__DocumentationCS__Group_3_2__0__Impl : ( ',' ) ;
     public final void rule__DocumentationCS__Group_3_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9557:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:9558:1: ( ',' )
+            // InternalOCLinEcore.g:9559:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:9560:1: ( ',' )
             {
-            // InternalOCLinEcore.g:9558:1: ( ',' )
-            // InternalOCLinEcore.g:9559:1: ','
+            // InternalOCLinEcore.g:9560:1: ( ',' )
+            // InternalOCLinEcore.g:9561:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0());
@@ -31190,14 +31190,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3_2__1"
-    // InternalOCLinEcore.g:9572:1: rule__DocumentationCS__Group_3_2__1 : rule__DocumentationCS__Group_3_2__1__Impl ;
+    // InternalOCLinEcore.g:9574:1: rule__DocumentationCS__Group_3_2__1 : rule__DocumentationCS__Group_3_2__1__Impl ;
     public final void rule__DocumentationCS__Group_3_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9576:1: ( rule__DocumentationCS__Group_3_2__1__Impl )
-            // InternalOCLinEcore.g:9577:2: rule__DocumentationCS__Group_3_2__1__Impl
+            // InternalOCLinEcore.g:9578:1: ( rule__DocumentationCS__Group_3_2__1__Impl )
+            // InternalOCLinEcore.g:9579:2: rule__DocumentationCS__Group_3_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DocumentationCS__Group_3_2__1__Impl();
@@ -31223,23 +31223,23 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3_2__1__Impl"
-    // InternalOCLinEcore.g:9583:1: rule__DocumentationCS__Group_3_2__1__Impl : ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) ) ;
+    // InternalOCLinEcore.g:9585:1: rule__DocumentationCS__Group_3_2__1__Impl : ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) ) ;
     public final void rule__DocumentationCS__Group_3_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9587:1: ( ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) ) )
-            // InternalOCLinEcore.g:9588:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) )
+            // InternalOCLinEcore.g:9589:1: ( ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) ) )
+            // InternalOCLinEcore.g:9590:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) )
             {
-            // InternalOCLinEcore.g:9588:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) )
-            // InternalOCLinEcore.g:9589:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 )
+            // InternalOCLinEcore.g:9590:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) )
+            // InternalOCLinEcore.g:9591:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_2_1());
             }
-            // InternalOCLinEcore.g:9590:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 )
-            // InternalOCLinEcore.g:9590:2: rule__DocumentationCS__OwnedDetailsAssignment_3_2_1
+            // InternalOCLinEcore.g:9592:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 )
+            // InternalOCLinEcore.g:9592:2: rule__DocumentationCS__OwnedDetailsAssignment_3_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DocumentationCS__OwnedDetailsAssignment_3_2_1();
@@ -31274,14 +31274,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group__0"
-    // InternalOCLinEcore.g:9604:1: rule__EnumerationCS__Group__0 : rule__EnumerationCS__Group__0__Impl rule__EnumerationCS__Group__1 ;
+    // InternalOCLinEcore.g:9606:1: rule__EnumerationCS__Group__0 : rule__EnumerationCS__Group__0__Impl rule__EnumerationCS__Group__1 ;
     public final void rule__EnumerationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9608:1: ( rule__EnumerationCS__Group__0__Impl rule__EnumerationCS__Group__1 )
-            // InternalOCLinEcore.g:9609:2: rule__EnumerationCS__Group__0__Impl rule__EnumerationCS__Group__1
+            // InternalOCLinEcore.g:9610:1: ( rule__EnumerationCS__Group__0__Impl rule__EnumerationCS__Group__1 )
+            // InternalOCLinEcore.g:9611:2: rule__EnumerationCS__Group__0__Impl rule__EnumerationCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__EnumerationCS__Group__0__Impl();
@@ -31312,17 +31312,17 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group__0__Impl"
-    // InternalOCLinEcore.g:9616:1: rule__EnumerationCS__Group__0__Impl : ( 'enum' ) ;
+    // InternalOCLinEcore.g:9618:1: rule__EnumerationCS__Group__0__Impl : ( 'enum' ) ;
     public final void rule__EnumerationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9620:1: ( ( 'enum' ) )
-            // InternalOCLinEcore.g:9621:1: ( 'enum' )
+            // InternalOCLinEcore.g:9622:1: ( ( 'enum' ) )
+            // InternalOCLinEcore.g:9623:1: ( 'enum' )
             {
-            // InternalOCLinEcore.g:9621:1: ( 'enum' )
-            // InternalOCLinEcore.g:9622:1: 'enum'
+            // InternalOCLinEcore.g:9623:1: ( 'enum' )
+            // InternalOCLinEcore.g:9624:1: 'enum'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getEnumKeyword_0());
@@ -31353,14 +31353,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group__1"
-    // InternalOCLinEcore.g:9635:1: rule__EnumerationCS__Group__1 : rule__EnumerationCS__Group__1__Impl rule__EnumerationCS__Group__2 ;
+    // InternalOCLinEcore.g:9637:1: rule__EnumerationCS__Group__1 : rule__EnumerationCS__Group__1__Impl rule__EnumerationCS__Group__2 ;
     public final void rule__EnumerationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9639:1: ( rule__EnumerationCS__Group__1__Impl rule__EnumerationCS__Group__2 )
-            // InternalOCLinEcore.g:9640:2: rule__EnumerationCS__Group__1__Impl rule__EnumerationCS__Group__2
+            // InternalOCLinEcore.g:9641:1: ( rule__EnumerationCS__Group__1__Impl rule__EnumerationCS__Group__2 )
+            // InternalOCLinEcore.g:9642:2: rule__EnumerationCS__Group__1__Impl rule__EnumerationCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__EnumerationCS__Group__1__Impl();
@@ -31391,23 +31391,23 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group__1__Impl"
-    // InternalOCLinEcore.g:9647:1: rule__EnumerationCS__Group__1__Impl : ( ( rule__EnumerationCS__NameAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:9649:1: rule__EnumerationCS__Group__1__Impl : ( ( rule__EnumerationCS__NameAssignment_1 ) ) ;
     public final void rule__EnumerationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9651:1: ( ( ( rule__EnumerationCS__NameAssignment_1 ) ) )
-            // InternalOCLinEcore.g:9652:1: ( ( rule__EnumerationCS__NameAssignment_1 ) )
+            // InternalOCLinEcore.g:9653:1: ( ( ( rule__EnumerationCS__NameAssignment_1 ) ) )
+            // InternalOCLinEcore.g:9654:1: ( ( rule__EnumerationCS__NameAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:9652:1: ( ( rule__EnumerationCS__NameAssignment_1 ) )
-            // InternalOCLinEcore.g:9653:1: ( rule__EnumerationCS__NameAssignment_1 )
+            // InternalOCLinEcore.g:9654:1: ( ( rule__EnumerationCS__NameAssignment_1 ) )
+            // InternalOCLinEcore.g:9655:1: ( rule__EnumerationCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getNameAssignment_1());
             }
-            // InternalOCLinEcore.g:9654:1: ( rule__EnumerationCS__NameAssignment_1 )
-            // InternalOCLinEcore.g:9654:2: rule__EnumerationCS__NameAssignment_1
+            // InternalOCLinEcore.g:9656:1: ( rule__EnumerationCS__NameAssignment_1 )
+            // InternalOCLinEcore.g:9656:2: rule__EnumerationCS__NameAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationCS__NameAssignment_1();
@@ -31442,14 +31442,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group__2"
-    // InternalOCLinEcore.g:9664:1: rule__EnumerationCS__Group__2 : rule__EnumerationCS__Group__2__Impl rule__EnumerationCS__Group__3 ;
+    // InternalOCLinEcore.g:9666:1: rule__EnumerationCS__Group__2 : rule__EnumerationCS__Group__2__Impl rule__EnumerationCS__Group__3 ;
     public final void rule__EnumerationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9668:1: ( rule__EnumerationCS__Group__2__Impl rule__EnumerationCS__Group__3 )
-            // InternalOCLinEcore.g:9669:2: rule__EnumerationCS__Group__2__Impl rule__EnumerationCS__Group__3
+            // InternalOCLinEcore.g:9670:1: ( rule__EnumerationCS__Group__2__Impl rule__EnumerationCS__Group__3 )
+            // InternalOCLinEcore.g:9671:2: rule__EnumerationCS__Group__2__Impl rule__EnumerationCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__EnumerationCS__Group__2__Impl();
@@ -31480,22 +31480,22 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group__2__Impl"
-    // InternalOCLinEcore.g:9676:1: rule__EnumerationCS__Group__2__Impl : ( ( rule__EnumerationCS__OwnedSignatureAssignment_2 )? ) ;
+    // InternalOCLinEcore.g:9678:1: rule__EnumerationCS__Group__2__Impl : ( ( rule__EnumerationCS__OwnedSignatureAssignment_2 )? ) ;
     public final void rule__EnumerationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9680:1: ( ( ( rule__EnumerationCS__OwnedSignatureAssignment_2 )? ) )
-            // InternalOCLinEcore.g:9681:1: ( ( rule__EnumerationCS__OwnedSignatureAssignment_2 )? )
+            // InternalOCLinEcore.g:9682:1: ( ( ( rule__EnumerationCS__OwnedSignatureAssignment_2 )? ) )
+            // InternalOCLinEcore.g:9683:1: ( ( rule__EnumerationCS__OwnedSignatureAssignment_2 )? )
             {
-            // InternalOCLinEcore.g:9681:1: ( ( rule__EnumerationCS__OwnedSignatureAssignment_2 )? )
-            // InternalOCLinEcore.g:9682:1: ( rule__EnumerationCS__OwnedSignatureAssignment_2 )?
+            // InternalOCLinEcore.g:9683:1: ( ( rule__EnumerationCS__OwnedSignatureAssignment_2 )? )
+            // InternalOCLinEcore.g:9684:1: ( rule__EnumerationCS__OwnedSignatureAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getOwnedSignatureAssignment_2());
             }
-            // InternalOCLinEcore.g:9683:1: ( rule__EnumerationCS__OwnedSignatureAssignment_2 )?
+            // InternalOCLinEcore.g:9685:1: ( rule__EnumerationCS__OwnedSignatureAssignment_2 )?
             int alt117=2;
             int LA117_0 = input.LA(1);
 
@@ -31504,7 +31504,7 @@
             }
             switch (alt117) {
                 case 1 :
-                    // InternalOCLinEcore.g:9683:2: rule__EnumerationCS__OwnedSignatureAssignment_2
+                    // InternalOCLinEcore.g:9685:2: rule__EnumerationCS__OwnedSignatureAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationCS__OwnedSignatureAssignment_2();
@@ -31542,14 +31542,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group__3"
-    // InternalOCLinEcore.g:9693:1: rule__EnumerationCS__Group__3 : rule__EnumerationCS__Group__3__Impl rule__EnumerationCS__Group__4 ;
+    // InternalOCLinEcore.g:9695:1: rule__EnumerationCS__Group__3 : rule__EnumerationCS__Group__3__Impl rule__EnumerationCS__Group__4 ;
     public final void rule__EnumerationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9697:1: ( rule__EnumerationCS__Group__3__Impl rule__EnumerationCS__Group__4 )
-            // InternalOCLinEcore.g:9698:2: rule__EnumerationCS__Group__3__Impl rule__EnumerationCS__Group__4
+            // InternalOCLinEcore.g:9699:1: ( rule__EnumerationCS__Group__3__Impl rule__EnumerationCS__Group__4 )
+            // InternalOCLinEcore.g:9700:2: rule__EnumerationCS__Group__3__Impl rule__EnumerationCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__EnumerationCS__Group__3__Impl();
@@ -31580,22 +31580,22 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group__3__Impl"
-    // InternalOCLinEcore.g:9705:1: rule__EnumerationCS__Group__3__Impl : ( ( rule__EnumerationCS__Group_3__0 )? ) ;
+    // InternalOCLinEcore.g:9707:1: rule__EnumerationCS__Group__3__Impl : ( ( rule__EnumerationCS__Group_3__0 )? ) ;
     public final void rule__EnumerationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9709:1: ( ( ( rule__EnumerationCS__Group_3__0 )? ) )
-            // InternalOCLinEcore.g:9710:1: ( ( rule__EnumerationCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:9711:1: ( ( ( rule__EnumerationCS__Group_3__0 )? ) )
+            // InternalOCLinEcore.g:9712:1: ( ( rule__EnumerationCS__Group_3__0 )? )
             {
-            // InternalOCLinEcore.g:9710:1: ( ( rule__EnumerationCS__Group_3__0 )? )
-            // InternalOCLinEcore.g:9711:1: ( rule__EnumerationCS__Group_3__0 )?
+            // InternalOCLinEcore.g:9712:1: ( ( rule__EnumerationCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:9713:1: ( rule__EnumerationCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getGroup_3());
             }
-            // InternalOCLinEcore.g:9712:1: ( rule__EnumerationCS__Group_3__0 )?
+            // InternalOCLinEcore.g:9714:1: ( rule__EnumerationCS__Group_3__0 )?
             int alt118=2;
             int LA118_0 = input.LA(1);
 
@@ -31604,7 +31604,7 @@
             }
             switch (alt118) {
                 case 1 :
-                    // InternalOCLinEcore.g:9712:2: rule__EnumerationCS__Group_3__0
+                    // InternalOCLinEcore.g:9714:2: rule__EnumerationCS__Group_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationCS__Group_3__0();
@@ -31642,14 +31642,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group__4"
-    // InternalOCLinEcore.g:9722:1: rule__EnumerationCS__Group__4 : rule__EnumerationCS__Group__4__Impl rule__EnumerationCS__Group__5 ;
+    // InternalOCLinEcore.g:9724:1: rule__EnumerationCS__Group__4 : rule__EnumerationCS__Group__4__Impl rule__EnumerationCS__Group__5 ;
     public final void rule__EnumerationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9726:1: ( rule__EnumerationCS__Group__4__Impl rule__EnumerationCS__Group__5 )
-            // InternalOCLinEcore.g:9727:2: rule__EnumerationCS__Group__4__Impl rule__EnumerationCS__Group__5
+            // InternalOCLinEcore.g:9728:1: ( rule__EnumerationCS__Group__4__Impl rule__EnumerationCS__Group__5 )
+            // InternalOCLinEcore.g:9729:2: rule__EnumerationCS__Group__4__Impl rule__EnumerationCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__EnumerationCS__Group__4__Impl();
@@ -31680,22 +31680,22 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group__4__Impl"
-    // InternalOCLinEcore.g:9734:1: rule__EnumerationCS__Group__4__Impl : ( ( rule__EnumerationCS__Group_4__0 )? ) ;
+    // InternalOCLinEcore.g:9736:1: rule__EnumerationCS__Group__4__Impl : ( ( rule__EnumerationCS__Group_4__0 )? ) ;
     public final void rule__EnumerationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9738:1: ( ( ( rule__EnumerationCS__Group_4__0 )? ) )
-            // InternalOCLinEcore.g:9739:1: ( ( rule__EnumerationCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:9740:1: ( ( ( rule__EnumerationCS__Group_4__0 )? ) )
+            // InternalOCLinEcore.g:9741:1: ( ( rule__EnumerationCS__Group_4__0 )? )
             {
-            // InternalOCLinEcore.g:9739:1: ( ( rule__EnumerationCS__Group_4__0 )? )
-            // InternalOCLinEcore.g:9740:1: ( rule__EnumerationCS__Group_4__0 )?
+            // InternalOCLinEcore.g:9741:1: ( ( rule__EnumerationCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:9742:1: ( rule__EnumerationCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getGroup_4());
             }
-            // InternalOCLinEcore.g:9741:1: ( rule__EnumerationCS__Group_4__0 )?
+            // InternalOCLinEcore.g:9743:1: ( rule__EnumerationCS__Group_4__0 )?
             int alt119=2;
             int LA119_0 = input.LA(1);
 
@@ -31715,7 +31715,7 @@
             }
             switch (alt119) {
                 case 1 :
-                    // InternalOCLinEcore.g:9741:2: rule__EnumerationCS__Group_4__0
+                    // InternalOCLinEcore.g:9743:2: rule__EnumerationCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationCS__Group_4__0();
@@ -31753,14 +31753,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group__5"
-    // InternalOCLinEcore.g:9751:1: rule__EnumerationCS__Group__5 : rule__EnumerationCS__Group__5__Impl ;
+    // InternalOCLinEcore.g:9753:1: rule__EnumerationCS__Group__5 : rule__EnumerationCS__Group__5__Impl ;
     public final void rule__EnumerationCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9755:1: ( rule__EnumerationCS__Group__5__Impl )
-            // InternalOCLinEcore.g:9756:2: rule__EnumerationCS__Group__5__Impl
+            // InternalOCLinEcore.g:9757:1: ( rule__EnumerationCS__Group__5__Impl )
+            // InternalOCLinEcore.g:9758:2: rule__EnumerationCS__Group__5__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationCS__Group__5__Impl();
@@ -31786,23 +31786,23 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group__5__Impl"
-    // InternalOCLinEcore.g:9762:1: rule__EnumerationCS__Group__5__Impl : ( ( rule__EnumerationCS__Alternatives_5 ) ) ;
+    // InternalOCLinEcore.g:9764:1: rule__EnumerationCS__Group__5__Impl : ( ( rule__EnumerationCS__Alternatives_5 ) ) ;
     public final void rule__EnumerationCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9766:1: ( ( ( rule__EnumerationCS__Alternatives_5 ) ) )
-            // InternalOCLinEcore.g:9767:1: ( ( rule__EnumerationCS__Alternatives_5 ) )
+            // InternalOCLinEcore.g:9768:1: ( ( ( rule__EnumerationCS__Alternatives_5 ) ) )
+            // InternalOCLinEcore.g:9769:1: ( ( rule__EnumerationCS__Alternatives_5 ) )
             {
-            // InternalOCLinEcore.g:9767:1: ( ( rule__EnumerationCS__Alternatives_5 ) )
-            // InternalOCLinEcore.g:9768:1: ( rule__EnumerationCS__Alternatives_5 )
+            // InternalOCLinEcore.g:9769:1: ( ( rule__EnumerationCS__Alternatives_5 ) )
+            // InternalOCLinEcore.g:9770:1: ( rule__EnumerationCS__Alternatives_5 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getAlternatives_5());
             }
-            // InternalOCLinEcore.g:9769:1: ( rule__EnumerationCS__Alternatives_5 )
-            // InternalOCLinEcore.g:9769:2: rule__EnumerationCS__Alternatives_5
+            // InternalOCLinEcore.g:9771:1: ( rule__EnumerationCS__Alternatives_5 )
+            // InternalOCLinEcore.g:9771:2: rule__EnumerationCS__Alternatives_5
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationCS__Alternatives_5();
@@ -31837,14 +31837,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_3__0"
-    // InternalOCLinEcore.g:9791:1: rule__EnumerationCS__Group_3__0 : rule__EnumerationCS__Group_3__0__Impl rule__EnumerationCS__Group_3__1 ;
+    // InternalOCLinEcore.g:9793:1: rule__EnumerationCS__Group_3__0 : rule__EnumerationCS__Group_3__0__Impl rule__EnumerationCS__Group_3__1 ;
     public final void rule__EnumerationCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9795:1: ( rule__EnumerationCS__Group_3__0__Impl rule__EnumerationCS__Group_3__1 )
-            // InternalOCLinEcore.g:9796:2: rule__EnumerationCS__Group_3__0__Impl rule__EnumerationCS__Group_3__1
+            // InternalOCLinEcore.g:9797:1: ( rule__EnumerationCS__Group_3__0__Impl rule__EnumerationCS__Group_3__1 )
+            // InternalOCLinEcore.g:9798:2: rule__EnumerationCS__Group_3__0__Impl rule__EnumerationCS__Group_3__1
             {
             pushFollow(FollowSets000.FOLLOW_29);
             rule__EnumerationCS__Group_3__0__Impl();
@@ -31875,17 +31875,17 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_3__0__Impl"
-    // InternalOCLinEcore.g:9803:1: rule__EnumerationCS__Group_3__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:9805:1: rule__EnumerationCS__Group_3__0__Impl : ( ':' ) ;
     public final void rule__EnumerationCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9807:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:9808:1: ( ':' )
+            // InternalOCLinEcore.g:9809:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:9810:1: ( ':' )
             {
-            // InternalOCLinEcore.g:9808:1: ( ':' )
-            // InternalOCLinEcore.g:9809:1: ':'
+            // InternalOCLinEcore.g:9810:1: ( ':' )
+            // InternalOCLinEcore.g:9811:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getColonKeyword_3_0());
@@ -31916,14 +31916,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_3__1"
-    // InternalOCLinEcore.g:9822:1: rule__EnumerationCS__Group_3__1 : rule__EnumerationCS__Group_3__1__Impl ;
+    // InternalOCLinEcore.g:9824:1: rule__EnumerationCS__Group_3__1 : rule__EnumerationCS__Group_3__1__Impl ;
     public final void rule__EnumerationCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9826:1: ( rule__EnumerationCS__Group_3__1__Impl )
-            // InternalOCLinEcore.g:9827:2: rule__EnumerationCS__Group_3__1__Impl
+            // InternalOCLinEcore.g:9828:1: ( rule__EnumerationCS__Group_3__1__Impl )
+            // InternalOCLinEcore.g:9829:2: rule__EnumerationCS__Group_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationCS__Group_3__1__Impl();
@@ -31949,23 +31949,23 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_3__1__Impl"
-    // InternalOCLinEcore.g:9833:1: rule__EnumerationCS__Group_3__1__Impl : ( ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 ) ) ;
+    // InternalOCLinEcore.g:9835:1: rule__EnumerationCS__Group_3__1__Impl : ( ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 ) ) ;
     public final void rule__EnumerationCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9837:1: ( ( ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 ) ) )
-            // InternalOCLinEcore.g:9838:1: ( ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 ) )
+            // InternalOCLinEcore.g:9839:1: ( ( ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 ) ) )
+            // InternalOCLinEcore.g:9840:1: ( ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 ) )
             {
-            // InternalOCLinEcore.g:9838:1: ( ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 ) )
-            // InternalOCLinEcore.g:9839:1: ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 )
+            // InternalOCLinEcore.g:9840:1: ( ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 ) )
+            // InternalOCLinEcore.g:9841:1: ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getInstanceClassNameAssignment_3_1());
             }
-            // InternalOCLinEcore.g:9840:1: ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 )
-            // InternalOCLinEcore.g:9840:2: rule__EnumerationCS__InstanceClassNameAssignment_3_1
+            // InternalOCLinEcore.g:9842:1: ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 )
+            // InternalOCLinEcore.g:9842:2: rule__EnumerationCS__InstanceClassNameAssignment_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationCS__InstanceClassNameAssignment_3_1();
@@ -32000,14 +32000,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_4__0"
-    // InternalOCLinEcore.g:9854:1: rule__EnumerationCS__Group_4__0 : rule__EnumerationCS__Group_4__0__Impl rule__EnumerationCS__Group_4__1 ;
+    // InternalOCLinEcore.g:9856:1: rule__EnumerationCS__Group_4__0 : rule__EnumerationCS__Group_4__0__Impl rule__EnumerationCS__Group_4__1 ;
     public final void rule__EnumerationCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9858:1: ( rule__EnumerationCS__Group_4__0__Impl rule__EnumerationCS__Group_4__1 )
-            // InternalOCLinEcore.g:9859:2: rule__EnumerationCS__Group_4__0__Impl rule__EnumerationCS__Group_4__1
+            // InternalOCLinEcore.g:9860:1: ( rule__EnumerationCS__Group_4__0__Impl rule__EnumerationCS__Group_4__1 )
+            // InternalOCLinEcore.g:9861:2: rule__EnumerationCS__Group_4__0__Impl rule__EnumerationCS__Group_4__1
             {
             pushFollow(FollowSets000.FOLLOW_37);
             rule__EnumerationCS__Group_4__0__Impl();
@@ -32038,17 +32038,17 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_4__0__Impl"
-    // InternalOCLinEcore.g:9866:1: rule__EnumerationCS__Group_4__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:9868:1: rule__EnumerationCS__Group_4__0__Impl : ( '{' ) ;
     public final void rule__EnumerationCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9870:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:9871:1: ( '{' )
+            // InternalOCLinEcore.g:9872:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:9873:1: ( '{' )
             {
-            // InternalOCLinEcore.g:9871:1: ( '{' )
-            // InternalOCLinEcore.g:9872:1: '{'
+            // InternalOCLinEcore.g:9873:1: ( '{' )
+            // InternalOCLinEcore.g:9874:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_4_0());
@@ -32079,14 +32079,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_4__1"
-    // InternalOCLinEcore.g:9885:1: rule__EnumerationCS__Group_4__1 : rule__EnumerationCS__Group_4__1__Impl rule__EnumerationCS__Group_4__2 ;
+    // InternalOCLinEcore.g:9887:1: rule__EnumerationCS__Group_4__1 : rule__EnumerationCS__Group_4__1__Impl rule__EnumerationCS__Group_4__2 ;
     public final void rule__EnumerationCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9889:1: ( rule__EnumerationCS__Group_4__1__Impl rule__EnumerationCS__Group_4__2 )
-            // InternalOCLinEcore.g:9890:2: rule__EnumerationCS__Group_4__1__Impl rule__EnumerationCS__Group_4__2
+            // InternalOCLinEcore.g:9891:1: ( rule__EnumerationCS__Group_4__1__Impl rule__EnumerationCS__Group_4__2 )
+            // InternalOCLinEcore.g:9892:2: rule__EnumerationCS__Group_4__1__Impl rule__EnumerationCS__Group_4__2
             {
             pushFollow(FollowSets000.FOLLOW_37);
             rule__EnumerationCS__Group_4__1__Impl();
@@ -32117,22 +32117,22 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_4__1__Impl"
-    // InternalOCLinEcore.g:9897:1: rule__EnumerationCS__Group_4__1__Impl : ( ( rule__EnumerationCS__Alternatives_4_1 )? ) ;
+    // InternalOCLinEcore.g:9899:1: rule__EnumerationCS__Group_4__1__Impl : ( ( rule__EnumerationCS__Alternatives_4_1 )? ) ;
     public final void rule__EnumerationCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9901:1: ( ( ( rule__EnumerationCS__Alternatives_4_1 )? ) )
-            // InternalOCLinEcore.g:9902:1: ( ( rule__EnumerationCS__Alternatives_4_1 )? )
+            // InternalOCLinEcore.g:9903:1: ( ( ( rule__EnumerationCS__Alternatives_4_1 )? ) )
+            // InternalOCLinEcore.g:9904:1: ( ( rule__EnumerationCS__Alternatives_4_1 )? )
             {
-            // InternalOCLinEcore.g:9902:1: ( ( rule__EnumerationCS__Alternatives_4_1 )? )
-            // InternalOCLinEcore.g:9903:1: ( rule__EnumerationCS__Alternatives_4_1 )?
+            // InternalOCLinEcore.g:9904:1: ( ( rule__EnumerationCS__Alternatives_4_1 )? )
+            // InternalOCLinEcore.g:9905:1: ( rule__EnumerationCS__Alternatives_4_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getAlternatives_4_1());
             }
-            // InternalOCLinEcore.g:9904:1: ( rule__EnumerationCS__Alternatives_4_1 )?
+            // InternalOCLinEcore.g:9906:1: ( rule__EnumerationCS__Alternatives_4_1 )?
             int alt120=2;
             int LA120_0 = input.LA(1);
 
@@ -32141,7 +32141,7 @@
             }
             switch (alt120) {
                 case 1 :
-                    // InternalOCLinEcore.g:9904:2: rule__EnumerationCS__Alternatives_4_1
+                    // InternalOCLinEcore.g:9906:2: rule__EnumerationCS__Alternatives_4_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationCS__Alternatives_4_1();
@@ -32179,14 +32179,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_4__2"
-    // InternalOCLinEcore.g:9914:1: rule__EnumerationCS__Group_4__2 : rule__EnumerationCS__Group_4__2__Impl ;
+    // InternalOCLinEcore.g:9916:1: rule__EnumerationCS__Group_4__2 : rule__EnumerationCS__Group_4__2__Impl ;
     public final void rule__EnumerationCS__Group_4__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9918:1: ( rule__EnumerationCS__Group_4__2__Impl )
-            // InternalOCLinEcore.g:9919:2: rule__EnumerationCS__Group_4__2__Impl
+            // InternalOCLinEcore.g:9920:1: ( rule__EnumerationCS__Group_4__2__Impl )
+            // InternalOCLinEcore.g:9921:2: rule__EnumerationCS__Group_4__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationCS__Group_4__2__Impl();
@@ -32212,17 +32212,17 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_4__2__Impl"
-    // InternalOCLinEcore.g:9925:1: rule__EnumerationCS__Group_4__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:9927:1: rule__EnumerationCS__Group_4__2__Impl : ( '}' ) ;
     public final void rule__EnumerationCS__Group_4__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9929:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:9930:1: ( '}' )
+            // InternalOCLinEcore.g:9931:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:9932:1: ( '}' )
             {
-            // InternalOCLinEcore.g:9930:1: ( '}' )
-            // InternalOCLinEcore.g:9931:1: '}'
+            // InternalOCLinEcore.g:9932:1: ( '}' )
+            // InternalOCLinEcore.g:9933:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_4_2());
@@ -32253,14 +32253,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_5_0__0"
-    // InternalOCLinEcore.g:9950:1: rule__EnumerationCS__Group_5_0__0 : rule__EnumerationCS__Group_5_0__0__Impl rule__EnumerationCS__Group_5_0__1 ;
+    // InternalOCLinEcore.g:9952:1: rule__EnumerationCS__Group_5_0__0 : rule__EnumerationCS__Group_5_0__0__Impl rule__EnumerationCS__Group_5_0__1 ;
     public final void rule__EnumerationCS__Group_5_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9954:1: ( rule__EnumerationCS__Group_5_0__0__Impl rule__EnumerationCS__Group_5_0__1 )
-            // InternalOCLinEcore.g:9955:2: rule__EnumerationCS__Group_5_0__0__Impl rule__EnumerationCS__Group_5_0__1
+            // InternalOCLinEcore.g:9956:1: ( rule__EnumerationCS__Group_5_0__0__Impl rule__EnumerationCS__Group_5_0__1 )
+            // InternalOCLinEcore.g:9957:2: rule__EnumerationCS__Group_5_0__0__Impl rule__EnumerationCS__Group_5_0__1
             {
             pushFollow(FollowSets000.FOLLOW_45);
             rule__EnumerationCS__Group_5_0__0__Impl();
@@ -32291,17 +32291,17 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_5_0__0__Impl"
-    // InternalOCLinEcore.g:9962:1: rule__EnumerationCS__Group_5_0__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:9964:1: rule__EnumerationCS__Group_5_0__0__Impl : ( '{' ) ;
     public final void rule__EnumerationCS__Group_5_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9966:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:9967:1: ( '{' )
+            // InternalOCLinEcore.g:9968:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:9969:1: ( '{' )
             {
-            // InternalOCLinEcore.g:9967:1: ( '{' )
-            // InternalOCLinEcore.g:9968:1: '{'
+            // InternalOCLinEcore.g:9969:1: ( '{' )
+            // InternalOCLinEcore.g:9970:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_5_0_0());
@@ -32332,14 +32332,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_5_0__1"
-    // InternalOCLinEcore.g:9981:1: rule__EnumerationCS__Group_5_0__1 : rule__EnumerationCS__Group_5_0__1__Impl rule__EnumerationCS__Group_5_0__2 ;
+    // InternalOCLinEcore.g:9983:1: rule__EnumerationCS__Group_5_0__1 : rule__EnumerationCS__Group_5_0__1__Impl rule__EnumerationCS__Group_5_0__2 ;
     public final void rule__EnumerationCS__Group_5_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9985:1: ( rule__EnumerationCS__Group_5_0__1__Impl rule__EnumerationCS__Group_5_0__2 )
-            // InternalOCLinEcore.g:9986:2: rule__EnumerationCS__Group_5_0__1__Impl rule__EnumerationCS__Group_5_0__2
+            // InternalOCLinEcore.g:9987:1: ( rule__EnumerationCS__Group_5_0__1__Impl rule__EnumerationCS__Group_5_0__2 )
+            // InternalOCLinEcore.g:9988:2: rule__EnumerationCS__Group_5_0__1__Impl rule__EnumerationCS__Group_5_0__2
             {
             pushFollow(FollowSets000.FOLLOW_45);
             rule__EnumerationCS__Group_5_0__1__Impl();
@@ -32370,22 +32370,22 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_5_0__1__Impl"
-    // InternalOCLinEcore.g:9993:1: rule__EnumerationCS__Group_5_0__1__Impl : ( ( rule__EnumerationCS__Alternatives_5_0_1 )* ) ;
+    // InternalOCLinEcore.g:9995:1: rule__EnumerationCS__Group_5_0__1__Impl : ( ( rule__EnumerationCS__Alternatives_5_0_1 )* ) ;
     public final void rule__EnumerationCS__Group_5_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:9997:1: ( ( ( rule__EnumerationCS__Alternatives_5_0_1 )* ) )
-            // InternalOCLinEcore.g:9998:1: ( ( rule__EnumerationCS__Alternatives_5_0_1 )* )
+            // InternalOCLinEcore.g:9999:1: ( ( ( rule__EnumerationCS__Alternatives_5_0_1 )* ) )
+            // InternalOCLinEcore.g:10000:1: ( ( rule__EnumerationCS__Alternatives_5_0_1 )* )
             {
-            // InternalOCLinEcore.g:9998:1: ( ( rule__EnumerationCS__Alternatives_5_0_1 )* )
-            // InternalOCLinEcore.g:9999:1: ( rule__EnumerationCS__Alternatives_5_0_1 )*
+            // InternalOCLinEcore.g:10000:1: ( ( rule__EnumerationCS__Alternatives_5_0_1 )* )
+            // InternalOCLinEcore.g:10001:1: ( rule__EnumerationCS__Alternatives_5_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getAlternatives_5_0_1());
             }
-            // InternalOCLinEcore.g:10000:1: ( rule__EnumerationCS__Alternatives_5_0_1 )*
+            // InternalOCLinEcore.g:10002:1: ( rule__EnumerationCS__Alternatives_5_0_1 )*
             loop121:
             do {
                 int alt121=2;
@@ -32398,7 +32398,7 @@
 
                 switch (alt121) {
             	case 1 :
-            	    // InternalOCLinEcore.g:10000:2: rule__EnumerationCS__Alternatives_5_0_1
+            	    // InternalOCLinEcore.g:10002:2: rule__EnumerationCS__Alternatives_5_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_46);
             	    rule__EnumerationCS__Alternatives_5_0_1();
@@ -32439,14 +32439,14 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_5_0__2"
-    // InternalOCLinEcore.g:10010:1: rule__EnumerationCS__Group_5_0__2 : rule__EnumerationCS__Group_5_0__2__Impl ;
+    // InternalOCLinEcore.g:10012:1: rule__EnumerationCS__Group_5_0__2 : rule__EnumerationCS__Group_5_0__2__Impl ;
     public final void rule__EnumerationCS__Group_5_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10014:1: ( rule__EnumerationCS__Group_5_0__2__Impl )
-            // InternalOCLinEcore.g:10015:2: rule__EnumerationCS__Group_5_0__2__Impl
+            // InternalOCLinEcore.g:10016:1: ( rule__EnumerationCS__Group_5_0__2__Impl )
+            // InternalOCLinEcore.g:10017:2: rule__EnumerationCS__Group_5_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationCS__Group_5_0__2__Impl();
@@ -32472,17 +32472,17 @@
 
 
     // $ANTLR start "rule__EnumerationCS__Group_5_0__2__Impl"
-    // InternalOCLinEcore.g:10021:1: rule__EnumerationCS__Group_5_0__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:10023:1: rule__EnumerationCS__Group_5_0__2__Impl : ( '}' ) ;
     public final void rule__EnumerationCS__Group_5_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10025:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:10026:1: ( '}' )
+            // InternalOCLinEcore.g:10027:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:10028:1: ( '}' )
             {
-            // InternalOCLinEcore.g:10026:1: ( '}' )
-            // InternalOCLinEcore.g:10027:1: '}'
+            // InternalOCLinEcore.g:10028:1: ( '}' )
+            // InternalOCLinEcore.g:10029:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_5_0_2());
@@ -32513,14 +32513,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group__0"
-    // InternalOCLinEcore.g:10046:1: rule__EnumerationLiteralCS__Group__0 : rule__EnumerationLiteralCS__Group__0__Impl rule__EnumerationLiteralCS__Group__1 ;
+    // InternalOCLinEcore.g:10048:1: rule__EnumerationLiteralCS__Group__0 : rule__EnumerationLiteralCS__Group__0__Impl rule__EnumerationLiteralCS__Group__1 ;
     public final void rule__EnumerationLiteralCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10050:1: ( rule__EnumerationLiteralCS__Group__0__Impl rule__EnumerationLiteralCS__Group__1 )
-            // InternalOCLinEcore.g:10051:2: rule__EnumerationLiteralCS__Group__0__Impl rule__EnumerationLiteralCS__Group__1
+            // InternalOCLinEcore.g:10052:1: ( rule__EnumerationLiteralCS__Group__0__Impl rule__EnumerationLiteralCS__Group__1 )
+            // InternalOCLinEcore.g:10053:2: rule__EnumerationLiteralCS__Group__0__Impl rule__EnumerationLiteralCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__EnumerationLiteralCS__Group__0__Impl();
@@ -32551,23 +32551,23 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group__0__Impl"
-    // InternalOCLinEcore.g:10058:1: rule__EnumerationLiteralCS__Group__0__Impl : ( ( rule__EnumerationLiteralCS__Alternatives_0 ) ) ;
+    // InternalOCLinEcore.g:10060:1: rule__EnumerationLiteralCS__Group__0__Impl : ( ( rule__EnumerationLiteralCS__Alternatives_0 ) ) ;
     public final void rule__EnumerationLiteralCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10062:1: ( ( ( rule__EnumerationLiteralCS__Alternatives_0 ) ) )
-            // InternalOCLinEcore.g:10063:1: ( ( rule__EnumerationLiteralCS__Alternatives_0 ) )
+            // InternalOCLinEcore.g:10064:1: ( ( ( rule__EnumerationLiteralCS__Alternatives_0 ) ) )
+            // InternalOCLinEcore.g:10065:1: ( ( rule__EnumerationLiteralCS__Alternatives_0 ) )
             {
-            // InternalOCLinEcore.g:10063:1: ( ( rule__EnumerationLiteralCS__Alternatives_0 ) )
-            // InternalOCLinEcore.g:10064:1: ( rule__EnumerationLiteralCS__Alternatives_0 )
+            // InternalOCLinEcore.g:10065:1: ( ( rule__EnumerationLiteralCS__Alternatives_0 ) )
+            // InternalOCLinEcore.g:10066:1: ( rule__EnumerationLiteralCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getAlternatives_0());
             }
-            // InternalOCLinEcore.g:10065:1: ( rule__EnumerationLiteralCS__Alternatives_0 )
-            // InternalOCLinEcore.g:10065:2: rule__EnumerationLiteralCS__Alternatives_0
+            // InternalOCLinEcore.g:10067:1: ( rule__EnumerationLiteralCS__Alternatives_0 )
+            // InternalOCLinEcore.g:10067:2: rule__EnumerationLiteralCS__Alternatives_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationLiteralCS__Alternatives_0();
@@ -32602,14 +32602,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group__1"
-    // InternalOCLinEcore.g:10075:1: rule__EnumerationLiteralCS__Group__1 : rule__EnumerationLiteralCS__Group__1__Impl rule__EnumerationLiteralCS__Group__2 ;
+    // InternalOCLinEcore.g:10077:1: rule__EnumerationLiteralCS__Group__1 : rule__EnumerationLiteralCS__Group__1__Impl rule__EnumerationLiteralCS__Group__2 ;
     public final void rule__EnumerationLiteralCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10079:1: ( rule__EnumerationLiteralCS__Group__1__Impl rule__EnumerationLiteralCS__Group__2 )
-            // InternalOCLinEcore.g:10080:2: rule__EnumerationLiteralCS__Group__1__Impl rule__EnumerationLiteralCS__Group__2
+            // InternalOCLinEcore.g:10081:1: ( rule__EnumerationLiteralCS__Group__1__Impl rule__EnumerationLiteralCS__Group__2 )
+            // InternalOCLinEcore.g:10082:2: rule__EnumerationLiteralCS__Group__1__Impl rule__EnumerationLiteralCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__EnumerationLiteralCS__Group__1__Impl();
@@ -32640,22 +32640,22 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group__1__Impl"
-    // InternalOCLinEcore.g:10087:1: rule__EnumerationLiteralCS__Group__1__Impl : ( ( rule__EnumerationLiteralCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:10089:1: rule__EnumerationLiteralCS__Group__1__Impl : ( ( rule__EnumerationLiteralCS__Group_1__0 )? ) ;
     public final void rule__EnumerationLiteralCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10091:1: ( ( ( rule__EnumerationLiteralCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:10092:1: ( ( rule__EnumerationLiteralCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:10093:1: ( ( ( rule__EnumerationLiteralCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:10094:1: ( ( rule__EnumerationLiteralCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:10092:1: ( ( rule__EnumerationLiteralCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:10093:1: ( rule__EnumerationLiteralCS__Group_1__0 )?
+            // InternalOCLinEcore.g:10094:1: ( ( rule__EnumerationLiteralCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:10095:1: ( rule__EnumerationLiteralCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:10094:1: ( rule__EnumerationLiteralCS__Group_1__0 )?
+            // InternalOCLinEcore.g:10096:1: ( rule__EnumerationLiteralCS__Group_1__0 )?
             int alt122=2;
             int LA122_0 = input.LA(1);
 
@@ -32664,7 +32664,7 @@
             }
             switch (alt122) {
                 case 1 :
-                    // InternalOCLinEcore.g:10094:2: rule__EnumerationLiteralCS__Group_1__0
+                    // InternalOCLinEcore.g:10096:2: rule__EnumerationLiteralCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationLiteralCS__Group_1__0();
@@ -32702,14 +32702,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group__2"
-    // InternalOCLinEcore.g:10104:1: rule__EnumerationLiteralCS__Group__2 : rule__EnumerationLiteralCS__Group__2__Impl rule__EnumerationLiteralCS__Group__3 ;
+    // InternalOCLinEcore.g:10106:1: rule__EnumerationLiteralCS__Group__2 : rule__EnumerationLiteralCS__Group__2__Impl rule__EnumerationLiteralCS__Group__3 ;
     public final void rule__EnumerationLiteralCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10108:1: ( rule__EnumerationLiteralCS__Group__2__Impl rule__EnumerationLiteralCS__Group__3 )
-            // InternalOCLinEcore.g:10109:2: rule__EnumerationLiteralCS__Group__2__Impl rule__EnumerationLiteralCS__Group__3
+            // InternalOCLinEcore.g:10110:1: ( rule__EnumerationLiteralCS__Group__2__Impl rule__EnumerationLiteralCS__Group__3 )
+            // InternalOCLinEcore.g:10111:2: rule__EnumerationLiteralCS__Group__2__Impl rule__EnumerationLiteralCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__EnumerationLiteralCS__Group__2__Impl();
@@ -32740,22 +32740,22 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group__2__Impl"
-    // InternalOCLinEcore.g:10116:1: rule__EnumerationLiteralCS__Group__2__Impl : ( ( rule__EnumerationLiteralCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:10118:1: rule__EnumerationLiteralCS__Group__2__Impl : ( ( rule__EnumerationLiteralCS__Group_2__0 )? ) ;
     public final void rule__EnumerationLiteralCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10120:1: ( ( ( rule__EnumerationLiteralCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:10121:1: ( ( rule__EnumerationLiteralCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:10122:1: ( ( ( rule__EnumerationLiteralCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:10123:1: ( ( rule__EnumerationLiteralCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:10121:1: ( ( rule__EnumerationLiteralCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:10122:1: ( rule__EnumerationLiteralCS__Group_2__0 )?
+            // InternalOCLinEcore.g:10123:1: ( ( rule__EnumerationLiteralCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:10124:1: ( rule__EnumerationLiteralCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:10123:1: ( rule__EnumerationLiteralCS__Group_2__0 )?
+            // InternalOCLinEcore.g:10125:1: ( rule__EnumerationLiteralCS__Group_2__0 )?
             int alt123=2;
             int LA123_0 = input.LA(1);
 
@@ -32764,7 +32764,7 @@
             }
             switch (alt123) {
                 case 1 :
-                    // InternalOCLinEcore.g:10123:2: rule__EnumerationLiteralCS__Group_2__0
+                    // InternalOCLinEcore.g:10125:2: rule__EnumerationLiteralCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__EnumerationLiteralCS__Group_2__0();
@@ -32802,14 +32802,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group__3"
-    // InternalOCLinEcore.g:10133:1: rule__EnumerationLiteralCS__Group__3 : rule__EnumerationLiteralCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:10135:1: rule__EnumerationLiteralCS__Group__3 : rule__EnumerationLiteralCS__Group__3__Impl ;
     public final void rule__EnumerationLiteralCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10137:1: ( rule__EnumerationLiteralCS__Group__3__Impl )
-            // InternalOCLinEcore.g:10138:2: rule__EnumerationLiteralCS__Group__3__Impl
+            // InternalOCLinEcore.g:10139:1: ( rule__EnumerationLiteralCS__Group__3__Impl )
+            // InternalOCLinEcore.g:10140:2: rule__EnumerationLiteralCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationLiteralCS__Group__3__Impl();
@@ -32835,23 +32835,23 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group__3__Impl"
-    // InternalOCLinEcore.g:10144:1: rule__EnumerationLiteralCS__Group__3__Impl : ( ( rule__EnumerationLiteralCS__Alternatives_3 ) ) ;
+    // InternalOCLinEcore.g:10146:1: rule__EnumerationLiteralCS__Group__3__Impl : ( ( rule__EnumerationLiteralCS__Alternatives_3 ) ) ;
     public final void rule__EnumerationLiteralCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10148:1: ( ( ( rule__EnumerationLiteralCS__Alternatives_3 ) ) )
-            // InternalOCLinEcore.g:10149:1: ( ( rule__EnumerationLiteralCS__Alternatives_3 ) )
+            // InternalOCLinEcore.g:10150:1: ( ( ( rule__EnumerationLiteralCS__Alternatives_3 ) ) )
+            // InternalOCLinEcore.g:10151:1: ( ( rule__EnumerationLiteralCS__Alternatives_3 ) )
             {
-            // InternalOCLinEcore.g:10149:1: ( ( rule__EnumerationLiteralCS__Alternatives_3 ) )
-            // InternalOCLinEcore.g:10150:1: ( rule__EnumerationLiteralCS__Alternatives_3 )
+            // InternalOCLinEcore.g:10151:1: ( ( rule__EnumerationLiteralCS__Alternatives_3 ) )
+            // InternalOCLinEcore.g:10152:1: ( rule__EnumerationLiteralCS__Alternatives_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getAlternatives_3());
             }
-            // InternalOCLinEcore.g:10151:1: ( rule__EnumerationLiteralCS__Alternatives_3 )
-            // InternalOCLinEcore.g:10151:2: rule__EnumerationLiteralCS__Alternatives_3
+            // InternalOCLinEcore.g:10153:1: ( rule__EnumerationLiteralCS__Alternatives_3 )
+            // InternalOCLinEcore.g:10153:2: rule__EnumerationLiteralCS__Alternatives_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationLiteralCS__Alternatives_3();
@@ -32886,14 +32886,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_0_0__0"
-    // InternalOCLinEcore.g:10169:1: rule__EnumerationLiteralCS__Group_0_0__0 : rule__EnumerationLiteralCS__Group_0_0__0__Impl rule__EnumerationLiteralCS__Group_0_0__1 ;
+    // InternalOCLinEcore.g:10171:1: rule__EnumerationLiteralCS__Group_0_0__0 : rule__EnumerationLiteralCS__Group_0_0__0__Impl rule__EnumerationLiteralCS__Group_0_0__1 ;
     public final void rule__EnumerationLiteralCS__Group_0_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10173:1: ( rule__EnumerationLiteralCS__Group_0_0__0__Impl rule__EnumerationLiteralCS__Group_0_0__1 )
-            // InternalOCLinEcore.g:10174:2: rule__EnumerationLiteralCS__Group_0_0__0__Impl rule__EnumerationLiteralCS__Group_0_0__1
+            // InternalOCLinEcore.g:10175:1: ( rule__EnumerationLiteralCS__Group_0_0__0__Impl rule__EnumerationLiteralCS__Group_0_0__1 )
+            // InternalOCLinEcore.g:10176:2: rule__EnumerationLiteralCS__Group_0_0__0__Impl rule__EnumerationLiteralCS__Group_0_0__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__EnumerationLiteralCS__Group_0_0__0__Impl();
@@ -32924,17 +32924,17 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_0_0__0__Impl"
-    // InternalOCLinEcore.g:10181:1: rule__EnumerationLiteralCS__Group_0_0__0__Impl : ( 'literal' ) ;
+    // InternalOCLinEcore.g:10183:1: rule__EnumerationLiteralCS__Group_0_0__0__Impl : ( 'literal' ) ;
     public final void rule__EnumerationLiteralCS__Group_0_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10185:1: ( ( 'literal' ) )
-            // InternalOCLinEcore.g:10186:1: ( 'literal' )
+            // InternalOCLinEcore.g:10187:1: ( ( 'literal' ) )
+            // InternalOCLinEcore.g:10188:1: ( 'literal' )
             {
-            // InternalOCLinEcore.g:10186:1: ( 'literal' )
-            // InternalOCLinEcore.g:10187:1: 'literal'
+            // InternalOCLinEcore.g:10188:1: ( 'literal' )
+            // InternalOCLinEcore.g:10189:1: 'literal'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getLiteralKeyword_0_0_0());
@@ -32965,14 +32965,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_0_0__1"
-    // InternalOCLinEcore.g:10200:1: rule__EnumerationLiteralCS__Group_0_0__1 : rule__EnumerationLiteralCS__Group_0_0__1__Impl ;
+    // InternalOCLinEcore.g:10202:1: rule__EnumerationLiteralCS__Group_0_0__1 : rule__EnumerationLiteralCS__Group_0_0__1__Impl ;
     public final void rule__EnumerationLiteralCS__Group_0_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10204:1: ( rule__EnumerationLiteralCS__Group_0_0__1__Impl )
-            // InternalOCLinEcore.g:10205:2: rule__EnumerationLiteralCS__Group_0_0__1__Impl
+            // InternalOCLinEcore.g:10206:1: ( rule__EnumerationLiteralCS__Group_0_0__1__Impl )
+            // InternalOCLinEcore.g:10207:2: rule__EnumerationLiteralCS__Group_0_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationLiteralCS__Group_0_0__1__Impl();
@@ -32998,23 +32998,23 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_0_0__1__Impl"
-    // InternalOCLinEcore.g:10211:1: rule__EnumerationLiteralCS__Group_0_0__1__Impl : ( ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 ) ) ;
+    // InternalOCLinEcore.g:10213:1: rule__EnumerationLiteralCS__Group_0_0__1__Impl : ( ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 ) ) ;
     public final void rule__EnumerationLiteralCS__Group_0_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10215:1: ( ( ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 ) ) )
-            // InternalOCLinEcore.g:10216:1: ( ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 ) )
+            // InternalOCLinEcore.g:10217:1: ( ( ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 ) ) )
+            // InternalOCLinEcore.g:10218:1: ( ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 ) )
             {
-            // InternalOCLinEcore.g:10216:1: ( ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 ) )
-            // InternalOCLinEcore.g:10217:1: ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 )
+            // InternalOCLinEcore.g:10218:1: ( ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 ) )
+            // InternalOCLinEcore.g:10219:1: ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getNameAssignment_0_0_1());
             }
-            // InternalOCLinEcore.g:10218:1: ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 )
-            // InternalOCLinEcore.g:10218:2: rule__EnumerationLiteralCS__NameAssignment_0_0_1
+            // InternalOCLinEcore.g:10220:1: ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 )
+            // InternalOCLinEcore.g:10220:2: rule__EnumerationLiteralCS__NameAssignment_0_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationLiteralCS__NameAssignment_0_0_1();
@@ -33049,14 +33049,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_1__0"
-    // InternalOCLinEcore.g:10232:1: rule__EnumerationLiteralCS__Group_1__0 : rule__EnumerationLiteralCS__Group_1__0__Impl rule__EnumerationLiteralCS__Group_1__1 ;
+    // InternalOCLinEcore.g:10234:1: rule__EnumerationLiteralCS__Group_1__0 : rule__EnumerationLiteralCS__Group_1__0__Impl rule__EnumerationLiteralCS__Group_1__1 ;
     public final void rule__EnumerationLiteralCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10236:1: ( rule__EnumerationLiteralCS__Group_1__0__Impl rule__EnumerationLiteralCS__Group_1__1 )
-            // InternalOCLinEcore.g:10237:2: rule__EnumerationLiteralCS__Group_1__0__Impl rule__EnumerationLiteralCS__Group_1__1
+            // InternalOCLinEcore.g:10238:1: ( rule__EnumerationLiteralCS__Group_1__0__Impl rule__EnumerationLiteralCS__Group_1__1 )
+            // InternalOCLinEcore.g:10239:2: rule__EnumerationLiteralCS__Group_1__0__Impl rule__EnumerationLiteralCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_29);
             rule__EnumerationLiteralCS__Group_1__0__Impl();
@@ -33087,17 +33087,17 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:10244:1: rule__EnumerationLiteralCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:10246:1: rule__EnumerationLiteralCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__EnumerationLiteralCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10248:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:10249:1: ( ':' )
+            // InternalOCLinEcore.g:10250:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:10251:1: ( ':' )
             {
-            // InternalOCLinEcore.g:10249:1: ( ':' )
-            // InternalOCLinEcore.g:10250:1: ':'
+            // InternalOCLinEcore.g:10251:1: ( ':' )
+            // InternalOCLinEcore.g:10252:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getColonKeyword_1_0());
@@ -33128,14 +33128,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_1__1"
-    // InternalOCLinEcore.g:10263:1: rule__EnumerationLiteralCS__Group_1__1 : rule__EnumerationLiteralCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:10265:1: rule__EnumerationLiteralCS__Group_1__1 : rule__EnumerationLiteralCS__Group_1__1__Impl ;
     public final void rule__EnumerationLiteralCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10267:1: ( rule__EnumerationLiteralCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:10268:2: rule__EnumerationLiteralCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:10269:1: ( rule__EnumerationLiteralCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:10270:2: rule__EnumerationLiteralCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationLiteralCS__Group_1__1__Impl();
@@ -33161,23 +33161,23 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:10274:1: rule__EnumerationLiteralCS__Group_1__1__Impl : ( ( rule__EnumerationLiteralCS__LiteralAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:10276:1: rule__EnumerationLiteralCS__Group_1__1__Impl : ( ( rule__EnumerationLiteralCS__LiteralAssignment_1_1 ) ) ;
     public final void rule__EnumerationLiteralCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10278:1: ( ( ( rule__EnumerationLiteralCS__LiteralAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:10279:1: ( ( rule__EnumerationLiteralCS__LiteralAssignment_1_1 ) )
+            // InternalOCLinEcore.g:10280:1: ( ( ( rule__EnumerationLiteralCS__LiteralAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:10281:1: ( ( rule__EnumerationLiteralCS__LiteralAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:10279:1: ( ( rule__EnumerationLiteralCS__LiteralAssignment_1_1 ) )
-            // InternalOCLinEcore.g:10280:1: ( rule__EnumerationLiteralCS__LiteralAssignment_1_1 )
+            // InternalOCLinEcore.g:10281:1: ( ( rule__EnumerationLiteralCS__LiteralAssignment_1_1 ) )
+            // InternalOCLinEcore.g:10282:1: ( rule__EnumerationLiteralCS__LiteralAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getLiteralAssignment_1_1());
             }
-            // InternalOCLinEcore.g:10281:1: ( rule__EnumerationLiteralCS__LiteralAssignment_1_1 )
-            // InternalOCLinEcore.g:10281:2: rule__EnumerationLiteralCS__LiteralAssignment_1_1
+            // InternalOCLinEcore.g:10283:1: ( rule__EnumerationLiteralCS__LiteralAssignment_1_1 )
+            // InternalOCLinEcore.g:10283:2: rule__EnumerationLiteralCS__LiteralAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationLiteralCS__LiteralAssignment_1_1();
@@ -33212,14 +33212,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_2__0"
-    // InternalOCLinEcore.g:10295:1: rule__EnumerationLiteralCS__Group_2__0 : rule__EnumerationLiteralCS__Group_2__0__Impl rule__EnumerationLiteralCS__Group_2__1 ;
+    // InternalOCLinEcore.g:10297:1: rule__EnumerationLiteralCS__Group_2__0 : rule__EnumerationLiteralCS__Group_2__0__Impl rule__EnumerationLiteralCS__Group_2__1 ;
     public final void rule__EnumerationLiteralCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10299:1: ( rule__EnumerationLiteralCS__Group_2__0__Impl rule__EnumerationLiteralCS__Group_2__1 )
-            // InternalOCLinEcore.g:10300:2: rule__EnumerationLiteralCS__Group_2__0__Impl rule__EnumerationLiteralCS__Group_2__1
+            // InternalOCLinEcore.g:10301:1: ( rule__EnumerationLiteralCS__Group_2__0__Impl rule__EnumerationLiteralCS__Group_2__1 )
+            // InternalOCLinEcore.g:10302:2: rule__EnumerationLiteralCS__Group_2__0__Impl rule__EnumerationLiteralCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_47);
             rule__EnumerationLiteralCS__Group_2__0__Impl();
@@ -33250,17 +33250,17 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:10307:1: rule__EnumerationLiteralCS__Group_2__0__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:10309:1: rule__EnumerationLiteralCS__Group_2__0__Impl : ( '=' ) ;
     public final void rule__EnumerationLiteralCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10311:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:10312:1: ( '=' )
+            // InternalOCLinEcore.g:10313:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:10314:1: ( '=' )
             {
-            // InternalOCLinEcore.g:10312:1: ( '=' )
-            // InternalOCLinEcore.g:10313:1: '='
+            // InternalOCLinEcore.g:10314:1: ( '=' )
+            // InternalOCLinEcore.g:10315:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getEqualsSignKeyword_2_0());
@@ -33291,14 +33291,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_2__1"
-    // InternalOCLinEcore.g:10326:1: rule__EnumerationLiteralCS__Group_2__1 : rule__EnumerationLiteralCS__Group_2__1__Impl ;
+    // InternalOCLinEcore.g:10328:1: rule__EnumerationLiteralCS__Group_2__1 : rule__EnumerationLiteralCS__Group_2__1__Impl ;
     public final void rule__EnumerationLiteralCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10330:1: ( rule__EnumerationLiteralCS__Group_2__1__Impl )
-            // InternalOCLinEcore.g:10331:2: rule__EnumerationLiteralCS__Group_2__1__Impl
+            // InternalOCLinEcore.g:10332:1: ( rule__EnumerationLiteralCS__Group_2__1__Impl )
+            // InternalOCLinEcore.g:10333:2: rule__EnumerationLiteralCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationLiteralCS__Group_2__1__Impl();
@@ -33324,23 +33324,23 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:10337:1: rule__EnumerationLiteralCS__Group_2__1__Impl : ( ( rule__EnumerationLiteralCS__ValueAssignment_2_1 ) ) ;
+    // InternalOCLinEcore.g:10339:1: rule__EnumerationLiteralCS__Group_2__1__Impl : ( ( rule__EnumerationLiteralCS__ValueAssignment_2_1 ) ) ;
     public final void rule__EnumerationLiteralCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10341:1: ( ( ( rule__EnumerationLiteralCS__ValueAssignment_2_1 ) ) )
-            // InternalOCLinEcore.g:10342:1: ( ( rule__EnumerationLiteralCS__ValueAssignment_2_1 ) )
+            // InternalOCLinEcore.g:10343:1: ( ( ( rule__EnumerationLiteralCS__ValueAssignment_2_1 ) ) )
+            // InternalOCLinEcore.g:10344:1: ( ( rule__EnumerationLiteralCS__ValueAssignment_2_1 ) )
             {
-            // InternalOCLinEcore.g:10342:1: ( ( rule__EnumerationLiteralCS__ValueAssignment_2_1 ) )
-            // InternalOCLinEcore.g:10343:1: ( rule__EnumerationLiteralCS__ValueAssignment_2_1 )
+            // InternalOCLinEcore.g:10344:1: ( ( rule__EnumerationLiteralCS__ValueAssignment_2_1 ) )
+            // InternalOCLinEcore.g:10345:1: ( rule__EnumerationLiteralCS__ValueAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getValueAssignment_2_1());
             }
-            // InternalOCLinEcore.g:10344:1: ( rule__EnumerationLiteralCS__ValueAssignment_2_1 )
-            // InternalOCLinEcore.g:10344:2: rule__EnumerationLiteralCS__ValueAssignment_2_1
+            // InternalOCLinEcore.g:10346:1: ( rule__EnumerationLiteralCS__ValueAssignment_2_1 )
+            // InternalOCLinEcore.g:10346:2: rule__EnumerationLiteralCS__ValueAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationLiteralCS__ValueAssignment_2_1();
@@ -33375,14 +33375,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_3_0__0"
-    // InternalOCLinEcore.g:10358:1: rule__EnumerationLiteralCS__Group_3_0__0 : rule__EnumerationLiteralCS__Group_3_0__0__Impl rule__EnumerationLiteralCS__Group_3_0__1 ;
+    // InternalOCLinEcore.g:10360:1: rule__EnumerationLiteralCS__Group_3_0__0 : rule__EnumerationLiteralCS__Group_3_0__0__Impl rule__EnumerationLiteralCS__Group_3_0__1 ;
     public final void rule__EnumerationLiteralCS__Group_3_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10362:1: ( rule__EnumerationLiteralCS__Group_3_0__0__Impl rule__EnumerationLiteralCS__Group_3_0__1 )
-            // InternalOCLinEcore.g:10363:2: rule__EnumerationLiteralCS__Group_3_0__0__Impl rule__EnumerationLiteralCS__Group_3_0__1
+            // InternalOCLinEcore.g:10364:1: ( rule__EnumerationLiteralCS__Group_3_0__0__Impl rule__EnumerationLiteralCS__Group_3_0__1 )
+            // InternalOCLinEcore.g:10365:2: rule__EnumerationLiteralCS__Group_3_0__0__Impl rule__EnumerationLiteralCS__Group_3_0__1
             {
             pushFollow(FollowSets000.FOLLOW_48);
             rule__EnumerationLiteralCS__Group_3_0__0__Impl();
@@ -33413,17 +33413,17 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_3_0__0__Impl"
-    // InternalOCLinEcore.g:10370:1: rule__EnumerationLiteralCS__Group_3_0__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:10372:1: rule__EnumerationLiteralCS__Group_3_0__0__Impl : ( '{' ) ;
     public final void rule__EnumerationLiteralCS__Group_3_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10374:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:10375:1: ( '{' )
+            // InternalOCLinEcore.g:10376:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:10377:1: ( '{' )
             {
-            // InternalOCLinEcore.g:10375:1: ( '{' )
-            // InternalOCLinEcore.g:10376:1: '{'
+            // InternalOCLinEcore.g:10377:1: ( '{' )
+            // InternalOCLinEcore.g:10378:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getLeftCurlyBracketKeyword_3_0_0());
@@ -33454,14 +33454,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_3_0__1"
-    // InternalOCLinEcore.g:10389:1: rule__EnumerationLiteralCS__Group_3_0__1 : rule__EnumerationLiteralCS__Group_3_0__1__Impl rule__EnumerationLiteralCS__Group_3_0__2 ;
+    // InternalOCLinEcore.g:10391:1: rule__EnumerationLiteralCS__Group_3_0__1 : rule__EnumerationLiteralCS__Group_3_0__1__Impl rule__EnumerationLiteralCS__Group_3_0__2 ;
     public final void rule__EnumerationLiteralCS__Group_3_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10393:1: ( rule__EnumerationLiteralCS__Group_3_0__1__Impl rule__EnumerationLiteralCS__Group_3_0__2 )
-            // InternalOCLinEcore.g:10394:2: rule__EnumerationLiteralCS__Group_3_0__1__Impl rule__EnumerationLiteralCS__Group_3_0__2
+            // InternalOCLinEcore.g:10395:1: ( rule__EnumerationLiteralCS__Group_3_0__1__Impl rule__EnumerationLiteralCS__Group_3_0__2 )
+            // InternalOCLinEcore.g:10396:2: rule__EnumerationLiteralCS__Group_3_0__1__Impl rule__EnumerationLiteralCS__Group_3_0__2
             {
             pushFollow(FollowSets000.FOLLOW_48);
             rule__EnumerationLiteralCS__Group_3_0__1__Impl();
@@ -33492,22 +33492,22 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_3_0__1__Impl"
-    // InternalOCLinEcore.g:10401:1: rule__EnumerationLiteralCS__Group_3_0__1__Impl : ( ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 )* ) ;
+    // InternalOCLinEcore.g:10403:1: rule__EnumerationLiteralCS__Group_3_0__1__Impl : ( ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 )* ) ;
     public final void rule__EnumerationLiteralCS__Group_3_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10405:1: ( ( ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 )* ) )
-            // InternalOCLinEcore.g:10406:1: ( ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 )* )
+            // InternalOCLinEcore.g:10407:1: ( ( ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 )* ) )
+            // InternalOCLinEcore.g:10408:1: ( ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 )* )
             {
-            // InternalOCLinEcore.g:10406:1: ( ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 )* )
-            // InternalOCLinEcore.g:10407:1: ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 )*
+            // InternalOCLinEcore.g:10408:1: ( ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 )* )
+            // InternalOCLinEcore.g:10409:1: ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAssignment_3_0_1());
             }
-            // InternalOCLinEcore.g:10408:1: ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 )*
+            // InternalOCLinEcore.g:10410:1: ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 )*
             loop124:
             do {
                 int alt124=2;
@@ -33520,7 +33520,7 @@
 
                 switch (alt124) {
             	case 1 :
-            	    // InternalOCLinEcore.g:10408:2: rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1
+            	    // InternalOCLinEcore.g:10410:2: rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_49);
             	    rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1();
@@ -33561,14 +33561,14 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_3_0__2"
-    // InternalOCLinEcore.g:10418:1: rule__EnumerationLiteralCS__Group_3_0__2 : rule__EnumerationLiteralCS__Group_3_0__2__Impl ;
+    // InternalOCLinEcore.g:10420:1: rule__EnumerationLiteralCS__Group_3_0__2 : rule__EnumerationLiteralCS__Group_3_0__2__Impl ;
     public final void rule__EnumerationLiteralCS__Group_3_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10422:1: ( rule__EnumerationLiteralCS__Group_3_0__2__Impl )
-            // InternalOCLinEcore.g:10423:2: rule__EnumerationLiteralCS__Group_3_0__2__Impl
+            // InternalOCLinEcore.g:10424:1: ( rule__EnumerationLiteralCS__Group_3_0__2__Impl )
+            // InternalOCLinEcore.g:10425:2: rule__EnumerationLiteralCS__Group_3_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__EnumerationLiteralCS__Group_3_0__2__Impl();
@@ -33594,17 +33594,17 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__Group_3_0__2__Impl"
-    // InternalOCLinEcore.g:10429:1: rule__EnumerationLiteralCS__Group_3_0__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:10431:1: rule__EnumerationLiteralCS__Group_3_0__2__Impl : ( '}' ) ;
     public final void rule__EnumerationLiteralCS__Group_3_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10433:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:10434:1: ( '}' )
+            // InternalOCLinEcore.g:10435:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:10436:1: ( '}' )
             {
-            // InternalOCLinEcore.g:10434:1: ( '}' )
-            // InternalOCLinEcore.g:10435:1: '}'
+            // InternalOCLinEcore.g:10436:1: ( '}' )
+            // InternalOCLinEcore.g:10437:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getRightCurlyBracketKeyword_3_0_2());
@@ -33635,14 +33635,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__0"
-    // InternalOCLinEcore.g:10454:1: rule__ImportCS__Group__0 : rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 ;
+    // InternalOCLinEcore.g:10456:1: rule__ImportCS__Group__0 : rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 ;
     public final void rule__ImportCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10458:1: ( rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 )
-            // InternalOCLinEcore.g:10459:2: rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1
+            // InternalOCLinEcore.g:10460:1: ( rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 )
+            // InternalOCLinEcore.g:10461:2: rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__ImportCS__Group__0__Impl();
@@ -33673,23 +33673,23 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__0__Impl"
-    // InternalOCLinEcore.g:10466:1: rule__ImportCS__Group__0__Impl : ( ( rule__ImportCS__Alternatives_0 ) ) ;
+    // InternalOCLinEcore.g:10468:1: rule__ImportCS__Group__0__Impl : ( ( rule__ImportCS__Alternatives_0 ) ) ;
     public final void rule__ImportCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10470:1: ( ( ( rule__ImportCS__Alternatives_0 ) ) )
-            // InternalOCLinEcore.g:10471:1: ( ( rule__ImportCS__Alternatives_0 ) )
+            // InternalOCLinEcore.g:10472:1: ( ( ( rule__ImportCS__Alternatives_0 ) ) )
+            // InternalOCLinEcore.g:10473:1: ( ( rule__ImportCS__Alternatives_0 ) )
             {
-            // InternalOCLinEcore.g:10471:1: ( ( rule__ImportCS__Alternatives_0 ) )
-            // InternalOCLinEcore.g:10472:1: ( rule__ImportCS__Alternatives_0 )
+            // InternalOCLinEcore.g:10473:1: ( ( rule__ImportCS__Alternatives_0 ) )
+            // InternalOCLinEcore.g:10474:1: ( rule__ImportCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getAlternatives_0());
             }
-            // InternalOCLinEcore.g:10473:1: ( rule__ImportCS__Alternatives_0 )
-            // InternalOCLinEcore.g:10473:2: rule__ImportCS__Alternatives_0
+            // InternalOCLinEcore.g:10475:1: ( rule__ImportCS__Alternatives_0 )
+            // InternalOCLinEcore.g:10475:2: rule__ImportCS__Alternatives_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__Alternatives_0();
@@ -33724,14 +33724,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__1"
-    // InternalOCLinEcore.g:10483:1: rule__ImportCS__Group__1 : rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 ;
+    // InternalOCLinEcore.g:10485:1: rule__ImportCS__Group__1 : rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 ;
     public final void rule__ImportCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10487:1: ( rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 )
-            // InternalOCLinEcore.g:10488:2: rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2
+            // InternalOCLinEcore.g:10489:1: ( rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 )
+            // InternalOCLinEcore.g:10490:2: rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__ImportCS__Group__1__Impl();
@@ -33762,27 +33762,27 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__1__Impl"
-    // InternalOCLinEcore.g:10495:1: rule__ImportCS__Group__1__Impl : ( ( rule__ImportCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:10497:1: rule__ImportCS__Group__1__Impl : ( ( rule__ImportCS__Group_1__0 )? ) ;
     public final void rule__ImportCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10499:1: ( ( ( rule__ImportCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:10500:1: ( ( rule__ImportCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:10501:1: ( ( ( rule__ImportCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:10502:1: ( ( rule__ImportCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:10500:1: ( ( rule__ImportCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:10501:1: ( rule__ImportCS__Group_1__0 )?
+            // InternalOCLinEcore.g:10502:1: ( ( rule__ImportCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:10503:1: ( rule__ImportCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:10502:1: ( rule__ImportCS__Group_1__0 )?
+            // InternalOCLinEcore.g:10504:1: ( rule__ImportCS__Group_1__0 )?
             int alt125=2;
             alt125 = dfa125.predict(input);
             switch (alt125) {
                 case 1 :
-                    // InternalOCLinEcore.g:10502:2: rule__ImportCS__Group_1__0
+                    // InternalOCLinEcore.g:10504:2: rule__ImportCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ImportCS__Group_1__0();
@@ -33820,14 +33820,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__2"
-    // InternalOCLinEcore.g:10512:1: rule__ImportCS__Group__2 : rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 ;
+    // InternalOCLinEcore.g:10514:1: rule__ImportCS__Group__2 : rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 ;
     public final void rule__ImportCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10516:1: ( rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 )
-            // InternalOCLinEcore.g:10517:2: rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3
+            // InternalOCLinEcore.g:10518:1: ( rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 )
+            // InternalOCLinEcore.g:10519:2: rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_50);
             rule__ImportCS__Group__2__Impl();
@@ -33858,23 +33858,23 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__2__Impl"
-    // InternalOCLinEcore.g:10524:1: rule__ImportCS__Group__2__Impl : ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) ;
+    // InternalOCLinEcore.g:10526:1: rule__ImportCS__Group__2__Impl : ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) ;
     public final void rule__ImportCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10528:1: ( ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) )
-            // InternalOCLinEcore.g:10529:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
+            // InternalOCLinEcore.g:10530:1: ( ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) )
+            // InternalOCLinEcore.g:10531:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
             {
-            // InternalOCLinEcore.g:10529:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
-            // InternalOCLinEcore.g:10530:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
+            // InternalOCLinEcore.g:10531:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
+            // InternalOCLinEcore.g:10532:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2());
             }
-            // InternalOCLinEcore.g:10531:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
-            // InternalOCLinEcore.g:10531:2: rule__ImportCS__OwnedPathNameAssignment_2
+            // InternalOCLinEcore.g:10533:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
+            // InternalOCLinEcore.g:10533:2: rule__ImportCS__OwnedPathNameAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__OwnedPathNameAssignment_2();
@@ -33909,14 +33909,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__3"
-    // InternalOCLinEcore.g:10541:1: rule__ImportCS__Group__3 : rule__ImportCS__Group__3__Impl rule__ImportCS__Group__4 ;
+    // InternalOCLinEcore.g:10543:1: rule__ImportCS__Group__3 : rule__ImportCS__Group__3__Impl rule__ImportCS__Group__4 ;
     public final void rule__ImportCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10545:1: ( rule__ImportCS__Group__3__Impl rule__ImportCS__Group__4 )
-            // InternalOCLinEcore.g:10546:2: rule__ImportCS__Group__3__Impl rule__ImportCS__Group__4
+            // InternalOCLinEcore.g:10547:1: ( rule__ImportCS__Group__3__Impl rule__ImportCS__Group__4 )
+            // InternalOCLinEcore.g:10548:2: rule__ImportCS__Group__3__Impl rule__ImportCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_50);
             rule__ImportCS__Group__3__Impl();
@@ -33947,22 +33947,22 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__3__Impl"
-    // InternalOCLinEcore.g:10553:1: rule__ImportCS__Group__3__Impl : ( ( rule__ImportCS__IsAllAssignment_3 )? ) ;
+    // InternalOCLinEcore.g:10555:1: rule__ImportCS__Group__3__Impl : ( ( rule__ImportCS__IsAllAssignment_3 )? ) ;
     public final void rule__ImportCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10557:1: ( ( ( rule__ImportCS__IsAllAssignment_3 )? ) )
-            // InternalOCLinEcore.g:10558:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
+            // InternalOCLinEcore.g:10559:1: ( ( ( rule__ImportCS__IsAllAssignment_3 )? ) )
+            // InternalOCLinEcore.g:10560:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
             {
-            // InternalOCLinEcore.g:10558:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
-            // InternalOCLinEcore.g:10559:1: ( rule__ImportCS__IsAllAssignment_3 )?
+            // InternalOCLinEcore.g:10560:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
+            // InternalOCLinEcore.g:10561:1: ( rule__ImportCS__IsAllAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getIsAllAssignment_3());
             }
-            // InternalOCLinEcore.g:10560:1: ( rule__ImportCS__IsAllAssignment_3 )?
+            // InternalOCLinEcore.g:10562:1: ( rule__ImportCS__IsAllAssignment_3 )?
             int alt126=2;
             int LA126_0 = input.LA(1);
 
@@ -33971,7 +33971,7 @@
             }
             switch (alt126) {
                 case 1 :
-                    // InternalOCLinEcore.g:10560:2: rule__ImportCS__IsAllAssignment_3
+                    // InternalOCLinEcore.g:10562:2: rule__ImportCS__IsAllAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ImportCS__IsAllAssignment_3();
@@ -34009,14 +34009,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__4"
-    // InternalOCLinEcore.g:10570:1: rule__ImportCS__Group__4 : rule__ImportCS__Group__4__Impl ;
+    // InternalOCLinEcore.g:10572:1: rule__ImportCS__Group__4 : rule__ImportCS__Group__4__Impl ;
     public final void rule__ImportCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10574:1: ( rule__ImportCS__Group__4__Impl )
-            // InternalOCLinEcore.g:10575:2: rule__ImportCS__Group__4__Impl
+            // InternalOCLinEcore.g:10576:1: ( rule__ImportCS__Group__4__Impl )
+            // InternalOCLinEcore.g:10577:2: rule__ImportCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__Group__4__Impl();
@@ -34042,17 +34042,17 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__4__Impl"
-    // InternalOCLinEcore.g:10581:1: rule__ImportCS__Group__4__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:10583:1: rule__ImportCS__Group__4__Impl : ( ';' ) ;
     public final void rule__ImportCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10585:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:10586:1: ( ';' )
+            // InternalOCLinEcore.g:10587:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:10588:1: ( ';' )
             {
-            // InternalOCLinEcore.g:10586:1: ( ';' )
-            // InternalOCLinEcore.g:10587:1: ';'
+            // InternalOCLinEcore.g:10588:1: ( ';' )
+            // InternalOCLinEcore.g:10589:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getSemicolonKeyword_4());
@@ -34083,14 +34083,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group_1__0"
-    // InternalOCLinEcore.g:10610:1: rule__ImportCS__Group_1__0 : rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 ;
+    // InternalOCLinEcore.g:10612:1: rule__ImportCS__Group_1__0 : rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 ;
     public final void rule__ImportCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10614:1: ( rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 )
-            // InternalOCLinEcore.g:10615:2: rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1
+            // InternalOCLinEcore.g:10616:1: ( rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 )
+            // InternalOCLinEcore.g:10617:2: rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_51);
             rule__ImportCS__Group_1__0__Impl();
@@ -34121,23 +34121,23 @@
 
 
     // $ANTLR start "rule__ImportCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:10622:1: rule__ImportCS__Group_1__0__Impl : ( ( rule__ImportCS__NameAssignment_1_0 ) ) ;
+    // InternalOCLinEcore.g:10624:1: rule__ImportCS__Group_1__0__Impl : ( ( rule__ImportCS__NameAssignment_1_0 ) ) ;
     public final void rule__ImportCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10626:1: ( ( ( rule__ImportCS__NameAssignment_1_0 ) ) )
-            // InternalOCLinEcore.g:10627:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
+            // InternalOCLinEcore.g:10628:1: ( ( ( rule__ImportCS__NameAssignment_1_0 ) ) )
+            // InternalOCLinEcore.g:10629:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
             {
-            // InternalOCLinEcore.g:10627:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
-            // InternalOCLinEcore.g:10628:1: ( rule__ImportCS__NameAssignment_1_0 )
+            // InternalOCLinEcore.g:10629:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
+            // InternalOCLinEcore.g:10630:1: ( rule__ImportCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getNameAssignment_1_0());
             }
-            // InternalOCLinEcore.g:10629:1: ( rule__ImportCS__NameAssignment_1_0 )
-            // InternalOCLinEcore.g:10629:2: rule__ImportCS__NameAssignment_1_0
+            // InternalOCLinEcore.g:10631:1: ( rule__ImportCS__NameAssignment_1_0 )
+            // InternalOCLinEcore.g:10631:2: rule__ImportCS__NameAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__NameAssignment_1_0();
@@ -34172,14 +34172,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group_1__1"
-    // InternalOCLinEcore.g:10639:1: rule__ImportCS__Group_1__1 : rule__ImportCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:10641:1: rule__ImportCS__Group_1__1 : rule__ImportCS__Group_1__1__Impl ;
     public final void rule__ImportCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10643:1: ( rule__ImportCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:10644:2: rule__ImportCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:10645:1: ( rule__ImportCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:10646:2: rule__ImportCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__Group_1__1__Impl();
@@ -34205,17 +34205,17 @@
 
 
     // $ANTLR start "rule__ImportCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:10650:1: rule__ImportCS__Group_1__1__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:10652:1: rule__ImportCS__Group_1__1__Impl : ( ':' ) ;
     public final void rule__ImportCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10654:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:10655:1: ( ':' )
+            // InternalOCLinEcore.g:10656:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:10657:1: ( ':' )
             {
-            // InternalOCLinEcore.g:10655:1: ( ':' )
-            // InternalOCLinEcore.g:10656:1: ':'
+            // InternalOCLinEcore.g:10657:1: ( ':' )
+            // InternalOCLinEcore.g:10658:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getColonKeyword_1_1());
@@ -34246,14 +34246,14 @@
 
 
     // $ANTLR start "rule__ModelElementRefCS__Group__0"
-    // InternalOCLinEcore.g:10673:1: rule__ModelElementRefCS__Group__0 : rule__ModelElementRefCS__Group__0__Impl rule__ModelElementRefCS__Group__1 ;
+    // InternalOCLinEcore.g:10675:1: rule__ModelElementRefCS__Group__0 : rule__ModelElementRefCS__Group__0__Impl rule__ModelElementRefCS__Group__1 ;
     public final void rule__ModelElementRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10677:1: ( rule__ModelElementRefCS__Group__0__Impl rule__ModelElementRefCS__Group__1 )
-            // InternalOCLinEcore.g:10678:2: rule__ModelElementRefCS__Group__0__Impl rule__ModelElementRefCS__Group__1
+            // InternalOCLinEcore.g:10679:1: ( rule__ModelElementRefCS__Group__0__Impl rule__ModelElementRefCS__Group__1 )
+            // InternalOCLinEcore.g:10680:2: rule__ModelElementRefCS__Group__0__Impl rule__ModelElementRefCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__ModelElementRefCS__Group__0__Impl();
@@ -34284,17 +34284,17 @@
 
 
     // $ANTLR start "rule__ModelElementRefCS__Group__0__Impl"
-    // InternalOCLinEcore.g:10685:1: rule__ModelElementRefCS__Group__0__Impl : ( 'reference' ) ;
+    // InternalOCLinEcore.g:10687:1: rule__ModelElementRefCS__Group__0__Impl : ( 'reference' ) ;
     public final void rule__ModelElementRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10689:1: ( ( 'reference' ) )
-            // InternalOCLinEcore.g:10690:1: ( 'reference' )
+            // InternalOCLinEcore.g:10691:1: ( ( 'reference' ) )
+            // InternalOCLinEcore.g:10692:1: ( 'reference' )
             {
-            // InternalOCLinEcore.g:10690:1: ( 'reference' )
-            // InternalOCLinEcore.g:10691:1: 'reference'
+            // InternalOCLinEcore.g:10692:1: ( 'reference' )
+            // InternalOCLinEcore.g:10693:1: 'reference'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getModelElementRefCSAccess().getReferenceKeyword_0());
@@ -34325,14 +34325,14 @@
 
 
     // $ANTLR start "rule__ModelElementRefCS__Group__1"
-    // InternalOCLinEcore.g:10704:1: rule__ModelElementRefCS__Group__1 : rule__ModelElementRefCS__Group__1__Impl rule__ModelElementRefCS__Group__2 ;
+    // InternalOCLinEcore.g:10706:1: rule__ModelElementRefCS__Group__1 : rule__ModelElementRefCS__Group__1__Impl rule__ModelElementRefCS__Group__2 ;
     public final void rule__ModelElementRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10708:1: ( rule__ModelElementRefCS__Group__1__Impl rule__ModelElementRefCS__Group__2 )
-            // InternalOCLinEcore.g:10709:2: rule__ModelElementRefCS__Group__1__Impl rule__ModelElementRefCS__Group__2
+            // InternalOCLinEcore.g:10710:1: ( rule__ModelElementRefCS__Group__1__Impl rule__ModelElementRefCS__Group__2 )
+            // InternalOCLinEcore.g:10711:2: rule__ModelElementRefCS__Group__1__Impl rule__ModelElementRefCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_52);
             rule__ModelElementRefCS__Group__1__Impl();
@@ -34363,23 +34363,23 @@
 
 
     // $ANTLR start "rule__ModelElementRefCS__Group__1__Impl"
-    // InternalOCLinEcore.g:10716:1: rule__ModelElementRefCS__Group__1__Impl : ( ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:10718:1: rule__ModelElementRefCS__Group__1__Impl : ( ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 ) ) ;
     public final void rule__ModelElementRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10720:1: ( ( ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 ) ) )
-            // InternalOCLinEcore.g:10721:1: ( ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 ) )
+            // InternalOCLinEcore.g:10722:1: ( ( ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 ) ) )
+            // InternalOCLinEcore.g:10723:1: ( ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:10721:1: ( ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 ) )
-            // InternalOCLinEcore.g:10722:1: ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 )
+            // InternalOCLinEcore.g:10723:1: ( ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 ) )
+            // InternalOCLinEcore.g:10724:1: ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getModelElementRefCSAccess().getOwnedPathNameAssignment_1());
             }
-            // InternalOCLinEcore.g:10723:1: ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 )
-            // InternalOCLinEcore.g:10723:2: rule__ModelElementRefCS__OwnedPathNameAssignment_1
+            // InternalOCLinEcore.g:10725:1: ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 )
+            // InternalOCLinEcore.g:10725:2: rule__ModelElementRefCS__OwnedPathNameAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ModelElementRefCS__OwnedPathNameAssignment_1();
@@ -34414,14 +34414,14 @@
 
 
     // $ANTLR start "rule__ModelElementRefCS__Group__2"
-    // InternalOCLinEcore.g:10733:1: rule__ModelElementRefCS__Group__2 : rule__ModelElementRefCS__Group__2__Impl ;
+    // InternalOCLinEcore.g:10735:1: rule__ModelElementRefCS__Group__2 : rule__ModelElementRefCS__Group__2__Impl ;
     public final void rule__ModelElementRefCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10737:1: ( rule__ModelElementRefCS__Group__2__Impl )
-            // InternalOCLinEcore.g:10738:2: rule__ModelElementRefCS__Group__2__Impl
+            // InternalOCLinEcore.g:10739:1: ( rule__ModelElementRefCS__Group__2__Impl )
+            // InternalOCLinEcore.g:10740:2: rule__ModelElementRefCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ModelElementRefCS__Group__2__Impl();
@@ -34447,17 +34447,17 @@
 
 
     // $ANTLR start "rule__ModelElementRefCS__Group__2__Impl"
-    // InternalOCLinEcore.g:10744:1: rule__ModelElementRefCS__Group__2__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:10746:1: rule__ModelElementRefCS__Group__2__Impl : ( ';' ) ;
     public final void rule__ModelElementRefCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10748:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:10749:1: ( ';' )
+            // InternalOCLinEcore.g:10750:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:10751:1: ( ';' )
             {
-            // InternalOCLinEcore.g:10749:1: ( ';' )
-            // InternalOCLinEcore.g:10750:1: ';'
+            // InternalOCLinEcore.g:10751:1: ( ';' )
+            // InternalOCLinEcore.g:10752:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getModelElementRefCSAccess().getSemicolonKeyword_2());
@@ -34488,14 +34488,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__0"
-    // InternalOCLinEcore.g:10769:1: rule__OperationCS__Group__0 : rule__OperationCS__Group__0__Impl rule__OperationCS__Group__1 ;
+    // InternalOCLinEcore.g:10771:1: rule__OperationCS__Group__0 : rule__OperationCS__Group__0__Impl rule__OperationCS__Group__1 ;
     public final void rule__OperationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10773:1: ( rule__OperationCS__Group__0__Impl rule__OperationCS__Group__1 )
-            // InternalOCLinEcore.g:10774:2: rule__OperationCS__Group__0__Impl rule__OperationCS__Group__1
+            // InternalOCLinEcore.g:10775:1: ( rule__OperationCS__Group__0__Impl rule__OperationCS__Group__1 )
+            // InternalOCLinEcore.g:10776:2: rule__OperationCS__Group__0__Impl rule__OperationCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_53);
             rule__OperationCS__Group__0__Impl();
@@ -34526,22 +34526,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__0__Impl"
-    // InternalOCLinEcore.g:10781:1: rule__OperationCS__Group__0__Impl : ( ( rule__OperationCS__Alternatives_0 )? ) ;
+    // InternalOCLinEcore.g:10783:1: rule__OperationCS__Group__0__Impl : ( ( rule__OperationCS__Alternatives_0 )? ) ;
     public final void rule__OperationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10785:1: ( ( ( rule__OperationCS__Alternatives_0 )? ) )
-            // InternalOCLinEcore.g:10786:1: ( ( rule__OperationCS__Alternatives_0 )? )
+            // InternalOCLinEcore.g:10787:1: ( ( ( rule__OperationCS__Alternatives_0 )? ) )
+            // InternalOCLinEcore.g:10788:1: ( ( rule__OperationCS__Alternatives_0 )? )
             {
-            // InternalOCLinEcore.g:10786:1: ( ( rule__OperationCS__Alternatives_0 )? )
-            // InternalOCLinEcore.g:10787:1: ( rule__OperationCS__Alternatives_0 )?
+            // InternalOCLinEcore.g:10788:1: ( ( rule__OperationCS__Alternatives_0 )? )
+            // InternalOCLinEcore.g:10789:1: ( rule__OperationCS__Alternatives_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getAlternatives_0());
             }
-            // InternalOCLinEcore.g:10788:1: ( rule__OperationCS__Alternatives_0 )?
+            // InternalOCLinEcore.g:10790:1: ( rule__OperationCS__Alternatives_0 )?
             int alt127=2;
             int LA127_0 = input.LA(1);
 
@@ -34550,7 +34550,7 @@
             }
             switch (alt127) {
                 case 1 :
-                    // InternalOCLinEcore.g:10788:2: rule__OperationCS__Alternatives_0
+                    // InternalOCLinEcore.g:10790:2: rule__OperationCS__Alternatives_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__Alternatives_0();
@@ -34588,14 +34588,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__1"
-    // InternalOCLinEcore.g:10798:1: rule__OperationCS__Group__1 : rule__OperationCS__Group__1__Impl rule__OperationCS__Group__2 ;
+    // InternalOCLinEcore.g:10800:1: rule__OperationCS__Group__1 : rule__OperationCS__Group__1__Impl rule__OperationCS__Group__2 ;
     public final void rule__OperationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10802:1: ( rule__OperationCS__Group__1__Impl rule__OperationCS__Group__2 )
-            // InternalOCLinEcore.g:10803:2: rule__OperationCS__Group__1__Impl rule__OperationCS__Group__2
+            // InternalOCLinEcore.g:10804:1: ( rule__OperationCS__Group__1__Impl rule__OperationCS__Group__2 )
+            // InternalOCLinEcore.g:10805:2: rule__OperationCS__Group__1__Impl rule__OperationCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_54);
             rule__OperationCS__Group__1__Impl();
@@ -34626,17 +34626,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__1__Impl"
-    // InternalOCLinEcore.g:10810:1: rule__OperationCS__Group__1__Impl : ( 'operation' ) ;
+    // InternalOCLinEcore.g:10812:1: rule__OperationCS__Group__1__Impl : ( 'operation' ) ;
     public final void rule__OperationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10814:1: ( ( 'operation' ) )
-            // InternalOCLinEcore.g:10815:1: ( 'operation' )
+            // InternalOCLinEcore.g:10816:1: ( ( 'operation' ) )
+            // InternalOCLinEcore.g:10817:1: ( 'operation' )
             {
-            // InternalOCLinEcore.g:10815:1: ( 'operation' )
-            // InternalOCLinEcore.g:10816:1: 'operation'
+            // InternalOCLinEcore.g:10817:1: ( 'operation' )
+            // InternalOCLinEcore.g:10818:1: 'operation'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOperationKeyword_1());
@@ -34667,14 +34667,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__2"
-    // InternalOCLinEcore.g:10829:1: rule__OperationCS__Group__2 : rule__OperationCS__Group__2__Impl rule__OperationCS__Group__3 ;
+    // InternalOCLinEcore.g:10831:1: rule__OperationCS__Group__2 : rule__OperationCS__Group__2__Impl rule__OperationCS__Group__3 ;
     public final void rule__OperationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10833:1: ( rule__OperationCS__Group__2__Impl rule__OperationCS__Group__3 )
-            // InternalOCLinEcore.g:10834:2: rule__OperationCS__Group__2__Impl rule__OperationCS__Group__3
+            // InternalOCLinEcore.g:10835:1: ( rule__OperationCS__Group__2__Impl rule__OperationCS__Group__3 )
+            // InternalOCLinEcore.g:10836:2: rule__OperationCS__Group__2__Impl rule__OperationCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_54);
             rule__OperationCS__Group__2__Impl();
@@ -34705,22 +34705,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__2__Impl"
-    // InternalOCLinEcore.g:10841:1: rule__OperationCS__Group__2__Impl : ( ( rule__OperationCS__OwnedSignatureAssignment_2 )? ) ;
+    // InternalOCLinEcore.g:10843:1: rule__OperationCS__Group__2__Impl : ( ( rule__OperationCS__OwnedSignatureAssignment_2 )? ) ;
     public final void rule__OperationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10845:1: ( ( ( rule__OperationCS__OwnedSignatureAssignment_2 )? ) )
-            // InternalOCLinEcore.g:10846:1: ( ( rule__OperationCS__OwnedSignatureAssignment_2 )? )
+            // InternalOCLinEcore.g:10847:1: ( ( ( rule__OperationCS__OwnedSignatureAssignment_2 )? ) )
+            // InternalOCLinEcore.g:10848:1: ( ( rule__OperationCS__OwnedSignatureAssignment_2 )? )
             {
-            // InternalOCLinEcore.g:10846:1: ( ( rule__OperationCS__OwnedSignatureAssignment_2 )? )
-            // InternalOCLinEcore.g:10847:1: ( rule__OperationCS__OwnedSignatureAssignment_2 )?
+            // InternalOCLinEcore.g:10848:1: ( ( rule__OperationCS__OwnedSignatureAssignment_2 )? )
+            // InternalOCLinEcore.g:10849:1: ( rule__OperationCS__OwnedSignatureAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedSignatureAssignment_2());
             }
-            // InternalOCLinEcore.g:10848:1: ( rule__OperationCS__OwnedSignatureAssignment_2 )?
+            // InternalOCLinEcore.g:10850:1: ( rule__OperationCS__OwnedSignatureAssignment_2 )?
             int alt128=2;
             int LA128_0 = input.LA(1);
 
@@ -34729,7 +34729,7 @@
             }
             switch (alt128) {
                 case 1 :
-                    // InternalOCLinEcore.g:10848:2: rule__OperationCS__OwnedSignatureAssignment_2
+                    // InternalOCLinEcore.g:10850:2: rule__OperationCS__OwnedSignatureAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__OwnedSignatureAssignment_2();
@@ -34767,14 +34767,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__3"
-    // InternalOCLinEcore.g:10858:1: rule__OperationCS__Group__3 : rule__OperationCS__Group__3__Impl rule__OperationCS__Group__4 ;
+    // InternalOCLinEcore.g:10860:1: rule__OperationCS__Group__3 : rule__OperationCS__Group__3__Impl rule__OperationCS__Group__4 ;
     public final void rule__OperationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10862:1: ( rule__OperationCS__Group__3__Impl rule__OperationCS__Group__4 )
-            // InternalOCLinEcore.g:10863:2: rule__OperationCS__Group__3__Impl rule__OperationCS__Group__4
+            // InternalOCLinEcore.g:10864:1: ( rule__OperationCS__Group__3__Impl rule__OperationCS__Group__4 )
+            // InternalOCLinEcore.g:10865:2: rule__OperationCS__Group__3__Impl rule__OperationCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__OperationCS__Group__3__Impl();
@@ -34805,23 +34805,23 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__3__Impl"
-    // InternalOCLinEcore.g:10870:1: rule__OperationCS__Group__3__Impl : ( ( rule__OperationCS__NameAssignment_3 ) ) ;
+    // InternalOCLinEcore.g:10872:1: rule__OperationCS__Group__3__Impl : ( ( rule__OperationCS__NameAssignment_3 ) ) ;
     public final void rule__OperationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10874:1: ( ( ( rule__OperationCS__NameAssignment_3 ) ) )
-            // InternalOCLinEcore.g:10875:1: ( ( rule__OperationCS__NameAssignment_3 ) )
+            // InternalOCLinEcore.g:10876:1: ( ( ( rule__OperationCS__NameAssignment_3 ) ) )
+            // InternalOCLinEcore.g:10877:1: ( ( rule__OperationCS__NameAssignment_3 ) )
             {
-            // InternalOCLinEcore.g:10875:1: ( ( rule__OperationCS__NameAssignment_3 ) )
-            // InternalOCLinEcore.g:10876:1: ( rule__OperationCS__NameAssignment_3 )
+            // InternalOCLinEcore.g:10877:1: ( ( rule__OperationCS__NameAssignment_3 ) )
+            // InternalOCLinEcore.g:10878:1: ( rule__OperationCS__NameAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getNameAssignment_3());
             }
-            // InternalOCLinEcore.g:10877:1: ( rule__OperationCS__NameAssignment_3 )
-            // InternalOCLinEcore.g:10877:2: rule__OperationCS__NameAssignment_3
+            // InternalOCLinEcore.g:10879:1: ( rule__OperationCS__NameAssignment_3 )
+            // InternalOCLinEcore.g:10879:2: rule__OperationCS__NameAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__NameAssignment_3();
@@ -34856,14 +34856,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__4"
-    // InternalOCLinEcore.g:10887:1: rule__OperationCS__Group__4 : rule__OperationCS__Group__4__Impl rule__OperationCS__Group__5 ;
+    // InternalOCLinEcore.g:10889:1: rule__OperationCS__Group__4 : rule__OperationCS__Group__4__Impl rule__OperationCS__Group__5 ;
     public final void rule__OperationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10891:1: ( rule__OperationCS__Group__4__Impl rule__OperationCS__Group__5 )
-            // InternalOCLinEcore.g:10892:2: rule__OperationCS__Group__4__Impl rule__OperationCS__Group__5
+            // InternalOCLinEcore.g:10893:1: ( rule__OperationCS__Group__4__Impl rule__OperationCS__Group__5 )
+            // InternalOCLinEcore.g:10894:2: rule__OperationCS__Group__4__Impl rule__OperationCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_55);
             rule__OperationCS__Group__4__Impl();
@@ -34894,17 +34894,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__4__Impl"
-    // InternalOCLinEcore.g:10899:1: rule__OperationCS__Group__4__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:10901:1: rule__OperationCS__Group__4__Impl : ( '(' ) ;
     public final void rule__OperationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10903:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:10904:1: ( '(' )
+            // InternalOCLinEcore.g:10905:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:10906:1: ( '(' )
             {
-            // InternalOCLinEcore.g:10904:1: ( '(' )
-            // InternalOCLinEcore.g:10905:1: '('
+            // InternalOCLinEcore.g:10906:1: ( '(' )
+            // InternalOCLinEcore.g:10907:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getLeftParenthesisKeyword_4());
@@ -34935,14 +34935,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__5"
-    // InternalOCLinEcore.g:10918:1: rule__OperationCS__Group__5 : rule__OperationCS__Group__5__Impl rule__OperationCS__Group__6 ;
+    // InternalOCLinEcore.g:10920:1: rule__OperationCS__Group__5 : rule__OperationCS__Group__5__Impl rule__OperationCS__Group__6 ;
     public final void rule__OperationCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10922:1: ( rule__OperationCS__Group__5__Impl rule__OperationCS__Group__6 )
-            // InternalOCLinEcore.g:10923:2: rule__OperationCS__Group__5__Impl rule__OperationCS__Group__6
+            // InternalOCLinEcore.g:10924:1: ( rule__OperationCS__Group__5__Impl rule__OperationCS__Group__6 )
+            // InternalOCLinEcore.g:10925:2: rule__OperationCS__Group__5__Impl rule__OperationCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_55);
             rule__OperationCS__Group__5__Impl();
@@ -34973,22 +34973,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__5__Impl"
-    // InternalOCLinEcore.g:10930:1: rule__OperationCS__Group__5__Impl : ( ( rule__OperationCS__Group_5__0 )? ) ;
+    // InternalOCLinEcore.g:10932:1: rule__OperationCS__Group__5__Impl : ( ( rule__OperationCS__Group_5__0 )? ) ;
     public final void rule__OperationCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10934:1: ( ( ( rule__OperationCS__Group_5__0 )? ) )
-            // InternalOCLinEcore.g:10935:1: ( ( rule__OperationCS__Group_5__0 )? )
+            // InternalOCLinEcore.g:10936:1: ( ( ( rule__OperationCS__Group_5__0 )? ) )
+            // InternalOCLinEcore.g:10937:1: ( ( rule__OperationCS__Group_5__0 )? )
             {
-            // InternalOCLinEcore.g:10935:1: ( ( rule__OperationCS__Group_5__0 )? )
-            // InternalOCLinEcore.g:10936:1: ( rule__OperationCS__Group_5__0 )?
+            // InternalOCLinEcore.g:10937:1: ( ( rule__OperationCS__Group_5__0 )? )
+            // InternalOCLinEcore.g:10938:1: ( rule__OperationCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getGroup_5());
             }
-            // InternalOCLinEcore.g:10937:1: ( rule__OperationCS__Group_5__0 )?
+            // InternalOCLinEcore.g:10939:1: ( rule__OperationCS__Group_5__0 )?
             int alt129=2;
             int LA129_0 = input.LA(1);
 
@@ -34997,7 +34997,7 @@
             }
             switch (alt129) {
                 case 1 :
-                    // InternalOCLinEcore.g:10937:2: rule__OperationCS__Group_5__0
+                    // InternalOCLinEcore.g:10939:2: rule__OperationCS__Group_5__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__Group_5__0();
@@ -35035,14 +35035,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__6"
-    // InternalOCLinEcore.g:10947:1: rule__OperationCS__Group__6 : rule__OperationCS__Group__6__Impl rule__OperationCS__Group__7 ;
+    // InternalOCLinEcore.g:10949:1: rule__OperationCS__Group__6 : rule__OperationCS__Group__6__Impl rule__OperationCS__Group__7 ;
     public final void rule__OperationCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10951:1: ( rule__OperationCS__Group__6__Impl rule__OperationCS__Group__7 )
-            // InternalOCLinEcore.g:10952:2: rule__OperationCS__Group__6__Impl rule__OperationCS__Group__7
+            // InternalOCLinEcore.g:10953:1: ( rule__OperationCS__Group__6__Impl rule__OperationCS__Group__7 )
+            // InternalOCLinEcore.g:10954:2: rule__OperationCS__Group__6__Impl rule__OperationCS__Group__7
             {
             pushFollow(FollowSets000.FOLLOW_56);
             rule__OperationCS__Group__6__Impl();
@@ -35073,17 +35073,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__6__Impl"
-    // InternalOCLinEcore.g:10959:1: rule__OperationCS__Group__6__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:10961:1: rule__OperationCS__Group__6__Impl : ( ')' ) ;
     public final void rule__OperationCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10963:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:10964:1: ( ')' )
+            // InternalOCLinEcore.g:10965:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:10966:1: ( ')' )
             {
-            // InternalOCLinEcore.g:10964:1: ( ')' )
-            // InternalOCLinEcore.g:10965:1: ')'
+            // InternalOCLinEcore.g:10966:1: ( ')' )
+            // InternalOCLinEcore.g:10967:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getRightParenthesisKeyword_6());
@@ -35114,14 +35114,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__7"
-    // InternalOCLinEcore.g:10978:1: rule__OperationCS__Group__7 : rule__OperationCS__Group__7__Impl rule__OperationCS__Group__8 ;
+    // InternalOCLinEcore.g:10980:1: rule__OperationCS__Group__7 : rule__OperationCS__Group__7__Impl rule__OperationCS__Group__8 ;
     public final void rule__OperationCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10982:1: ( rule__OperationCS__Group__7__Impl rule__OperationCS__Group__8 )
-            // InternalOCLinEcore.g:10983:2: rule__OperationCS__Group__7__Impl rule__OperationCS__Group__8
+            // InternalOCLinEcore.g:10984:1: ( rule__OperationCS__Group__7__Impl rule__OperationCS__Group__8 )
+            // InternalOCLinEcore.g:10985:2: rule__OperationCS__Group__7__Impl rule__OperationCS__Group__8
             {
             pushFollow(FollowSets000.FOLLOW_56);
             rule__OperationCS__Group__7__Impl();
@@ -35152,22 +35152,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__7__Impl"
-    // InternalOCLinEcore.g:10990:1: rule__OperationCS__Group__7__Impl : ( ( rule__OperationCS__Group_7__0 )? ) ;
+    // InternalOCLinEcore.g:10992:1: rule__OperationCS__Group__7__Impl : ( ( rule__OperationCS__Group_7__0 )? ) ;
     public final void rule__OperationCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:10994:1: ( ( ( rule__OperationCS__Group_7__0 )? ) )
-            // InternalOCLinEcore.g:10995:1: ( ( rule__OperationCS__Group_7__0 )? )
+            // InternalOCLinEcore.g:10996:1: ( ( ( rule__OperationCS__Group_7__0 )? ) )
+            // InternalOCLinEcore.g:10997:1: ( ( rule__OperationCS__Group_7__0 )? )
             {
-            // InternalOCLinEcore.g:10995:1: ( ( rule__OperationCS__Group_7__0 )? )
-            // InternalOCLinEcore.g:10996:1: ( rule__OperationCS__Group_7__0 )?
+            // InternalOCLinEcore.g:10997:1: ( ( rule__OperationCS__Group_7__0 )? )
+            // InternalOCLinEcore.g:10998:1: ( rule__OperationCS__Group_7__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getGroup_7());
             }
-            // InternalOCLinEcore.g:10997:1: ( rule__OperationCS__Group_7__0 )?
+            // InternalOCLinEcore.g:10999:1: ( rule__OperationCS__Group_7__0 )?
             int alt130=2;
             int LA130_0 = input.LA(1);
 
@@ -35176,7 +35176,7 @@
             }
             switch (alt130) {
                 case 1 :
-                    // InternalOCLinEcore.g:10997:2: rule__OperationCS__Group_7__0
+                    // InternalOCLinEcore.g:10999:2: rule__OperationCS__Group_7__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__Group_7__0();
@@ -35214,14 +35214,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__8"
-    // InternalOCLinEcore.g:11007:1: rule__OperationCS__Group__8 : rule__OperationCS__Group__8__Impl rule__OperationCS__Group__9 ;
+    // InternalOCLinEcore.g:11009:1: rule__OperationCS__Group__8 : rule__OperationCS__Group__8__Impl rule__OperationCS__Group__9 ;
     public final void rule__OperationCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11011:1: ( rule__OperationCS__Group__8__Impl rule__OperationCS__Group__9 )
-            // InternalOCLinEcore.g:11012:2: rule__OperationCS__Group__8__Impl rule__OperationCS__Group__9
+            // InternalOCLinEcore.g:11013:1: ( rule__OperationCS__Group__8__Impl rule__OperationCS__Group__9 )
+            // InternalOCLinEcore.g:11014:2: rule__OperationCS__Group__8__Impl rule__OperationCS__Group__9
             {
             pushFollow(FollowSets000.FOLLOW_56);
             rule__OperationCS__Group__8__Impl();
@@ -35252,22 +35252,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__8__Impl"
-    // InternalOCLinEcore.g:11019:1: rule__OperationCS__Group__8__Impl : ( ( rule__OperationCS__Group_8__0 )? ) ;
+    // InternalOCLinEcore.g:11021:1: rule__OperationCS__Group__8__Impl : ( ( rule__OperationCS__Group_8__0 )? ) ;
     public final void rule__OperationCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11023:1: ( ( ( rule__OperationCS__Group_8__0 )? ) )
-            // InternalOCLinEcore.g:11024:1: ( ( rule__OperationCS__Group_8__0 )? )
+            // InternalOCLinEcore.g:11025:1: ( ( ( rule__OperationCS__Group_8__0 )? ) )
+            // InternalOCLinEcore.g:11026:1: ( ( rule__OperationCS__Group_8__0 )? )
             {
-            // InternalOCLinEcore.g:11024:1: ( ( rule__OperationCS__Group_8__0 )? )
-            // InternalOCLinEcore.g:11025:1: ( rule__OperationCS__Group_8__0 )?
+            // InternalOCLinEcore.g:11026:1: ( ( rule__OperationCS__Group_8__0 )? )
+            // InternalOCLinEcore.g:11027:1: ( rule__OperationCS__Group_8__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getGroup_8());
             }
-            // InternalOCLinEcore.g:11026:1: ( rule__OperationCS__Group_8__0 )?
+            // InternalOCLinEcore.g:11028:1: ( rule__OperationCS__Group_8__0 )?
             int alt131=2;
             int LA131_0 = input.LA(1);
 
@@ -35276,7 +35276,7 @@
             }
             switch (alt131) {
                 case 1 :
-                    // InternalOCLinEcore.g:11026:2: rule__OperationCS__Group_8__0
+                    // InternalOCLinEcore.g:11028:2: rule__OperationCS__Group_8__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__Group_8__0();
@@ -35314,14 +35314,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__9"
-    // InternalOCLinEcore.g:11036:1: rule__OperationCS__Group__9 : rule__OperationCS__Group__9__Impl rule__OperationCS__Group__10 ;
+    // InternalOCLinEcore.g:11038:1: rule__OperationCS__Group__9 : rule__OperationCS__Group__9__Impl rule__OperationCS__Group__10 ;
     public final void rule__OperationCS__Group__9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11040:1: ( rule__OperationCS__Group__9__Impl rule__OperationCS__Group__10 )
-            // InternalOCLinEcore.g:11041:2: rule__OperationCS__Group__9__Impl rule__OperationCS__Group__10
+            // InternalOCLinEcore.g:11042:1: ( rule__OperationCS__Group__9__Impl rule__OperationCS__Group__10 )
+            // InternalOCLinEcore.g:11043:2: rule__OperationCS__Group__9__Impl rule__OperationCS__Group__10
             {
             pushFollow(FollowSets000.FOLLOW_56);
             rule__OperationCS__Group__9__Impl();
@@ -35352,22 +35352,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__9__Impl"
-    // InternalOCLinEcore.g:11048:1: rule__OperationCS__Group__9__Impl : ( ( rule__OperationCS__Group_9__0 )? ) ;
+    // InternalOCLinEcore.g:11050:1: rule__OperationCS__Group__9__Impl : ( ( rule__OperationCS__Group_9__0 )? ) ;
     public final void rule__OperationCS__Group__9__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11052:1: ( ( ( rule__OperationCS__Group_9__0 )? ) )
-            // InternalOCLinEcore.g:11053:1: ( ( rule__OperationCS__Group_9__0 )? )
+            // InternalOCLinEcore.g:11054:1: ( ( ( rule__OperationCS__Group_9__0 )? ) )
+            // InternalOCLinEcore.g:11055:1: ( ( rule__OperationCS__Group_9__0 )? )
             {
-            // InternalOCLinEcore.g:11053:1: ( ( rule__OperationCS__Group_9__0 )? )
-            // InternalOCLinEcore.g:11054:1: ( rule__OperationCS__Group_9__0 )?
+            // InternalOCLinEcore.g:11055:1: ( ( rule__OperationCS__Group_9__0 )? )
+            // InternalOCLinEcore.g:11056:1: ( rule__OperationCS__Group_9__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getGroup_9());
             }
-            // InternalOCLinEcore.g:11055:1: ( rule__OperationCS__Group_9__0 )?
+            // InternalOCLinEcore.g:11057:1: ( rule__OperationCS__Group_9__0 )?
             int alt132=2;
             int LA132_0 = input.LA(1);
 
@@ -35380,7 +35380,7 @@
             }
             switch (alt132) {
                 case 1 :
-                    // InternalOCLinEcore.g:11055:2: rule__OperationCS__Group_9__0
+                    // InternalOCLinEcore.g:11057:2: rule__OperationCS__Group_9__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__Group_9__0();
@@ -35418,14 +35418,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__10"
-    // InternalOCLinEcore.g:11065:1: rule__OperationCS__Group__10 : rule__OperationCS__Group__10__Impl ;
+    // InternalOCLinEcore.g:11067:1: rule__OperationCS__Group__10 : rule__OperationCS__Group__10__Impl ;
     public final void rule__OperationCS__Group__10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11069:1: ( rule__OperationCS__Group__10__Impl )
-            // InternalOCLinEcore.g:11070:2: rule__OperationCS__Group__10__Impl
+            // InternalOCLinEcore.g:11071:1: ( rule__OperationCS__Group__10__Impl )
+            // InternalOCLinEcore.g:11072:2: rule__OperationCS__Group__10__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Group__10__Impl();
@@ -35451,23 +35451,23 @@
 
 
     // $ANTLR start "rule__OperationCS__Group__10__Impl"
-    // InternalOCLinEcore.g:11076:1: rule__OperationCS__Group__10__Impl : ( ( rule__OperationCS__Alternatives_10 ) ) ;
+    // InternalOCLinEcore.g:11078:1: rule__OperationCS__Group__10__Impl : ( ( rule__OperationCS__Alternatives_10 ) ) ;
     public final void rule__OperationCS__Group__10__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11080:1: ( ( ( rule__OperationCS__Alternatives_10 ) ) )
-            // InternalOCLinEcore.g:11081:1: ( ( rule__OperationCS__Alternatives_10 ) )
+            // InternalOCLinEcore.g:11082:1: ( ( ( rule__OperationCS__Alternatives_10 ) ) )
+            // InternalOCLinEcore.g:11083:1: ( ( rule__OperationCS__Alternatives_10 ) )
             {
-            // InternalOCLinEcore.g:11081:1: ( ( rule__OperationCS__Alternatives_10 ) )
-            // InternalOCLinEcore.g:11082:1: ( rule__OperationCS__Alternatives_10 )
+            // InternalOCLinEcore.g:11083:1: ( ( rule__OperationCS__Alternatives_10 ) )
+            // InternalOCLinEcore.g:11084:1: ( rule__OperationCS__Alternatives_10 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getAlternatives_10());
             }
-            // InternalOCLinEcore.g:11083:1: ( rule__OperationCS__Alternatives_10 )
-            // InternalOCLinEcore.g:11083:2: rule__OperationCS__Alternatives_10
+            // InternalOCLinEcore.g:11085:1: ( rule__OperationCS__Alternatives_10 )
+            // InternalOCLinEcore.g:11085:2: rule__OperationCS__Alternatives_10
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Alternatives_10();
@@ -35502,14 +35502,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_0_0__0"
-    // InternalOCLinEcore.g:11115:1: rule__OperationCS__Group_0_0__0 : rule__OperationCS__Group_0_0__0__Impl rule__OperationCS__Group_0_0__1 ;
+    // InternalOCLinEcore.g:11117:1: rule__OperationCS__Group_0_0__0 : rule__OperationCS__Group_0_0__0__Impl rule__OperationCS__Group_0_0__1 ;
     public final void rule__OperationCS__Group_0_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11119:1: ( rule__OperationCS__Group_0_0__0__Impl rule__OperationCS__Group_0_0__1 )
-            // InternalOCLinEcore.g:11120:2: rule__OperationCS__Group_0_0__0__Impl rule__OperationCS__Group_0_0__1
+            // InternalOCLinEcore.g:11121:1: ( rule__OperationCS__Group_0_0__0__Impl rule__OperationCS__Group_0_0__1 )
+            // InternalOCLinEcore.g:11122:2: rule__OperationCS__Group_0_0__0__Impl rule__OperationCS__Group_0_0__1
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__OperationCS__Group_0_0__0__Impl();
@@ -35540,23 +35540,23 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_0_0__0__Impl"
-    // InternalOCLinEcore.g:11127:1: rule__OperationCS__Group_0_0__0__Impl : ( ( rule__OperationCS__QualifiersAssignment_0_0_0 ) ) ;
+    // InternalOCLinEcore.g:11129:1: rule__OperationCS__Group_0_0__0__Impl : ( ( rule__OperationCS__QualifiersAssignment_0_0_0 ) ) ;
     public final void rule__OperationCS__Group_0_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11131:1: ( ( ( rule__OperationCS__QualifiersAssignment_0_0_0 ) ) )
-            // InternalOCLinEcore.g:11132:1: ( ( rule__OperationCS__QualifiersAssignment_0_0_0 ) )
+            // InternalOCLinEcore.g:11133:1: ( ( ( rule__OperationCS__QualifiersAssignment_0_0_0 ) ) )
+            // InternalOCLinEcore.g:11134:1: ( ( rule__OperationCS__QualifiersAssignment_0_0_0 ) )
             {
-            // InternalOCLinEcore.g:11132:1: ( ( rule__OperationCS__QualifiersAssignment_0_0_0 ) )
-            // InternalOCLinEcore.g:11133:1: ( rule__OperationCS__QualifiersAssignment_0_0_0 )
+            // InternalOCLinEcore.g:11134:1: ( ( rule__OperationCS__QualifiersAssignment_0_0_0 ) )
+            // InternalOCLinEcore.g:11135:1: ( rule__OperationCS__QualifiersAssignment_0_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_0_0());
             }
-            // InternalOCLinEcore.g:11134:1: ( rule__OperationCS__QualifiersAssignment_0_0_0 )
-            // InternalOCLinEcore.g:11134:2: rule__OperationCS__QualifiersAssignment_0_0_0
+            // InternalOCLinEcore.g:11136:1: ( rule__OperationCS__QualifiersAssignment_0_0_0 )
+            // InternalOCLinEcore.g:11136:2: rule__OperationCS__QualifiersAssignment_0_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__QualifiersAssignment_0_0_0();
@@ -35591,14 +35591,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_0_0__1"
-    // InternalOCLinEcore.g:11144:1: rule__OperationCS__Group_0_0__1 : rule__OperationCS__Group_0_0__1__Impl ;
+    // InternalOCLinEcore.g:11146:1: rule__OperationCS__Group_0_0__1 : rule__OperationCS__Group_0_0__1__Impl ;
     public final void rule__OperationCS__Group_0_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11148:1: ( rule__OperationCS__Group_0_0__1__Impl )
-            // InternalOCLinEcore.g:11149:2: rule__OperationCS__Group_0_0__1__Impl
+            // InternalOCLinEcore.g:11150:1: ( rule__OperationCS__Group_0_0__1__Impl )
+            // InternalOCLinEcore.g:11151:2: rule__OperationCS__Group_0_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Group_0_0__1__Impl();
@@ -35624,22 +35624,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_0_0__1__Impl"
-    // InternalOCLinEcore.g:11155:1: rule__OperationCS__Group_0_0__1__Impl : ( ( rule__OperationCS__QualifiersAssignment_0_0_1 )? ) ;
+    // InternalOCLinEcore.g:11157:1: rule__OperationCS__Group_0_0__1__Impl : ( ( rule__OperationCS__QualifiersAssignment_0_0_1 )? ) ;
     public final void rule__OperationCS__Group_0_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11159:1: ( ( ( rule__OperationCS__QualifiersAssignment_0_0_1 )? ) )
-            // InternalOCLinEcore.g:11160:1: ( ( rule__OperationCS__QualifiersAssignment_0_0_1 )? )
+            // InternalOCLinEcore.g:11161:1: ( ( ( rule__OperationCS__QualifiersAssignment_0_0_1 )? ) )
+            // InternalOCLinEcore.g:11162:1: ( ( rule__OperationCS__QualifiersAssignment_0_0_1 )? )
             {
-            // InternalOCLinEcore.g:11160:1: ( ( rule__OperationCS__QualifiersAssignment_0_0_1 )? )
-            // InternalOCLinEcore.g:11161:1: ( rule__OperationCS__QualifiersAssignment_0_0_1 )?
+            // InternalOCLinEcore.g:11162:1: ( ( rule__OperationCS__QualifiersAssignment_0_0_1 )? )
+            // InternalOCLinEcore.g:11163:1: ( rule__OperationCS__QualifiersAssignment_0_0_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_0_1());
             }
-            // InternalOCLinEcore.g:11162:1: ( rule__OperationCS__QualifiersAssignment_0_0_1 )?
+            // InternalOCLinEcore.g:11164:1: ( rule__OperationCS__QualifiersAssignment_0_0_1 )?
             int alt133=2;
             int LA133_0 = input.LA(1);
 
@@ -35648,7 +35648,7 @@
             }
             switch (alt133) {
                 case 1 :
-                    // InternalOCLinEcore.g:11162:2: rule__OperationCS__QualifiersAssignment_0_0_1
+                    // InternalOCLinEcore.g:11164:2: rule__OperationCS__QualifiersAssignment_0_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__QualifiersAssignment_0_0_1();
@@ -35686,14 +35686,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_0_1__0"
-    // InternalOCLinEcore.g:11176:1: rule__OperationCS__Group_0_1__0 : rule__OperationCS__Group_0_1__0__Impl rule__OperationCS__Group_0_1__1 ;
+    // InternalOCLinEcore.g:11178:1: rule__OperationCS__Group_0_1__0 : rule__OperationCS__Group_0_1__0__Impl rule__OperationCS__Group_0_1__1 ;
     public final void rule__OperationCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11180:1: ( rule__OperationCS__Group_0_1__0__Impl rule__OperationCS__Group_0_1__1 )
-            // InternalOCLinEcore.g:11181:2: rule__OperationCS__Group_0_1__0__Impl rule__OperationCS__Group_0_1__1
+            // InternalOCLinEcore.g:11182:1: ( rule__OperationCS__Group_0_1__0__Impl rule__OperationCS__Group_0_1__1 )
+            // InternalOCLinEcore.g:11183:2: rule__OperationCS__Group_0_1__0__Impl rule__OperationCS__Group_0_1__1
             {
             pushFollow(FollowSets000.FOLLOW_27);
             rule__OperationCS__Group_0_1__0__Impl();
@@ -35724,23 +35724,23 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_0_1__0__Impl"
-    // InternalOCLinEcore.g:11188:1: rule__OperationCS__Group_0_1__0__Impl : ( ( rule__OperationCS__QualifiersAssignment_0_1_0 ) ) ;
+    // InternalOCLinEcore.g:11190:1: rule__OperationCS__Group_0_1__0__Impl : ( ( rule__OperationCS__QualifiersAssignment_0_1_0 ) ) ;
     public final void rule__OperationCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11192:1: ( ( ( rule__OperationCS__QualifiersAssignment_0_1_0 ) ) )
-            // InternalOCLinEcore.g:11193:1: ( ( rule__OperationCS__QualifiersAssignment_0_1_0 ) )
+            // InternalOCLinEcore.g:11194:1: ( ( ( rule__OperationCS__QualifiersAssignment_0_1_0 ) ) )
+            // InternalOCLinEcore.g:11195:1: ( ( rule__OperationCS__QualifiersAssignment_0_1_0 ) )
             {
-            // InternalOCLinEcore.g:11193:1: ( ( rule__OperationCS__QualifiersAssignment_0_1_0 ) )
-            // InternalOCLinEcore.g:11194:1: ( rule__OperationCS__QualifiersAssignment_0_1_0 )
+            // InternalOCLinEcore.g:11195:1: ( ( rule__OperationCS__QualifiersAssignment_0_1_0 ) )
+            // InternalOCLinEcore.g:11196:1: ( rule__OperationCS__QualifiersAssignment_0_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_1_0());
             }
-            // InternalOCLinEcore.g:11195:1: ( rule__OperationCS__QualifiersAssignment_0_1_0 )
-            // InternalOCLinEcore.g:11195:2: rule__OperationCS__QualifiersAssignment_0_1_0
+            // InternalOCLinEcore.g:11197:1: ( rule__OperationCS__QualifiersAssignment_0_1_0 )
+            // InternalOCLinEcore.g:11197:2: rule__OperationCS__QualifiersAssignment_0_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__QualifiersAssignment_0_1_0();
@@ -35775,14 +35775,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_0_1__1"
-    // InternalOCLinEcore.g:11205:1: rule__OperationCS__Group_0_1__1 : rule__OperationCS__Group_0_1__1__Impl ;
+    // InternalOCLinEcore.g:11207:1: rule__OperationCS__Group_0_1__1 : rule__OperationCS__Group_0_1__1__Impl ;
     public final void rule__OperationCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11209:1: ( rule__OperationCS__Group_0_1__1__Impl )
-            // InternalOCLinEcore.g:11210:2: rule__OperationCS__Group_0_1__1__Impl
+            // InternalOCLinEcore.g:11211:1: ( rule__OperationCS__Group_0_1__1__Impl )
+            // InternalOCLinEcore.g:11212:2: rule__OperationCS__Group_0_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Group_0_1__1__Impl();
@@ -35808,22 +35808,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_0_1__1__Impl"
-    // InternalOCLinEcore.g:11216:1: rule__OperationCS__Group_0_1__1__Impl : ( ( rule__OperationCS__QualifiersAssignment_0_1_1 )? ) ;
+    // InternalOCLinEcore.g:11218:1: rule__OperationCS__Group_0_1__1__Impl : ( ( rule__OperationCS__QualifiersAssignment_0_1_1 )? ) ;
     public final void rule__OperationCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11220:1: ( ( ( rule__OperationCS__QualifiersAssignment_0_1_1 )? ) )
-            // InternalOCLinEcore.g:11221:1: ( ( rule__OperationCS__QualifiersAssignment_0_1_1 )? )
+            // InternalOCLinEcore.g:11222:1: ( ( ( rule__OperationCS__QualifiersAssignment_0_1_1 )? ) )
+            // InternalOCLinEcore.g:11223:1: ( ( rule__OperationCS__QualifiersAssignment_0_1_1 )? )
             {
-            // InternalOCLinEcore.g:11221:1: ( ( rule__OperationCS__QualifiersAssignment_0_1_1 )? )
-            // InternalOCLinEcore.g:11222:1: ( rule__OperationCS__QualifiersAssignment_0_1_1 )?
+            // InternalOCLinEcore.g:11223:1: ( ( rule__OperationCS__QualifiersAssignment_0_1_1 )? )
+            // InternalOCLinEcore.g:11224:1: ( rule__OperationCS__QualifiersAssignment_0_1_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_1_1());
             }
-            // InternalOCLinEcore.g:11223:1: ( rule__OperationCS__QualifiersAssignment_0_1_1 )?
+            // InternalOCLinEcore.g:11225:1: ( rule__OperationCS__QualifiersAssignment_0_1_1 )?
             int alt134=2;
             int LA134_0 = input.LA(1);
 
@@ -35832,7 +35832,7 @@
             }
             switch (alt134) {
                 case 1 :
-                    // InternalOCLinEcore.g:11223:2: rule__OperationCS__QualifiersAssignment_0_1_1
+                    // InternalOCLinEcore.g:11225:2: rule__OperationCS__QualifiersAssignment_0_1_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__QualifiersAssignment_0_1_1();
@@ -35870,14 +35870,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_5__0"
-    // InternalOCLinEcore.g:11237:1: rule__OperationCS__Group_5__0 : rule__OperationCS__Group_5__0__Impl rule__OperationCS__Group_5__1 ;
+    // InternalOCLinEcore.g:11239:1: rule__OperationCS__Group_5__0 : rule__OperationCS__Group_5__0__Impl rule__OperationCS__Group_5__1 ;
     public final void rule__OperationCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11241:1: ( rule__OperationCS__Group_5__0__Impl rule__OperationCS__Group_5__1 )
-            // InternalOCLinEcore.g:11242:2: rule__OperationCS__Group_5__0__Impl rule__OperationCS__Group_5__1
+            // InternalOCLinEcore.g:11243:1: ( rule__OperationCS__Group_5__0__Impl rule__OperationCS__Group_5__1 )
+            // InternalOCLinEcore.g:11244:2: rule__OperationCS__Group_5__0__Impl rule__OperationCS__Group_5__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__OperationCS__Group_5__0__Impl();
@@ -35908,23 +35908,23 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_5__0__Impl"
-    // InternalOCLinEcore.g:11249:1: rule__OperationCS__Group_5__0__Impl : ( ( rule__OperationCS__OwnedParametersAssignment_5_0 ) ) ;
+    // InternalOCLinEcore.g:11251:1: rule__OperationCS__Group_5__0__Impl : ( ( rule__OperationCS__OwnedParametersAssignment_5_0 ) ) ;
     public final void rule__OperationCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11253:1: ( ( ( rule__OperationCS__OwnedParametersAssignment_5_0 ) ) )
-            // InternalOCLinEcore.g:11254:1: ( ( rule__OperationCS__OwnedParametersAssignment_5_0 ) )
+            // InternalOCLinEcore.g:11255:1: ( ( ( rule__OperationCS__OwnedParametersAssignment_5_0 ) ) )
+            // InternalOCLinEcore.g:11256:1: ( ( rule__OperationCS__OwnedParametersAssignment_5_0 ) )
             {
-            // InternalOCLinEcore.g:11254:1: ( ( rule__OperationCS__OwnedParametersAssignment_5_0 ) )
-            // InternalOCLinEcore.g:11255:1: ( rule__OperationCS__OwnedParametersAssignment_5_0 )
+            // InternalOCLinEcore.g:11256:1: ( ( rule__OperationCS__OwnedParametersAssignment_5_0 ) )
+            // InternalOCLinEcore.g:11257:1: ( rule__OperationCS__OwnedParametersAssignment_5_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedParametersAssignment_5_0());
             }
-            // InternalOCLinEcore.g:11256:1: ( rule__OperationCS__OwnedParametersAssignment_5_0 )
-            // InternalOCLinEcore.g:11256:2: rule__OperationCS__OwnedParametersAssignment_5_0
+            // InternalOCLinEcore.g:11258:1: ( rule__OperationCS__OwnedParametersAssignment_5_0 )
+            // InternalOCLinEcore.g:11258:2: rule__OperationCS__OwnedParametersAssignment_5_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__OwnedParametersAssignment_5_0();
@@ -35959,14 +35959,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_5__1"
-    // InternalOCLinEcore.g:11266:1: rule__OperationCS__Group_5__1 : rule__OperationCS__Group_5__1__Impl ;
+    // InternalOCLinEcore.g:11268:1: rule__OperationCS__Group_5__1 : rule__OperationCS__Group_5__1__Impl ;
     public final void rule__OperationCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11270:1: ( rule__OperationCS__Group_5__1__Impl )
-            // InternalOCLinEcore.g:11271:2: rule__OperationCS__Group_5__1__Impl
+            // InternalOCLinEcore.g:11272:1: ( rule__OperationCS__Group_5__1__Impl )
+            // InternalOCLinEcore.g:11273:2: rule__OperationCS__Group_5__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Group_5__1__Impl();
@@ -35992,22 +35992,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_5__1__Impl"
-    // InternalOCLinEcore.g:11277:1: rule__OperationCS__Group_5__1__Impl : ( ( rule__OperationCS__Group_5_1__0 )* ) ;
+    // InternalOCLinEcore.g:11279:1: rule__OperationCS__Group_5__1__Impl : ( ( rule__OperationCS__Group_5_1__0 )* ) ;
     public final void rule__OperationCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11281:1: ( ( ( rule__OperationCS__Group_5_1__0 )* ) )
-            // InternalOCLinEcore.g:11282:1: ( ( rule__OperationCS__Group_5_1__0 )* )
+            // InternalOCLinEcore.g:11283:1: ( ( ( rule__OperationCS__Group_5_1__0 )* ) )
+            // InternalOCLinEcore.g:11284:1: ( ( rule__OperationCS__Group_5_1__0 )* )
             {
-            // InternalOCLinEcore.g:11282:1: ( ( rule__OperationCS__Group_5_1__0 )* )
-            // InternalOCLinEcore.g:11283:1: ( rule__OperationCS__Group_5_1__0 )*
+            // InternalOCLinEcore.g:11284:1: ( ( rule__OperationCS__Group_5_1__0 )* )
+            // InternalOCLinEcore.g:11285:1: ( rule__OperationCS__Group_5_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getGroup_5_1());
             }
-            // InternalOCLinEcore.g:11284:1: ( rule__OperationCS__Group_5_1__0 )*
+            // InternalOCLinEcore.g:11286:1: ( rule__OperationCS__Group_5_1__0 )*
             loop135:
             do {
                 int alt135=2;
@@ -36020,7 +36020,7 @@
 
                 switch (alt135) {
             	case 1 :
-            	    // InternalOCLinEcore.g:11284:2: rule__OperationCS__Group_5_1__0
+            	    // InternalOCLinEcore.g:11286:2: rule__OperationCS__Group_5_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__OperationCS__Group_5_1__0();
@@ -36061,14 +36061,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_5_1__0"
-    // InternalOCLinEcore.g:11298:1: rule__OperationCS__Group_5_1__0 : rule__OperationCS__Group_5_1__0__Impl rule__OperationCS__Group_5_1__1 ;
+    // InternalOCLinEcore.g:11300:1: rule__OperationCS__Group_5_1__0 : rule__OperationCS__Group_5_1__0__Impl rule__OperationCS__Group_5_1__1 ;
     public final void rule__OperationCS__Group_5_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11302:1: ( rule__OperationCS__Group_5_1__0__Impl rule__OperationCS__Group_5_1__1 )
-            // InternalOCLinEcore.g:11303:2: rule__OperationCS__Group_5_1__0__Impl rule__OperationCS__Group_5_1__1
+            // InternalOCLinEcore.g:11304:1: ( rule__OperationCS__Group_5_1__0__Impl rule__OperationCS__Group_5_1__1 )
+            // InternalOCLinEcore.g:11305:2: rule__OperationCS__Group_5_1__0__Impl rule__OperationCS__Group_5_1__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__OperationCS__Group_5_1__0__Impl();
@@ -36099,17 +36099,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_5_1__0__Impl"
-    // InternalOCLinEcore.g:11310:1: rule__OperationCS__Group_5_1__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:11312:1: rule__OperationCS__Group_5_1__0__Impl : ( ',' ) ;
     public final void rule__OperationCS__Group_5_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11314:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:11315:1: ( ',' )
+            // InternalOCLinEcore.g:11316:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:11317:1: ( ',' )
             {
-            // InternalOCLinEcore.g:11315:1: ( ',' )
-            // InternalOCLinEcore.g:11316:1: ','
+            // InternalOCLinEcore.g:11317:1: ( ',' )
+            // InternalOCLinEcore.g:11318:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getCommaKeyword_5_1_0());
@@ -36140,14 +36140,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_5_1__1"
-    // InternalOCLinEcore.g:11329:1: rule__OperationCS__Group_5_1__1 : rule__OperationCS__Group_5_1__1__Impl ;
+    // InternalOCLinEcore.g:11331:1: rule__OperationCS__Group_5_1__1 : rule__OperationCS__Group_5_1__1__Impl ;
     public final void rule__OperationCS__Group_5_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11333:1: ( rule__OperationCS__Group_5_1__1__Impl )
-            // InternalOCLinEcore.g:11334:2: rule__OperationCS__Group_5_1__1__Impl
+            // InternalOCLinEcore.g:11335:1: ( rule__OperationCS__Group_5_1__1__Impl )
+            // InternalOCLinEcore.g:11336:2: rule__OperationCS__Group_5_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Group_5_1__1__Impl();
@@ -36173,23 +36173,23 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_5_1__1__Impl"
-    // InternalOCLinEcore.g:11340:1: rule__OperationCS__Group_5_1__1__Impl : ( ( rule__OperationCS__OwnedParametersAssignment_5_1_1 ) ) ;
+    // InternalOCLinEcore.g:11342:1: rule__OperationCS__Group_5_1__1__Impl : ( ( rule__OperationCS__OwnedParametersAssignment_5_1_1 ) ) ;
     public final void rule__OperationCS__Group_5_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11344:1: ( ( ( rule__OperationCS__OwnedParametersAssignment_5_1_1 ) ) )
-            // InternalOCLinEcore.g:11345:1: ( ( rule__OperationCS__OwnedParametersAssignment_5_1_1 ) )
+            // InternalOCLinEcore.g:11346:1: ( ( ( rule__OperationCS__OwnedParametersAssignment_5_1_1 ) ) )
+            // InternalOCLinEcore.g:11347:1: ( ( rule__OperationCS__OwnedParametersAssignment_5_1_1 ) )
             {
-            // InternalOCLinEcore.g:11345:1: ( ( rule__OperationCS__OwnedParametersAssignment_5_1_1 ) )
-            // InternalOCLinEcore.g:11346:1: ( rule__OperationCS__OwnedParametersAssignment_5_1_1 )
+            // InternalOCLinEcore.g:11347:1: ( ( rule__OperationCS__OwnedParametersAssignment_5_1_1 ) )
+            // InternalOCLinEcore.g:11348:1: ( rule__OperationCS__OwnedParametersAssignment_5_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedParametersAssignment_5_1_1());
             }
-            // InternalOCLinEcore.g:11347:1: ( rule__OperationCS__OwnedParametersAssignment_5_1_1 )
-            // InternalOCLinEcore.g:11347:2: rule__OperationCS__OwnedParametersAssignment_5_1_1
+            // InternalOCLinEcore.g:11349:1: ( rule__OperationCS__OwnedParametersAssignment_5_1_1 )
+            // InternalOCLinEcore.g:11349:2: rule__OperationCS__OwnedParametersAssignment_5_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__OwnedParametersAssignment_5_1_1();
@@ -36224,14 +36224,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_7__0"
-    // InternalOCLinEcore.g:11361:1: rule__OperationCS__Group_7__0 : rule__OperationCS__Group_7__0__Impl rule__OperationCS__Group_7__1 ;
+    // InternalOCLinEcore.g:11363:1: rule__OperationCS__Group_7__0 : rule__OperationCS__Group_7__0__Impl rule__OperationCS__Group_7__1 ;
     public final void rule__OperationCS__Group_7__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11365:1: ( rule__OperationCS__Group_7__0__Impl rule__OperationCS__Group_7__1 )
-            // InternalOCLinEcore.g:11366:2: rule__OperationCS__Group_7__0__Impl rule__OperationCS__Group_7__1
+            // InternalOCLinEcore.g:11367:1: ( rule__OperationCS__Group_7__0__Impl rule__OperationCS__Group_7__1 )
+            // InternalOCLinEcore.g:11368:2: rule__OperationCS__Group_7__0__Impl rule__OperationCS__Group_7__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__OperationCS__Group_7__0__Impl();
@@ -36262,17 +36262,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_7__0__Impl"
-    // InternalOCLinEcore.g:11373:1: rule__OperationCS__Group_7__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:11375:1: rule__OperationCS__Group_7__0__Impl : ( ':' ) ;
     public final void rule__OperationCS__Group_7__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11377:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:11378:1: ( ':' )
+            // InternalOCLinEcore.g:11379:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:11380:1: ( ':' )
             {
-            // InternalOCLinEcore.g:11378:1: ( ':' )
-            // InternalOCLinEcore.g:11379:1: ':'
+            // InternalOCLinEcore.g:11380:1: ( ':' )
+            // InternalOCLinEcore.g:11381:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getColonKeyword_7_0());
@@ -36303,14 +36303,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_7__1"
-    // InternalOCLinEcore.g:11392:1: rule__OperationCS__Group_7__1 : rule__OperationCS__Group_7__1__Impl ;
+    // InternalOCLinEcore.g:11394:1: rule__OperationCS__Group_7__1 : rule__OperationCS__Group_7__1__Impl ;
     public final void rule__OperationCS__Group_7__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11396:1: ( rule__OperationCS__Group_7__1__Impl )
-            // InternalOCLinEcore.g:11397:2: rule__OperationCS__Group_7__1__Impl
+            // InternalOCLinEcore.g:11398:1: ( rule__OperationCS__Group_7__1__Impl )
+            // InternalOCLinEcore.g:11399:2: rule__OperationCS__Group_7__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Group_7__1__Impl();
@@ -36336,23 +36336,23 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_7__1__Impl"
-    // InternalOCLinEcore.g:11403:1: rule__OperationCS__Group_7__1__Impl : ( ( rule__OperationCS__OwnedTypeAssignment_7_1 ) ) ;
+    // InternalOCLinEcore.g:11405:1: rule__OperationCS__Group_7__1__Impl : ( ( rule__OperationCS__OwnedTypeAssignment_7_1 ) ) ;
     public final void rule__OperationCS__Group_7__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11407:1: ( ( ( rule__OperationCS__OwnedTypeAssignment_7_1 ) ) )
-            // InternalOCLinEcore.g:11408:1: ( ( rule__OperationCS__OwnedTypeAssignment_7_1 ) )
+            // InternalOCLinEcore.g:11409:1: ( ( ( rule__OperationCS__OwnedTypeAssignment_7_1 ) ) )
+            // InternalOCLinEcore.g:11410:1: ( ( rule__OperationCS__OwnedTypeAssignment_7_1 ) )
             {
-            // InternalOCLinEcore.g:11408:1: ( ( rule__OperationCS__OwnedTypeAssignment_7_1 ) )
-            // InternalOCLinEcore.g:11409:1: ( rule__OperationCS__OwnedTypeAssignment_7_1 )
+            // InternalOCLinEcore.g:11410:1: ( ( rule__OperationCS__OwnedTypeAssignment_7_1 ) )
+            // InternalOCLinEcore.g:11411:1: ( rule__OperationCS__OwnedTypeAssignment_7_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedTypeAssignment_7_1());
             }
-            // InternalOCLinEcore.g:11410:1: ( rule__OperationCS__OwnedTypeAssignment_7_1 )
-            // InternalOCLinEcore.g:11410:2: rule__OperationCS__OwnedTypeAssignment_7_1
+            // InternalOCLinEcore.g:11412:1: ( rule__OperationCS__OwnedTypeAssignment_7_1 )
+            // InternalOCLinEcore.g:11412:2: rule__OperationCS__OwnedTypeAssignment_7_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__OwnedTypeAssignment_7_1();
@@ -36387,14 +36387,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_8__0"
-    // InternalOCLinEcore.g:11424:1: rule__OperationCS__Group_8__0 : rule__OperationCS__Group_8__0__Impl rule__OperationCS__Group_8__1 ;
+    // InternalOCLinEcore.g:11426:1: rule__OperationCS__Group_8__0 : rule__OperationCS__Group_8__0__Impl rule__OperationCS__Group_8__1 ;
     public final void rule__OperationCS__Group_8__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11428:1: ( rule__OperationCS__Group_8__0__Impl rule__OperationCS__Group_8__1 )
-            // InternalOCLinEcore.g:11429:2: rule__OperationCS__Group_8__0__Impl rule__OperationCS__Group_8__1
+            // InternalOCLinEcore.g:11430:1: ( rule__OperationCS__Group_8__0__Impl rule__OperationCS__Group_8__1 )
+            // InternalOCLinEcore.g:11431:2: rule__OperationCS__Group_8__0__Impl rule__OperationCS__Group_8__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__OperationCS__Group_8__0__Impl();
@@ -36425,17 +36425,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_8__0__Impl"
-    // InternalOCLinEcore.g:11436:1: rule__OperationCS__Group_8__0__Impl : ( 'throws' ) ;
+    // InternalOCLinEcore.g:11438:1: rule__OperationCS__Group_8__0__Impl : ( 'throws' ) ;
     public final void rule__OperationCS__Group_8__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11440:1: ( ( 'throws' ) )
-            // InternalOCLinEcore.g:11441:1: ( 'throws' )
+            // InternalOCLinEcore.g:11442:1: ( ( 'throws' ) )
+            // InternalOCLinEcore.g:11443:1: ( 'throws' )
             {
-            // InternalOCLinEcore.g:11441:1: ( 'throws' )
-            // InternalOCLinEcore.g:11442:1: 'throws'
+            // InternalOCLinEcore.g:11443:1: ( 'throws' )
+            // InternalOCLinEcore.g:11444:1: 'throws'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getThrowsKeyword_8_0());
@@ -36466,14 +36466,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_8__1"
-    // InternalOCLinEcore.g:11455:1: rule__OperationCS__Group_8__1 : rule__OperationCS__Group_8__1__Impl rule__OperationCS__Group_8__2 ;
+    // InternalOCLinEcore.g:11457:1: rule__OperationCS__Group_8__1 : rule__OperationCS__Group_8__1__Impl rule__OperationCS__Group_8__2 ;
     public final void rule__OperationCS__Group_8__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11459:1: ( rule__OperationCS__Group_8__1__Impl rule__OperationCS__Group_8__2 )
-            // InternalOCLinEcore.g:11460:2: rule__OperationCS__Group_8__1__Impl rule__OperationCS__Group_8__2
+            // InternalOCLinEcore.g:11461:1: ( rule__OperationCS__Group_8__1__Impl rule__OperationCS__Group_8__2 )
+            // InternalOCLinEcore.g:11462:2: rule__OperationCS__Group_8__1__Impl rule__OperationCS__Group_8__2
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__OperationCS__Group_8__1__Impl();
@@ -36504,23 +36504,23 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_8__1__Impl"
-    // InternalOCLinEcore.g:11467:1: rule__OperationCS__Group_8__1__Impl : ( ( rule__OperationCS__OwnedExceptionsAssignment_8_1 ) ) ;
+    // InternalOCLinEcore.g:11469:1: rule__OperationCS__Group_8__1__Impl : ( ( rule__OperationCS__OwnedExceptionsAssignment_8_1 ) ) ;
     public final void rule__OperationCS__Group_8__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11471:1: ( ( ( rule__OperationCS__OwnedExceptionsAssignment_8_1 ) ) )
-            // InternalOCLinEcore.g:11472:1: ( ( rule__OperationCS__OwnedExceptionsAssignment_8_1 ) )
+            // InternalOCLinEcore.g:11473:1: ( ( ( rule__OperationCS__OwnedExceptionsAssignment_8_1 ) ) )
+            // InternalOCLinEcore.g:11474:1: ( ( rule__OperationCS__OwnedExceptionsAssignment_8_1 ) )
             {
-            // InternalOCLinEcore.g:11472:1: ( ( rule__OperationCS__OwnedExceptionsAssignment_8_1 ) )
-            // InternalOCLinEcore.g:11473:1: ( rule__OperationCS__OwnedExceptionsAssignment_8_1 )
+            // InternalOCLinEcore.g:11474:1: ( ( rule__OperationCS__OwnedExceptionsAssignment_8_1 ) )
+            // InternalOCLinEcore.g:11475:1: ( rule__OperationCS__OwnedExceptionsAssignment_8_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedExceptionsAssignment_8_1());
             }
-            // InternalOCLinEcore.g:11474:1: ( rule__OperationCS__OwnedExceptionsAssignment_8_1 )
-            // InternalOCLinEcore.g:11474:2: rule__OperationCS__OwnedExceptionsAssignment_8_1
+            // InternalOCLinEcore.g:11476:1: ( rule__OperationCS__OwnedExceptionsAssignment_8_1 )
+            // InternalOCLinEcore.g:11476:2: rule__OperationCS__OwnedExceptionsAssignment_8_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__OwnedExceptionsAssignment_8_1();
@@ -36555,14 +36555,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_8__2"
-    // InternalOCLinEcore.g:11484:1: rule__OperationCS__Group_8__2 : rule__OperationCS__Group_8__2__Impl ;
+    // InternalOCLinEcore.g:11486:1: rule__OperationCS__Group_8__2 : rule__OperationCS__Group_8__2__Impl ;
     public final void rule__OperationCS__Group_8__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11488:1: ( rule__OperationCS__Group_8__2__Impl )
-            // InternalOCLinEcore.g:11489:2: rule__OperationCS__Group_8__2__Impl
+            // InternalOCLinEcore.g:11490:1: ( rule__OperationCS__Group_8__2__Impl )
+            // InternalOCLinEcore.g:11491:2: rule__OperationCS__Group_8__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Group_8__2__Impl();
@@ -36588,22 +36588,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_8__2__Impl"
-    // InternalOCLinEcore.g:11495:1: rule__OperationCS__Group_8__2__Impl : ( ( rule__OperationCS__Group_8_2__0 )* ) ;
+    // InternalOCLinEcore.g:11497:1: rule__OperationCS__Group_8__2__Impl : ( ( rule__OperationCS__Group_8_2__0 )* ) ;
     public final void rule__OperationCS__Group_8__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11499:1: ( ( ( rule__OperationCS__Group_8_2__0 )* ) )
-            // InternalOCLinEcore.g:11500:1: ( ( rule__OperationCS__Group_8_2__0 )* )
+            // InternalOCLinEcore.g:11501:1: ( ( ( rule__OperationCS__Group_8_2__0 )* ) )
+            // InternalOCLinEcore.g:11502:1: ( ( rule__OperationCS__Group_8_2__0 )* )
             {
-            // InternalOCLinEcore.g:11500:1: ( ( rule__OperationCS__Group_8_2__0 )* )
-            // InternalOCLinEcore.g:11501:1: ( rule__OperationCS__Group_8_2__0 )*
+            // InternalOCLinEcore.g:11502:1: ( ( rule__OperationCS__Group_8_2__0 )* )
+            // InternalOCLinEcore.g:11503:1: ( rule__OperationCS__Group_8_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getGroup_8_2());
             }
-            // InternalOCLinEcore.g:11502:1: ( rule__OperationCS__Group_8_2__0 )*
+            // InternalOCLinEcore.g:11504:1: ( rule__OperationCS__Group_8_2__0 )*
             loop136:
             do {
                 int alt136=2;
@@ -36616,7 +36616,7 @@
 
                 switch (alt136) {
             	case 1 :
-            	    // InternalOCLinEcore.g:11502:2: rule__OperationCS__Group_8_2__0
+            	    // InternalOCLinEcore.g:11504:2: rule__OperationCS__Group_8_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__OperationCS__Group_8_2__0();
@@ -36657,14 +36657,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_8_2__0"
-    // InternalOCLinEcore.g:11518:1: rule__OperationCS__Group_8_2__0 : rule__OperationCS__Group_8_2__0__Impl rule__OperationCS__Group_8_2__1 ;
+    // InternalOCLinEcore.g:11520:1: rule__OperationCS__Group_8_2__0 : rule__OperationCS__Group_8_2__0__Impl rule__OperationCS__Group_8_2__1 ;
     public final void rule__OperationCS__Group_8_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11522:1: ( rule__OperationCS__Group_8_2__0__Impl rule__OperationCS__Group_8_2__1 )
-            // InternalOCLinEcore.g:11523:2: rule__OperationCS__Group_8_2__0__Impl rule__OperationCS__Group_8_2__1
+            // InternalOCLinEcore.g:11524:1: ( rule__OperationCS__Group_8_2__0__Impl rule__OperationCS__Group_8_2__1 )
+            // InternalOCLinEcore.g:11525:2: rule__OperationCS__Group_8_2__0__Impl rule__OperationCS__Group_8_2__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__OperationCS__Group_8_2__0__Impl();
@@ -36695,17 +36695,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_8_2__0__Impl"
-    // InternalOCLinEcore.g:11530:1: rule__OperationCS__Group_8_2__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:11532:1: rule__OperationCS__Group_8_2__0__Impl : ( ',' ) ;
     public final void rule__OperationCS__Group_8_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11534:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:11535:1: ( ',' )
+            // InternalOCLinEcore.g:11536:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:11537:1: ( ',' )
             {
-            // InternalOCLinEcore.g:11535:1: ( ',' )
-            // InternalOCLinEcore.g:11536:1: ','
+            // InternalOCLinEcore.g:11537:1: ( ',' )
+            // InternalOCLinEcore.g:11538:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getCommaKeyword_8_2_0());
@@ -36736,14 +36736,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_8_2__1"
-    // InternalOCLinEcore.g:11549:1: rule__OperationCS__Group_8_2__1 : rule__OperationCS__Group_8_2__1__Impl ;
+    // InternalOCLinEcore.g:11551:1: rule__OperationCS__Group_8_2__1 : rule__OperationCS__Group_8_2__1__Impl ;
     public final void rule__OperationCS__Group_8_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11553:1: ( rule__OperationCS__Group_8_2__1__Impl )
-            // InternalOCLinEcore.g:11554:2: rule__OperationCS__Group_8_2__1__Impl
+            // InternalOCLinEcore.g:11555:1: ( rule__OperationCS__Group_8_2__1__Impl )
+            // InternalOCLinEcore.g:11556:2: rule__OperationCS__Group_8_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Group_8_2__1__Impl();
@@ -36769,23 +36769,23 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_8_2__1__Impl"
-    // InternalOCLinEcore.g:11560:1: rule__OperationCS__Group_8_2__1__Impl : ( ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 ) ) ;
+    // InternalOCLinEcore.g:11562:1: rule__OperationCS__Group_8_2__1__Impl : ( ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 ) ) ;
     public final void rule__OperationCS__Group_8_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11564:1: ( ( ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 ) ) )
-            // InternalOCLinEcore.g:11565:1: ( ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 ) )
+            // InternalOCLinEcore.g:11566:1: ( ( ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 ) ) )
+            // InternalOCLinEcore.g:11567:1: ( ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 ) )
             {
-            // InternalOCLinEcore.g:11565:1: ( ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 ) )
-            // InternalOCLinEcore.g:11566:1: ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 )
+            // InternalOCLinEcore.g:11567:1: ( ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 ) )
+            // InternalOCLinEcore.g:11568:1: ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedExceptionsAssignment_8_2_1());
             }
-            // InternalOCLinEcore.g:11567:1: ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 )
-            // InternalOCLinEcore.g:11567:2: rule__OperationCS__OwnedExceptionsAssignment_8_2_1
+            // InternalOCLinEcore.g:11569:1: ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 )
+            // InternalOCLinEcore.g:11569:2: rule__OperationCS__OwnedExceptionsAssignment_8_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__OwnedExceptionsAssignment_8_2_1();
@@ -36820,14 +36820,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_9__0"
-    // InternalOCLinEcore.g:11581:1: rule__OperationCS__Group_9__0 : rule__OperationCS__Group_9__0__Impl rule__OperationCS__Group_9__1 ;
+    // InternalOCLinEcore.g:11583:1: rule__OperationCS__Group_9__0 : rule__OperationCS__Group_9__0__Impl rule__OperationCS__Group_9__1 ;
     public final void rule__OperationCS__Group_9__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11585:1: ( rule__OperationCS__Group_9__0__Impl rule__OperationCS__Group_9__1 )
-            // InternalOCLinEcore.g:11586:2: rule__OperationCS__Group_9__0__Impl rule__OperationCS__Group_9__1
+            // InternalOCLinEcore.g:11587:1: ( rule__OperationCS__Group_9__0__Impl rule__OperationCS__Group_9__1 )
+            // InternalOCLinEcore.g:11588:2: rule__OperationCS__Group_9__0__Impl rule__OperationCS__Group_9__1
             {
             pushFollow(FollowSets000.FOLLOW_57);
             rule__OperationCS__Group_9__0__Impl();
@@ -36858,17 +36858,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_9__0__Impl"
-    // InternalOCLinEcore.g:11593:1: rule__OperationCS__Group_9__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:11595:1: rule__OperationCS__Group_9__0__Impl : ( '{' ) ;
     public final void rule__OperationCS__Group_9__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11597:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:11598:1: ( '{' )
+            // InternalOCLinEcore.g:11599:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:11600:1: ( '{' )
             {
-            // InternalOCLinEcore.g:11598:1: ( '{' )
-            // InternalOCLinEcore.g:11599:1: '{'
+            // InternalOCLinEcore.g:11600:1: ( '{' )
+            // InternalOCLinEcore.g:11601:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_9_0());
@@ -36899,14 +36899,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_9__1"
-    // InternalOCLinEcore.g:11612:1: rule__OperationCS__Group_9__1 : rule__OperationCS__Group_9__1__Impl rule__OperationCS__Group_9__2 ;
+    // InternalOCLinEcore.g:11614:1: rule__OperationCS__Group_9__1 : rule__OperationCS__Group_9__1__Impl rule__OperationCS__Group_9__2 ;
     public final void rule__OperationCS__Group_9__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11616:1: ( rule__OperationCS__Group_9__1__Impl rule__OperationCS__Group_9__2 )
-            // InternalOCLinEcore.g:11617:2: rule__OperationCS__Group_9__1__Impl rule__OperationCS__Group_9__2
+            // InternalOCLinEcore.g:11618:1: ( rule__OperationCS__Group_9__1__Impl rule__OperationCS__Group_9__2 )
+            // InternalOCLinEcore.g:11619:2: rule__OperationCS__Group_9__1__Impl rule__OperationCS__Group_9__2
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__OperationCS__Group_9__1__Impl();
@@ -36937,26 +36937,26 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_9__1__Impl"
-    // InternalOCLinEcore.g:11624:1: rule__OperationCS__Group_9__1__Impl : ( ( ( rule__OperationCS__Group_9_1__0 ) ) ( ( rule__OperationCS__Group_9_1__0 )* ) ) ;
+    // InternalOCLinEcore.g:11626:1: rule__OperationCS__Group_9__1__Impl : ( ( ( rule__OperationCS__Group_9_1__0 ) ) ( ( rule__OperationCS__Group_9_1__0 )* ) ) ;
     public final void rule__OperationCS__Group_9__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11628:1: ( ( ( ( rule__OperationCS__Group_9_1__0 ) ) ( ( rule__OperationCS__Group_9_1__0 )* ) ) )
-            // InternalOCLinEcore.g:11629:1: ( ( ( rule__OperationCS__Group_9_1__0 ) ) ( ( rule__OperationCS__Group_9_1__0 )* ) )
+            // InternalOCLinEcore.g:11630:1: ( ( ( ( rule__OperationCS__Group_9_1__0 ) ) ( ( rule__OperationCS__Group_9_1__0 )* ) ) )
+            // InternalOCLinEcore.g:11631:1: ( ( ( rule__OperationCS__Group_9_1__0 ) ) ( ( rule__OperationCS__Group_9_1__0 )* ) )
             {
-            // InternalOCLinEcore.g:11629:1: ( ( ( rule__OperationCS__Group_9_1__0 ) ) ( ( rule__OperationCS__Group_9_1__0 )* ) )
-            // InternalOCLinEcore.g:11630:1: ( ( rule__OperationCS__Group_9_1__0 ) ) ( ( rule__OperationCS__Group_9_1__0 )* )
+            // InternalOCLinEcore.g:11631:1: ( ( ( rule__OperationCS__Group_9_1__0 ) ) ( ( rule__OperationCS__Group_9_1__0 )* ) )
+            // InternalOCLinEcore.g:11632:1: ( ( rule__OperationCS__Group_9_1__0 ) ) ( ( rule__OperationCS__Group_9_1__0 )* )
             {
-            // InternalOCLinEcore.g:11630:1: ( ( rule__OperationCS__Group_9_1__0 ) )
-            // InternalOCLinEcore.g:11631:1: ( rule__OperationCS__Group_9_1__0 )
+            // InternalOCLinEcore.g:11632:1: ( ( rule__OperationCS__Group_9_1__0 ) )
+            // InternalOCLinEcore.g:11633:1: ( rule__OperationCS__Group_9_1__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getGroup_9_1());
             }
-            // InternalOCLinEcore.g:11632:1: ( rule__OperationCS__Group_9_1__0 )
-            // InternalOCLinEcore.g:11632:2: rule__OperationCS__Group_9_1__0
+            // InternalOCLinEcore.g:11634:1: ( rule__OperationCS__Group_9_1__0 )
+            // InternalOCLinEcore.g:11634:2: rule__OperationCS__Group_9_1__0
             {
             pushFollow(FollowSets000.FOLLOW_58);
             rule__OperationCS__Group_9_1__0();
@@ -36972,13 +36972,13 @@
 
             }
 
-            // InternalOCLinEcore.g:11635:1: ( ( rule__OperationCS__Group_9_1__0 )* )
-            // InternalOCLinEcore.g:11636:1: ( rule__OperationCS__Group_9_1__0 )*
+            // InternalOCLinEcore.g:11637:1: ( ( rule__OperationCS__Group_9_1__0 )* )
+            // InternalOCLinEcore.g:11638:1: ( rule__OperationCS__Group_9_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getGroup_9_1());
             }
-            // InternalOCLinEcore.g:11637:1: ( rule__OperationCS__Group_9_1__0 )*
+            // InternalOCLinEcore.g:11639:1: ( rule__OperationCS__Group_9_1__0 )*
             loop137:
             do {
                 int alt137=2;
@@ -36991,7 +36991,7 @@
 
                 switch (alt137) {
             	case 1 :
-            	    // InternalOCLinEcore.g:11637:2: rule__OperationCS__Group_9_1__0
+            	    // InternalOCLinEcore.g:11639:2: rule__OperationCS__Group_9_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_58);
             	    rule__OperationCS__Group_9_1__0();
@@ -37035,14 +37035,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_9__2"
-    // InternalOCLinEcore.g:11648:1: rule__OperationCS__Group_9__2 : rule__OperationCS__Group_9__2__Impl ;
+    // InternalOCLinEcore.g:11650:1: rule__OperationCS__Group_9__2 : rule__OperationCS__Group_9__2__Impl ;
     public final void rule__OperationCS__Group_9__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11652:1: ( rule__OperationCS__Group_9__2__Impl )
-            // InternalOCLinEcore.g:11653:2: rule__OperationCS__Group_9__2__Impl
+            // InternalOCLinEcore.g:11654:1: ( rule__OperationCS__Group_9__2__Impl )
+            // InternalOCLinEcore.g:11655:2: rule__OperationCS__Group_9__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Group_9__2__Impl();
@@ -37068,17 +37068,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_9__2__Impl"
-    // InternalOCLinEcore.g:11659:1: rule__OperationCS__Group_9__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:11661:1: rule__OperationCS__Group_9__2__Impl : ( '}' ) ;
     public final void rule__OperationCS__Group_9__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11663:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:11664:1: ( '}' )
+            // InternalOCLinEcore.g:11665:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:11666:1: ( '}' )
             {
-            // InternalOCLinEcore.g:11664:1: ( '}' )
-            // InternalOCLinEcore.g:11665:1: '}'
+            // InternalOCLinEcore.g:11666:1: ( '}' )
+            // InternalOCLinEcore.g:11667:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_9_2());
@@ -37109,14 +37109,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_9_1__0"
-    // InternalOCLinEcore.g:11684:1: rule__OperationCS__Group_9_1__0 : rule__OperationCS__Group_9_1__0__Impl rule__OperationCS__Group_9_1__1 ;
+    // InternalOCLinEcore.g:11686:1: rule__OperationCS__Group_9_1__0 : rule__OperationCS__Group_9_1__0__Impl rule__OperationCS__Group_9_1__1 ;
     public final void rule__OperationCS__Group_9_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11688:1: ( rule__OperationCS__Group_9_1__0__Impl rule__OperationCS__Group_9_1__1 )
-            // InternalOCLinEcore.g:11689:2: rule__OperationCS__Group_9_1__0__Impl rule__OperationCS__Group_9_1__1
+            // InternalOCLinEcore.g:11690:1: ( rule__OperationCS__Group_9_1__0__Impl rule__OperationCS__Group_9_1__1 )
+            // InternalOCLinEcore.g:11691:2: rule__OperationCS__Group_9_1__0__Impl rule__OperationCS__Group_9_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__OperationCS__Group_9_1__0__Impl();
@@ -37147,23 +37147,23 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_9_1__0__Impl"
-    // InternalOCLinEcore.g:11696:1: rule__OperationCS__Group_9_1__0__Impl : ( ( rule__OperationCS__Alternatives_9_1_0 ) ) ;
+    // InternalOCLinEcore.g:11698:1: rule__OperationCS__Group_9_1__0__Impl : ( ( rule__OperationCS__Alternatives_9_1_0 ) ) ;
     public final void rule__OperationCS__Group_9_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11700:1: ( ( ( rule__OperationCS__Alternatives_9_1_0 ) ) )
-            // InternalOCLinEcore.g:11701:1: ( ( rule__OperationCS__Alternatives_9_1_0 ) )
+            // InternalOCLinEcore.g:11702:1: ( ( ( rule__OperationCS__Alternatives_9_1_0 ) ) )
+            // InternalOCLinEcore.g:11703:1: ( ( rule__OperationCS__Alternatives_9_1_0 ) )
             {
-            // InternalOCLinEcore.g:11701:1: ( ( rule__OperationCS__Alternatives_9_1_0 ) )
-            // InternalOCLinEcore.g:11702:1: ( rule__OperationCS__Alternatives_9_1_0 )
+            // InternalOCLinEcore.g:11703:1: ( ( rule__OperationCS__Alternatives_9_1_0 ) )
+            // InternalOCLinEcore.g:11704:1: ( rule__OperationCS__Alternatives_9_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getAlternatives_9_1_0());
             }
-            // InternalOCLinEcore.g:11703:1: ( rule__OperationCS__Alternatives_9_1_0 )
-            // InternalOCLinEcore.g:11703:2: rule__OperationCS__Alternatives_9_1_0
+            // InternalOCLinEcore.g:11705:1: ( rule__OperationCS__Alternatives_9_1_0 )
+            // InternalOCLinEcore.g:11705:2: rule__OperationCS__Alternatives_9_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Alternatives_9_1_0();
@@ -37198,14 +37198,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_9_1__1"
-    // InternalOCLinEcore.g:11713:1: rule__OperationCS__Group_9_1__1 : rule__OperationCS__Group_9_1__1__Impl ;
+    // InternalOCLinEcore.g:11715:1: rule__OperationCS__Group_9_1__1 : rule__OperationCS__Group_9_1__1__Impl ;
     public final void rule__OperationCS__Group_9_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11717:1: ( rule__OperationCS__Group_9_1__1__Impl )
-            // InternalOCLinEcore.g:11718:2: rule__OperationCS__Group_9_1__1__Impl
+            // InternalOCLinEcore.g:11719:1: ( rule__OperationCS__Group_9_1__1__Impl )
+            // InternalOCLinEcore.g:11720:2: rule__OperationCS__Group_9_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Group_9_1__1__Impl();
@@ -37231,22 +37231,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_9_1__1__Impl"
-    // InternalOCLinEcore.g:11724:1: rule__OperationCS__Group_9_1__1__Impl : ( ( ',' )? ) ;
+    // InternalOCLinEcore.g:11726:1: rule__OperationCS__Group_9_1__1__Impl : ( ( ',' )? ) ;
     public final void rule__OperationCS__Group_9_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11728:1: ( ( ( ',' )? ) )
-            // InternalOCLinEcore.g:11729:1: ( ( ',' )? )
+            // InternalOCLinEcore.g:11730:1: ( ( ( ',' )? ) )
+            // InternalOCLinEcore.g:11731:1: ( ( ',' )? )
             {
-            // InternalOCLinEcore.g:11729:1: ( ( ',' )? )
-            // InternalOCLinEcore.g:11730:1: ( ',' )?
+            // InternalOCLinEcore.g:11731:1: ( ( ',' )? )
+            // InternalOCLinEcore.g:11732:1: ( ',' )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getCommaKeyword_9_1_1());
             }
-            // InternalOCLinEcore.g:11731:1: ( ',' )?
+            // InternalOCLinEcore.g:11733:1: ( ',' )?
             int alt138=2;
             int LA138_0 = input.LA(1);
 
@@ -37255,7 +37255,7 @@
             }
             switch (alt138) {
                 case 1 :
-                    // InternalOCLinEcore.g:11732:2: ','
+                    // InternalOCLinEcore.g:11734:2: ','
                     {
                     match(input,105,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -37289,14 +37289,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0__0"
-    // InternalOCLinEcore.g:11747:1: rule__OperationCS__Group_10_0__0 : rule__OperationCS__Group_10_0__0__Impl rule__OperationCS__Group_10_0__1 ;
+    // InternalOCLinEcore.g:11749:1: rule__OperationCS__Group_10_0__0 : rule__OperationCS__Group_10_0__0__Impl rule__OperationCS__Group_10_0__1 ;
     public final void rule__OperationCS__Group_10_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11751:1: ( rule__OperationCS__Group_10_0__0__Impl rule__OperationCS__Group_10_0__1 )
-            // InternalOCLinEcore.g:11752:2: rule__OperationCS__Group_10_0__0__Impl rule__OperationCS__Group_10_0__1
+            // InternalOCLinEcore.g:11753:1: ( rule__OperationCS__Group_10_0__0__Impl rule__OperationCS__Group_10_0__1 )
+            // InternalOCLinEcore.g:11754:2: rule__OperationCS__Group_10_0__0__Impl rule__OperationCS__Group_10_0__1
             {
             pushFollow(FollowSets000.FOLLOW_59);
             rule__OperationCS__Group_10_0__0__Impl();
@@ -37327,17 +37327,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0__0__Impl"
-    // InternalOCLinEcore.g:11759:1: rule__OperationCS__Group_10_0__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:11761:1: rule__OperationCS__Group_10_0__0__Impl : ( '{' ) ;
     public final void rule__OperationCS__Group_10_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11763:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:11764:1: ( '{' )
+            // InternalOCLinEcore.g:11765:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:11766:1: ( '{' )
             {
-            // InternalOCLinEcore.g:11764:1: ( '{' )
-            // InternalOCLinEcore.g:11765:1: '{'
+            // InternalOCLinEcore.g:11766:1: ( '{' )
+            // InternalOCLinEcore.g:11767:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_10_0_0());
@@ -37368,14 +37368,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0__1"
-    // InternalOCLinEcore.g:11778:1: rule__OperationCS__Group_10_0__1 : rule__OperationCS__Group_10_0__1__Impl rule__OperationCS__Group_10_0__2 ;
+    // InternalOCLinEcore.g:11780:1: rule__OperationCS__Group_10_0__1 : rule__OperationCS__Group_10_0__1__Impl rule__OperationCS__Group_10_0__2 ;
     public final void rule__OperationCS__Group_10_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11782:1: ( rule__OperationCS__Group_10_0__1__Impl rule__OperationCS__Group_10_0__2 )
-            // InternalOCLinEcore.g:11783:2: rule__OperationCS__Group_10_0__1__Impl rule__OperationCS__Group_10_0__2
+            // InternalOCLinEcore.g:11784:1: ( rule__OperationCS__Group_10_0__1__Impl rule__OperationCS__Group_10_0__2 )
+            // InternalOCLinEcore.g:11785:2: rule__OperationCS__Group_10_0__1__Impl rule__OperationCS__Group_10_0__2
             {
             pushFollow(FollowSets000.FOLLOW_59);
             rule__OperationCS__Group_10_0__1__Impl();
@@ -37406,22 +37406,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0__1__Impl"
-    // InternalOCLinEcore.g:11790:1: rule__OperationCS__Group_10_0__1__Impl : ( ( rule__OperationCS__Alternatives_10_0_1 )* ) ;
+    // InternalOCLinEcore.g:11792:1: rule__OperationCS__Group_10_0__1__Impl : ( ( rule__OperationCS__Alternatives_10_0_1 )* ) ;
     public final void rule__OperationCS__Group_10_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11794:1: ( ( ( rule__OperationCS__Alternatives_10_0_1 )* ) )
-            // InternalOCLinEcore.g:11795:1: ( ( rule__OperationCS__Alternatives_10_0_1 )* )
+            // InternalOCLinEcore.g:11796:1: ( ( ( rule__OperationCS__Alternatives_10_0_1 )* ) )
+            // InternalOCLinEcore.g:11797:1: ( ( rule__OperationCS__Alternatives_10_0_1 )* )
             {
-            // InternalOCLinEcore.g:11795:1: ( ( rule__OperationCS__Alternatives_10_0_1 )* )
-            // InternalOCLinEcore.g:11796:1: ( rule__OperationCS__Alternatives_10_0_1 )*
+            // InternalOCLinEcore.g:11797:1: ( ( rule__OperationCS__Alternatives_10_0_1 )* )
+            // InternalOCLinEcore.g:11798:1: ( rule__OperationCS__Alternatives_10_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getAlternatives_10_0_1());
             }
-            // InternalOCLinEcore.g:11797:1: ( rule__OperationCS__Alternatives_10_0_1 )*
+            // InternalOCLinEcore.g:11799:1: ( rule__OperationCS__Alternatives_10_0_1 )*
             loop139:
             do {
                 int alt139=2;
@@ -37434,7 +37434,7 @@
 
                 switch (alt139) {
             	case 1 :
-            	    // InternalOCLinEcore.g:11797:2: rule__OperationCS__Alternatives_10_0_1
+            	    // InternalOCLinEcore.g:11799:2: rule__OperationCS__Alternatives_10_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_60);
             	    rule__OperationCS__Alternatives_10_0_1();
@@ -37475,14 +37475,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0__2"
-    // InternalOCLinEcore.g:11807:1: rule__OperationCS__Group_10_0__2 : rule__OperationCS__Group_10_0__2__Impl ;
+    // InternalOCLinEcore.g:11809:1: rule__OperationCS__Group_10_0__2 : rule__OperationCS__Group_10_0__2__Impl ;
     public final void rule__OperationCS__Group_10_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11811:1: ( rule__OperationCS__Group_10_0__2__Impl )
-            // InternalOCLinEcore.g:11812:2: rule__OperationCS__Group_10_0__2__Impl
+            // InternalOCLinEcore.g:11813:1: ( rule__OperationCS__Group_10_0__2__Impl )
+            // InternalOCLinEcore.g:11814:2: rule__OperationCS__Group_10_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Group_10_0__2__Impl();
@@ -37508,17 +37508,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0__2__Impl"
-    // InternalOCLinEcore.g:11818:1: rule__OperationCS__Group_10_0__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:11820:1: rule__OperationCS__Group_10_0__2__Impl : ( '}' ) ;
     public final void rule__OperationCS__Group_10_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11822:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:11823:1: ( '}' )
+            // InternalOCLinEcore.g:11824:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:11825:1: ( '}' )
             {
-            // InternalOCLinEcore.g:11823:1: ( '}' )
-            // InternalOCLinEcore.g:11824:1: '}'
+            // InternalOCLinEcore.g:11825:1: ( '}' )
+            // InternalOCLinEcore.g:11826:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_10_0_2());
@@ -37549,14 +37549,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0_1_2__0"
-    // InternalOCLinEcore.g:11843:1: rule__OperationCS__Group_10_0_1_2__0 : rule__OperationCS__Group_10_0_1_2__0__Impl rule__OperationCS__Group_10_0_1_2__1 ;
+    // InternalOCLinEcore.g:11845:1: rule__OperationCS__Group_10_0_1_2__0 : rule__OperationCS__Group_10_0_1_2__0__Impl rule__OperationCS__Group_10_0_1_2__1 ;
     public final void rule__OperationCS__Group_10_0_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11847:1: ( rule__OperationCS__Group_10_0_1_2__0__Impl rule__OperationCS__Group_10_0_1_2__1 )
-            // InternalOCLinEcore.g:11848:2: rule__OperationCS__Group_10_0_1_2__0__Impl rule__OperationCS__Group_10_0_1_2__1
+            // InternalOCLinEcore.g:11849:1: ( rule__OperationCS__Group_10_0_1_2__0__Impl rule__OperationCS__Group_10_0_1_2__1 )
+            // InternalOCLinEcore.g:11850:2: rule__OperationCS__Group_10_0_1_2__0__Impl rule__OperationCS__Group_10_0_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__OperationCS__Group_10_0_1_2__0__Impl();
@@ -37587,17 +37587,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0_1_2__0__Impl"
-    // InternalOCLinEcore.g:11855:1: rule__OperationCS__Group_10_0_1_2__0__Impl : ( 'body' ) ;
+    // InternalOCLinEcore.g:11857:1: rule__OperationCS__Group_10_0_1_2__0__Impl : ( 'body' ) ;
     public final void rule__OperationCS__Group_10_0_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11859:1: ( ( 'body' ) )
-            // InternalOCLinEcore.g:11860:1: ( 'body' )
+            // InternalOCLinEcore.g:11861:1: ( ( 'body' ) )
+            // InternalOCLinEcore.g:11862:1: ( 'body' )
             {
-            // InternalOCLinEcore.g:11860:1: ( 'body' )
-            // InternalOCLinEcore.g:11861:1: 'body'
+            // InternalOCLinEcore.g:11862:1: ( 'body' )
+            // InternalOCLinEcore.g:11863:1: 'body'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getBodyKeyword_10_0_1_2_0());
@@ -37628,14 +37628,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0_1_2__1"
-    // InternalOCLinEcore.g:11874:1: rule__OperationCS__Group_10_0_1_2__1 : rule__OperationCS__Group_10_0_1_2__1__Impl rule__OperationCS__Group_10_0_1_2__2 ;
+    // InternalOCLinEcore.g:11876:1: rule__OperationCS__Group_10_0_1_2__1 : rule__OperationCS__Group_10_0_1_2__1__Impl rule__OperationCS__Group_10_0_1_2__2 ;
     public final void rule__OperationCS__Group_10_0_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11878:1: ( rule__OperationCS__Group_10_0_1_2__1__Impl rule__OperationCS__Group_10_0_1_2__2 )
-            // InternalOCLinEcore.g:11879:2: rule__OperationCS__Group_10_0_1_2__1__Impl rule__OperationCS__Group_10_0_1_2__2
+            // InternalOCLinEcore.g:11880:1: ( rule__OperationCS__Group_10_0_1_2__1__Impl rule__OperationCS__Group_10_0_1_2__2 )
+            // InternalOCLinEcore.g:11881:2: rule__OperationCS__Group_10_0_1_2__1__Impl rule__OperationCS__Group_10_0_1_2__2
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__OperationCS__Group_10_0_1_2__1__Impl();
@@ -37666,22 +37666,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0_1_2__1__Impl"
-    // InternalOCLinEcore.g:11886:1: rule__OperationCS__Group_10_0_1_2__1__Impl : ( ( ruleUnrestrictedName )? ) ;
+    // InternalOCLinEcore.g:11888:1: rule__OperationCS__Group_10_0_1_2__1__Impl : ( ( ruleUnrestrictedName )? ) ;
     public final void rule__OperationCS__Group_10_0_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11890:1: ( ( ( ruleUnrestrictedName )? ) )
-            // InternalOCLinEcore.g:11891:1: ( ( ruleUnrestrictedName )? )
+            // InternalOCLinEcore.g:11892:1: ( ( ( ruleUnrestrictedName )? ) )
+            // InternalOCLinEcore.g:11893:1: ( ( ruleUnrestrictedName )? )
             {
-            // InternalOCLinEcore.g:11891:1: ( ( ruleUnrestrictedName )? )
-            // InternalOCLinEcore.g:11892:1: ( ruleUnrestrictedName )?
+            // InternalOCLinEcore.g:11893:1: ( ( ruleUnrestrictedName )? )
+            // InternalOCLinEcore.g:11894:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getUnrestrictedNameParserRuleCall_10_0_1_2_1());
             }
-            // InternalOCLinEcore.g:11893:1: ( ruleUnrestrictedName )?
+            // InternalOCLinEcore.g:11895:1: ( ruleUnrestrictedName )?
             int alt140=2;
             int LA140_0 = input.LA(1);
 
@@ -37690,7 +37690,7 @@
             }
             switch (alt140) {
                 case 1 :
-                    // InternalOCLinEcore.g:11893:3: ruleUnrestrictedName
+                    // InternalOCLinEcore.g:11895:3: ruleUnrestrictedName
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -37728,14 +37728,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0_1_2__2"
-    // InternalOCLinEcore.g:11903:1: rule__OperationCS__Group_10_0_1_2__2 : rule__OperationCS__Group_10_0_1_2__2__Impl rule__OperationCS__Group_10_0_1_2__3 ;
+    // InternalOCLinEcore.g:11905:1: rule__OperationCS__Group_10_0_1_2__2 : rule__OperationCS__Group_10_0_1_2__2__Impl rule__OperationCS__Group_10_0_1_2__3 ;
     public final void rule__OperationCS__Group_10_0_1_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11907:1: ( rule__OperationCS__Group_10_0_1_2__2__Impl rule__OperationCS__Group_10_0_1_2__3 )
-            // InternalOCLinEcore.g:11908:2: rule__OperationCS__Group_10_0_1_2__2__Impl rule__OperationCS__Group_10_0_1_2__3
+            // InternalOCLinEcore.g:11909:1: ( rule__OperationCS__Group_10_0_1_2__2__Impl rule__OperationCS__Group_10_0_1_2__3 )
+            // InternalOCLinEcore.g:11910:2: rule__OperationCS__Group_10_0_1_2__2__Impl rule__OperationCS__Group_10_0_1_2__3
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__OperationCS__Group_10_0_1_2__2__Impl();
@@ -37766,17 +37766,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0_1_2__2__Impl"
-    // InternalOCLinEcore.g:11915:1: rule__OperationCS__Group_10_0_1_2__2__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:11917:1: rule__OperationCS__Group_10_0_1_2__2__Impl : ( ':' ) ;
     public final void rule__OperationCS__Group_10_0_1_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11919:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:11920:1: ( ':' )
+            // InternalOCLinEcore.g:11921:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:11922:1: ( ':' )
             {
-            // InternalOCLinEcore.g:11920:1: ( ':' )
-            // InternalOCLinEcore.g:11921:1: ':'
+            // InternalOCLinEcore.g:11922:1: ( ':' )
+            // InternalOCLinEcore.g:11923:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getColonKeyword_10_0_1_2_2());
@@ -37807,14 +37807,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0_1_2__3"
-    // InternalOCLinEcore.g:11934:1: rule__OperationCS__Group_10_0_1_2__3 : rule__OperationCS__Group_10_0_1_2__3__Impl rule__OperationCS__Group_10_0_1_2__4 ;
+    // InternalOCLinEcore.g:11936:1: rule__OperationCS__Group_10_0_1_2__3 : rule__OperationCS__Group_10_0_1_2__3__Impl rule__OperationCS__Group_10_0_1_2__4 ;
     public final void rule__OperationCS__Group_10_0_1_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11938:1: ( rule__OperationCS__Group_10_0_1_2__3__Impl rule__OperationCS__Group_10_0_1_2__4 )
-            // InternalOCLinEcore.g:11939:2: rule__OperationCS__Group_10_0_1_2__3__Impl rule__OperationCS__Group_10_0_1_2__4
+            // InternalOCLinEcore.g:11940:1: ( rule__OperationCS__Group_10_0_1_2__3__Impl rule__OperationCS__Group_10_0_1_2__4 )
+            // InternalOCLinEcore.g:11941:2: rule__OperationCS__Group_10_0_1_2__3__Impl rule__OperationCS__Group_10_0_1_2__4
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__OperationCS__Group_10_0_1_2__3__Impl();
@@ -37845,22 +37845,22 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0_1_2__3__Impl"
-    // InternalOCLinEcore.g:11946:1: rule__OperationCS__Group_10_0_1_2__3__Impl : ( ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )? ) ;
+    // InternalOCLinEcore.g:11948:1: rule__OperationCS__Group_10_0_1_2__3__Impl : ( ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )? ) ;
     public final void rule__OperationCS__Group_10_0_1_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11950:1: ( ( ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )? ) )
-            // InternalOCLinEcore.g:11951:1: ( ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )? )
+            // InternalOCLinEcore.g:11952:1: ( ( ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )? ) )
+            // InternalOCLinEcore.g:11953:1: ( ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )? )
             {
-            // InternalOCLinEcore.g:11951:1: ( ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )? )
-            // InternalOCLinEcore.g:11952:1: ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )?
+            // InternalOCLinEcore.g:11953:1: ( ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )? )
+            // InternalOCLinEcore.g:11954:1: ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsAssignment_10_0_1_2_3());
             }
-            // InternalOCLinEcore.g:11953:1: ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )?
+            // InternalOCLinEcore.g:11955:1: ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )?
             int alt141=2;
             int LA141_0 = input.LA(1);
 
@@ -37869,7 +37869,7 @@
             }
             switch (alt141) {
                 case 1 :
-                    // InternalOCLinEcore.g:11953:2: rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3
+                    // InternalOCLinEcore.g:11955:2: rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3();
@@ -37907,14 +37907,14 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0_1_2__4"
-    // InternalOCLinEcore.g:11963:1: rule__OperationCS__Group_10_0_1_2__4 : rule__OperationCS__Group_10_0_1_2__4__Impl ;
+    // InternalOCLinEcore.g:11965:1: rule__OperationCS__Group_10_0_1_2__4 : rule__OperationCS__Group_10_0_1_2__4__Impl ;
     public final void rule__OperationCS__Group_10_0_1_2__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11967:1: ( rule__OperationCS__Group_10_0_1_2__4__Impl )
-            // InternalOCLinEcore.g:11968:2: rule__OperationCS__Group_10_0_1_2__4__Impl
+            // InternalOCLinEcore.g:11969:1: ( rule__OperationCS__Group_10_0_1_2__4__Impl )
+            // InternalOCLinEcore.g:11970:2: rule__OperationCS__Group_10_0_1_2__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__OperationCS__Group_10_0_1_2__4__Impl();
@@ -37940,17 +37940,17 @@
 
 
     // $ANTLR start "rule__OperationCS__Group_10_0_1_2__4__Impl"
-    // InternalOCLinEcore.g:11974:1: rule__OperationCS__Group_10_0_1_2__4__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:11976:1: rule__OperationCS__Group_10_0_1_2__4__Impl : ( ';' ) ;
     public final void rule__OperationCS__Group_10_0_1_2__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:11978:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:11979:1: ( ';' )
+            // InternalOCLinEcore.g:11980:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:11981:1: ( ';' )
             {
-            // InternalOCLinEcore.g:11979:1: ( ';' )
-            // InternalOCLinEcore.g:11980:1: ';'
+            // InternalOCLinEcore.g:11981:1: ( ';' )
+            // InternalOCLinEcore.g:11982:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_0_1_2_4());
@@ -37981,14 +37981,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__0"
-    // InternalOCLinEcore.g:12003:1: rule__PackageCS__Group__0 : rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1 ;
+    // InternalOCLinEcore.g:12005:1: rule__PackageCS__Group__0 : rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1 ;
     public final void rule__PackageCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12007:1: ( rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1 )
-            // InternalOCLinEcore.g:12008:2: rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1
+            // InternalOCLinEcore.g:12009:1: ( rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1 )
+            // InternalOCLinEcore.g:12010:2: rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__PackageCS__Group__0__Impl();
@@ -38019,17 +38019,17 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__0__Impl"
-    // InternalOCLinEcore.g:12015:1: rule__PackageCS__Group__0__Impl : ( 'package' ) ;
+    // InternalOCLinEcore.g:12017:1: rule__PackageCS__Group__0__Impl : ( 'package' ) ;
     public final void rule__PackageCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12019:1: ( ( 'package' ) )
-            // InternalOCLinEcore.g:12020:1: ( 'package' )
+            // InternalOCLinEcore.g:12021:1: ( ( 'package' ) )
+            // InternalOCLinEcore.g:12022:1: ( 'package' )
             {
-            // InternalOCLinEcore.g:12020:1: ( 'package' )
-            // InternalOCLinEcore.g:12021:1: 'package'
+            // InternalOCLinEcore.g:12022:1: ( 'package' )
+            // InternalOCLinEcore.g:12023:1: 'package'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getPackageKeyword_0());
@@ -38060,14 +38060,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__1"
-    // InternalOCLinEcore.g:12034:1: rule__PackageCS__Group__1 : rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2 ;
+    // InternalOCLinEcore.g:12036:1: rule__PackageCS__Group__1 : rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2 ;
     public final void rule__PackageCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12038:1: ( rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2 )
-            // InternalOCLinEcore.g:12039:2: rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2
+            // InternalOCLinEcore.g:12040:1: ( rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2 )
+            // InternalOCLinEcore.g:12041:2: rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__PackageCS__Group__1__Impl();
@@ -38098,23 +38098,23 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__1__Impl"
-    // InternalOCLinEcore.g:12046:1: rule__PackageCS__Group__1__Impl : ( ( rule__PackageCS__NameAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:12048:1: rule__PackageCS__Group__1__Impl : ( ( rule__PackageCS__NameAssignment_1 ) ) ;
     public final void rule__PackageCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12050:1: ( ( ( rule__PackageCS__NameAssignment_1 ) ) )
-            // InternalOCLinEcore.g:12051:1: ( ( rule__PackageCS__NameAssignment_1 ) )
+            // InternalOCLinEcore.g:12052:1: ( ( ( rule__PackageCS__NameAssignment_1 ) ) )
+            // InternalOCLinEcore.g:12053:1: ( ( rule__PackageCS__NameAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:12051:1: ( ( rule__PackageCS__NameAssignment_1 ) )
-            // InternalOCLinEcore.g:12052:1: ( rule__PackageCS__NameAssignment_1 )
+            // InternalOCLinEcore.g:12053:1: ( ( rule__PackageCS__NameAssignment_1 ) )
+            // InternalOCLinEcore.g:12054:1: ( rule__PackageCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getNameAssignment_1());
             }
-            // InternalOCLinEcore.g:12053:1: ( rule__PackageCS__NameAssignment_1 )
-            // InternalOCLinEcore.g:12053:2: rule__PackageCS__NameAssignment_1
+            // InternalOCLinEcore.g:12055:1: ( rule__PackageCS__NameAssignment_1 )
+            // InternalOCLinEcore.g:12055:2: rule__PackageCS__NameAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__NameAssignment_1();
@@ -38149,14 +38149,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__2"
-    // InternalOCLinEcore.g:12063:1: rule__PackageCS__Group__2 : rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3 ;
+    // InternalOCLinEcore.g:12065:1: rule__PackageCS__Group__2 : rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3 ;
     public final void rule__PackageCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12067:1: ( rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3 )
-            // InternalOCLinEcore.g:12068:2: rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3
+            // InternalOCLinEcore.g:12069:1: ( rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3 )
+            // InternalOCLinEcore.g:12070:2: rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__PackageCS__Group__2__Impl();
@@ -38187,22 +38187,22 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__2__Impl"
-    // InternalOCLinEcore.g:12075:1: rule__PackageCS__Group__2__Impl : ( ( rule__PackageCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:12077:1: rule__PackageCS__Group__2__Impl : ( ( rule__PackageCS__Group_2__0 )? ) ;
     public final void rule__PackageCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12079:1: ( ( ( rule__PackageCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:12080:1: ( ( rule__PackageCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:12081:1: ( ( ( rule__PackageCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:12082:1: ( ( rule__PackageCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:12080:1: ( ( rule__PackageCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:12081:1: ( rule__PackageCS__Group_2__0 )?
+            // InternalOCLinEcore.g:12082:1: ( ( rule__PackageCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:12083:1: ( rule__PackageCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:12082:1: ( rule__PackageCS__Group_2__0 )?
+            // InternalOCLinEcore.g:12084:1: ( rule__PackageCS__Group_2__0 )?
             int alt142=2;
             int LA142_0 = input.LA(1);
 
@@ -38211,7 +38211,7 @@
             }
             switch (alt142) {
                 case 1 :
-                    // InternalOCLinEcore.g:12082:2: rule__PackageCS__Group_2__0
+                    // InternalOCLinEcore.g:12084:2: rule__PackageCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PackageCS__Group_2__0();
@@ -38249,14 +38249,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__3"
-    // InternalOCLinEcore.g:12092:1: rule__PackageCS__Group__3 : rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4 ;
+    // InternalOCLinEcore.g:12094:1: rule__PackageCS__Group__3 : rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4 ;
     public final void rule__PackageCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12096:1: ( rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4 )
-            // InternalOCLinEcore.g:12097:2: rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4
+            // InternalOCLinEcore.g:12098:1: ( rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4 )
+            // InternalOCLinEcore.g:12099:2: rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__PackageCS__Group__3__Impl();
@@ -38287,22 +38287,22 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__3__Impl"
-    // InternalOCLinEcore.g:12104:1: rule__PackageCS__Group__3__Impl : ( ( rule__PackageCS__Group_3__0 )? ) ;
+    // InternalOCLinEcore.g:12106:1: rule__PackageCS__Group__3__Impl : ( ( rule__PackageCS__Group_3__0 )? ) ;
     public final void rule__PackageCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12108:1: ( ( ( rule__PackageCS__Group_3__0 )? ) )
-            // InternalOCLinEcore.g:12109:1: ( ( rule__PackageCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:12110:1: ( ( ( rule__PackageCS__Group_3__0 )? ) )
+            // InternalOCLinEcore.g:12111:1: ( ( rule__PackageCS__Group_3__0 )? )
             {
-            // InternalOCLinEcore.g:12109:1: ( ( rule__PackageCS__Group_3__0 )? )
-            // InternalOCLinEcore.g:12110:1: ( rule__PackageCS__Group_3__0 )?
+            // InternalOCLinEcore.g:12111:1: ( ( rule__PackageCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:12112:1: ( rule__PackageCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getGroup_3());
             }
-            // InternalOCLinEcore.g:12111:1: ( rule__PackageCS__Group_3__0 )?
+            // InternalOCLinEcore.g:12113:1: ( rule__PackageCS__Group_3__0 )?
             int alt143=2;
             int LA143_0 = input.LA(1);
 
@@ -38311,7 +38311,7 @@
             }
             switch (alt143) {
                 case 1 :
-                    // InternalOCLinEcore.g:12111:2: rule__PackageCS__Group_3__0
+                    // InternalOCLinEcore.g:12113:2: rule__PackageCS__Group_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PackageCS__Group_3__0();
@@ -38349,14 +38349,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__4"
-    // InternalOCLinEcore.g:12121:1: rule__PackageCS__Group__4 : rule__PackageCS__Group__4__Impl ;
+    // InternalOCLinEcore.g:12123:1: rule__PackageCS__Group__4 : rule__PackageCS__Group__4__Impl ;
     public final void rule__PackageCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12125:1: ( rule__PackageCS__Group__4__Impl )
-            // InternalOCLinEcore.g:12126:2: rule__PackageCS__Group__4__Impl
+            // InternalOCLinEcore.g:12127:1: ( rule__PackageCS__Group__4__Impl )
+            // InternalOCLinEcore.g:12128:2: rule__PackageCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__Group__4__Impl();
@@ -38382,23 +38382,23 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__4__Impl"
-    // InternalOCLinEcore.g:12132:1: rule__PackageCS__Group__4__Impl : ( ( rule__PackageCS__Alternatives_4 ) ) ;
+    // InternalOCLinEcore.g:12134:1: rule__PackageCS__Group__4__Impl : ( ( rule__PackageCS__Alternatives_4 ) ) ;
     public final void rule__PackageCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12136:1: ( ( ( rule__PackageCS__Alternatives_4 ) ) )
-            // InternalOCLinEcore.g:12137:1: ( ( rule__PackageCS__Alternatives_4 ) )
+            // InternalOCLinEcore.g:12138:1: ( ( ( rule__PackageCS__Alternatives_4 ) ) )
+            // InternalOCLinEcore.g:12139:1: ( ( rule__PackageCS__Alternatives_4 ) )
             {
-            // InternalOCLinEcore.g:12137:1: ( ( rule__PackageCS__Alternatives_4 ) )
-            // InternalOCLinEcore.g:12138:1: ( rule__PackageCS__Alternatives_4 )
+            // InternalOCLinEcore.g:12139:1: ( ( rule__PackageCS__Alternatives_4 ) )
+            // InternalOCLinEcore.g:12140:1: ( rule__PackageCS__Alternatives_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getAlternatives_4());
             }
-            // InternalOCLinEcore.g:12139:1: ( rule__PackageCS__Alternatives_4 )
-            // InternalOCLinEcore.g:12139:2: rule__PackageCS__Alternatives_4
+            // InternalOCLinEcore.g:12141:1: ( rule__PackageCS__Alternatives_4 )
+            // InternalOCLinEcore.g:12141:2: rule__PackageCS__Alternatives_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__Alternatives_4();
@@ -38433,14 +38433,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_2__0"
-    // InternalOCLinEcore.g:12159:1: rule__PackageCS__Group_2__0 : rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1 ;
+    // InternalOCLinEcore.g:12161:1: rule__PackageCS__Group_2__0 : rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1 ;
     public final void rule__PackageCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12163:1: ( rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1 )
-            // InternalOCLinEcore.g:12164:2: rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1
+            // InternalOCLinEcore.g:12165:1: ( rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1 )
+            // InternalOCLinEcore.g:12166:2: rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__PackageCS__Group_2__0__Impl();
@@ -38471,17 +38471,17 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:12171:1: rule__PackageCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:12173:1: rule__PackageCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__PackageCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12175:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:12176:1: ( ':' )
+            // InternalOCLinEcore.g:12177:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:12178:1: ( ':' )
             {
-            // InternalOCLinEcore.g:12176:1: ( ':' )
-            // InternalOCLinEcore.g:12177:1: ':'
+            // InternalOCLinEcore.g:12178:1: ( ':' )
+            // InternalOCLinEcore.g:12179:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getColonKeyword_2_0());
@@ -38512,14 +38512,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_2__1"
-    // InternalOCLinEcore.g:12190:1: rule__PackageCS__Group_2__1 : rule__PackageCS__Group_2__1__Impl ;
+    // InternalOCLinEcore.g:12192:1: rule__PackageCS__Group_2__1 : rule__PackageCS__Group_2__1__Impl ;
     public final void rule__PackageCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12194:1: ( rule__PackageCS__Group_2__1__Impl )
-            // InternalOCLinEcore.g:12195:2: rule__PackageCS__Group_2__1__Impl
+            // InternalOCLinEcore.g:12196:1: ( rule__PackageCS__Group_2__1__Impl )
+            // InternalOCLinEcore.g:12197:2: rule__PackageCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__Group_2__1__Impl();
@@ -38545,23 +38545,23 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:12201:1: rule__PackageCS__Group_2__1__Impl : ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) ) ;
+    // InternalOCLinEcore.g:12203:1: rule__PackageCS__Group_2__1__Impl : ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) ) ;
     public final void rule__PackageCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12205:1: ( ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) ) )
-            // InternalOCLinEcore.g:12206:1: ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) )
+            // InternalOCLinEcore.g:12207:1: ( ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) ) )
+            // InternalOCLinEcore.g:12208:1: ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) )
             {
-            // InternalOCLinEcore.g:12206:1: ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) )
-            // InternalOCLinEcore.g:12207:1: ( rule__PackageCS__NsPrefixAssignment_2_1 )
+            // InternalOCLinEcore.g:12208:1: ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) )
+            // InternalOCLinEcore.g:12209:1: ( rule__PackageCS__NsPrefixAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getNsPrefixAssignment_2_1());
             }
-            // InternalOCLinEcore.g:12208:1: ( rule__PackageCS__NsPrefixAssignment_2_1 )
-            // InternalOCLinEcore.g:12208:2: rule__PackageCS__NsPrefixAssignment_2_1
+            // InternalOCLinEcore.g:12210:1: ( rule__PackageCS__NsPrefixAssignment_2_1 )
+            // InternalOCLinEcore.g:12210:2: rule__PackageCS__NsPrefixAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__NsPrefixAssignment_2_1();
@@ -38596,14 +38596,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_3__0"
-    // InternalOCLinEcore.g:12222:1: rule__PackageCS__Group_3__0 : rule__PackageCS__Group_3__0__Impl rule__PackageCS__Group_3__1 ;
+    // InternalOCLinEcore.g:12224:1: rule__PackageCS__Group_3__0 : rule__PackageCS__Group_3__0__Impl rule__PackageCS__Group_3__1 ;
     public final void rule__PackageCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12226:1: ( rule__PackageCS__Group_3__0__Impl rule__PackageCS__Group_3__1 )
-            // InternalOCLinEcore.g:12227:2: rule__PackageCS__Group_3__0__Impl rule__PackageCS__Group_3__1
+            // InternalOCLinEcore.g:12228:1: ( rule__PackageCS__Group_3__0__Impl rule__PackageCS__Group_3__1 )
+            // InternalOCLinEcore.g:12229:2: rule__PackageCS__Group_3__0__Impl rule__PackageCS__Group_3__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__PackageCS__Group_3__0__Impl();
@@ -38634,17 +38634,17 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_3__0__Impl"
-    // InternalOCLinEcore.g:12234:1: rule__PackageCS__Group_3__0__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:12236:1: rule__PackageCS__Group_3__0__Impl : ( '=' ) ;
     public final void rule__PackageCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12238:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:12239:1: ( '=' )
+            // InternalOCLinEcore.g:12240:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:12241:1: ( '=' )
             {
-            // InternalOCLinEcore.g:12239:1: ( '=' )
-            // InternalOCLinEcore.g:12240:1: '='
+            // InternalOCLinEcore.g:12241:1: ( '=' )
+            // InternalOCLinEcore.g:12242:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_3_0());
@@ -38675,14 +38675,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_3__1"
-    // InternalOCLinEcore.g:12253:1: rule__PackageCS__Group_3__1 : rule__PackageCS__Group_3__1__Impl ;
+    // InternalOCLinEcore.g:12255:1: rule__PackageCS__Group_3__1 : rule__PackageCS__Group_3__1__Impl ;
     public final void rule__PackageCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12257:1: ( rule__PackageCS__Group_3__1__Impl )
-            // InternalOCLinEcore.g:12258:2: rule__PackageCS__Group_3__1__Impl
+            // InternalOCLinEcore.g:12259:1: ( rule__PackageCS__Group_3__1__Impl )
+            // InternalOCLinEcore.g:12260:2: rule__PackageCS__Group_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__Group_3__1__Impl();
@@ -38708,23 +38708,23 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_3__1__Impl"
-    // InternalOCLinEcore.g:12264:1: rule__PackageCS__Group_3__1__Impl : ( ( rule__PackageCS__NsURIAssignment_3_1 ) ) ;
+    // InternalOCLinEcore.g:12266:1: rule__PackageCS__Group_3__1__Impl : ( ( rule__PackageCS__NsURIAssignment_3_1 ) ) ;
     public final void rule__PackageCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12268:1: ( ( ( rule__PackageCS__NsURIAssignment_3_1 ) ) )
-            // InternalOCLinEcore.g:12269:1: ( ( rule__PackageCS__NsURIAssignment_3_1 ) )
+            // InternalOCLinEcore.g:12270:1: ( ( ( rule__PackageCS__NsURIAssignment_3_1 ) ) )
+            // InternalOCLinEcore.g:12271:1: ( ( rule__PackageCS__NsURIAssignment_3_1 ) )
             {
-            // InternalOCLinEcore.g:12269:1: ( ( rule__PackageCS__NsURIAssignment_3_1 ) )
-            // InternalOCLinEcore.g:12270:1: ( rule__PackageCS__NsURIAssignment_3_1 )
+            // InternalOCLinEcore.g:12271:1: ( ( rule__PackageCS__NsURIAssignment_3_1 ) )
+            // InternalOCLinEcore.g:12272:1: ( rule__PackageCS__NsURIAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getNsURIAssignment_3_1());
             }
-            // InternalOCLinEcore.g:12271:1: ( rule__PackageCS__NsURIAssignment_3_1 )
-            // InternalOCLinEcore.g:12271:2: rule__PackageCS__NsURIAssignment_3_1
+            // InternalOCLinEcore.g:12273:1: ( rule__PackageCS__NsURIAssignment_3_1 )
+            // InternalOCLinEcore.g:12273:2: rule__PackageCS__NsURIAssignment_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__NsURIAssignment_3_1();
@@ -38759,14 +38759,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_4_0__0"
-    // InternalOCLinEcore.g:12285:1: rule__PackageCS__Group_4_0__0 : rule__PackageCS__Group_4_0__0__Impl rule__PackageCS__Group_4_0__1 ;
+    // InternalOCLinEcore.g:12287:1: rule__PackageCS__Group_4_0__0 : rule__PackageCS__Group_4_0__0__Impl rule__PackageCS__Group_4_0__1 ;
     public final void rule__PackageCS__Group_4_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12289:1: ( rule__PackageCS__Group_4_0__0__Impl rule__PackageCS__Group_4_0__1 )
-            // InternalOCLinEcore.g:12290:2: rule__PackageCS__Group_4_0__0__Impl rule__PackageCS__Group_4_0__1
+            // InternalOCLinEcore.g:12291:1: ( rule__PackageCS__Group_4_0__0__Impl rule__PackageCS__Group_4_0__1 )
+            // InternalOCLinEcore.g:12292:2: rule__PackageCS__Group_4_0__0__Impl rule__PackageCS__Group_4_0__1
             {
             pushFollow(FollowSets000.FOLLOW_61);
             rule__PackageCS__Group_4_0__0__Impl();
@@ -38797,17 +38797,17 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_4_0__0__Impl"
-    // InternalOCLinEcore.g:12297:1: rule__PackageCS__Group_4_0__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:12299:1: rule__PackageCS__Group_4_0__0__Impl : ( '{' ) ;
     public final void rule__PackageCS__Group_4_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12301:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:12302:1: ( '{' )
+            // InternalOCLinEcore.g:12303:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:12304:1: ( '{' )
             {
-            // InternalOCLinEcore.g:12302:1: ( '{' )
-            // InternalOCLinEcore.g:12303:1: '{'
+            // InternalOCLinEcore.g:12304:1: ( '{' )
+            // InternalOCLinEcore.g:12305:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_4_0_0());
@@ -38838,14 +38838,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_4_0__1"
-    // InternalOCLinEcore.g:12316:1: rule__PackageCS__Group_4_0__1 : rule__PackageCS__Group_4_0__1__Impl rule__PackageCS__Group_4_0__2 ;
+    // InternalOCLinEcore.g:12318:1: rule__PackageCS__Group_4_0__1 : rule__PackageCS__Group_4_0__1__Impl rule__PackageCS__Group_4_0__2 ;
     public final void rule__PackageCS__Group_4_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12320:1: ( rule__PackageCS__Group_4_0__1__Impl rule__PackageCS__Group_4_0__2 )
-            // InternalOCLinEcore.g:12321:2: rule__PackageCS__Group_4_0__1__Impl rule__PackageCS__Group_4_0__2
+            // InternalOCLinEcore.g:12322:1: ( rule__PackageCS__Group_4_0__1__Impl rule__PackageCS__Group_4_0__2 )
+            // InternalOCLinEcore.g:12323:2: rule__PackageCS__Group_4_0__1__Impl rule__PackageCS__Group_4_0__2
             {
             pushFollow(FollowSets000.FOLLOW_61);
             rule__PackageCS__Group_4_0__1__Impl();
@@ -38876,22 +38876,22 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_4_0__1__Impl"
-    // InternalOCLinEcore.g:12328:1: rule__PackageCS__Group_4_0__1__Impl : ( ( rule__PackageCS__Alternatives_4_0_1 )* ) ;
+    // InternalOCLinEcore.g:12330:1: rule__PackageCS__Group_4_0__1__Impl : ( ( rule__PackageCS__Alternatives_4_0_1 )* ) ;
     public final void rule__PackageCS__Group_4_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12332:1: ( ( ( rule__PackageCS__Alternatives_4_0_1 )* ) )
-            // InternalOCLinEcore.g:12333:1: ( ( rule__PackageCS__Alternatives_4_0_1 )* )
+            // InternalOCLinEcore.g:12334:1: ( ( ( rule__PackageCS__Alternatives_4_0_1 )* ) )
+            // InternalOCLinEcore.g:12335:1: ( ( rule__PackageCS__Alternatives_4_0_1 )* )
             {
-            // InternalOCLinEcore.g:12333:1: ( ( rule__PackageCS__Alternatives_4_0_1 )* )
-            // InternalOCLinEcore.g:12334:1: ( rule__PackageCS__Alternatives_4_0_1 )*
+            // InternalOCLinEcore.g:12335:1: ( ( rule__PackageCS__Alternatives_4_0_1 )* )
+            // InternalOCLinEcore.g:12336:1: ( rule__PackageCS__Alternatives_4_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getAlternatives_4_0_1());
             }
-            // InternalOCLinEcore.g:12335:1: ( rule__PackageCS__Alternatives_4_0_1 )*
+            // InternalOCLinEcore.g:12337:1: ( rule__PackageCS__Alternatives_4_0_1 )*
             loop144:
             do {
                 int alt144=2;
@@ -38904,7 +38904,7 @@
 
                 switch (alt144) {
             	case 1 :
-            	    // InternalOCLinEcore.g:12335:2: rule__PackageCS__Alternatives_4_0_1
+            	    // InternalOCLinEcore.g:12337:2: rule__PackageCS__Alternatives_4_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_62);
             	    rule__PackageCS__Alternatives_4_0_1();
@@ -38945,14 +38945,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_4_0__2"
-    // InternalOCLinEcore.g:12345:1: rule__PackageCS__Group_4_0__2 : rule__PackageCS__Group_4_0__2__Impl ;
+    // InternalOCLinEcore.g:12347:1: rule__PackageCS__Group_4_0__2 : rule__PackageCS__Group_4_0__2__Impl ;
     public final void rule__PackageCS__Group_4_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12349:1: ( rule__PackageCS__Group_4_0__2__Impl )
-            // InternalOCLinEcore.g:12350:2: rule__PackageCS__Group_4_0__2__Impl
+            // InternalOCLinEcore.g:12351:1: ( rule__PackageCS__Group_4_0__2__Impl )
+            // InternalOCLinEcore.g:12352:2: rule__PackageCS__Group_4_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__Group_4_0__2__Impl();
@@ -38978,17 +38978,17 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_4_0__2__Impl"
-    // InternalOCLinEcore.g:12356:1: rule__PackageCS__Group_4_0__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:12358:1: rule__PackageCS__Group_4_0__2__Impl : ( '}' ) ;
     public final void rule__PackageCS__Group_4_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12360:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:12361:1: ( '}' )
+            // InternalOCLinEcore.g:12362:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:12363:1: ( '}' )
             {
-            // InternalOCLinEcore.g:12361:1: ( '}' )
-            // InternalOCLinEcore.g:12362:1: '}'
+            // InternalOCLinEcore.g:12363:1: ( '}' )
+            // InternalOCLinEcore.g:12364:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_4_0_2());
@@ -39019,14 +39019,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__0"
-    // InternalOCLinEcore.g:12381:1: rule__ParameterCS__Group__0 : rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 ;
+    // InternalOCLinEcore.g:12383:1: rule__ParameterCS__Group__0 : rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 ;
     public final void rule__ParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12385:1: ( rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 )
-            // InternalOCLinEcore.g:12386:2: rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1
+            // InternalOCLinEcore.g:12387:1: ( rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 )
+            // InternalOCLinEcore.g:12388:2: rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_63);
             rule__ParameterCS__Group__0__Impl();
@@ -39057,23 +39057,23 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__0__Impl"
-    // InternalOCLinEcore.g:12393:1: rule__ParameterCS__Group__0__Impl : ( ( rule__ParameterCS__NameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:12395:1: rule__ParameterCS__Group__0__Impl : ( ( rule__ParameterCS__NameAssignment_0 ) ) ;
     public final void rule__ParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12397:1: ( ( ( rule__ParameterCS__NameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:12398:1: ( ( rule__ParameterCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:12399:1: ( ( ( rule__ParameterCS__NameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:12400:1: ( ( rule__ParameterCS__NameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:12398:1: ( ( rule__ParameterCS__NameAssignment_0 ) )
-            // InternalOCLinEcore.g:12399:1: ( rule__ParameterCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:12400:1: ( ( rule__ParameterCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:12401:1: ( rule__ParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getNameAssignment_0());
             }
-            // InternalOCLinEcore.g:12400:1: ( rule__ParameterCS__NameAssignment_0 )
-            // InternalOCLinEcore.g:12400:2: rule__ParameterCS__NameAssignment_0
+            // InternalOCLinEcore.g:12402:1: ( rule__ParameterCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:12402:2: rule__ParameterCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__NameAssignment_0();
@@ -39108,14 +39108,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__1"
-    // InternalOCLinEcore.g:12410:1: rule__ParameterCS__Group__1 : rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2 ;
+    // InternalOCLinEcore.g:12412:1: rule__ParameterCS__Group__1 : rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2 ;
     public final void rule__ParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12414:1: ( rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2 )
-            // InternalOCLinEcore.g:12415:2: rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2
+            // InternalOCLinEcore.g:12416:1: ( rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2 )
+            // InternalOCLinEcore.g:12417:2: rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_63);
             rule__ParameterCS__Group__1__Impl();
@@ -39146,22 +39146,22 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__1__Impl"
-    // InternalOCLinEcore.g:12422:1: rule__ParameterCS__Group__1__Impl : ( ( rule__ParameterCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:12424:1: rule__ParameterCS__Group__1__Impl : ( ( rule__ParameterCS__Group_1__0 )? ) ;
     public final void rule__ParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12426:1: ( ( ( rule__ParameterCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:12427:1: ( ( rule__ParameterCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:12428:1: ( ( ( rule__ParameterCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:12429:1: ( ( rule__ParameterCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:12427:1: ( ( rule__ParameterCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:12428:1: ( rule__ParameterCS__Group_1__0 )?
+            // InternalOCLinEcore.g:12429:1: ( ( rule__ParameterCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:12430:1: ( rule__ParameterCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:12429:1: ( rule__ParameterCS__Group_1__0 )?
+            // InternalOCLinEcore.g:12431:1: ( rule__ParameterCS__Group_1__0 )?
             int alt145=2;
             int LA145_0 = input.LA(1);
 
@@ -39170,7 +39170,7 @@
             }
             switch (alt145) {
                 case 1 :
-                    // InternalOCLinEcore.g:12429:2: rule__ParameterCS__Group_1__0
+                    // InternalOCLinEcore.g:12431:2: rule__ParameterCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ParameterCS__Group_1__0();
@@ -39208,14 +39208,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__2"
-    // InternalOCLinEcore.g:12439:1: rule__ParameterCS__Group__2 : rule__ParameterCS__Group__2__Impl rule__ParameterCS__Group__3 ;
+    // InternalOCLinEcore.g:12441:1: rule__ParameterCS__Group__2 : rule__ParameterCS__Group__2__Impl rule__ParameterCS__Group__3 ;
     public final void rule__ParameterCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12443:1: ( rule__ParameterCS__Group__2__Impl rule__ParameterCS__Group__3 )
-            // InternalOCLinEcore.g:12444:2: rule__ParameterCS__Group__2__Impl rule__ParameterCS__Group__3
+            // InternalOCLinEcore.g:12445:1: ( rule__ParameterCS__Group__2__Impl rule__ParameterCS__Group__3 )
+            // InternalOCLinEcore.g:12446:2: rule__ParameterCS__Group__2__Impl rule__ParameterCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_63);
             rule__ParameterCS__Group__2__Impl();
@@ -39246,22 +39246,22 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__2__Impl"
-    // InternalOCLinEcore.g:12451:1: rule__ParameterCS__Group__2__Impl : ( ( rule__ParameterCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:12453:1: rule__ParameterCS__Group__2__Impl : ( ( rule__ParameterCS__Group_2__0 )? ) ;
     public final void rule__ParameterCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12455:1: ( ( ( rule__ParameterCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:12456:1: ( ( rule__ParameterCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:12457:1: ( ( ( rule__ParameterCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:12458:1: ( ( rule__ParameterCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:12456:1: ( ( rule__ParameterCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:12457:1: ( rule__ParameterCS__Group_2__0 )?
+            // InternalOCLinEcore.g:12458:1: ( ( rule__ParameterCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:12459:1: ( rule__ParameterCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:12458:1: ( rule__ParameterCS__Group_2__0 )?
+            // InternalOCLinEcore.g:12460:1: ( rule__ParameterCS__Group_2__0 )?
             int alt146=2;
             int LA146_0 = input.LA(1);
 
@@ -39274,7 +39274,7 @@
             }
             switch (alt146) {
                 case 1 :
-                    // InternalOCLinEcore.g:12458:2: rule__ParameterCS__Group_2__0
+                    // InternalOCLinEcore.g:12460:2: rule__ParameterCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ParameterCS__Group_2__0();
@@ -39312,14 +39312,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__3"
-    // InternalOCLinEcore.g:12468:1: rule__ParameterCS__Group__3 : rule__ParameterCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:12470:1: rule__ParameterCS__Group__3 : rule__ParameterCS__Group__3__Impl ;
     public final void rule__ParameterCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12472:1: ( rule__ParameterCS__Group__3__Impl )
-            // InternalOCLinEcore.g:12473:2: rule__ParameterCS__Group__3__Impl
+            // InternalOCLinEcore.g:12474:1: ( rule__ParameterCS__Group__3__Impl )
+            // InternalOCLinEcore.g:12475:2: rule__ParameterCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__Group__3__Impl();
@@ -39345,22 +39345,22 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__3__Impl"
-    // InternalOCLinEcore.g:12479:1: rule__ParameterCS__Group__3__Impl : ( ( rule__ParameterCS__Group_3__0 )? ) ;
+    // InternalOCLinEcore.g:12481:1: rule__ParameterCS__Group__3__Impl : ( ( rule__ParameterCS__Group_3__0 )? ) ;
     public final void rule__ParameterCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12483:1: ( ( ( rule__ParameterCS__Group_3__0 )? ) )
-            // InternalOCLinEcore.g:12484:1: ( ( rule__ParameterCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:12485:1: ( ( ( rule__ParameterCS__Group_3__0 )? ) )
+            // InternalOCLinEcore.g:12486:1: ( ( rule__ParameterCS__Group_3__0 )? )
             {
-            // InternalOCLinEcore.g:12484:1: ( ( rule__ParameterCS__Group_3__0 )? )
-            // InternalOCLinEcore.g:12485:1: ( rule__ParameterCS__Group_3__0 )?
+            // InternalOCLinEcore.g:12486:1: ( ( rule__ParameterCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:12487:1: ( rule__ParameterCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getGroup_3());
             }
-            // InternalOCLinEcore.g:12486:1: ( rule__ParameterCS__Group_3__0 )?
+            // InternalOCLinEcore.g:12488:1: ( rule__ParameterCS__Group_3__0 )?
             int alt147=2;
             int LA147_0 = input.LA(1);
 
@@ -39369,7 +39369,7 @@
             }
             switch (alt147) {
                 case 1 :
-                    // InternalOCLinEcore.g:12486:2: rule__ParameterCS__Group_3__0
+                    // InternalOCLinEcore.g:12488:2: rule__ParameterCS__Group_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ParameterCS__Group_3__0();
@@ -39407,14 +39407,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_1__0"
-    // InternalOCLinEcore.g:12504:1: rule__ParameterCS__Group_1__0 : rule__ParameterCS__Group_1__0__Impl rule__ParameterCS__Group_1__1 ;
+    // InternalOCLinEcore.g:12506:1: rule__ParameterCS__Group_1__0 : rule__ParameterCS__Group_1__0__Impl rule__ParameterCS__Group_1__1 ;
     public final void rule__ParameterCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12508:1: ( rule__ParameterCS__Group_1__0__Impl rule__ParameterCS__Group_1__1 )
-            // InternalOCLinEcore.g:12509:2: rule__ParameterCS__Group_1__0__Impl rule__ParameterCS__Group_1__1
+            // InternalOCLinEcore.g:12510:1: ( rule__ParameterCS__Group_1__0__Impl rule__ParameterCS__Group_1__1 )
+            // InternalOCLinEcore.g:12511:2: rule__ParameterCS__Group_1__0__Impl rule__ParameterCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__ParameterCS__Group_1__0__Impl();
@@ -39445,17 +39445,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:12516:1: rule__ParameterCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:12518:1: rule__ParameterCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__ParameterCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12520:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:12521:1: ( ':' )
+            // InternalOCLinEcore.g:12522:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:12523:1: ( ':' )
             {
-            // InternalOCLinEcore.g:12521:1: ( ':' )
-            // InternalOCLinEcore.g:12522:1: ':'
+            // InternalOCLinEcore.g:12523:1: ( ':' )
+            // InternalOCLinEcore.g:12524:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getColonKeyword_1_0());
@@ -39486,14 +39486,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_1__1"
-    // InternalOCLinEcore.g:12535:1: rule__ParameterCS__Group_1__1 : rule__ParameterCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:12537:1: rule__ParameterCS__Group_1__1 : rule__ParameterCS__Group_1__1__Impl ;
     public final void rule__ParameterCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12539:1: ( rule__ParameterCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:12540:2: rule__ParameterCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:12541:1: ( rule__ParameterCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:12542:2: rule__ParameterCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__Group_1__1__Impl();
@@ -39519,23 +39519,23 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:12546:1: rule__ParameterCS__Group_1__1__Impl : ( ( rule__ParameterCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:12548:1: rule__ParameterCS__Group_1__1__Impl : ( ( rule__ParameterCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__ParameterCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12550:1: ( ( ( rule__ParameterCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:12551:1: ( ( rule__ParameterCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLinEcore.g:12552:1: ( ( ( rule__ParameterCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:12553:1: ( ( rule__ParameterCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:12551:1: ( ( rule__ParameterCS__OwnedTypeAssignment_1_1 ) )
-            // InternalOCLinEcore.g:12552:1: ( rule__ParameterCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLinEcore.g:12553:1: ( ( rule__ParameterCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLinEcore.g:12554:1: ( rule__ParameterCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalOCLinEcore.g:12553:1: ( rule__ParameterCS__OwnedTypeAssignment_1_1 )
-            // InternalOCLinEcore.g:12553:2: rule__ParameterCS__OwnedTypeAssignment_1_1
+            // InternalOCLinEcore.g:12555:1: ( rule__ParameterCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLinEcore.g:12555:2: rule__ParameterCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__OwnedTypeAssignment_1_1();
@@ -39570,14 +39570,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_2__0"
-    // InternalOCLinEcore.g:12567:1: rule__ParameterCS__Group_2__0 : rule__ParameterCS__Group_2__0__Impl rule__ParameterCS__Group_2__1 ;
+    // InternalOCLinEcore.g:12569:1: rule__ParameterCS__Group_2__0 : rule__ParameterCS__Group_2__0__Impl rule__ParameterCS__Group_2__1 ;
     public final void rule__ParameterCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12571:1: ( rule__ParameterCS__Group_2__0__Impl rule__ParameterCS__Group_2__1 )
-            // InternalOCLinEcore.g:12572:2: rule__ParameterCS__Group_2__0__Impl rule__ParameterCS__Group_2__1
+            // InternalOCLinEcore.g:12573:1: ( rule__ParameterCS__Group_2__0__Impl rule__ParameterCS__Group_2__1 )
+            // InternalOCLinEcore.g:12574:2: rule__ParameterCS__Group_2__0__Impl rule__ParameterCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_64);
             rule__ParameterCS__Group_2__0__Impl();
@@ -39608,17 +39608,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:12579:1: rule__ParameterCS__Group_2__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:12581:1: rule__ParameterCS__Group_2__0__Impl : ( '{' ) ;
     public final void rule__ParameterCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12583:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:12584:1: ( '{' )
+            // InternalOCLinEcore.g:12585:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:12586:1: ( '{' )
             {
-            // InternalOCLinEcore.g:12584:1: ( '{' )
-            // InternalOCLinEcore.g:12585:1: '{'
+            // InternalOCLinEcore.g:12586:1: ( '{' )
+            // InternalOCLinEcore.g:12587:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_2_0());
@@ -39649,14 +39649,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_2__1"
-    // InternalOCLinEcore.g:12598:1: rule__ParameterCS__Group_2__1 : rule__ParameterCS__Group_2__1__Impl rule__ParameterCS__Group_2__2 ;
+    // InternalOCLinEcore.g:12600:1: rule__ParameterCS__Group_2__1 : rule__ParameterCS__Group_2__1__Impl rule__ParameterCS__Group_2__2 ;
     public final void rule__ParameterCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12602:1: ( rule__ParameterCS__Group_2__1__Impl rule__ParameterCS__Group_2__2 )
-            // InternalOCLinEcore.g:12603:2: rule__ParameterCS__Group_2__1__Impl rule__ParameterCS__Group_2__2
+            // InternalOCLinEcore.g:12604:1: ( rule__ParameterCS__Group_2__1__Impl rule__ParameterCS__Group_2__2 )
+            // InternalOCLinEcore.g:12605:2: rule__ParameterCS__Group_2__1__Impl rule__ParameterCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__ParameterCS__Group_2__1__Impl();
@@ -39687,26 +39687,26 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:12610:1: rule__ParameterCS__Group_2__1__Impl : ( ( ( rule__ParameterCS__Group_2_1__0 ) ) ( ( rule__ParameterCS__Group_2_1__0 )* ) ) ;
+    // InternalOCLinEcore.g:12612:1: rule__ParameterCS__Group_2__1__Impl : ( ( ( rule__ParameterCS__Group_2_1__0 ) ) ( ( rule__ParameterCS__Group_2_1__0 )* ) ) ;
     public final void rule__ParameterCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12614:1: ( ( ( ( rule__ParameterCS__Group_2_1__0 ) ) ( ( rule__ParameterCS__Group_2_1__0 )* ) ) )
-            // InternalOCLinEcore.g:12615:1: ( ( ( rule__ParameterCS__Group_2_1__0 ) ) ( ( rule__ParameterCS__Group_2_1__0 )* ) )
+            // InternalOCLinEcore.g:12616:1: ( ( ( ( rule__ParameterCS__Group_2_1__0 ) ) ( ( rule__ParameterCS__Group_2_1__0 )* ) ) )
+            // InternalOCLinEcore.g:12617:1: ( ( ( rule__ParameterCS__Group_2_1__0 ) ) ( ( rule__ParameterCS__Group_2_1__0 )* ) )
             {
-            // InternalOCLinEcore.g:12615:1: ( ( ( rule__ParameterCS__Group_2_1__0 ) ) ( ( rule__ParameterCS__Group_2_1__0 )* ) )
-            // InternalOCLinEcore.g:12616:1: ( ( rule__ParameterCS__Group_2_1__0 ) ) ( ( rule__ParameterCS__Group_2_1__0 )* )
+            // InternalOCLinEcore.g:12617:1: ( ( ( rule__ParameterCS__Group_2_1__0 ) ) ( ( rule__ParameterCS__Group_2_1__0 )* ) )
+            // InternalOCLinEcore.g:12618:1: ( ( rule__ParameterCS__Group_2_1__0 ) ) ( ( rule__ParameterCS__Group_2_1__0 )* )
             {
-            // InternalOCLinEcore.g:12616:1: ( ( rule__ParameterCS__Group_2_1__0 ) )
-            // InternalOCLinEcore.g:12617:1: ( rule__ParameterCS__Group_2_1__0 )
+            // InternalOCLinEcore.g:12618:1: ( ( rule__ParameterCS__Group_2_1__0 ) )
+            // InternalOCLinEcore.g:12619:1: ( rule__ParameterCS__Group_2_1__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getGroup_2_1());
             }
-            // InternalOCLinEcore.g:12618:1: ( rule__ParameterCS__Group_2_1__0 )
-            // InternalOCLinEcore.g:12618:2: rule__ParameterCS__Group_2_1__0
+            // InternalOCLinEcore.g:12620:1: ( rule__ParameterCS__Group_2_1__0 )
+            // InternalOCLinEcore.g:12620:2: rule__ParameterCS__Group_2_1__0
             {
             pushFollow(FollowSets000.FOLLOW_65);
             rule__ParameterCS__Group_2_1__0();
@@ -39722,13 +39722,13 @@
 
             }
 
-            // InternalOCLinEcore.g:12621:1: ( ( rule__ParameterCS__Group_2_1__0 )* )
-            // InternalOCLinEcore.g:12622:1: ( rule__ParameterCS__Group_2_1__0 )*
+            // InternalOCLinEcore.g:12623:1: ( ( rule__ParameterCS__Group_2_1__0 )* )
+            // InternalOCLinEcore.g:12624:1: ( rule__ParameterCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getGroup_2_1());
             }
-            // InternalOCLinEcore.g:12623:1: ( rule__ParameterCS__Group_2_1__0 )*
+            // InternalOCLinEcore.g:12625:1: ( rule__ParameterCS__Group_2_1__0 )*
             loop148:
             do {
                 int alt148=2;
@@ -39741,7 +39741,7 @@
 
                 switch (alt148) {
             	case 1 :
-            	    // InternalOCLinEcore.g:12623:2: rule__ParameterCS__Group_2_1__0
+            	    // InternalOCLinEcore.g:12625:2: rule__ParameterCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_65);
             	    rule__ParameterCS__Group_2_1__0();
@@ -39785,14 +39785,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_2__2"
-    // InternalOCLinEcore.g:12634:1: rule__ParameterCS__Group_2__2 : rule__ParameterCS__Group_2__2__Impl ;
+    // InternalOCLinEcore.g:12636:1: rule__ParameterCS__Group_2__2 : rule__ParameterCS__Group_2__2__Impl ;
     public final void rule__ParameterCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12638:1: ( rule__ParameterCS__Group_2__2__Impl )
-            // InternalOCLinEcore.g:12639:2: rule__ParameterCS__Group_2__2__Impl
+            // InternalOCLinEcore.g:12640:1: ( rule__ParameterCS__Group_2__2__Impl )
+            // InternalOCLinEcore.g:12641:2: rule__ParameterCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__Group_2__2__Impl();
@@ -39818,17 +39818,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_2__2__Impl"
-    // InternalOCLinEcore.g:12645:1: rule__ParameterCS__Group_2__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:12647:1: rule__ParameterCS__Group_2__2__Impl : ( '}' ) ;
     public final void rule__ParameterCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12649:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:12650:1: ( '}' )
+            // InternalOCLinEcore.g:12651:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:12652:1: ( '}' )
             {
-            // InternalOCLinEcore.g:12650:1: ( '}' )
-            // InternalOCLinEcore.g:12651:1: '}'
+            // InternalOCLinEcore.g:12652:1: ( '}' )
+            // InternalOCLinEcore.g:12653:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_2_2());
@@ -39859,14 +39859,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_2_1__0"
-    // InternalOCLinEcore.g:12670:1: rule__ParameterCS__Group_2_1__0 : rule__ParameterCS__Group_2_1__0__Impl rule__ParameterCS__Group_2_1__1 ;
+    // InternalOCLinEcore.g:12672:1: rule__ParameterCS__Group_2_1__0 : rule__ParameterCS__Group_2_1__0__Impl rule__ParameterCS__Group_2_1__1 ;
     public final void rule__ParameterCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12674:1: ( rule__ParameterCS__Group_2_1__0__Impl rule__ParameterCS__Group_2_1__1 )
-            // InternalOCLinEcore.g:12675:2: rule__ParameterCS__Group_2_1__0__Impl rule__ParameterCS__Group_2_1__1
+            // InternalOCLinEcore.g:12676:1: ( rule__ParameterCS__Group_2_1__0__Impl rule__ParameterCS__Group_2_1__1 )
+            // InternalOCLinEcore.g:12677:2: rule__ParameterCS__Group_2_1__0__Impl rule__ParameterCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__ParameterCS__Group_2_1__0__Impl();
@@ -39897,23 +39897,23 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_2_1__0__Impl"
-    // InternalOCLinEcore.g:12682:1: rule__ParameterCS__Group_2_1__0__Impl : ( ( rule__ParameterCS__Alternatives_2_1_0 ) ) ;
+    // InternalOCLinEcore.g:12684:1: rule__ParameterCS__Group_2_1__0__Impl : ( ( rule__ParameterCS__Alternatives_2_1_0 ) ) ;
     public final void rule__ParameterCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12686:1: ( ( ( rule__ParameterCS__Alternatives_2_1_0 ) ) )
-            // InternalOCLinEcore.g:12687:1: ( ( rule__ParameterCS__Alternatives_2_1_0 ) )
+            // InternalOCLinEcore.g:12688:1: ( ( ( rule__ParameterCS__Alternatives_2_1_0 ) ) )
+            // InternalOCLinEcore.g:12689:1: ( ( rule__ParameterCS__Alternatives_2_1_0 ) )
             {
-            // InternalOCLinEcore.g:12687:1: ( ( rule__ParameterCS__Alternatives_2_1_0 ) )
-            // InternalOCLinEcore.g:12688:1: ( rule__ParameterCS__Alternatives_2_1_0 )
+            // InternalOCLinEcore.g:12689:1: ( ( rule__ParameterCS__Alternatives_2_1_0 ) )
+            // InternalOCLinEcore.g:12690:1: ( rule__ParameterCS__Alternatives_2_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getAlternatives_2_1_0());
             }
-            // InternalOCLinEcore.g:12689:1: ( rule__ParameterCS__Alternatives_2_1_0 )
-            // InternalOCLinEcore.g:12689:2: rule__ParameterCS__Alternatives_2_1_0
+            // InternalOCLinEcore.g:12691:1: ( rule__ParameterCS__Alternatives_2_1_0 )
+            // InternalOCLinEcore.g:12691:2: rule__ParameterCS__Alternatives_2_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__Alternatives_2_1_0();
@@ -39948,14 +39948,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_2_1__1"
-    // InternalOCLinEcore.g:12699:1: rule__ParameterCS__Group_2_1__1 : rule__ParameterCS__Group_2_1__1__Impl ;
+    // InternalOCLinEcore.g:12701:1: rule__ParameterCS__Group_2_1__1 : rule__ParameterCS__Group_2_1__1__Impl ;
     public final void rule__ParameterCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12703:1: ( rule__ParameterCS__Group_2_1__1__Impl )
-            // InternalOCLinEcore.g:12704:2: rule__ParameterCS__Group_2_1__1__Impl
+            // InternalOCLinEcore.g:12705:1: ( rule__ParameterCS__Group_2_1__1__Impl )
+            // InternalOCLinEcore.g:12706:2: rule__ParameterCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__Group_2_1__1__Impl();
@@ -39981,22 +39981,22 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_2_1__1__Impl"
-    // InternalOCLinEcore.g:12710:1: rule__ParameterCS__Group_2_1__1__Impl : ( ( ',' )? ) ;
+    // InternalOCLinEcore.g:12712:1: rule__ParameterCS__Group_2_1__1__Impl : ( ( ',' )? ) ;
     public final void rule__ParameterCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12714:1: ( ( ( ',' )? ) )
-            // InternalOCLinEcore.g:12715:1: ( ( ',' )? )
+            // InternalOCLinEcore.g:12716:1: ( ( ( ',' )? ) )
+            // InternalOCLinEcore.g:12717:1: ( ( ',' )? )
             {
-            // InternalOCLinEcore.g:12715:1: ( ( ',' )? )
-            // InternalOCLinEcore.g:12716:1: ( ',' )?
+            // InternalOCLinEcore.g:12717:1: ( ( ',' )? )
+            // InternalOCLinEcore.g:12718:1: ( ',' )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getCommaKeyword_2_1_1());
             }
-            // InternalOCLinEcore.g:12717:1: ( ',' )?
+            // InternalOCLinEcore.g:12719:1: ( ',' )?
             int alt149=2;
             int LA149_0 = input.LA(1);
 
@@ -40005,7 +40005,7 @@
             }
             switch (alt149) {
                 case 1 :
-                    // InternalOCLinEcore.g:12718:2: ','
+                    // InternalOCLinEcore.g:12720:2: ','
                     {
                     match(input,105,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -40039,14 +40039,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_3__0"
-    // InternalOCLinEcore.g:12733:1: rule__ParameterCS__Group_3__0 : rule__ParameterCS__Group_3__0__Impl rule__ParameterCS__Group_3__1 ;
+    // InternalOCLinEcore.g:12735:1: rule__ParameterCS__Group_3__0 : rule__ParameterCS__Group_3__0__Impl rule__ParameterCS__Group_3__1 ;
     public final void rule__ParameterCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12737:1: ( rule__ParameterCS__Group_3__0__Impl rule__ParameterCS__Group_3__1 )
-            // InternalOCLinEcore.g:12738:2: rule__ParameterCS__Group_3__0__Impl rule__ParameterCS__Group_3__1
+            // InternalOCLinEcore.g:12739:1: ( rule__ParameterCS__Group_3__0__Impl rule__ParameterCS__Group_3__1 )
+            // InternalOCLinEcore.g:12740:2: rule__ParameterCS__Group_3__0__Impl rule__ParameterCS__Group_3__1
             {
             pushFollow(FollowSets000.FOLLOW_48);
             rule__ParameterCS__Group_3__0__Impl();
@@ -40077,17 +40077,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_3__0__Impl"
-    // InternalOCLinEcore.g:12745:1: rule__ParameterCS__Group_3__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:12747:1: rule__ParameterCS__Group_3__0__Impl : ( '{' ) ;
     public final void rule__ParameterCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12749:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:12750:1: ( '{' )
+            // InternalOCLinEcore.g:12751:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:12752:1: ( '{' )
             {
-            // InternalOCLinEcore.g:12750:1: ( '{' )
-            // InternalOCLinEcore.g:12751:1: '{'
+            // InternalOCLinEcore.g:12752:1: ( '{' )
+            // InternalOCLinEcore.g:12753:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_3_0());
@@ -40118,14 +40118,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_3__1"
-    // InternalOCLinEcore.g:12764:1: rule__ParameterCS__Group_3__1 : rule__ParameterCS__Group_3__1__Impl rule__ParameterCS__Group_3__2 ;
+    // InternalOCLinEcore.g:12766:1: rule__ParameterCS__Group_3__1 : rule__ParameterCS__Group_3__1__Impl rule__ParameterCS__Group_3__2 ;
     public final void rule__ParameterCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12768:1: ( rule__ParameterCS__Group_3__1__Impl rule__ParameterCS__Group_3__2 )
-            // InternalOCLinEcore.g:12769:2: rule__ParameterCS__Group_3__1__Impl rule__ParameterCS__Group_3__2
+            // InternalOCLinEcore.g:12770:1: ( rule__ParameterCS__Group_3__1__Impl rule__ParameterCS__Group_3__2 )
+            // InternalOCLinEcore.g:12771:2: rule__ParameterCS__Group_3__1__Impl rule__ParameterCS__Group_3__2
             {
             pushFollow(FollowSets000.FOLLOW_48);
             rule__ParameterCS__Group_3__1__Impl();
@@ -40156,22 +40156,22 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_3__1__Impl"
-    // InternalOCLinEcore.g:12776:1: rule__ParameterCS__Group_3__1__Impl : ( ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )* ) ;
+    // InternalOCLinEcore.g:12778:1: rule__ParameterCS__Group_3__1__Impl : ( ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )* ) ;
     public final void rule__ParameterCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12780:1: ( ( ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )* ) )
-            // InternalOCLinEcore.g:12781:1: ( ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )* )
+            // InternalOCLinEcore.g:12782:1: ( ( ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )* ) )
+            // InternalOCLinEcore.g:12783:1: ( ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )* )
             {
-            // InternalOCLinEcore.g:12781:1: ( ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )* )
-            // InternalOCLinEcore.g:12782:1: ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )*
+            // InternalOCLinEcore.g:12783:1: ( ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )* )
+            // InternalOCLinEcore.g:12784:1: ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAssignment_3_1());
             }
-            // InternalOCLinEcore.g:12783:1: ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )*
+            // InternalOCLinEcore.g:12785:1: ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )*
             loop150:
             do {
                 int alt150=2;
@@ -40184,7 +40184,7 @@
 
                 switch (alt150) {
             	case 1 :
-            	    // InternalOCLinEcore.g:12783:2: rule__ParameterCS__OwnedAnnotationsAssignment_3_1
+            	    // InternalOCLinEcore.g:12785:2: rule__ParameterCS__OwnedAnnotationsAssignment_3_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_49);
             	    rule__ParameterCS__OwnedAnnotationsAssignment_3_1();
@@ -40225,14 +40225,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_3__2"
-    // InternalOCLinEcore.g:12793:1: rule__ParameterCS__Group_3__2 : rule__ParameterCS__Group_3__2__Impl ;
+    // InternalOCLinEcore.g:12795:1: rule__ParameterCS__Group_3__2 : rule__ParameterCS__Group_3__2__Impl ;
     public final void rule__ParameterCS__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12797:1: ( rule__ParameterCS__Group_3__2__Impl )
-            // InternalOCLinEcore.g:12798:2: rule__ParameterCS__Group_3__2__Impl
+            // InternalOCLinEcore.g:12799:1: ( rule__ParameterCS__Group_3__2__Impl )
+            // InternalOCLinEcore.g:12800:2: rule__ParameterCS__Group_3__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__Group_3__2__Impl();
@@ -40258,17 +40258,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group_3__2__Impl"
-    // InternalOCLinEcore.g:12804:1: rule__ParameterCS__Group_3__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:12806:1: rule__ParameterCS__Group_3__2__Impl : ( '}' ) ;
     public final void rule__ParameterCS__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12808:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:12809:1: ( '}' )
+            // InternalOCLinEcore.g:12810:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:12811:1: ( '}' )
             {
-            // InternalOCLinEcore.g:12809:1: ( '}' )
-            // InternalOCLinEcore.g:12810:1: '}'
+            // InternalOCLinEcore.g:12811:1: ( '}' )
+            // InternalOCLinEcore.g:12812:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_3_2());
@@ -40299,14 +40299,14 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group__0"
-    // InternalOCLinEcore.g:12829:1: rule__ImplicitOppositeCS__Group__0 : rule__ImplicitOppositeCS__Group__0__Impl rule__ImplicitOppositeCS__Group__1 ;
+    // InternalOCLinEcore.g:12831:1: rule__ImplicitOppositeCS__Group__0 : rule__ImplicitOppositeCS__Group__0__Impl rule__ImplicitOppositeCS__Group__1 ;
     public final void rule__ImplicitOppositeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12833:1: ( rule__ImplicitOppositeCS__Group__0__Impl rule__ImplicitOppositeCS__Group__1 )
-            // InternalOCLinEcore.g:12834:2: rule__ImplicitOppositeCS__Group__0__Impl rule__ImplicitOppositeCS__Group__1
+            // InternalOCLinEcore.g:12835:1: ( rule__ImplicitOppositeCS__Group__0__Impl rule__ImplicitOppositeCS__Group__1 )
+            // InternalOCLinEcore.g:12836:2: rule__ImplicitOppositeCS__Group__0__Impl rule__ImplicitOppositeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__ImplicitOppositeCS__Group__0__Impl();
@@ -40337,17 +40337,17 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group__0__Impl"
-    // InternalOCLinEcore.g:12841:1: rule__ImplicitOppositeCS__Group__0__Impl : ( 'opposite' ) ;
+    // InternalOCLinEcore.g:12843:1: rule__ImplicitOppositeCS__Group__0__Impl : ( 'opposite' ) ;
     public final void rule__ImplicitOppositeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12845:1: ( ( 'opposite' ) )
-            // InternalOCLinEcore.g:12846:1: ( 'opposite' )
+            // InternalOCLinEcore.g:12847:1: ( ( 'opposite' ) )
+            // InternalOCLinEcore.g:12848:1: ( 'opposite' )
             {
-            // InternalOCLinEcore.g:12846:1: ( 'opposite' )
-            // InternalOCLinEcore.g:12847:1: 'opposite'
+            // InternalOCLinEcore.g:12848:1: ( 'opposite' )
+            // InternalOCLinEcore.g:12849:1: 'opposite'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getOppositeKeyword_0());
@@ -40378,14 +40378,14 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group__1"
-    // InternalOCLinEcore.g:12860:1: rule__ImplicitOppositeCS__Group__1 : rule__ImplicitOppositeCS__Group__1__Impl rule__ImplicitOppositeCS__Group__2 ;
+    // InternalOCLinEcore.g:12862:1: rule__ImplicitOppositeCS__Group__1 : rule__ImplicitOppositeCS__Group__1__Impl rule__ImplicitOppositeCS__Group__2 ;
     public final void rule__ImplicitOppositeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12864:1: ( rule__ImplicitOppositeCS__Group__1__Impl rule__ImplicitOppositeCS__Group__2 )
-            // InternalOCLinEcore.g:12865:2: rule__ImplicitOppositeCS__Group__1__Impl rule__ImplicitOppositeCS__Group__2
+            // InternalOCLinEcore.g:12866:1: ( rule__ImplicitOppositeCS__Group__1__Impl rule__ImplicitOppositeCS__Group__2 )
+            // InternalOCLinEcore.g:12867:2: rule__ImplicitOppositeCS__Group__1__Impl rule__ImplicitOppositeCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_51);
             rule__ImplicitOppositeCS__Group__1__Impl();
@@ -40416,23 +40416,23 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group__1__Impl"
-    // InternalOCLinEcore.g:12872:1: rule__ImplicitOppositeCS__Group__1__Impl : ( ( rule__ImplicitOppositeCS__NameAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:12874:1: rule__ImplicitOppositeCS__Group__1__Impl : ( ( rule__ImplicitOppositeCS__NameAssignment_1 ) ) ;
     public final void rule__ImplicitOppositeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12876:1: ( ( ( rule__ImplicitOppositeCS__NameAssignment_1 ) ) )
-            // InternalOCLinEcore.g:12877:1: ( ( rule__ImplicitOppositeCS__NameAssignment_1 ) )
+            // InternalOCLinEcore.g:12878:1: ( ( ( rule__ImplicitOppositeCS__NameAssignment_1 ) ) )
+            // InternalOCLinEcore.g:12879:1: ( ( rule__ImplicitOppositeCS__NameAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:12877:1: ( ( rule__ImplicitOppositeCS__NameAssignment_1 ) )
-            // InternalOCLinEcore.g:12878:1: ( rule__ImplicitOppositeCS__NameAssignment_1 )
+            // InternalOCLinEcore.g:12879:1: ( ( rule__ImplicitOppositeCS__NameAssignment_1 ) )
+            // InternalOCLinEcore.g:12880:1: ( rule__ImplicitOppositeCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getNameAssignment_1());
             }
-            // InternalOCLinEcore.g:12879:1: ( rule__ImplicitOppositeCS__NameAssignment_1 )
-            // InternalOCLinEcore.g:12879:2: rule__ImplicitOppositeCS__NameAssignment_1
+            // InternalOCLinEcore.g:12881:1: ( rule__ImplicitOppositeCS__NameAssignment_1 )
+            // InternalOCLinEcore.g:12881:2: rule__ImplicitOppositeCS__NameAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImplicitOppositeCS__NameAssignment_1();
@@ -40467,14 +40467,14 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group__2"
-    // InternalOCLinEcore.g:12889:1: rule__ImplicitOppositeCS__Group__2 : rule__ImplicitOppositeCS__Group__2__Impl rule__ImplicitOppositeCS__Group__3 ;
+    // InternalOCLinEcore.g:12891:1: rule__ImplicitOppositeCS__Group__2 : rule__ImplicitOppositeCS__Group__2__Impl rule__ImplicitOppositeCS__Group__3 ;
     public final void rule__ImplicitOppositeCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12893:1: ( rule__ImplicitOppositeCS__Group__2__Impl rule__ImplicitOppositeCS__Group__3 )
-            // InternalOCLinEcore.g:12894:2: rule__ImplicitOppositeCS__Group__2__Impl rule__ImplicitOppositeCS__Group__3
+            // InternalOCLinEcore.g:12895:1: ( rule__ImplicitOppositeCS__Group__2__Impl rule__ImplicitOppositeCS__Group__3 )
+            // InternalOCLinEcore.g:12896:2: rule__ImplicitOppositeCS__Group__2__Impl rule__ImplicitOppositeCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__ImplicitOppositeCS__Group__2__Impl();
@@ -40505,17 +40505,17 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group__2__Impl"
-    // InternalOCLinEcore.g:12901:1: rule__ImplicitOppositeCS__Group__2__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:12903:1: rule__ImplicitOppositeCS__Group__2__Impl : ( ':' ) ;
     public final void rule__ImplicitOppositeCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12905:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:12906:1: ( ':' )
+            // InternalOCLinEcore.g:12907:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:12908:1: ( ':' )
             {
-            // InternalOCLinEcore.g:12906:1: ( ':' )
-            // InternalOCLinEcore.g:12907:1: ':'
+            // InternalOCLinEcore.g:12908:1: ( ':' )
+            // InternalOCLinEcore.g:12909:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getColonKeyword_2());
@@ -40546,14 +40546,14 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group__3"
-    // InternalOCLinEcore.g:12920:1: rule__ImplicitOppositeCS__Group__3 : rule__ImplicitOppositeCS__Group__3__Impl rule__ImplicitOppositeCS__Group__4 ;
+    // InternalOCLinEcore.g:12922:1: rule__ImplicitOppositeCS__Group__3 : rule__ImplicitOppositeCS__Group__3__Impl rule__ImplicitOppositeCS__Group__4 ;
     public final void rule__ImplicitOppositeCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12924:1: ( rule__ImplicitOppositeCS__Group__3__Impl rule__ImplicitOppositeCS__Group__4 )
-            // InternalOCLinEcore.g:12925:2: rule__ImplicitOppositeCS__Group__3__Impl rule__ImplicitOppositeCS__Group__4
+            // InternalOCLinEcore.g:12926:1: ( rule__ImplicitOppositeCS__Group__3__Impl rule__ImplicitOppositeCS__Group__4 )
+            // InternalOCLinEcore.g:12927:2: rule__ImplicitOppositeCS__Group__3__Impl rule__ImplicitOppositeCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__ImplicitOppositeCS__Group__3__Impl();
@@ -40584,23 +40584,23 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group__3__Impl"
-    // InternalOCLinEcore.g:12932:1: rule__ImplicitOppositeCS__Group__3__Impl : ( ( rule__ImplicitOppositeCS__OwnedTypeAssignment_3 ) ) ;
+    // InternalOCLinEcore.g:12934:1: rule__ImplicitOppositeCS__Group__3__Impl : ( ( rule__ImplicitOppositeCS__OwnedTypeAssignment_3 ) ) ;
     public final void rule__ImplicitOppositeCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12936:1: ( ( ( rule__ImplicitOppositeCS__OwnedTypeAssignment_3 ) ) )
-            // InternalOCLinEcore.g:12937:1: ( ( rule__ImplicitOppositeCS__OwnedTypeAssignment_3 ) )
+            // InternalOCLinEcore.g:12938:1: ( ( ( rule__ImplicitOppositeCS__OwnedTypeAssignment_3 ) ) )
+            // InternalOCLinEcore.g:12939:1: ( ( rule__ImplicitOppositeCS__OwnedTypeAssignment_3 ) )
             {
-            // InternalOCLinEcore.g:12937:1: ( ( rule__ImplicitOppositeCS__OwnedTypeAssignment_3 ) )
-            // InternalOCLinEcore.g:12938:1: ( rule__ImplicitOppositeCS__OwnedTypeAssignment_3 )
+            // InternalOCLinEcore.g:12939:1: ( ( rule__ImplicitOppositeCS__OwnedTypeAssignment_3 ) )
+            // InternalOCLinEcore.g:12940:1: ( rule__ImplicitOppositeCS__OwnedTypeAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getOwnedTypeAssignment_3());
             }
-            // InternalOCLinEcore.g:12939:1: ( rule__ImplicitOppositeCS__OwnedTypeAssignment_3 )
-            // InternalOCLinEcore.g:12939:2: rule__ImplicitOppositeCS__OwnedTypeAssignment_3
+            // InternalOCLinEcore.g:12941:1: ( rule__ImplicitOppositeCS__OwnedTypeAssignment_3 )
+            // InternalOCLinEcore.g:12941:2: rule__ImplicitOppositeCS__OwnedTypeAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImplicitOppositeCS__OwnedTypeAssignment_3();
@@ -40635,14 +40635,14 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group__4"
-    // InternalOCLinEcore.g:12949:1: rule__ImplicitOppositeCS__Group__4 : rule__ImplicitOppositeCS__Group__4__Impl ;
+    // InternalOCLinEcore.g:12951:1: rule__ImplicitOppositeCS__Group__4 : rule__ImplicitOppositeCS__Group__4__Impl ;
     public final void rule__ImplicitOppositeCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12953:1: ( rule__ImplicitOppositeCS__Group__4__Impl )
-            // InternalOCLinEcore.g:12954:2: rule__ImplicitOppositeCS__Group__4__Impl
+            // InternalOCLinEcore.g:12955:1: ( rule__ImplicitOppositeCS__Group__4__Impl )
+            // InternalOCLinEcore.g:12956:2: rule__ImplicitOppositeCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImplicitOppositeCS__Group__4__Impl();
@@ -40668,22 +40668,22 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group__4__Impl"
-    // InternalOCLinEcore.g:12960:1: rule__ImplicitOppositeCS__Group__4__Impl : ( ( rule__ImplicitOppositeCS__Group_4__0 )? ) ;
+    // InternalOCLinEcore.g:12962:1: rule__ImplicitOppositeCS__Group__4__Impl : ( ( rule__ImplicitOppositeCS__Group_4__0 )? ) ;
     public final void rule__ImplicitOppositeCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12964:1: ( ( ( rule__ImplicitOppositeCS__Group_4__0 )? ) )
-            // InternalOCLinEcore.g:12965:1: ( ( rule__ImplicitOppositeCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:12966:1: ( ( ( rule__ImplicitOppositeCS__Group_4__0 )? ) )
+            // InternalOCLinEcore.g:12967:1: ( ( rule__ImplicitOppositeCS__Group_4__0 )? )
             {
-            // InternalOCLinEcore.g:12965:1: ( ( rule__ImplicitOppositeCS__Group_4__0 )? )
-            // InternalOCLinEcore.g:12966:1: ( rule__ImplicitOppositeCS__Group_4__0 )?
+            // InternalOCLinEcore.g:12967:1: ( ( rule__ImplicitOppositeCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:12968:1: ( rule__ImplicitOppositeCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getGroup_4());
             }
-            // InternalOCLinEcore.g:12967:1: ( rule__ImplicitOppositeCS__Group_4__0 )?
+            // InternalOCLinEcore.g:12969:1: ( rule__ImplicitOppositeCS__Group_4__0 )?
             int alt151=2;
             int LA151_0 = input.LA(1);
 
@@ -40692,7 +40692,7 @@
             }
             switch (alt151) {
                 case 1 :
-                    // InternalOCLinEcore.g:12967:2: rule__ImplicitOppositeCS__Group_4__0
+                    // InternalOCLinEcore.g:12969:2: rule__ImplicitOppositeCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ImplicitOppositeCS__Group_4__0();
@@ -40730,14 +40730,14 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group_4__0"
-    // InternalOCLinEcore.g:12987:1: rule__ImplicitOppositeCS__Group_4__0 : rule__ImplicitOppositeCS__Group_4__0__Impl rule__ImplicitOppositeCS__Group_4__1 ;
+    // InternalOCLinEcore.g:12989:1: rule__ImplicitOppositeCS__Group_4__0 : rule__ImplicitOppositeCS__Group_4__0__Impl rule__ImplicitOppositeCS__Group_4__1 ;
     public final void rule__ImplicitOppositeCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:12991:1: ( rule__ImplicitOppositeCS__Group_4__0__Impl rule__ImplicitOppositeCS__Group_4__1 )
-            // InternalOCLinEcore.g:12992:2: rule__ImplicitOppositeCS__Group_4__0__Impl rule__ImplicitOppositeCS__Group_4__1
+            // InternalOCLinEcore.g:12993:1: ( rule__ImplicitOppositeCS__Group_4__0__Impl rule__ImplicitOppositeCS__Group_4__1 )
+            // InternalOCLinEcore.g:12994:2: rule__ImplicitOppositeCS__Group_4__0__Impl rule__ImplicitOppositeCS__Group_4__1
             {
             pushFollow(FollowSets000.FOLLOW_64);
             rule__ImplicitOppositeCS__Group_4__0__Impl();
@@ -40768,17 +40768,17 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group_4__0__Impl"
-    // InternalOCLinEcore.g:12999:1: rule__ImplicitOppositeCS__Group_4__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:13001:1: rule__ImplicitOppositeCS__Group_4__0__Impl : ( '{' ) ;
     public final void rule__ImplicitOppositeCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13003:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:13004:1: ( '{' )
+            // InternalOCLinEcore.g:13005:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:13006:1: ( '{' )
             {
-            // InternalOCLinEcore.g:13004:1: ( '{' )
-            // InternalOCLinEcore.g:13005:1: '{'
+            // InternalOCLinEcore.g:13006:1: ( '{' )
+            // InternalOCLinEcore.g:13007:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getLeftCurlyBracketKeyword_4_0());
@@ -40809,14 +40809,14 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group_4__1"
-    // InternalOCLinEcore.g:13018:1: rule__ImplicitOppositeCS__Group_4__1 : rule__ImplicitOppositeCS__Group_4__1__Impl rule__ImplicitOppositeCS__Group_4__2 ;
+    // InternalOCLinEcore.g:13020:1: rule__ImplicitOppositeCS__Group_4__1 : rule__ImplicitOppositeCS__Group_4__1__Impl rule__ImplicitOppositeCS__Group_4__2 ;
     public final void rule__ImplicitOppositeCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13022:1: ( rule__ImplicitOppositeCS__Group_4__1__Impl rule__ImplicitOppositeCS__Group_4__2 )
-            // InternalOCLinEcore.g:13023:2: rule__ImplicitOppositeCS__Group_4__1__Impl rule__ImplicitOppositeCS__Group_4__2
+            // InternalOCLinEcore.g:13024:1: ( rule__ImplicitOppositeCS__Group_4__1__Impl rule__ImplicitOppositeCS__Group_4__2 )
+            // InternalOCLinEcore.g:13025:2: rule__ImplicitOppositeCS__Group_4__1__Impl rule__ImplicitOppositeCS__Group_4__2
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__ImplicitOppositeCS__Group_4__1__Impl();
@@ -40847,26 +40847,26 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group_4__1__Impl"
-    // InternalOCLinEcore.g:13030:1: rule__ImplicitOppositeCS__Group_4__1__Impl : ( ( ( rule__ImplicitOppositeCS__Group_4_1__0 ) ) ( ( rule__ImplicitOppositeCS__Group_4_1__0 )* ) ) ;
+    // InternalOCLinEcore.g:13032:1: rule__ImplicitOppositeCS__Group_4__1__Impl : ( ( ( rule__ImplicitOppositeCS__Group_4_1__0 ) ) ( ( rule__ImplicitOppositeCS__Group_4_1__0 )* ) ) ;
     public final void rule__ImplicitOppositeCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13034:1: ( ( ( ( rule__ImplicitOppositeCS__Group_4_1__0 ) ) ( ( rule__ImplicitOppositeCS__Group_4_1__0 )* ) ) )
-            // InternalOCLinEcore.g:13035:1: ( ( ( rule__ImplicitOppositeCS__Group_4_1__0 ) ) ( ( rule__ImplicitOppositeCS__Group_4_1__0 )* ) )
+            // InternalOCLinEcore.g:13036:1: ( ( ( ( rule__ImplicitOppositeCS__Group_4_1__0 ) ) ( ( rule__ImplicitOppositeCS__Group_4_1__0 )* ) ) )
+            // InternalOCLinEcore.g:13037:1: ( ( ( rule__ImplicitOppositeCS__Group_4_1__0 ) ) ( ( rule__ImplicitOppositeCS__Group_4_1__0 )* ) )
             {
-            // InternalOCLinEcore.g:13035:1: ( ( ( rule__ImplicitOppositeCS__Group_4_1__0 ) ) ( ( rule__ImplicitOppositeCS__Group_4_1__0 )* ) )
-            // InternalOCLinEcore.g:13036:1: ( ( rule__ImplicitOppositeCS__Group_4_1__0 ) ) ( ( rule__ImplicitOppositeCS__Group_4_1__0 )* )
+            // InternalOCLinEcore.g:13037:1: ( ( ( rule__ImplicitOppositeCS__Group_4_1__0 ) ) ( ( rule__ImplicitOppositeCS__Group_4_1__0 )* ) )
+            // InternalOCLinEcore.g:13038:1: ( ( rule__ImplicitOppositeCS__Group_4_1__0 ) ) ( ( rule__ImplicitOppositeCS__Group_4_1__0 )* )
             {
-            // InternalOCLinEcore.g:13036:1: ( ( rule__ImplicitOppositeCS__Group_4_1__0 ) )
-            // InternalOCLinEcore.g:13037:1: ( rule__ImplicitOppositeCS__Group_4_1__0 )
+            // InternalOCLinEcore.g:13038:1: ( ( rule__ImplicitOppositeCS__Group_4_1__0 ) )
+            // InternalOCLinEcore.g:13039:1: ( rule__ImplicitOppositeCS__Group_4_1__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getGroup_4_1());
             }
-            // InternalOCLinEcore.g:13038:1: ( rule__ImplicitOppositeCS__Group_4_1__0 )
-            // InternalOCLinEcore.g:13038:2: rule__ImplicitOppositeCS__Group_4_1__0
+            // InternalOCLinEcore.g:13040:1: ( rule__ImplicitOppositeCS__Group_4_1__0 )
+            // InternalOCLinEcore.g:13040:2: rule__ImplicitOppositeCS__Group_4_1__0
             {
             pushFollow(FollowSets000.FOLLOW_65);
             rule__ImplicitOppositeCS__Group_4_1__0();
@@ -40882,13 +40882,13 @@
 
             }
 
-            // InternalOCLinEcore.g:13041:1: ( ( rule__ImplicitOppositeCS__Group_4_1__0 )* )
-            // InternalOCLinEcore.g:13042:1: ( rule__ImplicitOppositeCS__Group_4_1__0 )*
+            // InternalOCLinEcore.g:13043:1: ( ( rule__ImplicitOppositeCS__Group_4_1__0 )* )
+            // InternalOCLinEcore.g:13044:1: ( rule__ImplicitOppositeCS__Group_4_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getGroup_4_1());
             }
-            // InternalOCLinEcore.g:13043:1: ( rule__ImplicitOppositeCS__Group_4_1__0 )*
+            // InternalOCLinEcore.g:13045:1: ( rule__ImplicitOppositeCS__Group_4_1__0 )*
             loop152:
             do {
                 int alt152=2;
@@ -40901,7 +40901,7 @@
 
                 switch (alt152) {
             	case 1 :
-            	    // InternalOCLinEcore.g:13043:2: rule__ImplicitOppositeCS__Group_4_1__0
+            	    // InternalOCLinEcore.g:13045:2: rule__ImplicitOppositeCS__Group_4_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_65);
             	    rule__ImplicitOppositeCS__Group_4_1__0();
@@ -40945,14 +40945,14 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group_4__2"
-    // InternalOCLinEcore.g:13054:1: rule__ImplicitOppositeCS__Group_4__2 : rule__ImplicitOppositeCS__Group_4__2__Impl ;
+    // InternalOCLinEcore.g:13056:1: rule__ImplicitOppositeCS__Group_4__2 : rule__ImplicitOppositeCS__Group_4__2__Impl ;
     public final void rule__ImplicitOppositeCS__Group_4__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13058:1: ( rule__ImplicitOppositeCS__Group_4__2__Impl )
-            // InternalOCLinEcore.g:13059:2: rule__ImplicitOppositeCS__Group_4__2__Impl
+            // InternalOCLinEcore.g:13060:1: ( rule__ImplicitOppositeCS__Group_4__2__Impl )
+            // InternalOCLinEcore.g:13061:2: rule__ImplicitOppositeCS__Group_4__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImplicitOppositeCS__Group_4__2__Impl();
@@ -40978,17 +40978,17 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group_4__2__Impl"
-    // InternalOCLinEcore.g:13065:1: rule__ImplicitOppositeCS__Group_4__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:13067:1: rule__ImplicitOppositeCS__Group_4__2__Impl : ( '}' ) ;
     public final void rule__ImplicitOppositeCS__Group_4__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13069:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:13070:1: ( '}' )
+            // InternalOCLinEcore.g:13071:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:13072:1: ( '}' )
             {
-            // InternalOCLinEcore.g:13070:1: ( '}' )
-            // InternalOCLinEcore.g:13071:1: '}'
+            // InternalOCLinEcore.g:13072:1: ( '}' )
+            // InternalOCLinEcore.g:13073:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getRightCurlyBracketKeyword_4_2());
@@ -41019,14 +41019,14 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group_4_1__0"
-    // InternalOCLinEcore.g:13090:1: rule__ImplicitOppositeCS__Group_4_1__0 : rule__ImplicitOppositeCS__Group_4_1__0__Impl rule__ImplicitOppositeCS__Group_4_1__1 ;
+    // InternalOCLinEcore.g:13092:1: rule__ImplicitOppositeCS__Group_4_1__0 : rule__ImplicitOppositeCS__Group_4_1__0__Impl rule__ImplicitOppositeCS__Group_4_1__1 ;
     public final void rule__ImplicitOppositeCS__Group_4_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13094:1: ( rule__ImplicitOppositeCS__Group_4_1__0__Impl rule__ImplicitOppositeCS__Group_4_1__1 )
-            // InternalOCLinEcore.g:13095:2: rule__ImplicitOppositeCS__Group_4_1__0__Impl rule__ImplicitOppositeCS__Group_4_1__1
+            // InternalOCLinEcore.g:13096:1: ( rule__ImplicitOppositeCS__Group_4_1__0__Impl rule__ImplicitOppositeCS__Group_4_1__1 )
+            // InternalOCLinEcore.g:13097:2: rule__ImplicitOppositeCS__Group_4_1__0__Impl rule__ImplicitOppositeCS__Group_4_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__ImplicitOppositeCS__Group_4_1__0__Impl();
@@ -41057,23 +41057,23 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group_4_1__0__Impl"
-    // InternalOCLinEcore.g:13102:1: rule__ImplicitOppositeCS__Group_4_1__0__Impl : ( ( rule__ImplicitOppositeCS__Alternatives_4_1_0 ) ) ;
+    // InternalOCLinEcore.g:13104:1: rule__ImplicitOppositeCS__Group_4_1__0__Impl : ( ( rule__ImplicitOppositeCS__Alternatives_4_1_0 ) ) ;
     public final void rule__ImplicitOppositeCS__Group_4_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13106:1: ( ( ( rule__ImplicitOppositeCS__Alternatives_4_1_0 ) ) )
-            // InternalOCLinEcore.g:13107:1: ( ( rule__ImplicitOppositeCS__Alternatives_4_1_0 ) )
+            // InternalOCLinEcore.g:13108:1: ( ( ( rule__ImplicitOppositeCS__Alternatives_4_1_0 ) ) )
+            // InternalOCLinEcore.g:13109:1: ( ( rule__ImplicitOppositeCS__Alternatives_4_1_0 ) )
             {
-            // InternalOCLinEcore.g:13107:1: ( ( rule__ImplicitOppositeCS__Alternatives_4_1_0 ) )
-            // InternalOCLinEcore.g:13108:1: ( rule__ImplicitOppositeCS__Alternatives_4_1_0 )
+            // InternalOCLinEcore.g:13109:1: ( ( rule__ImplicitOppositeCS__Alternatives_4_1_0 ) )
+            // InternalOCLinEcore.g:13110:1: ( rule__ImplicitOppositeCS__Alternatives_4_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getAlternatives_4_1_0());
             }
-            // InternalOCLinEcore.g:13109:1: ( rule__ImplicitOppositeCS__Alternatives_4_1_0 )
-            // InternalOCLinEcore.g:13109:2: rule__ImplicitOppositeCS__Alternatives_4_1_0
+            // InternalOCLinEcore.g:13111:1: ( rule__ImplicitOppositeCS__Alternatives_4_1_0 )
+            // InternalOCLinEcore.g:13111:2: rule__ImplicitOppositeCS__Alternatives_4_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImplicitOppositeCS__Alternatives_4_1_0();
@@ -41108,14 +41108,14 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group_4_1__1"
-    // InternalOCLinEcore.g:13119:1: rule__ImplicitOppositeCS__Group_4_1__1 : rule__ImplicitOppositeCS__Group_4_1__1__Impl ;
+    // InternalOCLinEcore.g:13121:1: rule__ImplicitOppositeCS__Group_4_1__1 : rule__ImplicitOppositeCS__Group_4_1__1__Impl ;
     public final void rule__ImplicitOppositeCS__Group_4_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13123:1: ( rule__ImplicitOppositeCS__Group_4_1__1__Impl )
-            // InternalOCLinEcore.g:13124:2: rule__ImplicitOppositeCS__Group_4_1__1__Impl
+            // InternalOCLinEcore.g:13125:1: ( rule__ImplicitOppositeCS__Group_4_1__1__Impl )
+            // InternalOCLinEcore.g:13126:2: rule__ImplicitOppositeCS__Group_4_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImplicitOppositeCS__Group_4_1__1__Impl();
@@ -41141,22 +41141,22 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__Group_4_1__1__Impl"
-    // InternalOCLinEcore.g:13130:1: rule__ImplicitOppositeCS__Group_4_1__1__Impl : ( ( ',' )? ) ;
+    // InternalOCLinEcore.g:13132:1: rule__ImplicitOppositeCS__Group_4_1__1__Impl : ( ( ',' )? ) ;
     public final void rule__ImplicitOppositeCS__Group_4_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13134:1: ( ( ( ',' )? ) )
-            // InternalOCLinEcore.g:13135:1: ( ( ',' )? )
+            // InternalOCLinEcore.g:13136:1: ( ( ( ',' )? ) )
+            // InternalOCLinEcore.g:13137:1: ( ( ',' )? )
             {
-            // InternalOCLinEcore.g:13135:1: ( ( ',' )? )
-            // InternalOCLinEcore.g:13136:1: ( ',' )?
+            // InternalOCLinEcore.g:13137:1: ( ( ',' )? )
+            // InternalOCLinEcore.g:13138:1: ( ',' )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getCommaKeyword_4_1_1());
             }
-            // InternalOCLinEcore.g:13137:1: ( ',' )?
+            // InternalOCLinEcore.g:13139:1: ( ',' )?
             int alt153=2;
             int LA153_0 = input.LA(1);
 
@@ -41165,7 +41165,7 @@
             }
             switch (alt153) {
                 case 1 :
-                    // InternalOCLinEcore.g:13138:2: ','
+                    // InternalOCLinEcore.g:13140:2: ','
                     {
                     match(input,105,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -41199,14 +41199,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__0"
-    // InternalOCLinEcore.g:13153:1: rule__ReferenceCS__Group__0 : rule__ReferenceCS__Group__0__Impl rule__ReferenceCS__Group__1 ;
+    // InternalOCLinEcore.g:13155:1: rule__ReferenceCS__Group__0 : rule__ReferenceCS__Group__0__Impl rule__ReferenceCS__Group__1 ;
     public final void rule__ReferenceCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13157:1: ( rule__ReferenceCS__Group__0__Impl rule__ReferenceCS__Group__1 )
-            // InternalOCLinEcore.g:13158:2: rule__ReferenceCS__Group__0__Impl rule__ReferenceCS__Group__1
+            // InternalOCLinEcore.g:13159:1: ( rule__ReferenceCS__Group__0__Impl rule__ReferenceCS__Group__1 )
+            // InternalOCLinEcore.g:13160:2: rule__ReferenceCS__Group__0__Impl rule__ReferenceCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_67);
             rule__ReferenceCS__Group__0__Impl();
@@ -41237,22 +41237,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__0__Impl"
-    // InternalOCLinEcore.g:13165:1: rule__ReferenceCS__Group__0__Impl : ( ( rule__ReferenceCS__Alternatives_0 )? ) ;
+    // InternalOCLinEcore.g:13167:1: rule__ReferenceCS__Group__0__Impl : ( ( rule__ReferenceCS__Alternatives_0 )? ) ;
     public final void rule__ReferenceCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13169:1: ( ( ( rule__ReferenceCS__Alternatives_0 )? ) )
-            // InternalOCLinEcore.g:13170:1: ( ( rule__ReferenceCS__Alternatives_0 )? )
+            // InternalOCLinEcore.g:13171:1: ( ( ( rule__ReferenceCS__Alternatives_0 )? ) )
+            // InternalOCLinEcore.g:13172:1: ( ( rule__ReferenceCS__Alternatives_0 )? )
             {
-            // InternalOCLinEcore.g:13170:1: ( ( rule__ReferenceCS__Alternatives_0 )? )
-            // InternalOCLinEcore.g:13171:1: ( rule__ReferenceCS__Alternatives_0 )?
+            // InternalOCLinEcore.g:13172:1: ( ( rule__ReferenceCS__Alternatives_0 )? )
+            // InternalOCLinEcore.g:13173:1: ( rule__ReferenceCS__Alternatives_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getAlternatives_0());
             }
-            // InternalOCLinEcore.g:13172:1: ( rule__ReferenceCS__Alternatives_0 )?
+            // InternalOCLinEcore.g:13174:1: ( rule__ReferenceCS__Alternatives_0 )?
             int alt154=2;
             int LA154_0 = input.LA(1);
 
@@ -41261,7 +41261,7 @@
             }
             switch (alt154) {
                 case 1 :
-                    // InternalOCLinEcore.g:13172:2: rule__ReferenceCS__Alternatives_0
+                    // InternalOCLinEcore.g:13174:2: rule__ReferenceCS__Alternatives_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__Alternatives_0();
@@ -41299,14 +41299,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__1"
-    // InternalOCLinEcore.g:13182:1: rule__ReferenceCS__Group__1 : rule__ReferenceCS__Group__1__Impl rule__ReferenceCS__Group__2 ;
+    // InternalOCLinEcore.g:13184:1: rule__ReferenceCS__Group__1 : rule__ReferenceCS__Group__1__Impl rule__ReferenceCS__Group__2 ;
     public final void rule__ReferenceCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13186:1: ( rule__ReferenceCS__Group__1__Impl rule__ReferenceCS__Group__2 )
-            // InternalOCLinEcore.g:13187:2: rule__ReferenceCS__Group__1__Impl rule__ReferenceCS__Group__2
+            // InternalOCLinEcore.g:13188:1: ( rule__ReferenceCS__Group__1__Impl rule__ReferenceCS__Group__2 )
+            // InternalOCLinEcore.g:13189:2: rule__ReferenceCS__Group__1__Impl rule__ReferenceCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__ReferenceCS__Group__1__Impl();
@@ -41337,17 +41337,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__1__Impl"
-    // InternalOCLinEcore.g:13194:1: rule__ReferenceCS__Group__1__Impl : ( 'property' ) ;
+    // InternalOCLinEcore.g:13196:1: rule__ReferenceCS__Group__1__Impl : ( 'property' ) ;
     public final void rule__ReferenceCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13198:1: ( ( 'property' ) )
-            // InternalOCLinEcore.g:13199:1: ( 'property' )
+            // InternalOCLinEcore.g:13200:1: ( ( 'property' ) )
+            // InternalOCLinEcore.g:13201:1: ( 'property' )
             {
-            // InternalOCLinEcore.g:13199:1: ( 'property' )
-            // InternalOCLinEcore.g:13200:1: 'property'
+            // InternalOCLinEcore.g:13201:1: ( 'property' )
+            // InternalOCLinEcore.g:13202:1: 'property'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getPropertyKeyword_1());
@@ -41378,14 +41378,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__2"
-    // InternalOCLinEcore.g:13213:1: rule__ReferenceCS__Group__2 : rule__ReferenceCS__Group__2__Impl rule__ReferenceCS__Group__3 ;
+    // InternalOCLinEcore.g:13215:1: rule__ReferenceCS__Group__2 : rule__ReferenceCS__Group__2__Impl rule__ReferenceCS__Group__3 ;
     public final void rule__ReferenceCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13217:1: ( rule__ReferenceCS__Group__2__Impl rule__ReferenceCS__Group__3 )
-            // InternalOCLinEcore.g:13218:2: rule__ReferenceCS__Group__2__Impl rule__ReferenceCS__Group__3
+            // InternalOCLinEcore.g:13219:1: ( rule__ReferenceCS__Group__2__Impl rule__ReferenceCS__Group__3 )
+            // InternalOCLinEcore.g:13220:2: rule__ReferenceCS__Group__2__Impl rule__ReferenceCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_68);
             rule__ReferenceCS__Group__2__Impl();
@@ -41416,23 +41416,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__2__Impl"
-    // InternalOCLinEcore.g:13225:1: rule__ReferenceCS__Group__2__Impl : ( ( rule__ReferenceCS__NameAssignment_2 ) ) ;
+    // InternalOCLinEcore.g:13227:1: rule__ReferenceCS__Group__2__Impl : ( ( rule__ReferenceCS__NameAssignment_2 ) ) ;
     public final void rule__ReferenceCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13229:1: ( ( ( rule__ReferenceCS__NameAssignment_2 ) ) )
-            // InternalOCLinEcore.g:13230:1: ( ( rule__ReferenceCS__NameAssignment_2 ) )
+            // InternalOCLinEcore.g:13231:1: ( ( ( rule__ReferenceCS__NameAssignment_2 ) ) )
+            // InternalOCLinEcore.g:13232:1: ( ( rule__ReferenceCS__NameAssignment_2 ) )
             {
-            // InternalOCLinEcore.g:13230:1: ( ( rule__ReferenceCS__NameAssignment_2 ) )
-            // InternalOCLinEcore.g:13231:1: ( rule__ReferenceCS__NameAssignment_2 )
+            // InternalOCLinEcore.g:13232:1: ( ( rule__ReferenceCS__NameAssignment_2 ) )
+            // InternalOCLinEcore.g:13233:1: ( rule__ReferenceCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getNameAssignment_2());
             }
-            // InternalOCLinEcore.g:13232:1: ( rule__ReferenceCS__NameAssignment_2 )
-            // InternalOCLinEcore.g:13232:2: rule__ReferenceCS__NameAssignment_2
+            // InternalOCLinEcore.g:13234:1: ( rule__ReferenceCS__NameAssignment_2 )
+            // InternalOCLinEcore.g:13234:2: rule__ReferenceCS__NameAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__NameAssignment_2();
@@ -41467,14 +41467,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__3"
-    // InternalOCLinEcore.g:13242:1: rule__ReferenceCS__Group__3 : rule__ReferenceCS__Group__3__Impl rule__ReferenceCS__Group__4 ;
+    // InternalOCLinEcore.g:13244:1: rule__ReferenceCS__Group__3 : rule__ReferenceCS__Group__3__Impl rule__ReferenceCS__Group__4 ;
     public final void rule__ReferenceCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13246:1: ( rule__ReferenceCS__Group__3__Impl rule__ReferenceCS__Group__4 )
-            // InternalOCLinEcore.g:13247:2: rule__ReferenceCS__Group__3__Impl rule__ReferenceCS__Group__4
+            // InternalOCLinEcore.g:13248:1: ( rule__ReferenceCS__Group__3__Impl rule__ReferenceCS__Group__4 )
+            // InternalOCLinEcore.g:13249:2: rule__ReferenceCS__Group__3__Impl rule__ReferenceCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_68);
             rule__ReferenceCS__Group__3__Impl();
@@ -41505,22 +41505,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__3__Impl"
-    // InternalOCLinEcore.g:13254:1: rule__ReferenceCS__Group__3__Impl : ( ( rule__ReferenceCS__Group_3__0 )? ) ;
+    // InternalOCLinEcore.g:13256:1: rule__ReferenceCS__Group__3__Impl : ( ( rule__ReferenceCS__Group_3__0 )? ) ;
     public final void rule__ReferenceCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13258:1: ( ( ( rule__ReferenceCS__Group_3__0 )? ) )
-            // InternalOCLinEcore.g:13259:1: ( ( rule__ReferenceCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:13260:1: ( ( ( rule__ReferenceCS__Group_3__0 )? ) )
+            // InternalOCLinEcore.g:13261:1: ( ( rule__ReferenceCS__Group_3__0 )? )
             {
-            // InternalOCLinEcore.g:13259:1: ( ( rule__ReferenceCS__Group_3__0 )? )
-            // InternalOCLinEcore.g:13260:1: ( rule__ReferenceCS__Group_3__0 )?
+            // InternalOCLinEcore.g:13261:1: ( ( rule__ReferenceCS__Group_3__0 )? )
+            // InternalOCLinEcore.g:13262:1: ( rule__ReferenceCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getGroup_3());
             }
-            // InternalOCLinEcore.g:13261:1: ( rule__ReferenceCS__Group_3__0 )?
+            // InternalOCLinEcore.g:13263:1: ( rule__ReferenceCS__Group_3__0 )?
             int alt155=2;
             int LA155_0 = input.LA(1);
 
@@ -41529,7 +41529,7 @@
             }
             switch (alt155) {
                 case 1 :
-                    // InternalOCLinEcore.g:13261:2: rule__ReferenceCS__Group_3__0
+                    // InternalOCLinEcore.g:13263:2: rule__ReferenceCS__Group_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__Group_3__0();
@@ -41567,14 +41567,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__4"
-    // InternalOCLinEcore.g:13271:1: rule__ReferenceCS__Group__4 : rule__ReferenceCS__Group__4__Impl rule__ReferenceCS__Group__5 ;
+    // InternalOCLinEcore.g:13273:1: rule__ReferenceCS__Group__4 : rule__ReferenceCS__Group__4__Impl rule__ReferenceCS__Group__5 ;
     public final void rule__ReferenceCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13275:1: ( rule__ReferenceCS__Group__4__Impl rule__ReferenceCS__Group__5 )
-            // InternalOCLinEcore.g:13276:2: rule__ReferenceCS__Group__4__Impl rule__ReferenceCS__Group__5
+            // InternalOCLinEcore.g:13277:1: ( rule__ReferenceCS__Group__4__Impl rule__ReferenceCS__Group__5 )
+            // InternalOCLinEcore.g:13278:2: rule__ReferenceCS__Group__4__Impl rule__ReferenceCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_68);
             rule__ReferenceCS__Group__4__Impl();
@@ -41605,22 +41605,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__4__Impl"
-    // InternalOCLinEcore.g:13283:1: rule__ReferenceCS__Group__4__Impl : ( ( rule__ReferenceCS__Group_4__0 )? ) ;
+    // InternalOCLinEcore.g:13285:1: rule__ReferenceCS__Group__4__Impl : ( ( rule__ReferenceCS__Group_4__0 )? ) ;
     public final void rule__ReferenceCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13287:1: ( ( ( rule__ReferenceCS__Group_4__0 )? ) )
-            // InternalOCLinEcore.g:13288:1: ( ( rule__ReferenceCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:13289:1: ( ( ( rule__ReferenceCS__Group_4__0 )? ) )
+            // InternalOCLinEcore.g:13290:1: ( ( rule__ReferenceCS__Group_4__0 )? )
             {
-            // InternalOCLinEcore.g:13288:1: ( ( rule__ReferenceCS__Group_4__0 )? )
-            // InternalOCLinEcore.g:13289:1: ( rule__ReferenceCS__Group_4__0 )?
+            // InternalOCLinEcore.g:13290:1: ( ( rule__ReferenceCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:13291:1: ( rule__ReferenceCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getGroup_4());
             }
-            // InternalOCLinEcore.g:13290:1: ( rule__ReferenceCS__Group_4__0 )?
+            // InternalOCLinEcore.g:13292:1: ( rule__ReferenceCS__Group_4__0 )?
             int alt156=2;
             int LA156_0 = input.LA(1);
 
@@ -41629,7 +41629,7 @@
             }
             switch (alt156) {
                 case 1 :
-                    // InternalOCLinEcore.g:13290:2: rule__ReferenceCS__Group_4__0
+                    // InternalOCLinEcore.g:13292:2: rule__ReferenceCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__Group_4__0();
@@ -41667,14 +41667,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__5"
-    // InternalOCLinEcore.g:13300:1: rule__ReferenceCS__Group__5 : rule__ReferenceCS__Group__5__Impl rule__ReferenceCS__Group__6 ;
+    // InternalOCLinEcore.g:13302:1: rule__ReferenceCS__Group__5 : rule__ReferenceCS__Group__5__Impl rule__ReferenceCS__Group__6 ;
     public final void rule__ReferenceCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13304:1: ( rule__ReferenceCS__Group__5__Impl rule__ReferenceCS__Group__6 )
-            // InternalOCLinEcore.g:13305:2: rule__ReferenceCS__Group__5__Impl rule__ReferenceCS__Group__6
+            // InternalOCLinEcore.g:13306:1: ( rule__ReferenceCS__Group__5__Impl rule__ReferenceCS__Group__6 )
+            // InternalOCLinEcore.g:13307:2: rule__ReferenceCS__Group__5__Impl rule__ReferenceCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_68);
             rule__ReferenceCS__Group__5__Impl();
@@ -41705,22 +41705,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__5__Impl"
-    // InternalOCLinEcore.g:13312:1: rule__ReferenceCS__Group__5__Impl : ( ( rule__ReferenceCS__Group_5__0 )? ) ;
+    // InternalOCLinEcore.g:13314:1: rule__ReferenceCS__Group__5__Impl : ( ( rule__ReferenceCS__Group_5__0 )? ) ;
     public final void rule__ReferenceCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13316:1: ( ( ( rule__ReferenceCS__Group_5__0 )? ) )
-            // InternalOCLinEcore.g:13317:1: ( ( rule__ReferenceCS__Group_5__0 )? )
+            // InternalOCLinEcore.g:13318:1: ( ( ( rule__ReferenceCS__Group_5__0 )? ) )
+            // InternalOCLinEcore.g:13319:1: ( ( rule__ReferenceCS__Group_5__0 )? )
             {
-            // InternalOCLinEcore.g:13317:1: ( ( rule__ReferenceCS__Group_5__0 )? )
-            // InternalOCLinEcore.g:13318:1: ( rule__ReferenceCS__Group_5__0 )?
+            // InternalOCLinEcore.g:13319:1: ( ( rule__ReferenceCS__Group_5__0 )? )
+            // InternalOCLinEcore.g:13320:1: ( rule__ReferenceCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getGroup_5());
             }
-            // InternalOCLinEcore.g:13319:1: ( rule__ReferenceCS__Group_5__0 )?
+            // InternalOCLinEcore.g:13321:1: ( rule__ReferenceCS__Group_5__0 )?
             int alt157=2;
             int LA157_0 = input.LA(1);
 
@@ -41729,7 +41729,7 @@
             }
             switch (alt157) {
                 case 1 :
-                    // InternalOCLinEcore.g:13319:2: rule__ReferenceCS__Group_5__0
+                    // InternalOCLinEcore.g:13321:2: rule__ReferenceCS__Group_5__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__Group_5__0();
@@ -41767,14 +41767,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__6"
-    // InternalOCLinEcore.g:13329:1: rule__ReferenceCS__Group__6 : rule__ReferenceCS__Group__6__Impl rule__ReferenceCS__Group__7 ;
+    // InternalOCLinEcore.g:13331:1: rule__ReferenceCS__Group__6 : rule__ReferenceCS__Group__6__Impl rule__ReferenceCS__Group__7 ;
     public final void rule__ReferenceCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13333:1: ( rule__ReferenceCS__Group__6__Impl rule__ReferenceCS__Group__7 )
-            // InternalOCLinEcore.g:13334:2: rule__ReferenceCS__Group__6__Impl rule__ReferenceCS__Group__7
+            // InternalOCLinEcore.g:13335:1: ( rule__ReferenceCS__Group__6__Impl rule__ReferenceCS__Group__7 )
+            // InternalOCLinEcore.g:13336:2: rule__ReferenceCS__Group__6__Impl rule__ReferenceCS__Group__7
             {
             pushFollow(FollowSets000.FOLLOW_68);
             rule__ReferenceCS__Group__6__Impl();
@@ -41805,22 +41805,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__6__Impl"
-    // InternalOCLinEcore.g:13341:1: rule__ReferenceCS__Group__6__Impl : ( ( rule__ReferenceCS__Group_6__0 )? ) ;
+    // InternalOCLinEcore.g:13343:1: rule__ReferenceCS__Group__6__Impl : ( ( rule__ReferenceCS__Group_6__0 )? ) ;
     public final void rule__ReferenceCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13345:1: ( ( ( rule__ReferenceCS__Group_6__0 )? ) )
-            // InternalOCLinEcore.g:13346:1: ( ( rule__ReferenceCS__Group_6__0 )? )
+            // InternalOCLinEcore.g:13347:1: ( ( ( rule__ReferenceCS__Group_6__0 )? ) )
+            // InternalOCLinEcore.g:13348:1: ( ( rule__ReferenceCS__Group_6__0 )? )
             {
-            // InternalOCLinEcore.g:13346:1: ( ( rule__ReferenceCS__Group_6__0 )? )
-            // InternalOCLinEcore.g:13347:1: ( rule__ReferenceCS__Group_6__0 )?
+            // InternalOCLinEcore.g:13348:1: ( ( rule__ReferenceCS__Group_6__0 )? )
+            // InternalOCLinEcore.g:13349:1: ( rule__ReferenceCS__Group_6__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getGroup_6());
             }
-            // InternalOCLinEcore.g:13348:1: ( rule__ReferenceCS__Group_6__0 )?
+            // InternalOCLinEcore.g:13350:1: ( rule__ReferenceCS__Group_6__0 )?
             int alt158=2;
             int LA158_0 = input.LA(1);
 
@@ -41833,7 +41833,7 @@
             }
             switch (alt158) {
                 case 1 :
-                    // InternalOCLinEcore.g:13348:2: rule__ReferenceCS__Group_6__0
+                    // InternalOCLinEcore.g:13350:2: rule__ReferenceCS__Group_6__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__Group_6__0();
@@ -41871,14 +41871,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__7"
-    // InternalOCLinEcore.g:13358:1: rule__ReferenceCS__Group__7 : rule__ReferenceCS__Group__7__Impl ;
+    // InternalOCLinEcore.g:13360:1: rule__ReferenceCS__Group__7 : rule__ReferenceCS__Group__7__Impl ;
     public final void rule__ReferenceCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13362:1: ( rule__ReferenceCS__Group__7__Impl )
-            // InternalOCLinEcore.g:13363:2: rule__ReferenceCS__Group__7__Impl
+            // InternalOCLinEcore.g:13364:1: ( rule__ReferenceCS__Group__7__Impl )
+            // InternalOCLinEcore.g:13365:2: rule__ReferenceCS__Group__7__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group__7__Impl();
@@ -41904,23 +41904,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group__7__Impl"
-    // InternalOCLinEcore.g:13369:1: rule__ReferenceCS__Group__7__Impl : ( ( rule__ReferenceCS__Alternatives_7 ) ) ;
+    // InternalOCLinEcore.g:13371:1: rule__ReferenceCS__Group__7__Impl : ( ( rule__ReferenceCS__Alternatives_7 ) ) ;
     public final void rule__ReferenceCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13373:1: ( ( ( rule__ReferenceCS__Alternatives_7 ) ) )
-            // InternalOCLinEcore.g:13374:1: ( ( rule__ReferenceCS__Alternatives_7 ) )
+            // InternalOCLinEcore.g:13375:1: ( ( ( rule__ReferenceCS__Alternatives_7 ) ) )
+            // InternalOCLinEcore.g:13376:1: ( ( rule__ReferenceCS__Alternatives_7 ) )
             {
-            // InternalOCLinEcore.g:13374:1: ( ( rule__ReferenceCS__Alternatives_7 ) )
-            // InternalOCLinEcore.g:13375:1: ( rule__ReferenceCS__Alternatives_7 )
+            // InternalOCLinEcore.g:13376:1: ( ( rule__ReferenceCS__Alternatives_7 ) )
+            // InternalOCLinEcore.g:13377:1: ( rule__ReferenceCS__Alternatives_7 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getAlternatives_7());
             }
-            // InternalOCLinEcore.g:13376:1: ( rule__ReferenceCS__Alternatives_7 )
-            // InternalOCLinEcore.g:13376:2: rule__ReferenceCS__Alternatives_7
+            // InternalOCLinEcore.g:13378:1: ( rule__ReferenceCS__Alternatives_7 )
+            // InternalOCLinEcore.g:13378:2: rule__ReferenceCS__Alternatives_7
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Alternatives_7();
@@ -41955,14 +41955,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_0_0__0"
-    // InternalOCLinEcore.g:13402:1: rule__ReferenceCS__Group_0_0__0 : rule__ReferenceCS__Group_0_0__0__Impl rule__ReferenceCS__Group_0_0__1 ;
+    // InternalOCLinEcore.g:13404:1: rule__ReferenceCS__Group_0_0__0 : rule__ReferenceCS__Group_0_0__0__Impl rule__ReferenceCS__Group_0_0__1 ;
     public final void rule__ReferenceCS__Group_0_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13406:1: ( rule__ReferenceCS__Group_0_0__0__Impl rule__ReferenceCS__Group_0_0__1 )
-            // InternalOCLinEcore.g:13407:2: rule__ReferenceCS__Group_0_0__0__Impl rule__ReferenceCS__Group_0_0__1
+            // InternalOCLinEcore.g:13408:1: ( rule__ReferenceCS__Group_0_0__0__Impl rule__ReferenceCS__Group_0_0__1 )
+            // InternalOCLinEcore.g:13409:2: rule__ReferenceCS__Group_0_0__0__Impl rule__ReferenceCS__Group_0_0__1
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__ReferenceCS__Group_0_0__0__Impl();
@@ -41993,23 +41993,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_0_0__0__Impl"
-    // InternalOCLinEcore.g:13414:1: rule__ReferenceCS__Group_0_0__0__Impl : ( ( rule__ReferenceCS__QualifiersAssignment_0_0_0 ) ) ;
+    // InternalOCLinEcore.g:13416:1: rule__ReferenceCS__Group_0_0__0__Impl : ( ( rule__ReferenceCS__QualifiersAssignment_0_0_0 ) ) ;
     public final void rule__ReferenceCS__Group_0_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13418:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_0_0_0 ) ) )
-            // InternalOCLinEcore.g:13419:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_0_0 ) )
+            // InternalOCLinEcore.g:13420:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_0_0_0 ) ) )
+            // InternalOCLinEcore.g:13421:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_0_0 ) )
             {
-            // InternalOCLinEcore.g:13419:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_0_0 ) )
-            // InternalOCLinEcore.g:13420:1: ( rule__ReferenceCS__QualifiersAssignment_0_0_0 )
+            // InternalOCLinEcore.g:13421:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_0_0 ) )
+            // InternalOCLinEcore.g:13422:1: ( rule__ReferenceCS__QualifiersAssignment_0_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_0_0());
             }
-            // InternalOCLinEcore.g:13421:1: ( rule__ReferenceCS__QualifiersAssignment_0_0_0 )
-            // InternalOCLinEcore.g:13421:2: rule__ReferenceCS__QualifiersAssignment_0_0_0
+            // InternalOCLinEcore.g:13423:1: ( rule__ReferenceCS__QualifiersAssignment_0_0_0 )
+            // InternalOCLinEcore.g:13423:2: rule__ReferenceCS__QualifiersAssignment_0_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__QualifiersAssignment_0_0_0();
@@ -42044,14 +42044,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_0_0__1"
-    // InternalOCLinEcore.g:13431:1: rule__ReferenceCS__Group_0_0__1 : rule__ReferenceCS__Group_0_0__1__Impl ;
+    // InternalOCLinEcore.g:13433:1: rule__ReferenceCS__Group_0_0__1 : rule__ReferenceCS__Group_0_0__1__Impl ;
     public final void rule__ReferenceCS__Group_0_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13435:1: ( rule__ReferenceCS__Group_0_0__1__Impl )
-            // InternalOCLinEcore.g:13436:2: rule__ReferenceCS__Group_0_0__1__Impl
+            // InternalOCLinEcore.g:13437:1: ( rule__ReferenceCS__Group_0_0__1__Impl )
+            // InternalOCLinEcore.g:13438:2: rule__ReferenceCS__Group_0_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_0_0__1__Impl();
@@ -42077,22 +42077,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_0_0__1__Impl"
-    // InternalOCLinEcore.g:13442:1: rule__ReferenceCS__Group_0_0__1__Impl : ( ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )? ) ;
+    // InternalOCLinEcore.g:13444:1: rule__ReferenceCS__Group_0_0__1__Impl : ( ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )? ) ;
     public final void rule__ReferenceCS__Group_0_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13446:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )? ) )
-            // InternalOCLinEcore.g:13447:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )? )
+            // InternalOCLinEcore.g:13448:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )? ) )
+            // InternalOCLinEcore.g:13449:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )? )
             {
-            // InternalOCLinEcore.g:13447:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )? )
-            // InternalOCLinEcore.g:13448:1: ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )?
+            // InternalOCLinEcore.g:13449:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )? )
+            // InternalOCLinEcore.g:13450:1: ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_0_1());
             }
-            // InternalOCLinEcore.g:13449:1: ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )?
+            // InternalOCLinEcore.g:13451:1: ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )?
             int alt159=2;
             int LA159_0 = input.LA(1);
 
@@ -42101,7 +42101,7 @@
             }
             switch (alt159) {
                 case 1 :
-                    // InternalOCLinEcore.g:13449:2: rule__ReferenceCS__QualifiersAssignment_0_0_1
+                    // InternalOCLinEcore.g:13451:2: rule__ReferenceCS__QualifiersAssignment_0_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_0_0_1();
@@ -42139,14 +42139,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_0_1__0"
-    // InternalOCLinEcore.g:13463:1: rule__ReferenceCS__Group_0_1__0 : rule__ReferenceCS__Group_0_1__0__Impl rule__ReferenceCS__Group_0_1__1 ;
+    // InternalOCLinEcore.g:13465:1: rule__ReferenceCS__Group_0_1__0 : rule__ReferenceCS__Group_0_1__0__Impl rule__ReferenceCS__Group_0_1__1 ;
     public final void rule__ReferenceCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13467:1: ( rule__ReferenceCS__Group_0_1__0__Impl rule__ReferenceCS__Group_0_1__1 )
-            // InternalOCLinEcore.g:13468:2: rule__ReferenceCS__Group_0_1__0__Impl rule__ReferenceCS__Group_0_1__1
+            // InternalOCLinEcore.g:13469:1: ( rule__ReferenceCS__Group_0_1__0__Impl rule__ReferenceCS__Group_0_1__1 )
+            // InternalOCLinEcore.g:13470:2: rule__ReferenceCS__Group_0_1__0__Impl rule__ReferenceCS__Group_0_1__1
             {
             pushFollow(FollowSets000.FOLLOW_27);
             rule__ReferenceCS__Group_0_1__0__Impl();
@@ -42177,23 +42177,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_0_1__0__Impl"
-    // InternalOCLinEcore.g:13475:1: rule__ReferenceCS__Group_0_1__0__Impl : ( ( rule__ReferenceCS__QualifiersAssignment_0_1_0 ) ) ;
+    // InternalOCLinEcore.g:13477:1: rule__ReferenceCS__Group_0_1__0__Impl : ( ( rule__ReferenceCS__QualifiersAssignment_0_1_0 ) ) ;
     public final void rule__ReferenceCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13479:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_0_1_0 ) ) )
-            // InternalOCLinEcore.g:13480:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_1_0 ) )
+            // InternalOCLinEcore.g:13481:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_0_1_0 ) ) )
+            // InternalOCLinEcore.g:13482:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_1_0 ) )
             {
-            // InternalOCLinEcore.g:13480:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_1_0 ) )
-            // InternalOCLinEcore.g:13481:1: ( rule__ReferenceCS__QualifiersAssignment_0_1_0 )
+            // InternalOCLinEcore.g:13482:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_1_0 ) )
+            // InternalOCLinEcore.g:13483:1: ( rule__ReferenceCS__QualifiersAssignment_0_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_1_0());
             }
-            // InternalOCLinEcore.g:13482:1: ( rule__ReferenceCS__QualifiersAssignment_0_1_0 )
-            // InternalOCLinEcore.g:13482:2: rule__ReferenceCS__QualifiersAssignment_0_1_0
+            // InternalOCLinEcore.g:13484:1: ( rule__ReferenceCS__QualifiersAssignment_0_1_0 )
+            // InternalOCLinEcore.g:13484:2: rule__ReferenceCS__QualifiersAssignment_0_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__QualifiersAssignment_0_1_0();
@@ -42228,14 +42228,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_0_1__1"
-    // InternalOCLinEcore.g:13492:1: rule__ReferenceCS__Group_0_1__1 : rule__ReferenceCS__Group_0_1__1__Impl ;
+    // InternalOCLinEcore.g:13494:1: rule__ReferenceCS__Group_0_1__1 : rule__ReferenceCS__Group_0_1__1__Impl ;
     public final void rule__ReferenceCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13496:1: ( rule__ReferenceCS__Group_0_1__1__Impl )
-            // InternalOCLinEcore.g:13497:2: rule__ReferenceCS__Group_0_1__1__Impl
+            // InternalOCLinEcore.g:13498:1: ( rule__ReferenceCS__Group_0_1__1__Impl )
+            // InternalOCLinEcore.g:13499:2: rule__ReferenceCS__Group_0_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_0_1__1__Impl();
@@ -42261,22 +42261,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_0_1__1__Impl"
-    // InternalOCLinEcore.g:13503:1: rule__ReferenceCS__Group_0_1__1__Impl : ( ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )? ) ;
+    // InternalOCLinEcore.g:13505:1: rule__ReferenceCS__Group_0_1__1__Impl : ( ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )? ) ;
     public final void rule__ReferenceCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13507:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )? ) )
-            // InternalOCLinEcore.g:13508:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )? )
+            // InternalOCLinEcore.g:13509:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )? ) )
+            // InternalOCLinEcore.g:13510:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )? )
             {
-            // InternalOCLinEcore.g:13508:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )? )
-            // InternalOCLinEcore.g:13509:1: ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )?
+            // InternalOCLinEcore.g:13510:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )? )
+            // InternalOCLinEcore.g:13511:1: ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_1_1());
             }
-            // InternalOCLinEcore.g:13510:1: ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )?
+            // InternalOCLinEcore.g:13512:1: ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )?
             int alt160=2;
             int LA160_0 = input.LA(1);
 
@@ -42285,7 +42285,7 @@
             }
             switch (alt160) {
                 case 1 :
-                    // InternalOCLinEcore.g:13510:2: rule__ReferenceCS__QualifiersAssignment_0_1_1
+                    // InternalOCLinEcore.g:13512:2: rule__ReferenceCS__QualifiersAssignment_0_1_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__QualifiersAssignment_0_1_1();
@@ -42323,14 +42323,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_3__0"
-    // InternalOCLinEcore.g:13524:1: rule__ReferenceCS__Group_3__0 : rule__ReferenceCS__Group_3__0__Impl rule__ReferenceCS__Group_3__1 ;
+    // InternalOCLinEcore.g:13526:1: rule__ReferenceCS__Group_3__0 : rule__ReferenceCS__Group_3__0__Impl rule__ReferenceCS__Group_3__1 ;
     public final void rule__ReferenceCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13528:1: ( rule__ReferenceCS__Group_3__0__Impl rule__ReferenceCS__Group_3__1 )
-            // InternalOCLinEcore.g:13529:2: rule__ReferenceCS__Group_3__0__Impl rule__ReferenceCS__Group_3__1
+            // InternalOCLinEcore.g:13530:1: ( rule__ReferenceCS__Group_3__0__Impl rule__ReferenceCS__Group_3__1 )
+            // InternalOCLinEcore.g:13531:2: rule__ReferenceCS__Group_3__0__Impl rule__ReferenceCS__Group_3__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__ReferenceCS__Group_3__0__Impl();
@@ -42361,17 +42361,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_3__0__Impl"
-    // InternalOCLinEcore.g:13536:1: rule__ReferenceCS__Group_3__0__Impl : ( '#' ) ;
+    // InternalOCLinEcore.g:13538:1: rule__ReferenceCS__Group_3__0__Impl : ( '#' ) ;
     public final void rule__ReferenceCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13540:1: ( ( '#' ) )
-            // InternalOCLinEcore.g:13541:1: ( '#' )
+            // InternalOCLinEcore.g:13542:1: ( ( '#' ) )
+            // InternalOCLinEcore.g:13543:1: ( '#' )
             {
-            // InternalOCLinEcore.g:13541:1: ( '#' )
-            // InternalOCLinEcore.g:13542:1: '#'
+            // InternalOCLinEcore.g:13543:1: ( '#' )
+            // InternalOCLinEcore.g:13544:1: '#'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getNumberSignKeyword_3_0());
@@ -42402,14 +42402,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_3__1"
-    // InternalOCLinEcore.g:13555:1: rule__ReferenceCS__Group_3__1 : rule__ReferenceCS__Group_3__1__Impl ;
+    // InternalOCLinEcore.g:13557:1: rule__ReferenceCS__Group_3__1 : rule__ReferenceCS__Group_3__1__Impl ;
     public final void rule__ReferenceCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13559:1: ( rule__ReferenceCS__Group_3__1__Impl )
-            // InternalOCLinEcore.g:13560:2: rule__ReferenceCS__Group_3__1__Impl
+            // InternalOCLinEcore.g:13561:1: ( rule__ReferenceCS__Group_3__1__Impl )
+            // InternalOCLinEcore.g:13562:2: rule__ReferenceCS__Group_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_3__1__Impl();
@@ -42435,23 +42435,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_3__1__Impl"
-    // InternalOCLinEcore.g:13566:1: rule__ReferenceCS__Group_3__1__Impl : ( ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 ) ) ;
+    // InternalOCLinEcore.g:13568:1: rule__ReferenceCS__Group_3__1__Impl : ( ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 ) ) ;
     public final void rule__ReferenceCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13570:1: ( ( ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 ) ) )
-            // InternalOCLinEcore.g:13571:1: ( ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 ) )
+            // InternalOCLinEcore.g:13572:1: ( ( ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 ) ) )
+            // InternalOCLinEcore.g:13573:1: ( ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 ) )
             {
-            // InternalOCLinEcore.g:13571:1: ( ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 ) )
-            // InternalOCLinEcore.g:13572:1: ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 )
+            // InternalOCLinEcore.g:13573:1: ( ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 ) )
+            // InternalOCLinEcore.g:13574:1: ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getReferredOppositeAssignment_3_1());
             }
-            // InternalOCLinEcore.g:13573:1: ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 )
-            // InternalOCLinEcore.g:13573:2: rule__ReferenceCS__ReferredOppositeAssignment_3_1
+            // InternalOCLinEcore.g:13575:1: ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 )
+            // InternalOCLinEcore.g:13575:2: rule__ReferenceCS__ReferredOppositeAssignment_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__ReferredOppositeAssignment_3_1();
@@ -42486,14 +42486,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_4__0"
-    // InternalOCLinEcore.g:13587:1: rule__ReferenceCS__Group_4__0 : rule__ReferenceCS__Group_4__0__Impl rule__ReferenceCS__Group_4__1 ;
+    // InternalOCLinEcore.g:13589:1: rule__ReferenceCS__Group_4__0 : rule__ReferenceCS__Group_4__0__Impl rule__ReferenceCS__Group_4__1 ;
     public final void rule__ReferenceCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13591:1: ( rule__ReferenceCS__Group_4__0__Impl rule__ReferenceCS__Group_4__1 )
-            // InternalOCLinEcore.g:13592:2: rule__ReferenceCS__Group_4__0__Impl rule__ReferenceCS__Group_4__1
+            // InternalOCLinEcore.g:13593:1: ( rule__ReferenceCS__Group_4__0__Impl rule__ReferenceCS__Group_4__1 )
+            // InternalOCLinEcore.g:13594:2: rule__ReferenceCS__Group_4__0__Impl rule__ReferenceCS__Group_4__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__ReferenceCS__Group_4__0__Impl();
@@ -42524,17 +42524,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_4__0__Impl"
-    // InternalOCLinEcore.g:13599:1: rule__ReferenceCS__Group_4__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:13601:1: rule__ReferenceCS__Group_4__0__Impl : ( ':' ) ;
     public final void rule__ReferenceCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13603:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:13604:1: ( ':' )
+            // InternalOCLinEcore.g:13605:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:13606:1: ( ':' )
             {
-            // InternalOCLinEcore.g:13604:1: ( ':' )
-            // InternalOCLinEcore.g:13605:1: ':'
+            // InternalOCLinEcore.g:13606:1: ( ':' )
+            // InternalOCLinEcore.g:13607:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getColonKeyword_4_0());
@@ -42565,14 +42565,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_4__1"
-    // InternalOCLinEcore.g:13618:1: rule__ReferenceCS__Group_4__1 : rule__ReferenceCS__Group_4__1__Impl ;
+    // InternalOCLinEcore.g:13620:1: rule__ReferenceCS__Group_4__1 : rule__ReferenceCS__Group_4__1__Impl ;
     public final void rule__ReferenceCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13622:1: ( rule__ReferenceCS__Group_4__1__Impl )
-            // InternalOCLinEcore.g:13623:2: rule__ReferenceCS__Group_4__1__Impl
+            // InternalOCLinEcore.g:13624:1: ( rule__ReferenceCS__Group_4__1__Impl )
+            // InternalOCLinEcore.g:13625:2: rule__ReferenceCS__Group_4__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_4__1__Impl();
@@ -42598,23 +42598,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_4__1__Impl"
-    // InternalOCLinEcore.g:13629:1: rule__ReferenceCS__Group_4__1__Impl : ( ( rule__ReferenceCS__OwnedTypeAssignment_4_1 ) ) ;
+    // InternalOCLinEcore.g:13631:1: rule__ReferenceCS__Group_4__1__Impl : ( ( rule__ReferenceCS__OwnedTypeAssignment_4_1 ) ) ;
     public final void rule__ReferenceCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13633:1: ( ( ( rule__ReferenceCS__OwnedTypeAssignment_4_1 ) ) )
-            // InternalOCLinEcore.g:13634:1: ( ( rule__ReferenceCS__OwnedTypeAssignment_4_1 ) )
+            // InternalOCLinEcore.g:13635:1: ( ( ( rule__ReferenceCS__OwnedTypeAssignment_4_1 ) ) )
+            // InternalOCLinEcore.g:13636:1: ( ( rule__ReferenceCS__OwnedTypeAssignment_4_1 ) )
             {
-            // InternalOCLinEcore.g:13634:1: ( ( rule__ReferenceCS__OwnedTypeAssignment_4_1 ) )
-            // InternalOCLinEcore.g:13635:1: ( rule__ReferenceCS__OwnedTypeAssignment_4_1 )
+            // InternalOCLinEcore.g:13636:1: ( ( rule__ReferenceCS__OwnedTypeAssignment_4_1 ) )
+            // InternalOCLinEcore.g:13637:1: ( rule__ReferenceCS__OwnedTypeAssignment_4_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getOwnedTypeAssignment_4_1());
             }
-            // InternalOCLinEcore.g:13636:1: ( rule__ReferenceCS__OwnedTypeAssignment_4_1 )
-            // InternalOCLinEcore.g:13636:2: rule__ReferenceCS__OwnedTypeAssignment_4_1
+            // InternalOCLinEcore.g:13638:1: ( rule__ReferenceCS__OwnedTypeAssignment_4_1 )
+            // InternalOCLinEcore.g:13638:2: rule__ReferenceCS__OwnedTypeAssignment_4_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__OwnedTypeAssignment_4_1();
@@ -42649,14 +42649,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_5__0"
-    // InternalOCLinEcore.g:13650:1: rule__ReferenceCS__Group_5__0 : rule__ReferenceCS__Group_5__0__Impl rule__ReferenceCS__Group_5__1 ;
+    // InternalOCLinEcore.g:13652:1: rule__ReferenceCS__Group_5__0 : rule__ReferenceCS__Group_5__0__Impl rule__ReferenceCS__Group_5__1 ;
     public final void rule__ReferenceCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13654:1: ( rule__ReferenceCS__Group_5__0__Impl rule__ReferenceCS__Group_5__1 )
-            // InternalOCLinEcore.g:13655:2: rule__ReferenceCS__Group_5__0__Impl rule__ReferenceCS__Group_5__1
+            // InternalOCLinEcore.g:13656:1: ( rule__ReferenceCS__Group_5__0__Impl rule__ReferenceCS__Group_5__1 )
+            // InternalOCLinEcore.g:13657:2: rule__ReferenceCS__Group_5__0__Impl rule__ReferenceCS__Group_5__1
             {
             pushFollow(FollowSets000.FOLLOW_29);
             rule__ReferenceCS__Group_5__0__Impl();
@@ -42687,17 +42687,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_5__0__Impl"
-    // InternalOCLinEcore.g:13662:1: rule__ReferenceCS__Group_5__0__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:13664:1: rule__ReferenceCS__Group_5__0__Impl : ( '=' ) ;
     public final void rule__ReferenceCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13666:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:13667:1: ( '=' )
+            // InternalOCLinEcore.g:13668:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:13669:1: ( '=' )
             {
-            // InternalOCLinEcore.g:13667:1: ( '=' )
-            // InternalOCLinEcore.g:13668:1: '='
+            // InternalOCLinEcore.g:13669:1: ( '=' )
+            // InternalOCLinEcore.g:13670:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getEqualsSignKeyword_5_0());
@@ -42728,14 +42728,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_5__1"
-    // InternalOCLinEcore.g:13681:1: rule__ReferenceCS__Group_5__1 : rule__ReferenceCS__Group_5__1__Impl ;
+    // InternalOCLinEcore.g:13683:1: rule__ReferenceCS__Group_5__1 : rule__ReferenceCS__Group_5__1__Impl ;
     public final void rule__ReferenceCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13685:1: ( rule__ReferenceCS__Group_5__1__Impl )
-            // InternalOCLinEcore.g:13686:2: rule__ReferenceCS__Group_5__1__Impl
+            // InternalOCLinEcore.g:13687:1: ( rule__ReferenceCS__Group_5__1__Impl )
+            // InternalOCLinEcore.g:13688:2: rule__ReferenceCS__Group_5__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_5__1__Impl();
@@ -42761,23 +42761,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_5__1__Impl"
-    // InternalOCLinEcore.g:13692:1: rule__ReferenceCS__Group_5__1__Impl : ( ( rule__ReferenceCS__DefaultAssignment_5_1 ) ) ;
+    // InternalOCLinEcore.g:13694:1: rule__ReferenceCS__Group_5__1__Impl : ( ( rule__ReferenceCS__DefaultAssignment_5_1 ) ) ;
     public final void rule__ReferenceCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13696:1: ( ( ( rule__ReferenceCS__DefaultAssignment_5_1 ) ) )
-            // InternalOCLinEcore.g:13697:1: ( ( rule__ReferenceCS__DefaultAssignment_5_1 ) )
+            // InternalOCLinEcore.g:13698:1: ( ( ( rule__ReferenceCS__DefaultAssignment_5_1 ) ) )
+            // InternalOCLinEcore.g:13699:1: ( ( rule__ReferenceCS__DefaultAssignment_5_1 ) )
             {
-            // InternalOCLinEcore.g:13697:1: ( ( rule__ReferenceCS__DefaultAssignment_5_1 ) )
-            // InternalOCLinEcore.g:13698:1: ( rule__ReferenceCS__DefaultAssignment_5_1 )
+            // InternalOCLinEcore.g:13699:1: ( ( rule__ReferenceCS__DefaultAssignment_5_1 ) )
+            // InternalOCLinEcore.g:13700:1: ( rule__ReferenceCS__DefaultAssignment_5_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getDefaultAssignment_5_1());
             }
-            // InternalOCLinEcore.g:13699:1: ( rule__ReferenceCS__DefaultAssignment_5_1 )
-            // InternalOCLinEcore.g:13699:2: rule__ReferenceCS__DefaultAssignment_5_1
+            // InternalOCLinEcore.g:13701:1: ( rule__ReferenceCS__DefaultAssignment_5_1 )
+            // InternalOCLinEcore.g:13701:2: rule__ReferenceCS__DefaultAssignment_5_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__DefaultAssignment_5_1();
@@ -42812,14 +42812,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_6__0"
-    // InternalOCLinEcore.g:13713:1: rule__ReferenceCS__Group_6__0 : rule__ReferenceCS__Group_6__0__Impl rule__ReferenceCS__Group_6__1 ;
+    // InternalOCLinEcore.g:13715:1: rule__ReferenceCS__Group_6__0 : rule__ReferenceCS__Group_6__0__Impl rule__ReferenceCS__Group_6__1 ;
     public final void rule__ReferenceCS__Group_6__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13717:1: ( rule__ReferenceCS__Group_6__0__Impl rule__ReferenceCS__Group_6__1 )
-            // InternalOCLinEcore.g:13718:2: rule__ReferenceCS__Group_6__0__Impl rule__ReferenceCS__Group_6__1
+            // InternalOCLinEcore.g:13719:1: ( rule__ReferenceCS__Group_6__0__Impl rule__ReferenceCS__Group_6__1 )
+            // InternalOCLinEcore.g:13720:2: rule__ReferenceCS__Group_6__0__Impl rule__ReferenceCS__Group_6__1
             {
             pushFollow(FollowSets000.FOLLOW_69);
             rule__ReferenceCS__Group_6__0__Impl();
@@ -42850,17 +42850,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_6__0__Impl"
-    // InternalOCLinEcore.g:13725:1: rule__ReferenceCS__Group_6__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:13727:1: rule__ReferenceCS__Group_6__0__Impl : ( '{' ) ;
     public final void rule__ReferenceCS__Group_6__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13729:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:13730:1: ( '{' )
+            // InternalOCLinEcore.g:13731:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:13732:1: ( '{' )
             {
-            // InternalOCLinEcore.g:13730:1: ( '{' )
-            // InternalOCLinEcore.g:13731:1: '{'
+            // InternalOCLinEcore.g:13732:1: ( '{' )
+            // InternalOCLinEcore.g:13733:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_6_0());
@@ -42891,14 +42891,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_6__1"
-    // InternalOCLinEcore.g:13744:1: rule__ReferenceCS__Group_6__1 : rule__ReferenceCS__Group_6__1__Impl rule__ReferenceCS__Group_6__2 ;
+    // InternalOCLinEcore.g:13746:1: rule__ReferenceCS__Group_6__1 : rule__ReferenceCS__Group_6__1__Impl rule__ReferenceCS__Group_6__2 ;
     public final void rule__ReferenceCS__Group_6__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13748:1: ( rule__ReferenceCS__Group_6__1__Impl rule__ReferenceCS__Group_6__2 )
-            // InternalOCLinEcore.g:13749:2: rule__ReferenceCS__Group_6__1__Impl rule__ReferenceCS__Group_6__2
+            // InternalOCLinEcore.g:13750:1: ( rule__ReferenceCS__Group_6__1__Impl rule__ReferenceCS__Group_6__2 )
+            // InternalOCLinEcore.g:13751:2: rule__ReferenceCS__Group_6__1__Impl rule__ReferenceCS__Group_6__2
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__ReferenceCS__Group_6__1__Impl();
@@ -42929,26 +42929,26 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_6__1__Impl"
-    // InternalOCLinEcore.g:13756:1: rule__ReferenceCS__Group_6__1__Impl : ( ( ( rule__ReferenceCS__Group_6_1__0 ) ) ( ( rule__ReferenceCS__Group_6_1__0 )* ) ) ;
+    // InternalOCLinEcore.g:13758:1: rule__ReferenceCS__Group_6__1__Impl : ( ( ( rule__ReferenceCS__Group_6_1__0 ) ) ( ( rule__ReferenceCS__Group_6_1__0 )* ) ) ;
     public final void rule__ReferenceCS__Group_6__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13760:1: ( ( ( ( rule__ReferenceCS__Group_6_1__0 ) ) ( ( rule__ReferenceCS__Group_6_1__0 )* ) ) )
-            // InternalOCLinEcore.g:13761:1: ( ( ( rule__ReferenceCS__Group_6_1__0 ) ) ( ( rule__ReferenceCS__Group_6_1__0 )* ) )
+            // InternalOCLinEcore.g:13762:1: ( ( ( ( rule__ReferenceCS__Group_6_1__0 ) ) ( ( rule__ReferenceCS__Group_6_1__0 )* ) ) )
+            // InternalOCLinEcore.g:13763:1: ( ( ( rule__ReferenceCS__Group_6_1__0 ) ) ( ( rule__ReferenceCS__Group_6_1__0 )* ) )
             {
-            // InternalOCLinEcore.g:13761:1: ( ( ( rule__ReferenceCS__Group_6_1__0 ) ) ( ( rule__ReferenceCS__Group_6_1__0 )* ) )
-            // InternalOCLinEcore.g:13762:1: ( ( rule__ReferenceCS__Group_6_1__0 ) ) ( ( rule__ReferenceCS__Group_6_1__0 )* )
+            // InternalOCLinEcore.g:13763:1: ( ( ( rule__ReferenceCS__Group_6_1__0 ) ) ( ( rule__ReferenceCS__Group_6_1__0 )* ) )
+            // InternalOCLinEcore.g:13764:1: ( ( rule__ReferenceCS__Group_6_1__0 ) ) ( ( rule__ReferenceCS__Group_6_1__0 )* )
             {
-            // InternalOCLinEcore.g:13762:1: ( ( rule__ReferenceCS__Group_6_1__0 ) )
-            // InternalOCLinEcore.g:13763:1: ( rule__ReferenceCS__Group_6_1__0 )
+            // InternalOCLinEcore.g:13764:1: ( ( rule__ReferenceCS__Group_6_1__0 ) )
+            // InternalOCLinEcore.g:13765:1: ( rule__ReferenceCS__Group_6_1__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getGroup_6_1());
             }
-            // InternalOCLinEcore.g:13764:1: ( rule__ReferenceCS__Group_6_1__0 )
-            // InternalOCLinEcore.g:13764:2: rule__ReferenceCS__Group_6_1__0
+            // InternalOCLinEcore.g:13766:1: ( rule__ReferenceCS__Group_6_1__0 )
+            // InternalOCLinEcore.g:13766:2: rule__ReferenceCS__Group_6_1__0
             {
             pushFollow(FollowSets000.FOLLOW_70);
             rule__ReferenceCS__Group_6_1__0();
@@ -42964,13 +42964,13 @@
 
             }
 
-            // InternalOCLinEcore.g:13767:1: ( ( rule__ReferenceCS__Group_6_1__0 )* )
-            // InternalOCLinEcore.g:13768:1: ( rule__ReferenceCS__Group_6_1__0 )*
+            // InternalOCLinEcore.g:13769:1: ( ( rule__ReferenceCS__Group_6_1__0 )* )
+            // InternalOCLinEcore.g:13770:1: ( rule__ReferenceCS__Group_6_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getGroup_6_1());
             }
-            // InternalOCLinEcore.g:13769:1: ( rule__ReferenceCS__Group_6_1__0 )*
+            // InternalOCLinEcore.g:13771:1: ( rule__ReferenceCS__Group_6_1__0 )*
             loop161:
             do {
                 int alt161=2;
@@ -42983,7 +42983,7 @@
 
                 switch (alt161) {
             	case 1 :
-            	    // InternalOCLinEcore.g:13769:2: rule__ReferenceCS__Group_6_1__0
+            	    // InternalOCLinEcore.g:13771:2: rule__ReferenceCS__Group_6_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_70);
             	    rule__ReferenceCS__Group_6_1__0();
@@ -43027,14 +43027,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_6__2"
-    // InternalOCLinEcore.g:13780:1: rule__ReferenceCS__Group_6__2 : rule__ReferenceCS__Group_6__2__Impl ;
+    // InternalOCLinEcore.g:13782:1: rule__ReferenceCS__Group_6__2 : rule__ReferenceCS__Group_6__2__Impl ;
     public final void rule__ReferenceCS__Group_6__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13784:1: ( rule__ReferenceCS__Group_6__2__Impl )
-            // InternalOCLinEcore.g:13785:2: rule__ReferenceCS__Group_6__2__Impl
+            // InternalOCLinEcore.g:13786:1: ( rule__ReferenceCS__Group_6__2__Impl )
+            // InternalOCLinEcore.g:13787:2: rule__ReferenceCS__Group_6__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_6__2__Impl();
@@ -43060,17 +43060,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_6__2__Impl"
-    // InternalOCLinEcore.g:13791:1: rule__ReferenceCS__Group_6__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:13793:1: rule__ReferenceCS__Group_6__2__Impl : ( '}' ) ;
     public final void rule__ReferenceCS__Group_6__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13795:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:13796:1: ( '}' )
+            // InternalOCLinEcore.g:13797:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:13798:1: ( '}' )
             {
-            // InternalOCLinEcore.g:13796:1: ( '}' )
-            // InternalOCLinEcore.g:13797:1: '}'
+            // InternalOCLinEcore.g:13798:1: ( '}' )
+            // InternalOCLinEcore.g:13799:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_6_2());
@@ -43101,14 +43101,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_6_1__0"
-    // InternalOCLinEcore.g:13816:1: rule__ReferenceCS__Group_6_1__0 : rule__ReferenceCS__Group_6_1__0__Impl rule__ReferenceCS__Group_6_1__1 ;
+    // InternalOCLinEcore.g:13818:1: rule__ReferenceCS__Group_6_1__0 : rule__ReferenceCS__Group_6_1__0__Impl rule__ReferenceCS__Group_6_1__1 ;
     public final void rule__ReferenceCS__Group_6_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13820:1: ( rule__ReferenceCS__Group_6_1__0__Impl rule__ReferenceCS__Group_6_1__1 )
-            // InternalOCLinEcore.g:13821:2: rule__ReferenceCS__Group_6_1__0__Impl rule__ReferenceCS__Group_6_1__1
+            // InternalOCLinEcore.g:13822:1: ( rule__ReferenceCS__Group_6_1__0__Impl rule__ReferenceCS__Group_6_1__1 )
+            // InternalOCLinEcore.g:13823:2: rule__ReferenceCS__Group_6_1__0__Impl rule__ReferenceCS__Group_6_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__ReferenceCS__Group_6_1__0__Impl();
@@ -43139,23 +43139,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_6_1__0__Impl"
-    // InternalOCLinEcore.g:13828:1: rule__ReferenceCS__Group_6_1__0__Impl : ( ( rule__ReferenceCS__Alternatives_6_1_0 ) ) ;
+    // InternalOCLinEcore.g:13830:1: rule__ReferenceCS__Group_6_1__0__Impl : ( ( rule__ReferenceCS__Alternatives_6_1_0 ) ) ;
     public final void rule__ReferenceCS__Group_6_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13832:1: ( ( ( rule__ReferenceCS__Alternatives_6_1_0 ) ) )
-            // InternalOCLinEcore.g:13833:1: ( ( rule__ReferenceCS__Alternatives_6_1_0 ) )
+            // InternalOCLinEcore.g:13834:1: ( ( ( rule__ReferenceCS__Alternatives_6_1_0 ) ) )
+            // InternalOCLinEcore.g:13835:1: ( ( rule__ReferenceCS__Alternatives_6_1_0 ) )
             {
-            // InternalOCLinEcore.g:13833:1: ( ( rule__ReferenceCS__Alternatives_6_1_0 ) )
-            // InternalOCLinEcore.g:13834:1: ( rule__ReferenceCS__Alternatives_6_1_0 )
+            // InternalOCLinEcore.g:13835:1: ( ( rule__ReferenceCS__Alternatives_6_1_0 ) )
+            // InternalOCLinEcore.g:13836:1: ( rule__ReferenceCS__Alternatives_6_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getAlternatives_6_1_0());
             }
-            // InternalOCLinEcore.g:13835:1: ( rule__ReferenceCS__Alternatives_6_1_0 )
-            // InternalOCLinEcore.g:13835:2: rule__ReferenceCS__Alternatives_6_1_0
+            // InternalOCLinEcore.g:13837:1: ( rule__ReferenceCS__Alternatives_6_1_0 )
+            // InternalOCLinEcore.g:13837:2: rule__ReferenceCS__Alternatives_6_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Alternatives_6_1_0();
@@ -43190,14 +43190,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_6_1__1"
-    // InternalOCLinEcore.g:13845:1: rule__ReferenceCS__Group_6_1__1 : rule__ReferenceCS__Group_6_1__1__Impl ;
+    // InternalOCLinEcore.g:13847:1: rule__ReferenceCS__Group_6_1__1 : rule__ReferenceCS__Group_6_1__1__Impl ;
     public final void rule__ReferenceCS__Group_6_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13849:1: ( rule__ReferenceCS__Group_6_1__1__Impl )
-            // InternalOCLinEcore.g:13850:2: rule__ReferenceCS__Group_6_1__1__Impl
+            // InternalOCLinEcore.g:13851:1: ( rule__ReferenceCS__Group_6_1__1__Impl )
+            // InternalOCLinEcore.g:13852:2: rule__ReferenceCS__Group_6_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_6_1__1__Impl();
@@ -43223,22 +43223,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_6_1__1__Impl"
-    // InternalOCLinEcore.g:13856:1: rule__ReferenceCS__Group_6_1__1__Impl : ( ( ',' )? ) ;
+    // InternalOCLinEcore.g:13858:1: rule__ReferenceCS__Group_6_1__1__Impl : ( ( ',' )? ) ;
     public final void rule__ReferenceCS__Group_6_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13860:1: ( ( ( ',' )? ) )
-            // InternalOCLinEcore.g:13861:1: ( ( ',' )? )
+            // InternalOCLinEcore.g:13862:1: ( ( ( ',' )? ) )
+            // InternalOCLinEcore.g:13863:1: ( ( ',' )? )
             {
-            // InternalOCLinEcore.g:13861:1: ( ( ',' )? )
-            // InternalOCLinEcore.g:13862:1: ( ',' )?
+            // InternalOCLinEcore.g:13863:1: ( ( ',' )? )
+            // InternalOCLinEcore.g:13864:1: ( ',' )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getCommaKeyword_6_1_1());
             }
-            // InternalOCLinEcore.g:13863:1: ( ',' )?
+            // InternalOCLinEcore.g:13865:1: ( ',' )?
             int alt162=2;
             int LA162_0 = input.LA(1);
 
@@ -43247,7 +43247,7 @@
             }
             switch (alt162) {
                 case 1 :
-                    // InternalOCLinEcore.g:13864:2: ','
+                    // InternalOCLinEcore.g:13866:2: ','
                     {
                     match(input,105,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -43281,14 +43281,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0__0"
-    // InternalOCLinEcore.g:13879:1: rule__ReferenceCS__Group_7_0__0 : rule__ReferenceCS__Group_7_0__0__Impl rule__ReferenceCS__Group_7_0__1 ;
+    // InternalOCLinEcore.g:13881:1: rule__ReferenceCS__Group_7_0__0 : rule__ReferenceCS__Group_7_0__0__Impl rule__ReferenceCS__Group_7_0__1 ;
     public final void rule__ReferenceCS__Group_7_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13883:1: ( rule__ReferenceCS__Group_7_0__0__Impl rule__ReferenceCS__Group_7_0__1 )
-            // InternalOCLinEcore.g:13884:2: rule__ReferenceCS__Group_7_0__0__Impl rule__ReferenceCS__Group_7_0__1
+            // InternalOCLinEcore.g:13885:1: ( rule__ReferenceCS__Group_7_0__0__Impl rule__ReferenceCS__Group_7_0__1 )
+            // InternalOCLinEcore.g:13886:2: rule__ReferenceCS__Group_7_0__0__Impl rule__ReferenceCS__Group_7_0__1
             {
             pushFollow(FollowSets000.FOLLOW_71);
             rule__ReferenceCS__Group_7_0__0__Impl();
@@ -43319,17 +43319,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0__0__Impl"
-    // InternalOCLinEcore.g:13891:1: rule__ReferenceCS__Group_7_0__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:13893:1: rule__ReferenceCS__Group_7_0__0__Impl : ( '{' ) ;
     public final void rule__ReferenceCS__Group_7_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13895:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:13896:1: ( '{' )
+            // InternalOCLinEcore.g:13897:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:13898:1: ( '{' )
             {
-            // InternalOCLinEcore.g:13896:1: ( '{' )
-            // InternalOCLinEcore.g:13897:1: '{'
+            // InternalOCLinEcore.g:13898:1: ( '{' )
+            // InternalOCLinEcore.g:13899:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_7_0_0());
@@ -43360,14 +43360,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0__1"
-    // InternalOCLinEcore.g:13910:1: rule__ReferenceCS__Group_7_0__1 : rule__ReferenceCS__Group_7_0__1__Impl rule__ReferenceCS__Group_7_0__2 ;
+    // InternalOCLinEcore.g:13912:1: rule__ReferenceCS__Group_7_0__1 : rule__ReferenceCS__Group_7_0__1__Impl rule__ReferenceCS__Group_7_0__2 ;
     public final void rule__ReferenceCS__Group_7_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13914:1: ( rule__ReferenceCS__Group_7_0__1__Impl rule__ReferenceCS__Group_7_0__2 )
-            // InternalOCLinEcore.g:13915:2: rule__ReferenceCS__Group_7_0__1__Impl rule__ReferenceCS__Group_7_0__2
+            // InternalOCLinEcore.g:13916:1: ( rule__ReferenceCS__Group_7_0__1__Impl rule__ReferenceCS__Group_7_0__2 )
+            // InternalOCLinEcore.g:13917:2: rule__ReferenceCS__Group_7_0__1__Impl rule__ReferenceCS__Group_7_0__2
             {
             pushFollow(FollowSets000.FOLLOW_71);
             rule__ReferenceCS__Group_7_0__1__Impl();
@@ -43398,22 +43398,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0__1__Impl"
-    // InternalOCLinEcore.g:13922:1: rule__ReferenceCS__Group_7_0__1__Impl : ( ( rule__ReferenceCS__Alternatives_7_0_1 )* ) ;
+    // InternalOCLinEcore.g:13924:1: rule__ReferenceCS__Group_7_0__1__Impl : ( ( rule__ReferenceCS__Alternatives_7_0_1 )* ) ;
     public final void rule__ReferenceCS__Group_7_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13926:1: ( ( ( rule__ReferenceCS__Alternatives_7_0_1 )* ) )
-            // InternalOCLinEcore.g:13927:1: ( ( rule__ReferenceCS__Alternatives_7_0_1 )* )
+            // InternalOCLinEcore.g:13928:1: ( ( ( rule__ReferenceCS__Alternatives_7_0_1 )* ) )
+            // InternalOCLinEcore.g:13929:1: ( ( rule__ReferenceCS__Alternatives_7_0_1 )* )
             {
-            // InternalOCLinEcore.g:13927:1: ( ( rule__ReferenceCS__Alternatives_7_0_1 )* )
-            // InternalOCLinEcore.g:13928:1: ( rule__ReferenceCS__Alternatives_7_0_1 )*
+            // InternalOCLinEcore.g:13929:1: ( ( rule__ReferenceCS__Alternatives_7_0_1 )* )
+            // InternalOCLinEcore.g:13930:1: ( rule__ReferenceCS__Alternatives_7_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getAlternatives_7_0_1());
             }
-            // InternalOCLinEcore.g:13929:1: ( rule__ReferenceCS__Alternatives_7_0_1 )*
+            // InternalOCLinEcore.g:13931:1: ( rule__ReferenceCS__Alternatives_7_0_1 )*
             loop163:
             do {
                 int alt163=2;
@@ -43426,7 +43426,7 @@
 
                 switch (alt163) {
             	case 1 :
-            	    // InternalOCLinEcore.g:13929:2: rule__ReferenceCS__Alternatives_7_0_1
+            	    // InternalOCLinEcore.g:13931:2: rule__ReferenceCS__Alternatives_7_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_72);
             	    rule__ReferenceCS__Alternatives_7_0_1();
@@ -43467,14 +43467,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0__2"
-    // InternalOCLinEcore.g:13939:1: rule__ReferenceCS__Group_7_0__2 : rule__ReferenceCS__Group_7_0__2__Impl ;
+    // InternalOCLinEcore.g:13941:1: rule__ReferenceCS__Group_7_0__2 : rule__ReferenceCS__Group_7_0__2__Impl ;
     public final void rule__ReferenceCS__Group_7_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13943:1: ( rule__ReferenceCS__Group_7_0__2__Impl )
-            // InternalOCLinEcore.g:13944:2: rule__ReferenceCS__Group_7_0__2__Impl
+            // InternalOCLinEcore.g:13945:1: ( rule__ReferenceCS__Group_7_0__2__Impl )
+            // InternalOCLinEcore.g:13946:2: rule__ReferenceCS__Group_7_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_7_0__2__Impl();
@@ -43500,17 +43500,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0__2__Impl"
-    // InternalOCLinEcore.g:13950:1: rule__ReferenceCS__Group_7_0__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:13952:1: rule__ReferenceCS__Group_7_0__2__Impl : ( '}' ) ;
     public final void rule__ReferenceCS__Group_7_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13954:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:13955:1: ( '}' )
+            // InternalOCLinEcore.g:13956:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:13957:1: ( '}' )
             {
-            // InternalOCLinEcore.g:13955:1: ( '}' )
-            // InternalOCLinEcore.g:13956:1: '}'
+            // InternalOCLinEcore.g:13957:1: ( '}' )
+            // InternalOCLinEcore.g:13958:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_7_0_2());
@@ -43541,14 +43541,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_1__0"
-    // InternalOCLinEcore.g:13975:1: rule__ReferenceCS__Group_7_0_1_1__0 : rule__ReferenceCS__Group_7_0_1_1__0__Impl rule__ReferenceCS__Group_7_0_1_1__1 ;
+    // InternalOCLinEcore.g:13977:1: rule__ReferenceCS__Group_7_0_1_1__0 : rule__ReferenceCS__Group_7_0_1_1__0__Impl rule__ReferenceCS__Group_7_0_1_1__1 ;
     public final void rule__ReferenceCS__Group_7_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13979:1: ( rule__ReferenceCS__Group_7_0_1_1__0__Impl rule__ReferenceCS__Group_7_0_1_1__1 )
-            // InternalOCLinEcore.g:13980:2: rule__ReferenceCS__Group_7_0_1_1__0__Impl rule__ReferenceCS__Group_7_0_1_1__1
+            // InternalOCLinEcore.g:13981:1: ( rule__ReferenceCS__Group_7_0_1_1__0__Impl rule__ReferenceCS__Group_7_0_1_1__1 )
+            // InternalOCLinEcore.g:13982:2: rule__ReferenceCS__Group_7_0_1_1__0__Impl rule__ReferenceCS__Group_7_0_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__ReferenceCS__Group_7_0_1_1__0__Impl();
@@ -43579,17 +43579,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_1__0__Impl"
-    // InternalOCLinEcore.g:13987:1: rule__ReferenceCS__Group_7_0_1_1__0__Impl : ( 'key' ) ;
+    // InternalOCLinEcore.g:13989:1: rule__ReferenceCS__Group_7_0_1_1__0__Impl : ( 'key' ) ;
     public final void rule__ReferenceCS__Group_7_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:13991:1: ( ( 'key' ) )
-            // InternalOCLinEcore.g:13992:1: ( 'key' )
+            // InternalOCLinEcore.g:13993:1: ( ( 'key' ) )
+            // InternalOCLinEcore.g:13994:1: ( 'key' )
             {
-            // InternalOCLinEcore.g:13992:1: ( 'key' )
-            // InternalOCLinEcore.g:13993:1: 'key'
+            // InternalOCLinEcore.g:13994:1: ( 'key' )
+            // InternalOCLinEcore.g:13995:1: 'key'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getKeyKeyword_7_0_1_1_0());
@@ -43620,14 +43620,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_1__1"
-    // InternalOCLinEcore.g:14006:1: rule__ReferenceCS__Group_7_0_1_1__1 : rule__ReferenceCS__Group_7_0_1_1__1__Impl rule__ReferenceCS__Group_7_0_1_1__2 ;
+    // InternalOCLinEcore.g:14008:1: rule__ReferenceCS__Group_7_0_1_1__1 : rule__ReferenceCS__Group_7_0_1_1__1__Impl rule__ReferenceCS__Group_7_0_1_1__2 ;
     public final void rule__ReferenceCS__Group_7_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14010:1: ( rule__ReferenceCS__Group_7_0_1_1__1__Impl rule__ReferenceCS__Group_7_0_1_1__2 )
-            // InternalOCLinEcore.g:14011:2: rule__ReferenceCS__Group_7_0_1_1__1__Impl rule__ReferenceCS__Group_7_0_1_1__2
+            // InternalOCLinEcore.g:14012:1: ( rule__ReferenceCS__Group_7_0_1_1__1__Impl rule__ReferenceCS__Group_7_0_1_1__2 )
+            // InternalOCLinEcore.g:14013:2: rule__ReferenceCS__Group_7_0_1_1__1__Impl rule__ReferenceCS__Group_7_0_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_73);
             rule__ReferenceCS__Group_7_0_1_1__1__Impl();
@@ -43658,23 +43658,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_1__1__Impl"
-    // InternalOCLinEcore.g:14018:1: rule__ReferenceCS__Group_7_0_1_1__1__Impl : ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 ) ) ;
+    // InternalOCLinEcore.g:14020:1: rule__ReferenceCS__Group_7_0_1_1__1__Impl : ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 ) ) ;
     public final void rule__ReferenceCS__Group_7_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14022:1: ( ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 ) ) )
-            // InternalOCLinEcore.g:14023:1: ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 ) )
+            // InternalOCLinEcore.g:14024:1: ( ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 ) ) )
+            // InternalOCLinEcore.g:14025:1: ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 ) )
             {
-            // InternalOCLinEcore.g:14023:1: ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 ) )
-            // InternalOCLinEcore.g:14024:1: ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 )
+            // InternalOCLinEcore.g:14025:1: ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 ) )
+            // InternalOCLinEcore.g:14026:1: ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getReferredKeysAssignment_7_0_1_1_1());
             }
-            // InternalOCLinEcore.g:14025:1: ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 )
-            // InternalOCLinEcore.g:14025:2: rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1
+            // InternalOCLinEcore.g:14027:1: ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 )
+            // InternalOCLinEcore.g:14027:2: rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1();
@@ -43709,14 +43709,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_1__2"
-    // InternalOCLinEcore.g:14035:1: rule__ReferenceCS__Group_7_0_1_1__2 : rule__ReferenceCS__Group_7_0_1_1__2__Impl rule__ReferenceCS__Group_7_0_1_1__3 ;
+    // InternalOCLinEcore.g:14037:1: rule__ReferenceCS__Group_7_0_1_1__2 : rule__ReferenceCS__Group_7_0_1_1__2__Impl rule__ReferenceCS__Group_7_0_1_1__3 ;
     public final void rule__ReferenceCS__Group_7_0_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14039:1: ( rule__ReferenceCS__Group_7_0_1_1__2__Impl rule__ReferenceCS__Group_7_0_1_1__3 )
-            // InternalOCLinEcore.g:14040:2: rule__ReferenceCS__Group_7_0_1_1__2__Impl rule__ReferenceCS__Group_7_0_1_1__3
+            // InternalOCLinEcore.g:14041:1: ( rule__ReferenceCS__Group_7_0_1_1__2__Impl rule__ReferenceCS__Group_7_0_1_1__3 )
+            // InternalOCLinEcore.g:14042:2: rule__ReferenceCS__Group_7_0_1_1__2__Impl rule__ReferenceCS__Group_7_0_1_1__3
             {
             pushFollow(FollowSets000.FOLLOW_73);
             rule__ReferenceCS__Group_7_0_1_1__2__Impl();
@@ -43747,22 +43747,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_1__2__Impl"
-    // InternalOCLinEcore.g:14047:1: rule__ReferenceCS__Group_7_0_1_1__2__Impl : ( ( rule__ReferenceCS__Group_7_0_1_1_2__0 )* ) ;
+    // InternalOCLinEcore.g:14049:1: rule__ReferenceCS__Group_7_0_1_1__2__Impl : ( ( rule__ReferenceCS__Group_7_0_1_1_2__0 )* ) ;
     public final void rule__ReferenceCS__Group_7_0_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14051:1: ( ( ( rule__ReferenceCS__Group_7_0_1_1_2__0 )* ) )
-            // InternalOCLinEcore.g:14052:1: ( ( rule__ReferenceCS__Group_7_0_1_1_2__0 )* )
+            // InternalOCLinEcore.g:14053:1: ( ( ( rule__ReferenceCS__Group_7_0_1_1_2__0 )* ) )
+            // InternalOCLinEcore.g:14054:1: ( ( rule__ReferenceCS__Group_7_0_1_1_2__0 )* )
             {
-            // InternalOCLinEcore.g:14052:1: ( ( rule__ReferenceCS__Group_7_0_1_1_2__0 )* )
-            // InternalOCLinEcore.g:14053:1: ( rule__ReferenceCS__Group_7_0_1_1_2__0 )*
+            // InternalOCLinEcore.g:14054:1: ( ( rule__ReferenceCS__Group_7_0_1_1_2__0 )* )
+            // InternalOCLinEcore.g:14055:1: ( rule__ReferenceCS__Group_7_0_1_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_1_2());
             }
-            // InternalOCLinEcore.g:14054:1: ( rule__ReferenceCS__Group_7_0_1_1_2__0 )*
+            // InternalOCLinEcore.g:14056:1: ( rule__ReferenceCS__Group_7_0_1_1_2__0 )*
             loop164:
             do {
                 int alt164=2;
@@ -43775,7 +43775,7 @@
 
                 switch (alt164) {
             	case 1 :
-            	    // InternalOCLinEcore.g:14054:2: rule__ReferenceCS__Group_7_0_1_1_2__0
+            	    // InternalOCLinEcore.g:14056:2: rule__ReferenceCS__Group_7_0_1_1_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__ReferenceCS__Group_7_0_1_1_2__0();
@@ -43816,14 +43816,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_1__3"
-    // InternalOCLinEcore.g:14064:1: rule__ReferenceCS__Group_7_0_1_1__3 : rule__ReferenceCS__Group_7_0_1_1__3__Impl ;
+    // InternalOCLinEcore.g:14066:1: rule__ReferenceCS__Group_7_0_1_1__3 : rule__ReferenceCS__Group_7_0_1_1__3__Impl ;
     public final void rule__ReferenceCS__Group_7_0_1_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14068:1: ( rule__ReferenceCS__Group_7_0_1_1__3__Impl )
-            // InternalOCLinEcore.g:14069:2: rule__ReferenceCS__Group_7_0_1_1__3__Impl
+            // InternalOCLinEcore.g:14070:1: ( rule__ReferenceCS__Group_7_0_1_1__3__Impl )
+            // InternalOCLinEcore.g:14071:2: rule__ReferenceCS__Group_7_0_1_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_7_0_1_1__3__Impl();
@@ -43849,17 +43849,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_1__3__Impl"
-    // InternalOCLinEcore.g:14075:1: rule__ReferenceCS__Group_7_0_1_1__3__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:14077:1: rule__ReferenceCS__Group_7_0_1_1__3__Impl : ( ';' ) ;
     public final void rule__ReferenceCS__Group_7_0_1_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14079:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:14080:1: ( ';' )
+            // InternalOCLinEcore.g:14081:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:14082:1: ( ';' )
             {
-            // InternalOCLinEcore.g:14080:1: ( ';' )
-            // InternalOCLinEcore.g:14081:1: ';'
+            // InternalOCLinEcore.g:14082:1: ( ';' )
+            // InternalOCLinEcore.g:14083:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_1_3());
@@ -43890,14 +43890,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_1_2__0"
-    // InternalOCLinEcore.g:14102:1: rule__ReferenceCS__Group_7_0_1_1_2__0 : rule__ReferenceCS__Group_7_0_1_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_1_2__1 ;
+    // InternalOCLinEcore.g:14104:1: rule__ReferenceCS__Group_7_0_1_1_2__0 : rule__ReferenceCS__Group_7_0_1_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_1_2__1 ;
     public final void rule__ReferenceCS__Group_7_0_1_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14106:1: ( rule__ReferenceCS__Group_7_0_1_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_1_2__1 )
-            // InternalOCLinEcore.g:14107:2: rule__ReferenceCS__Group_7_0_1_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_1_2__1
+            // InternalOCLinEcore.g:14108:1: ( rule__ReferenceCS__Group_7_0_1_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_1_2__1 )
+            // InternalOCLinEcore.g:14109:2: rule__ReferenceCS__Group_7_0_1_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__ReferenceCS__Group_7_0_1_1_2__0__Impl();
@@ -43928,17 +43928,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_1_2__0__Impl"
-    // InternalOCLinEcore.g:14114:1: rule__ReferenceCS__Group_7_0_1_1_2__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:14116:1: rule__ReferenceCS__Group_7_0_1_1_2__0__Impl : ( ',' ) ;
     public final void rule__ReferenceCS__Group_7_0_1_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14118:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:14119:1: ( ',' )
+            // InternalOCLinEcore.g:14120:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:14121:1: ( ',' )
             {
-            // InternalOCLinEcore.g:14119:1: ( ',' )
-            // InternalOCLinEcore.g:14120:1: ','
+            // InternalOCLinEcore.g:14121:1: ( ',' )
+            // InternalOCLinEcore.g:14122:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getCommaKeyword_7_0_1_1_2_0());
@@ -43969,14 +43969,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_1_2__1"
-    // InternalOCLinEcore.g:14133:1: rule__ReferenceCS__Group_7_0_1_1_2__1 : rule__ReferenceCS__Group_7_0_1_1_2__1__Impl ;
+    // InternalOCLinEcore.g:14135:1: rule__ReferenceCS__Group_7_0_1_1_2__1 : rule__ReferenceCS__Group_7_0_1_1_2__1__Impl ;
     public final void rule__ReferenceCS__Group_7_0_1_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14137:1: ( rule__ReferenceCS__Group_7_0_1_1_2__1__Impl )
-            // InternalOCLinEcore.g:14138:2: rule__ReferenceCS__Group_7_0_1_1_2__1__Impl
+            // InternalOCLinEcore.g:14139:1: ( rule__ReferenceCS__Group_7_0_1_1_2__1__Impl )
+            // InternalOCLinEcore.g:14140:2: rule__ReferenceCS__Group_7_0_1_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_7_0_1_1_2__1__Impl();
@@ -44002,23 +44002,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_1_2__1__Impl"
-    // InternalOCLinEcore.g:14144:1: rule__ReferenceCS__Group_7_0_1_1_2__1__Impl : ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 ) ) ;
+    // InternalOCLinEcore.g:14146:1: rule__ReferenceCS__Group_7_0_1_1_2__1__Impl : ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 ) ) ;
     public final void rule__ReferenceCS__Group_7_0_1_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14148:1: ( ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 ) ) )
-            // InternalOCLinEcore.g:14149:1: ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 ) )
+            // InternalOCLinEcore.g:14150:1: ( ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 ) ) )
+            // InternalOCLinEcore.g:14151:1: ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 ) )
             {
-            // InternalOCLinEcore.g:14149:1: ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 ) )
-            // InternalOCLinEcore.g:14150:1: ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 )
+            // InternalOCLinEcore.g:14151:1: ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 ) )
+            // InternalOCLinEcore.g:14152:1: ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getReferredKeysAssignment_7_0_1_1_2_1());
             }
-            // InternalOCLinEcore.g:14151:1: ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 )
-            // InternalOCLinEcore.g:14151:2: rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1
+            // InternalOCLinEcore.g:14153:1: ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 )
+            // InternalOCLinEcore.g:14153:2: rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1();
@@ -44053,14 +44053,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_2__0"
-    // InternalOCLinEcore.g:14165:1: rule__ReferenceCS__Group_7_0_1_2__0 : rule__ReferenceCS__Group_7_0_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_2__1 ;
+    // InternalOCLinEcore.g:14167:1: rule__ReferenceCS__Group_7_0_1_2__0 : rule__ReferenceCS__Group_7_0_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_2__1 ;
     public final void rule__ReferenceCS__Group_7_0_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14169:1: ( rule__ReferenceCS__Group_7_0_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_2__1 )
-            // InternalOCLinEcore.g:14170:2: rule__ReferenceCS__Group_7_0_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_2__1
+            // InternalOCLinEcore.g:14171:1: ( rule__ReferenceCS__Group_7_0_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_2__1 )
+            // InternalOCLinEcore.g:14172:2: rule__ReferenceCS__Group_7_0_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__ReferenceCS__Group_7_0_1_2__0__Impl();
@@ -44091,17 +44091,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_2__0__Impl"
-    // InternalOCLinEcore.g:14177:1: rule__ReferenceCS__Group_7_0_1_2__0__Impl : ( 'initial' ) ;
+    // InternalOCLinEcore.g:14179:1: rule__ReferenceCS__Group_7_0_1_2__0__Impl : ( 'initial' ) ;
     public final void rule__ReferenceCS__Group_7_0_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14181:1: ( ( 'initial' ) )
-            // InternalOCLinEcore.g:14182:1: ( 'initial' )
+            // InternalOCLinEcore.g:14183:1: ( ( 'initial' ) )
+            // InternalOCLinEcore.g:14184:1: ( 'initial' )
             {
-            // InternalOCLinEcore.g:14182:1: ( 'initial' )
-            // InternalOCLinEcore.g:14183:1: 'initial'
+            // InternalOCLinEcore.g:14184:1: ( 'initial' )
+            // InternalOCLinEcore.g:14185:1: 'initial'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getInitialKeyword_7_0_1_2_0());
@@ -44132,14 +44132,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_2__1"
-    // InternalOCLinEcore.g:14196:1: rule__ReferenceCS__Group_7_0_1_2__1 : rule__ReferenceCS__Group_7_0_1_2__1__Impl rule__ReferenceCS__Group_7_0_1_2__2 ;
+    // InternalOCLinEcore.g:14198:1: rule__ReferenceCS__Group_7_0_1_2__1 : rule__ReferenceCS__Group_7_0_1_2__1__Impl rule__ReferenceCS__Group_7_0_1_2__2 ;
     public final void rule__ReferenceCS__Group_7_0_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14200:1: ( rule__ReferenceCS__Group_7_0_1_2__1__Impl rule__ReferenceCS__Group_7_0_1_2__2 )
-            // InternalOCLinEcore.g:14201:2: rule__ReferenceCS__Group_7_0_1_2__1__Impl rule__ReferenceCS__Group_7_0_1_2__2
+            // InternalOCLinEcore.g:14202:1: ( rule__ReferenceCS__Group_7_0_1_2__1__Impl rule__ReferenceCS__Group_7_0_1_2__2 )
+            // InternalOCLinEcore.g:14203:2: rule__ReferenceCS__Group_7_0_1_2__1__Impl rule__ReferenceCS__Group_7_0_1_2__2
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__ReferenceCS__Group_7_0_1_2__1__Impl();
@@ -44170,22 +44170,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_2__1__Impl"
-    // InternalOCLinEcore.g:14208:1: rule__ReferenceCS__Group_7_0_1_2__1__Impl : ( ( ruleUnrestrictedName )? ) ;
+    // InternalOCLinEcore.g:14210:1: rule__ReferenceCS__Group_7_0_1_2__1__Impl : ( ( ruleUnrestrictedName )? ) ;
     public final void rule__ReferenceCS__Group_7_0_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14212:1: ( ( ( ruleUnrestrictedName )? ) )
-            // InternalOCLinEcore.g:14213:1: ( ( ruleUnrestrictedName )? )
+            // InternalOCLinEcore.g:14214:1: ( ( ( ruleUnrestrictedName )? ) )
+            // InternalOCLinEcore.g:14215:1: ( ( ruleUnrestrictedName )? )
             {
-            // InternalOCLinEcore.g:14213:1: ( ( ruleUnrestrictedName )? )
-            // InternalOCLinEcore.g:14214:1: ( ruleUnrestrictedName )?
+            // InternalOCLinEcore.g:14215:1: ( ( ruleUnrestrictedName )? )
+            // InternalOCLinEcore.g:14216:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_2_1());
             }
-            // InternalOCLinEcore.g:14215:1: ( ruleUnrestrictedName )?
+            // InternalOCLinEcore.g:14217:1: ( ruleUnrestrictedName )?
             int alt165=2;
             int LA165_0 = input.LA(1);
 
@@ -44194,7 +44194,7 @@
             }
             switch (alt165) {
                 case 1 :
-                    // InternalOCLinEcore.g:14215:3: ruleUnrestrictedName
+                    // InternalOCLinEcore.g:14217:3: ruleUnrestrictedName
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -44232,14 +44232,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_2__2"
-    // InternalOCLinEcore.g:14225:1: rule__ReferenceCS__Group_7_0_1_2__2 : rule__ReferenceCS__Group_7_0_1_2__2__Impl rule__ReferenceCS__Group_7_0_1_2__3 ;
+    // InternalOCLinEcore.g:14227:1: rule__ReferenceCS__Group_7_0_1_2__2 : rule__ReferenceCS__Group_7_0_1_2__2__Impl rule__ReferenceCS__Group_7_0_1_2__3 ;
     public final void rule__ReferenceCS__Group_7_0_1_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14229:1: ( rule__ReferenceCS__Group_7_0_1_2__2__Impl rule__ReferenceCS__Group_7_0_1_2__3 )
-            // InternalOCLinEcore.g:14230:2: rule__ReferenceCS__Group_7_0_1_2__2__Impl rule__ReferenceCS__Group_7_0_1_2__3
+            // InternalOCLinEcore.g:14231:1: ( rule__ReferenceCS__Group_7_0_1_2__2__Impl rule__ReferenceCS__Group_7_0_1_2__3 )
+            // InternalOCLinEcore.g:14232:2: rule__ReferenceCS__Group_7_0_1_2__2__Impl rule__ReferenceCS__Group_7_0_1_2__3
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__ReferenceCS__Group_7_0_1_2__2__Impl();
@@ -44270,17 +44270,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_2__2__Impl"
-    // InternalOCLinEcore.g:14237:1: rule__ReferenceCS__Group_7_0_1_2__2__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:14239:1: rule__ReferenceCS__Group_7_0_1_2__2__Impl : ( ':' ) ;
     public final void rule__ReferenceCS__Group_7_0_1_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14241:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:14242:1: ( ':' )
+            // InternalOCLinEcore.g:14243:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:14244:1: ( ':' )
             {
-            // InternalOCLinEcore.g:14242:1: ( ':' )
-            // InternalOCLinEcore.g:14243:1: ':'
+            // InternalOCLinEcore.g:14244:1: ( ':' )
+            // InternalOCLinEcore.g:14245:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_2_2());
@@ -44311,14 +44311,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_2__3"
-    // InternalOCLinEcore.g:14256:1: rule__ReferenceCS__Group_7_0_1_2__3 : rule__ReferenceCS__Group_7_0_1_2__3__Impl rule__ReferenceCS__Group_7_0_1_2__4 ;
+    // InternalOCLinEcore.g:14258:1: rule__ReferenceCS__Group_7_0_1_2__3 : rule__ReferenceCS__Group_7_0_1_2__3__Impl rule__ReferenceCS__Group_7_0_1_2__4 ;
     public final void rule__ReferenceCS__Group_7_0_1_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14260:1: ( rule__ReferenceCS__Group_7_0_1_2__3__Impl rule__ReferenceCS__Group_7_0_1_2__4 )
-            // InternalOCLinEcore.g:14261:2: rule__ReferenceCS__Group_7_0_1_2__3__Impl rule__ReferenceCS__Group_7_0_1_2__4
+            // InternalOCLinEcore.g:14262:1: ( rule__ReferenceCS__Group_7_0_1_2__3__Impl rule__ReferenceCS__Group_7_0_1_2__4 )
+            // InternalOCLinEcore.g:14263:2: rule__ReferenceCS__Group_7_0_1_2__3__Impl rule__ReferenceCS__Group_7_0_1_2__4
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__ReferenceCS__Group_7_0_1_2__3__Impl();
@@ -44349,22 +44349,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_2__3__Impl"
-    // InternalOCLinEcore.g:14268:1: rule__ReferenceCS__Group_7_0_1_2__3__Impl : ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )? ) ;
+    // InternalOCLinEcore.g:14270:1: rule__ReferenceCS__Group_7_0_1_2__3__Impl : ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )? ) ;
     public final void rule__ReferenceCS__Group_7_0_1_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14272:1: ( ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )? ) )
-            // InternalOCLinEcore.g:14273:1: ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )? )
+            // InternalOCLinEcore.g:14274:1: ( ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )? ) )
+            // InternalOCLinEcore.g:14275:1: ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )? )
             {
-            // InternalOCLinEcore.g:14273:1: ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )? )
-            // InternalOCLinEcore.g:14274:1: ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )?
+            // InternalOCLinEcore.g:14275:1: ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )? )
+            // InternalOCLinEcore.g:14276:1: ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsAssignment_7_0_1_2_3());
             }
-            // InternalOCLinEcore.g:14275:1: ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )?
+            // InternalOCLinEcore.g:14277:1: ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )?
             int alt166=2;
             int LA166_0 = input.LA(1);
 
@@ -44373,7 +44373,7 @@
             }
             switch (alt166) {
                 case 1 :
-                    // InternalOCLinEcore.g:14275:2: rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3
+                    // InternalOCLinEcore.g:14277:2: rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3();
@@ -44411,14 +44411,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_2__4"
-    // InternalOCLinEcore.g:14285:1: rule__ReferenceCS__Group_7_0_1_2__4 : rule__ReferenceCS__Group_7_0_1_2__4__Impl ;
+    // InternalOCLinEcore.g:14287:1: rule__ReferenceCS__Group_7_0_1_2__4 : rule__ReferenceCS__Group_7_0_1_2__4__Impl ;
     public final void rule__ReferenceCS__Group_7_0_1_2__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14289:1: ( rule__ReferenceCS__Group_7_0_1_2__4__Impl )
-            // InternalOCLinEcore.g:14290:2: rule__ReferenceCS__Group_7_0_1_2__4__Impl
+            // InternalOCLinEcore.g:14291:1: ( rule__ReferenceCS__Group_7_0_1_2__4__Impl )
+            // InternalOCLinEcore.g:14292:2: rule__ReferenceCS__Group_7_0_1_2__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_7_0_1_2__4__Impl();
@@ -44444,17 +44444,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_2__4__Impl"
-    // InternalOCLinEcore.g:14296:1: rule__ReferenceCS__Group_7_0_1_2__4__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:14298:1: rule__ReferenceCS__Group_7_0_1_2__4__Impl : ( ';' ) ;
     public final void rule__ReferenceCS__Group_7_0_1_2__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14300:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:14301:1: ( ';' )
+            // InternalOCLinEcore.g:14302:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:14303:1: ( ';' )
             {
-            // InternalOCLinEcore.g:14301:1: ( ';' )
-            // InternalOCLinEcore.g:14302:1: ';'
+            // InternalOCLinEcore.g:14303:1: ( ';' )
+            // InternalOCLinEcore.g:14304:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_2_4());
@@ -44485,14 +44485,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_3__0"
-    // InternalOCLinEcore.g:14325:1: rule__ReferenceCS__Group_7_0_1_3__0 : rule__ReferenceCS__Group_7_0_1_3__0__Impl rule__ReferenceCS__Group_7_0_1_3__1 ;
+    // InternalOCLinEcore.g:14327:1: rule__ReferenceCS__Group_7_0_1_3__0 : rule__ReferenceCS__Group_7_0_1_3__0__Impl rule__ReferenceCS__Group_7_0_1_3__1 ;
     public final void rule__ReferenceCS__Group_7_0_1_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14329:1: ( rule__ReferenceCS__Group_7_0_1_3__0__Impl rule__ReferenceCS__Group_7_0_1_3__1 )
-            // InternalOCLinEcore.g:14330:2: rule__ReferenceCS__Group_7_0_1_3__0__Impl rule__ReferenceCS__Group_7_0_1_3__1
+            // InternalOCLinEcore.g:14331:1: ( rule__ReferenceCS__Group_7_0_1_3__0__Impl rule__ReferenceCS__Group_7_0_1_3__1 )
+            // InternalOCLinEcore.g:14332:2: rule__ReferenceCS__Group_7_0_1_3__0__Impl rule__ReferenceCS__Group_7_0_1_3__1
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__ReferenceCS__Group_7_0_1_3__0__Impl();
@@ -44523,17 +44523,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_3__0__Impl"
-    // InternalOCLinEcore.g:14337:1: rule__ReferenceCS__Group_7_0_1_3__0__Impl : ( 'derivation' ) ;
+    // InternalOCLinEcore.g:14339:1: rule__ReferenceCS__Group_7_0_1_3__0__Impl : ( 'derivation' ) ;
     public final void rule__ReferenceCS__Group_7_0_1_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14341:1: ( ( 'derivation' ) )
-            // InternalOCLinEcore.g:14342:1: ( 'derivation' )
+            // InternalOCLinEcore.g:14343:1: ( ( 'derivation' ) )
+            // InternalOCLinEcore.g:14344:1: ( 'derivation' )
             {
-            // InternalOCLinEcore.g:14342:1: ( 'derivation' )
-            // InternalOCLinEcore.g:14343:1: 'derivation'
+            // InternalOCLinEcore.g:14344:1: ( 'derivation' )
+            // InternalOCLinEcore.g:14345:1: 'derivation'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getDerivationKeyword_7_0_1_3_0());
@@ -44564,14 +44564,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_3__1"
-    // InternalOCLinEcore.g:14356:1: rule__ReferenceCS__Group_7_0_1_3__1 : rule__ReferenceCS__Group_7_0_1_3__1__Impl rule__ReferenceCS__Group_7_0_1_3__2 ;
+    // InternalOCLinEcore.g:14358:1: rule__ReferenceCS__Group_7_0_1_3__1 : rule__ReferenceCS__Group_7_0_1_3__1__Impl rule__ReferenceCS__Group_7_0_1_3__2 ;
     public final void rule__ReferenceCS__Group_7_0_1_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14360:1: ( rule__ReferenceCS__Group_7_0_1_3__1__Impl rule__ReferenceCS__Group_7_0_1_3__2 )
-            // InternalOCLinEcore.g:14361:2: rule__ReferenceCS__Group_7_0_1_3__1__Impl rule__ReferenceCS__Group_7_0_1_3__2
+            // InternalOCLinEcore.g:14362:1: ( rule__ReferenceCS__Group_7_0_1_3__1__Impl rule__ReferenceCS__Group_7_0_1_3__2 )
+            // InternalOCLinEcore.g:14363:2: rule__ReferenceCS__Group_7_0_1_3__1__Impl rule__ReferenceCS__Group_7_0_1_3__2
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__ReferenceCS__Group_7_0_1_3__1__Impl();
@@ -44602,22 +44602,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_3__1__Impl"
-    // InternalOCLinEcore.g:14368:1: rule__ReferenceCS__Group_7_0_1_3__1__Impl : ( ( ruleUnrestrictedName )? ) ;
+    // InternalOCLinEcore.g:14370:1: rule__ReferenceCS__Group_7_0_1_3__1__Impl : ( ( ruleUnrestrictedName )? ) ;
     public final void rule__ReferenceCS__Group_7_0_1_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14372:1: ( ( ( ruleUnrestrictedName )? ) )
-            // InternalOCLinEcore.g:14373:1: ( ( ruleUnrestrictedName )? )
+            // InternalOCLinEcore.g:14374:1: ( ( ( ruleUnrestrictedName )? ) )
+            // InternalOCLinEcore.g:14375:1: ( ( ruleUnrestrictedName )? )
             {
-            // InternalOCLinEcore.g:14373:1: ( ( ruleUnrestrictedName )? )
-            // InternalOCLinEcore.g:14374:1: ( ruleUnrestrictedName )?
+            // InternalOCLinEcore.g:14375:1: ( ( ruleUnrestrictedName )? )
+            // InternalOCLinEcore.g:14376:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_3_1());
             }
-            // InternalOCLinEcore.g:14375:1: ( ruleUnrestrictedName )?
+            // InternalOCLinEcore.g:14377:1: ( ruleUnrestrictedName )?
             int alt167=2;
             int LA167_0 = input.LA(1);
 
@@ -44626,7 +44626,7 @@
             }
             switch (alt167) {
                 case 1 :
-                    // InternalOCLinEcore.g:14375:3: ruleUnrestrictedName
+                    // InternalOCLinEcore.g:14377:3: ruleUnrestrictedName
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -44664,14 +44664,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_3__2"
-    // InternalOCLinEcore.g:14385:1: rule__ReferenceCS__Group_7_0_1_3__2 : rule__ReferenceCS__Group_7_0_1_3__2__Impl rule__ReferenceCS__Group_7_0_1_3__3 ;
+    // InternalOCLinEcore.g:14387:1: rule__ReferenceCS__Group_7_0_1_3__2 : rule__ReferenceCS__Group_7_0_1_3__2__Impl rule__ReferenceCS__Group_7_0_1_3__3 ;
     public final void rule__ReferenceCS__Group_7_0_1_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14389:1: ( rule__ReferenceCS__Group_7_0_1_3__2__Impl rule__ReferenceCS__Group_7_0_1_3__3 )
-            // InternalOCLinEcore.g:14390:2: rule__ReferenceCS__Group_7_0_1_3__2__Impl rule__ReferenceCS__Group_7_0_1_3__3
+            // InternalOCLinEcore.g:14391:1: ( rule__ReferenceCS__Group_7_0_1_3__2__Impl rule__ReferenceCS__Group_7_0_1_3__3 )
+            // InternalOCLinEcore.g:14392:2: rule__ReferenceCS__Group_7_0_1_3__2__Impl rule__ReferenceCS__Group_7_0_1_3__3
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__ReferenceCS__Group_7_0_1_3__2__Impl();
@@ -44702,17 +44702,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_3__2__Impl"
-    // InternalOCLinEcore.g:14397:1: rule__ReferenceCS__Group_7_0_1_3__2__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:14399:1: rule__ReferenceCS__Group_7_0_1_3__2__Impl : ( ':' ) ;
     public final void rule__ReferenceCS__Group_7_0_1_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14401:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:14402:1: ( ':' )
+            // InternalOCLinEcore.g:14403:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:14404:1: ( ':' )
             {
-            // InternalOCLinEcore.g:14402:1: ( ':' )
-            // InternalOCLinEcore.g:14403:1: ':'
+            // InternalOCLinEcore.g:14404:1: ( ':' )
+            // InternalOCLinEcore.g:14405:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_3_2());
@@ -44743,14 +44743,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_3__3"
-    // InternalOCLinEcore.g:14416:1: rule__ReferenceCS__Group_7_0_1_3__3 : rule__ReferenceCS__Group_7_0_1_3__3__Impl rule__ReferenceCS__Group_7_0_1_3__4 ;
+    // InternalOCLinEcore.g:14418:1: rule__ReferenceCS__Group_7_0_1_3__3 : rule__ReferenceCS__Group_7_0_1_3__3__Impl rule__ReferenceCS__Group_7_0_1_3__4 ;
     public final void rule__ReferenceCS__Group_7_0_1_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14420:1: ( rule__ReferenceCS__Group_7_0_1_3__3__Impl rule__ReferenceCS__Group_7_0_1_3__4 )
-            // InternalOCLinEcore.g:14421:2: rule__ReferenceCS__Group_7_0_1_3__3__Impl rule__ReferenceCS__Group_7_0_1_3__4
+            // InternalOCLinEcore.g:14422:1: ( rule__ReferenceCS__Group_7_0_1_3__3__Impl rule__ReferenceCS__Group_7_0_1_3__4 )
+            // InternalOCLinEcore.g:14423:2: rule__ReferenceCS__Group_7_0_1_3__3__Impl rule__ReferenceCS__Group_7_0_1_3__4
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__ReferenceCS__Group_7_0_1_3__3__Impl();
@@ -44781,22 +44781,22 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_3__3__Impl"
-    // InternalOCLinEcore.g:14428:1: rule__ReferenceCS__Group_7_0_1_3__3__Impl : ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )? ) ;
+    // InternalOCLinEcore.g:14430:1: rule__ReferenceCS__Group_7_0_1_3__3__Impl : ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )? ) ;
     public final void rule__ReferenceCS__Group_7_0_1_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14432:1: ( ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )? ) )
-            // InternalOCLinEcore.g:14433:1: ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )? )
+            // InternalOCLinEcore.g:14434:1: ( ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )? ) )
+            // InternalOCLinEcore.g:14435:1: ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )? )
             {
-            // InternalOCLinEcore.g:14433:1: ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )? )
-            // InternalOCLinEcore.g:14434:1: ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )?
+            // InternalOCLinEcore.g:14435:1: ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )? )
+            // InternalOCLinEcore.g:14436:1: ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsAssignment_7_0_1_3_3());
             }
-            // InternalOCLinEcore.g:14435:1: ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )?
+            // InternalOCLinEcore.g:14437:1: ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )?
             int alt168=2;
             int LA168_0 = input.LA(1);
 
@@ -44805,7 +44805,7 @@
             }
             switch (alt168) {
                 case 1 :
-                    // InternalOCLinEcore.g:14435:2: rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3
+                    // InternalOCLinEcore.g:14437:2: rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3();
@@ -44843,14 +44843,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_3__4"
-    // InternalOCLinEcore.g:14445:1: rule__ReferenceCS__Group_7_0_1_3__4 : rule__ReferenceCS__Group_7_0_1_3__4__Impl ;
+    // InternalOCLinEcore.g:14447:1: rule__ReferenceCS__Group_7_0_1_3__4 : rule__ReferenceCS__Group_7_0_1_3__4__Impl ;
     public final void rule__ReferenceCS__Group_7_0_1_3__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14449:1: ( rule__ReferenceCS__Group_7_0_1_3__4__Impl )
-            // InternalOCLinEcore.g:14450:2: rule__ReferenceCS__Group_7_0_1_3__4__Impl
+            // InternalOCLinEcore.g:14451:1: ( rule__ReferenceCS__Group_7_0_1_3__4__Impl )
+            // InternalOCLinEcore.g:14452:2: rule__ReferenceCS__Group_7_0_1_3__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_7_0_1_3__4__Impl();
@@ -44876,17 +44876,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_3__4__Impl"
-    // InternalOCLinEcore.g:14456:1: rule__ReferenceCS__Group_7_0_1_3__4__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:14458:1: rule__ReferenceCS__Group_7_0_1_3__4__Impl : ( ';' ) ;
     public final void rule__ReferenceCS__Group_7_0_1_3__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14460:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:14461:1: ( ';' )
+            // InternalOCLinEcore.g:14462:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:14463:1: ( ';' )
             {
-            // InternalOCLinEcore.g:14461:1: ( ';' )
-            // InternalOCLinEcore.g:14462:1: ';'
+            // InternalOCLinEcore.g:14463:1: ( ';' )
+            // InternalOCLinEcore.g:14464:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_3_4());
@@ -44917,14 +44917,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_4__0"
-    // InternalOCLinEcore.g:14485:1: rule__ReferenceCS__Group_7_0_1_4__0 : rule__ReferenceCS__Group_7_0_1_4__0__Impl rule__ReferenceCS__Group_7_0_1_4__1 ;
+    // InternalOCLinEcore.g:14487:1: rule__ReferenceCS__Group_7_0_1_4__0 : rule__ReferenceCS__Group_7_0_1_4__0__Impl rule__ReferenceCS__Group_7_0_1_4__1 ;
     public final void rule__ReferenceCS__Group_7_0_1_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14489:1: ( rule__ReferenceCS__Group_7_0_1_4__0__Impl rule__ReferenceCS__Group_7_0_1_4__1 )
-            // InternalOCLinEcore.g:14490:2: rule__ReferenceCS__Group_7_0_1_4__0__Impl rule__ReferenceCS__Group_7_0_1_4__1
+            // InternalOCLinEcore.g:14491:1: ( rule__ReferenceCS__Group_7_0_1_4__0__Impl rule__ReferenceCS__Group_7_0_1_4__1 )
+            // InternalOCLinEcore.g:14492:2: rule__ReferenceCS__Group_7_0_1_4__0__Impl rule__ReferenceCS__Group_7_0_1_4__1
             {
             pushFollow(FollowSets000.FOLLOW_52);
             rule__ReferenceCS__Group_7_0_1_4__0__Impl();
@@ -44955,23 +44955,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_4__0__Impl"
-    // InternalOCLinEcore.g:14497:1: rule__ReferenceCS__Group_7_0_1_4__0__Impl : ( ( rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 ) ) ;
+    // InternalOCLinEcore.g:14499:1: rule__ReferenceCS__Group_7_0_1_4__0__Impl : ( ( rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 ) ) ;
     public final void rule__ReferenceCS__Group_7_0_1_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14501:1: ( ( ( rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 ) ) )
-            // InternalOCLinEcore.g:14502:1: ( ( rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 ) )
+            // InternalOCLinEcore.g:14503:1: ( ( ( rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 ) ) )
+            // InternalOCLinEcore.g:14504:1: ( ( rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 ) )
             {
-            // InternalOCLinEcore.g:14502:1: ( ( rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 ) )
-            // InternalOCLinEcore.g:14503:1: ( rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 )
+            // InternalOCLinEcore.g:14504:1: ( ( rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 ) )
+            // InternalOCLinEcore.g:14505:1: ( rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getOwnedImplicitOppositesAssignment_7_0_1_4_0());
             }
-            // InternalOCLinEcore.g:14504:1: ( rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 )
-            // InternalOCLinEcore.g:14504:2: rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0
+            // InternalOCLinEcore.g:14506:1: ( rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 )
+            // InternalOCLinEcore.g:14506:2: rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0();
@@ -45006,14 +45006,14 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_4__1"
-    // InternalOCLinEcore.g:14514:1: rule__ReferenceCS__Group_7_0_1_4__1 : rule__ReferenceCS__Group_7_0_1_4__1__Impl ;
+    // InternalOCLinEcore.g:14516:1: rule__ReferenceCS__Group_7_0_1_4__1 : rule__ReferenceCS__Group_7_0_1_4__1__Impl ;
     public final void rule__ReferenceCS__Group_7_0_1_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14518:1: ( rule__ReferenceCS__Group_7_0_1_4__1__Impl )
-            // InternalOCLinEcore.g:14519:2: rule__ReferenceCS__Group_7_0_1_4__1__Impl
+            // InternalOCLinEcore.g:14520:1: ( rule__ReferenceCS__Group_7_0_1_4__1__Impl )
+            // InternalOCLinEcore.g:14521:2: rule__ReferenceCS__Group_7_0_1_4__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ReferenceCS__Group_7_0_1_4__1__Impl();
@@ -45039,17 +45039,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__Group_7_0_1_4__1__Impl"
-    // InternalOCLinEcore.g:14525:1: rule__ReferenceCS__Group_7_0_1_4__1__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:14527:1: rule__ReferenceCS__Group_7_0_1_4__1__Impl : ( ';' ) ;
     public final void rule__ReferenceCS__Group_7_0_1_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14529:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:14530:1: ( ';' )
+            // InternalOCLinEcore.g:14531:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:14532:1: ( ';' )
             {
-            // InternalOCLinEcore.g:14530:1: ( ';' )
-            // InternalOCLinEcore.g:14531:1: ';'
+            // InternalOCLinEcore.g:14532:1: ( ';' )
+            // InternalOCLinEcore.g:14533:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_4_1());
@@ -45080,14 +45080,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__0"
-    // InternalOCLinEcore.g:14548:1: rule__StructuredClassCS__Group__0 : rule__StructuredClassCS__Group__0__Impl rule__StructuredClassCS__Group__1 ;
+    // InternalOCLinEcore.g:14550:1: rule__StructuredClassCS__Group__0 : rule__StructuredClassCS__Group__0__Impl rule__StructuredClassCS__Group__1 ;
     public final void rule__StructuredClassCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14552:1: ( rule__StructuredClassCS__Group__0__Impl rule__StructuredClassCS__Group__1 )
-            // InternalOCLinEcore.g:14553:2: rule__StructuredClassCS__Group__0__Impl rule__StructuredClassCS__Group__1
+            // InternalOCLinEcore.g:14554:1: ( rule__StructuredClassCS__Group__0__Impl rule__StructuredClassCS__Group__1 )
+            // InternalOCLinEcore.g:14555:2: rule__StructuredClassCS__Group__0__Impl rule__StructuredClassCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_74);
             rule__StructuredClassCS__Group__0__Impl();
@@ -45118,22 +45118,22 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__0__Impl"
-    // InternalOCLinEcore.g:14560:1: rule__StructuredClassCS__Group__0__Impl : ( ( rule__StructuredClassCS__IsAbstractAssignment_0 )? ) ;
+    // InternalOCLinEcore.g:14562:1: rule__StructuredClassCS__Group__0__Impl : ( ( rule__StructuredClassCS__IsAbstractAssignment_0 )? ) ;
     public final void rule__StructuredClassCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14564:1: ( ( ( rule__StructuredClassCS__IsAbstractAssignment_0 )? ) )
-            // InternalOCLinEcore.g:14565:1: ( ( rule__StructuredClassCS__IsAbstractAssignment_0 )? )
+            // InternalOCLinEcore.g:14566:1: ( ( ( rule__StructuredClassCS__IsAbstractAssignment_0 )? ) )
+            // InternalOCLinEcore.g:14567:1: ( ( rule__StructuredClassCS__IsAbstractAssignment_0 )? )
             {
-            // InternalOCLinEcore.g:14565:1: ( ( rule__StructuredClassCS__IsAbstractAssignment_0 )? )
-            // InternalOCLinEcore.g:14566:1: ( rule__StructuredClassCS__IsAbstractAssignment_0 )?
+            // InternalOCLinEcore.g:14567:1: ( ( rule__StructuredClassCS__IsAbstractAssignment_0 )? )
+            // InternalOCLinEcore.g:14568:1: ( rule__StructuredClassCS__IsAbstractAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getIsAbstractAssignment_0());
             }
-            // InternalOCLinEcore.g:14567:1: ( rule__StructuredClassCS__IsAbstractAssignment_0 )?
+            // InternalOCLinEcore.g:14569:1: ( rule__StructuredClassCS__IsAbstractAssignment_0 )?
             int alt169=2;
             int LA169_0 = input.LA(1);
 
@@ -45142,7 +45142,7 @@
             }
             switch (alt169) {
                 case 1 :
-                    // InternalOCLinEcore.g:14567:2: rule__StructuredClassCS__IsAbstractAssignment_0
+                    // InternalOCLinEcore.g:14569:2: rule__StructuredClassCS__IsAbstractAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__StructuredClassCS__IsAbstractAssignment_0();
@@ -45180,14 +45180,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__1"
-    // InternalOCLinEcore.g:14577:1: rule__StructuredClassCS__Group__1 : rule__StructuredClassCS__Group__1__Impl rule__StructuredClassCS__Group__2 ;
+    // InternalOCLinEcore.g:14579:1: rule__StructuredClassCS__Group__1 : rule__StructuredClassCS__Group__1__Impl rule__StructuredClassCS__Group__2 ;
     public final void rule__StructuredClassCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14581:1: ( rule__StructuredClassCS__Group__1__Impl rule__StructuredClassCS__Group__2 )
-            // InternalOCLinEcore.g:14582:2: rule__StructuredClassCS__Group__1__Impl rule__StructuredClassCS__Group__2
+            // InternalOCLinEcore.g:14583:1: ( rule__StructuredClassCS__Group__1__Impl rule__StructuredClassCS__Group__2 )
+            // InternalOCLinEcore.g:14584:2: rule__StructuredClassCS__Group__1__Impl rule__StructuredClassCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__StructuredClassCS__Group__1__Impl();
@@ -45218,17 +45218,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__1__Impl"
-    // InternalOCLinEcore.g:14589:1: rule__StructuredClassCS__Group__1__Impl : ( 'class' ) ;
+    // InternalOCLinEcore.g:14591:1: rule__StructuredClassCS__Group__1__Impl : ( 'class' ) ;
     public final void rule__StructuredClassCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14593:1: ( ( 'class' ) )
-            // InternalOCLinEcore.g:14594:1: ( 'class' )
+            // InternalOCLinEcore.g:14595:1: ( ( 'class' ) )
+            // InternalOCLinEcore.g:14596:1: ( 'class' )
             {
-            // InternalOCLinEcore.g:14594:1: ( 'class' )
-            // InternalOCLinEcore.g:14595:1: 'class'
+            // InternalOCLinEcore.g:14596:1: ( 'class' )
+            // InternalOCLinEcore.g:14597:1: 'class'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getClassKeyword_1());
@@ -45259,14 +45259,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__2"
-    // InternalOCLinEcore.g:14608:1: rule__StructuredClassCS__Group__2 : rule__StructuredClassCS__Group__2__Impl rule__StructuredClassCS__Group__3 ;
+    // InternalOCLinEcore.g:14610:1: rule__StructuredClassCS__Group__2 : rule__StructuredClassCS__Group__2__Impl rule__StructuredClassCS__Group__3 ;
     public final void rule__StructuredClassCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14612:1: ( rule__StructuredClassCS__Group__2__Impl rule__StructuredClassCS__Group__3 )
-            // InternalOCLinEcore.g:14613:2: rule__StructuredClassCS__Group__2__Impl rule__StructuredClassCS__Group__3
+            // InternalOCLinEcore.g:14614:1: ( rule__StructuredClassCS__Group__2__Impl rule__StructuredClassCS__Group__3 )
+            // InternalOCLinEcore.g:14615:2: rule__StructuredClassCS__Group__2__Impl rule__StructuredClassCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_75);
             rule__StructuredClassCS__Group__2__Impl();
@@ -45297,23 +45297,23 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__2__Impl"
-    // InternalOCLinEcore.g:14620:1: rule__StructuredClassCS__Group__2__Impl : ( ( rule__StructuredClassCS__NameAssignment_2 ) ) ;
+    // InternalOCLinEcore.g:14622:1: rule__StructuredClassCS__Group__2__Impl : ( ( rule__StructuredClassCS__NameAssignment_2 ) ) ;
     public final void rule__StructuredClassCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14624:1: ( ( ( rule__StructuredClassCS__NameAssignment_2 ) ) )
-            // InternalOCLinEcore.g:14625:1: ( ( rule__StructuredClassCS__NameAssignment_2 ) )
+            // InternalOCLinEcore.g:14626:1: ( ( ( rule__StructuredClassCS__NameAssignment_2 ) ) )
+            // InternalOCLinEcore.g:14627:1: ( ( rule__StructuredClassCS__NameAssignment_2 ) )
             {
-            // InternalOCLinEcore.g:14625:1: ( ( rule__StructuredClassCS__NameAssignment_2 ) )
-            // InternalOCLinEcore.g:14626:1: ( rule__StructuredClassCS__NameAssignment_2 )
+            // InternalOCLinEcore.g:14627:1: ( ( rule__StructuredClassCS__NameAssignment_2 ) )
+            // InternalOCLinEcore.g:14628:1: ( rule__StructuredClassCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getNameAssignment_2());
             }
-            // InternalOCLinEcore.g:14627:1: ( rule__StructuredClassCS__NameAssignment_2 )
-            // InternalOCLinEcore.g:14627:2: rule__StructuredClassCS__NameAssignment_2
+            // InternalOCLinEcore.g:14629:1: ( rule__StructuredClassCS__NameAssignment_2 )
+            // InternalOCLinEcore.g:14629:2: rule__StructuredClassCS__NameAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__StructuredClassCS__NameAssignment_2();
@@ -45348,14 +45348,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__3"
-    // InternalOCLinEcore.g:14637:1: rule__StructuredClassCS__Group__3 : rule__StructuredClassCS__Group__3__Impl rule__StructuredClassCS__Group__4 ;
+    // InternalOCLinEcore.g:14639:1: rule__StructuredClassCS__Group__3 : rule__StructuredClassCS__Group__3__Impl rule__StructuredClassCS__Group__4 ;
     public final void rule__StructuredClassCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14641:1: ( rule__StructuredClassCS__Group__3__Impl rule__StructuredClassCS__Group__4 )
-            // InternalOCLinEcore.g:14642:2: rule__StructuredClassCS__Group__3__Impl rule__StructuredClassCS__Group__4
+            // InternalOCLinEcore.g:14643:1: ( rule__StructuredClassCS__Group__3__Impl rule__StructuredClassCS__Group__4 )
+            // InternalOCLinEcore.g:14644:2: rule__StructuredClassCS__Group__3__Impl rule__StructuredClassCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_75);
             rule__StructuredClassCS__Group__3__Impl();
@@ -45386,22 +45386,22 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__3__Impl"
-    // InternalOCLinEcore.g:14649:1: rule__StructuredClassCS__Group__3__Impl : ( ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )? ) ;
+    // InternalOCLinEcore.g:14651:1: rule__StructuredClassCS__Group__3__Impl : ( ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )? ) ;
     public final void rule__StructuredClassCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14653:1: ( ( ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )? ) )
-            // InternalOCLinEcore.g:14654:1: ( ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )? )
+            // InternalOCLinEcore.g:14655:1: ( ( ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )? ) )
+            // InternalOCLinEcore.g:14656:1: ( ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )? )
             {
-            // InternalOCLinEcore.g:14654:1: ( ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )? )
-            // InternalOCLinEcore.g:14655:1: ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )?
+            // InternalOCLinEcore.g:14656:1: ( ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )? )
+            // InternalOCLinEcore.g:14657:1: ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureAssignment_3());
             }
-            // InternalOCLinEcore.g:14656:1: ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )?
+            // InternalOCLinEcore.g:14658:1: ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )?
             int alt170=2;
             int LA170_0 = input.LA(1);
 
@@ -45410,7 +45410,7 @@
             }
             switch (alt170) {
                 case 1 :
-                    // InternalOCLinEcore.g:14656:2: rule__StructuredClassCS__OwnedSignatureAssignment_3
+                    // InternalOCLinEcore.g:14658:2: rule__StructuredClassCS__OwnedSignatureAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__StructuredClassCS__OwnedSignatureAssignment_3();
@@ -45448,14 +45448,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__4"
-    // InternalOCLinEcore.g:14666:1: rule__StructuredClassCS__Group__4 : rule__StructuredClassCS__Group__4__Impl rule__StructuredClassCS__Group__5 ;
+    // InternalOCLinEcore.g:14668:1: rule__StructuredClassCS__Group__4 : rule__StructuredClassCS__Group__4__Impl rule__StructuredClassCS__Group__5 ;
     public final void rule__StructuredClassCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14670:1: ( rule__StructuredClassCS__Group__4__Impl rule__StructuredClassCS__Group__5 )
-            // InternalOCLinEcore.g:14671:2: rule__StructuredClassCS__Group__4__Impl rule__StructuredClassCS__Group__5
+            // InternalOCLinEcore.g:14672:1: ( rule__StructuredClassCS__Group__4__Impl rule__StructuredClassCS__Group__5 )
+            // InternalOCLinEcore.g:14673:2: rule__StructuredClassCS__Group__4__Impl rule__StructuredClassCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_75);
             rule__StructuredClassCS__Group__4__Impl();
@@ -45486,22 +45486,22 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__4__Impl"
-    // InternalOCLinEcore.g:14678:1: rule__StructuredClassCS__Group__4__Impl : ( ( rule__StructuredClassCS__Group_4__0 )? ) ;
+    // InternalOCLinEcore.g:14680:1: rule__StructuredClassCS__Group__4__Impl : ( ( rule__StructuredClassCS__Group_4__0 )? ) ;
     public final void rule__StructuredClassCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14682:1: ( ( ( rule__StructuredClassCS__Group_4__0 )? ) )
-            // InternalOCLinEcore.g:14683:1: ( ( rule__StructuredClassCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:14684:1: ( ( ( rule__StructuredClassCS__Group_4__0 )? ) )
+            // InternalOCLinEcore.g:14685:1: ( ( rule__StructuredClassCS__Group_4__0 )? )
             {
-            // InternalOCLinEcore.g:14683:1: ( ( rule__StructuredClassCS__Group_4__0 )? )
-            // InternalOCLinEcore.g:14684:1: ( rule__StructuredClassCS__Group_4__0 )?
+            // InternalOCLinEcore.g:14685:1: ( ( rule__StructuredClassCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:14686:1: ( rule__StructuredClassCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getGroup_4());
             }
-            // InternalOCLinEcore.g:14685:1: ( rule__StructuredClassCS__Group_4__0 )?
+            // InternalOCLinEcore.g:14687:1: ( rule__StructuredClassCS__Group_4__0 )?
             int alt171=2;
             int LA171_0 = input.LA(1);
 
@@ -45510,7 +45510,7 @@
             }
             switch (alt171) {
                 case 1 :
-                    // InternalOCLinEcore.g:14685:2: rule__StructuredClassCS__Group_4__0
+                    // InternalOCLinEcore.g:14687:2: rule__StructuredClassCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__StructuredClassCS__Group_4__0();
@@ -45548,14 +45548,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__5"
-    // InternalOCLinEcore.g:14695:1: rule__StructuredClassCS__Group__5 : rule__StructuredClassCS__Group__5__Impl rule__StructuredClassCS__Group__6 ;
+    // InternalOCLinEcore.g:14697:1: rule__StructuredClassCS__Group__5 : rule__StructuredClassCS__Group__5__Impl rule__StructuredClassCS__Group__6 ;
     public final void rule__StructuredClassCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14699:1: ( rule__StructuredClassCS__Group__5__Impl rule__StructuredClassCS__Group__6 )
-            // InternalOCLinEcore.g:14700:2: rule__StructuredClassCS__Group__5__Impl rule__StructuredClassCS__Group__6
+            // InternalOCLinEcore.g:14701:1: ( rule__StructuredClassCS__Group__5__Impl rule__StructuredClassCS__Group__6 )
+            // InternalOCLinEcore.g:14702:2: rule__StructuredClassCS__Group__5__Impl rule__StructuredClassCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_75);
             rule__StructuredClassCS__Group__5__Impl();
@@ -45586,22 +45586,22 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__5__Impl"
-    // InternalOCLinEcore.g:14707:1: rule__StructuredClassCS__Group__5__Impl : ( ( rule__StructuredClassCS__Group_5__0 )? ) ;
+    // InternalOCLinEcore.g:14709:1: rule__StructuredClassCS__Group__5__Impl : ( ( rule__StructuredClassCS__Group_5__0 )? ) ;
     public final void rule__StructuredClassCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14711:1: ( ( ( rule__StructuredClassCS__Group_5__0 )? ) )
-            // InternalOCLinEcore.g:14712:1: ( ( rule__StructuredClassCS__Group_5__0 )? )
+            // InternalOCLinEcore.g:14713:1: ( ( ( rule__StructuredClassCS__Group_5__0 )? ) )
+            // InternalOCLinEcore.g:14714:1: ( ( rule__StructuredClassCS__Group_5__0 )? )
             {
-            // InternalOCLinEcore.g:14712:1: ( ( rule__StructuredClassCS__Group_5__0 )? )
-            // InternalOCLinEcore.g:14713:1: ( rule__StructuredClassCS__Group_5__0 )?
+            // InternalOCLinEcore.g:14714:1: ( ( rule__StructuredClassCS__Group_5__0 )? )
+            // InternalOCLinEcore.g:14715:1: ( rule__StructuredClassCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getGroup_5());
             }
-            // InternalOCLinEcore.g:14714:1: ( rule__StructuredClassCS__Group_5__0 )?
+            // InternalOCLinEcore.g:14716:1: ( rule__StructuredClassCS__Group_5__0 )?
             int alt172=2;
             int LA172_0 = input.LA(1);
 
@@ -45610,7 +45610,7 @@
             }
             switch (alt172) {
                 case 1 :
-                    // InternalOCLinEcore.g:14714:2: rule__StructuredClassCS__Group_5__0
+                    // InternalOCLinEcore.g:14716:2: rule__StructuredClassCS__Group_5__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__StructuredClassCS__Group_5__0();
@@ -45648,14 +45648,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__6"
-    // InternalOCLinEcore.g:14724:1: rule__StructuredClassCS__Group__6 : rule__StructuredClassCS__Group__6__Impl rule__StructuredClassCS__Group__7 ;
+    // InternalOCLinEcore.g:14726:1: rule__StructuredClassCS__Group__6 : rule__StructuredClassCS__Group__6__Impl rule__StructuredClassCS__Group__7 ;
     public final void rule__StructuredClassCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14728:1: ( rule__StructuredClassCS__Group__6__Impl rule__StructuredClassCS__Group__7 )
-            // InternalOCLinEcore.g:14729:2: rule__StructuredClassCS__Group__6__Impl rule__StructuredClassCS__Group__7
+            // InternalOCLinEcore.g:14730:1: ( rule__StructuredClassCS__Group__6__Impl rule__StructuredClassCS__Group__7 )
+            // InternalOCLinEcore.g:14731:2: rule__StructuredClassCS__Group__6__Impl rule__StructuredClassCS__Group__7
             {
             pushFollow(FollowSets000.FOLLOW_75);
             rule__StructuredClassCS__Group__6__Impl();
@@ -45686,22 +45686,22 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__6__Impl"
-    // InternalOCLinEcore.g:14736:1: rule__StructuredClassCS__Group__6__Impl : ( ( rule__StructuredClassCS__Group_6__0 )? ) ;
+    // InternalOCLinEcore.g:14738:1: rule__StructuredClassCS__Group__6__Impl : ( ( rule__StructuredClassCS__Group_6__0 )? ) ;
     public final void rule__StructuredClassCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14740:1: ( ( ( rule__StructuredClassCS__Group_6__0 )? ) )
-            // InternalOCLinEcore.g:14741:1: ( ( rule__StructuredClassCS__Group_6__0 )? )
+            // InternalOCLinEcore.g:14742:1: ( ( ( rule__StructuredClassCS__Group_6__0 )? ) )
+            // InternalOCLinEcore.g:14743:1: ( ( rule__StructuredClassCS__Group_6__0 )? )
             {
-            // InternalOCLinEcore.g:14741:1: ( ( rule__StructuredClassCS__Group_6__0 )? )
-            // InternalOCLinEcore.g:14742:1: ( rule__StructuredClassCS__Group_6__0 )?
+            // InternalOCLinEcore.g:14743:1: ( ( rule__StructuredClassCS__Group_6__0 )? )
+            // InternalOCLinEcore.g:14744:1: ( rule__StructuredClassCS__Group_6__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getGroup_6());
             }
-            // InternalOCLinEcore.g:14743:1: ( rule__StructuredClassCS__Group_6__0 )?
+            // InternalOCLinEcore.g:14745:1: ( rule__StructuredClassCS__Group_6__0 )?
             int alt173=2;
             int LA173_0 = input.LA(1);
 
@@ -45721,7 +45721,7 @@
             }
             switch (alt173) {
                 case 1 :
-                    // InternalOCLinEcore.g:14743:2: rule__StructuredClassCS__Group_6__0
+                    // InternalOCLinEcore.g:14745:2: rule__StructuredClassCS__Group_6__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__StructuredClassCS__Group_6__0();
@@ -45759,14 +45759,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__7"
-    // InternalOCLinEcore.g:14753:1: rule__StructuredClassCS__Group__7 : rule__StructuredClassCS__Group__7__Impl ;
+    // InternalOCLinEcore.g:14755:1: rule__StructuredClassCS__Group__7 : rule__StructuredClassCS__Group__7__Impl ;
     public final void rule__StructuredClassCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14757:1: ( rule__StructuredClassCS__Group__7__Impl )
-            // InternalOCLinEcore.g:14758:2: rule__StructuredClassCS__Group__7__Impl
+            // InternalOCLinEcore.g:14759:1: ( rule__StructuredClassCS__Group__7__Impl )
+            // InternalOCLinEcore.g:14760:2: rule__StructuredClassCS__Group__7__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__StructuredClassCS__Group__7__Impl();
@@ -45792,23 +45792,23 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group__7__Impl"
-    // InternalOCLinEcore.g:14764:1: rule__StructuredClassCS__Group__7__Impl : ( ( rule__StructuredClassCS__Alternatives_7 ) ) ;
+    // InternalOCLinEcore.g:14766:1: rule__StructuredClassCS__Group__7__Impl : ( ( rule__StructuredClassCS__Alternatives_7 ) ) ;
     public final void rule__StructuredClassCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14768:1: ( ( ( rule__StructuredClassCS__Alternatives_7 ) ) )
-            // InternalOCLinEcore.g:14769:1: ( ( rule__StructuredClassCS__Alternatives_7 ) )
+            // InternalOCLinEcore.g:14770:1: ( ( ( rule__StructuredClassCS__Alternatives_7 ) ) )
+            // InternalOCLinEcore.g:14771:1: ( ( rule__StructuredClassCS__Alternatives_7 ) )
             {
-            // InternalOCLinEcore.g:14769:1: ( ( rule__StructuredClassCS__Alternatives_7 ) )
-            // InternalOCLinEcore.g:14770:1: ( rule__StructuredClassCS__Alternatives_7 )
+            // InternalOCLinEcore.g:14771:1: ( ( rule__StructuredClassCS__Alternatives_7 ) )
+            // InternalOCLinEcore.g:14772:1: ( rule__StructuredClassCS__Alternatives_7 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getAlternatives_7());
             }
-            // InternalOCLinEcore.g:14771:1: ( rule__StructuredClassCS__Alternatives_7 )
-            // InternalOCLinEcore.g:14771:2: rule__StructuredClassCS__Alternatives_7
+            // InternalOCLinEcore.g:14773:1: ( rule__StructuredClassCS__Alternatives_7 )
+            // InternalOCLinEcore.g:14773:2: rule__StructuredClassCS__Alternatives_7
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__StructuredClassCS__Alternatives_7();
@@ -45843,14 +45843,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_4__0"
-    // InternalOCLinEcore.g:14797:1: rule__StructuredClassCS__Group_4__0 : rule__StructuredClassCS__Group_4__0__Impl rule__StructuredClassCS__Group_4__1 ;
+    // InternalOCLinEcore.g:14799:1: rule__StructuredClassCS__Group_4__0 : rule__StructuredClassCS__Group_4__0__Impl rule__StructuredClassCS__Group_4__1 ;
     public final void rule__StructuredClassCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14801:1: ( rule__StructuredClassCS__Group_4__0__Impl rule__StructuredClassCS__Group_4__1 )
-            // InternalOCLinEcore.g:14802:2: rule__StructuredClassCS__Group_4__0__Impl rule__StructuredClassCS__Group_4__1
+            // InternalOCLinEcore.g:14803:1: ( rule__StructuredClassCS__Group_4__0__Impl rule__StructuredClassCS__Group_4__1 )
+            // InternalOCLinEcore.g:14804:2: rule__StructuredClassCS__Group_4__0__Impl rule__StructuredClassCS__Group_4__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__StructuredClassCS__Group_4__0__Impl();
@@ -45881,17 +45881,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_4__0__Impl"
-    // InternalOCLinEcore.g:14809:1: rule__StructuredClassCS__Group_4__0__Impl : ( 'extends' ) ;
+    // InternalOCLinEcore.g:14811:1: rule__StructuredClassCS__Group_4__0__Impl : ( 'extends' ) ;
     public final void rule__StructuredClassCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14813:1: ( ( 'extends' ) )
-            // InternalOCLinEcore.g:14814:1: ( 'extends' )
+            // InternalOCLinEcore.g:14815:1: ( ( 'extends' ) )
+            // InternalOCLinEcore.g:14816:1: ( 'extends' )
             {
-            // InternalOCLinEcore.g:14814:1: ( 'extends' )
-            // InternalOCLinEcore.g:14815:1: 'extends'
+            // InternalOCLinEcore.g:14816:1: ( 'extends' )
+            // InternalOCLinEcore.g:14817:1: 'extends'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getExtendsKeyword_4_0());
@@ -45922,14 +45922,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_4__1"
-    // InternalOCLinEcore.g:14828:1: rule__StructuredClassCS__Group_4__1 : rule__StructuredClassCS__Group_4__1__Impl rule__StructuredClassCS__Group_4__2 ;
+    // InternalOCLinEcore.g:14830:1: rule__StructuredClassCS__Group_4__1 : rule__StructuredClassCS__Group_4__1__Impl rule__StructuredClassCS__Group_4__2 ;
     public final void rule__StructuredClassCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14832:1: ( rule__StructuredClassCS__Group_4__1__Impl rule__StructuredClassCS__Group_4__2 )
-            // InternalOCLinEcore.g:14833:2: rule__StructuredClassCS__Group_4__1__Impl rule__StructuredClassCS__Group_4__2
+            // InternalOCLinEcore.g:14834:1: ( rule__StructuredClassCS__Group_4__1__Impl rule__StructuredClassCS__Group_4__2 )
+            // InternalOCLinEcore.g:14835:2: rule__StructuredClassCS__Group_4__1__Impl rule__StructuredClassCS__Group_4__2
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__StructuredClassCS__Group_4__1__Impl();
@@ -45960,23 +45960,23 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_4__1__Impl"
-    // InternalOCLinEcore.g:14840:1: rule__StructuredClassCS__Group_4__1__Impl : ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 ) ) ;
+    // InternalOCLinEcore.g:14842:1: rule__StructuredClassCS__Group_4__1__Impl : ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 ) ) ;
     public final void rule__StructuredClassCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14844:1: ( ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 ) ) )
-            // InternalOCLinEcore.g:14845:1: ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 ) )
+            // InternalOCLinEcore.g:14846:1: ( ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 ) ) )
+            // InternalOCLinEcore.g:14847:1: ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 ) )
             {
-            // InternalOCLinEcore.g:14845:1: ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 ) )
-            // InternalOCLinEcore.g:14846:1: ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 )
+            // InternalOCLinEcore.g:14847:1: ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 ) )
+            // InternalOCLinEcore.g:14848:1: ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesAssignment_4_1());
             }
-            // InternalOCLinEcore.g:14847:1: ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 )
-            // InternalOCLinEcore.g:14847:2: rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1
+            // InternalOCLinEcore.g:14849:1: ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 )
+            // InternalOCLinEcore.g:14849:2: rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1();
@@ -46011,14 +46011,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_4__2"
-    // InternalOCLinEcore.g:14857:1: rule__StructuredClassCS__Group_4__2 : rule__StructuredClassCS__Group_4__2__Impl ;
+    // InternalOCLinEcore.g:14859:1: rule__StructuredClassCS__Group_4__2 : rule__StructuredClassCS__Group_4__2__Impl ;
     public final void rule__StructuredClassCS__Group_4__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14861:1: ( rule__StructuredClassCS__Group_4__2__Impl )
-            // InternalOCLinEcore.g:14862:2: rule__StructuredClassCS__Group_4__2__Impl
+            // InternalOCLinEcore.g:14863:1: ( rule__StructuredClassCS__Group_4__2__Impl )
+            // InternalOCLinEcore.g:14864:2: rule__StructuredClassCS__Group_4__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__StructuredClassCS__Group_4__2__Impl();
@@ -46044,22 +46044,22 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_4__2__Impl"
-    // InternalOCLinEcore.g:14868:1: rule__StructuredClassCS__Group_4__2__Impl : ( ( rule__StructuredClassCS__Group_4_2__0 )* ) ;
+    // InternalOCLinEcore.g:14870:1: rule__StructuredClassCS__Group_4__2__Impl : ( ( rule__StructuredClassCS__Group_4_2__0 )* ) ;
     public final void rule__StructuredClassCS__Group_4__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14872:1: ( ( ( rule__StructuredClassCS__Group_4_2__0 )* ) )
-            // InternalOCLinEcore.g:14873:1: ( ( rule__StructuredClassCS__Group_4_2__0 )* )
+            // InternalOCLinEcore.g:14874:1: ( ( ( rule__StructuredClassCS__Group_4_2__0 )* ) )
+            // InternalOCLinEcore.g:14875:1: ( ( rule__StructuredClassCS__Group_4_2__0 )* )
             {
-            // InternalOCLinEcore.g:14873:1: ( ( rule__StructuredClassCS__Group_4_2__0 )* )
-            // InternalOCLinEcore.g:14874:1: ( rule__StructuredClassCS__Group_4_2__0 )*
+            // InternalOCLinEcore.g:14875:1: ( ( rule__StructuredClassCS__Group_4_2__0 )* )
+            // InternalOCLinEcore.g:14876:1: ( rule__StructuredClassCS__Group_4_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getGroup_4_2());
             }
-            // InternalOCLinEcore.g:14875:1: ( rule__StructuredClassCS__Group_4_2__0 )*
+            // InternalOCLinEcore.g:14877:1: ( rule__StructuredClassCS__Group_4_2__0 )*
             loop174:
             do {
                 int alt174=2;
@@ -46072,7 +46072,7 @@
 
                 switch (alt174) {
             	case 1 :
-            	    // InternalOCLinEcore.g:14875:2: rule__StructuredClassCS__Group_4_2__0
+            	    // InternalOCLinEcore.g:14877:2: rule__StructuredClassCS__Group_4_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__StructuredClassCS__Group_4_2__0();
@@ -46113,14 +46113,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_4_2__0"
-    // InternalOCLinEcore.g:14891:1: rule__StructuredClassCS__Group_4_2__0 : rule__StructuredClassCS__Group_4_2__0__Impl rule__StructuredClassCS__Group_4_2__1 ;
+    // InternalOCLinEcore.g:14893:1: rule__StructuredClassCS__Group_4_2__0 : rule__StructuredClassCS__Group_4_2__0__Impl rule__StructuredClassCS__Group_4_2__1 ;
     public final void rule__StructuredClassCS__Group_4_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14895:1: ( rule__StructuredClassCS__Group_4_2__0__Impl rule__StructuredClassCS__Group_4_2__1 )
-            // InternalOCLinEcore.g:14896:2: rule__StructuredClassCS__Group_4_2__0__Impl rule__StructuredClassCS__Group_4_2__1
+            // InternalOCLinEcore.g:14897:1: ( rule__StructuredClassCS__Group_4_2__0__Impl rule__StructuredClassCS__Group_4_2__1 )
+            // InternalOCLinEcore.g:14898:2: rule__StructuredClassCS__Group_4_2__0__Impl rule__StructuredClassCS__Group_4_2__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__StructuredClassCS__Group_4_2__0__Impl();
@@ -46151,17 +46151,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_4_2__0__Impl"
-    // InternalOCLinEcore.g:14903:1: rule__StructuredClassCS__Group_4_2__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:14905:1: rule__StructuredClassCS__Group_4_2__0__Impl : ( ',' ) ;
     public final void rule__StructuredClassCS__Group_4_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14907:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:14908:1: ( ',' )
+            // InternalOCLinEcore.g:14909:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:14910:1: ( ',' )
             {
-            // InternalOCLinEcore.g:14908:1: ( ',' )
-            // InternalOCLinEcore.g:14909:1: ','
+            // InternalOCLinEcore.g:14910:1: ( ',' )
+            // InternalOCLinEcore.g:14911:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getCommaKeyword_4_2_0());
@@ -46192,14 +46192,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_4_2__1"
-    // InternalOCLinEcore.g:14922:1: rule__StructuredClassCS__Group_4_2__1 : rule__StructuredClassCS__Group_4_2__1__Impl ;
+    // InternalOCLinEcore.g:14924:1: rule__StructuredClassCS__Group_4_2__1 : rule__StructuredClassCS__Group_4_2__1__Impl ;
     public final void rule__StructuredClassCS__Group_4_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14926:1: ( rule__StructuredClassCS__Group_4_2__1__Impl )
-            // InternalOCLinEcore.g:14927:2: rule__StructuredClassCS__Group_4_2__1__Impl
+            // InternalOCLinEcore.g:14928:1: ( rule__StructuredClassCS__Group_4_2__1__Impl )
+            // InternalOCLinEcore.g:14929:2: rule__StructuredClassCS__Group_4_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__StructuredClassCS__Group_4_2__1__Impl();
@@ -46225,23 +46225,23 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_4_2__1__Impl"
-    // InternalOCLinEcore.g:14933:1: rule__StructuredClassCS__Group_4_2__1__Impl : ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 ) ) ;
+    // InternalOCLinEcore.g:14935:1: rule__StructuredClassCS__Group_4_2__1__Impl : ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 ) ) ;
     public final void rule__StructuredClassCS__Group_4_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14937:1: ( ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 ) ) )
-            // InternalOCLinEcore.g:14938:1: ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 ) )
+            // InternalOCLinEcore.g:14939:1: ( ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 ) ) )
+            // InternalOCLinEcore.g:14940:1: ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 ) )
             {
-            // InternalOCLinEcore.g:14938:1: ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 ) )
-            // InternalOCLinEcore.g:14939:1: ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 )
+            // InternalOCLinEcore.g:14940:1: ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 ) )
+            // InternalOCLinEcore.g:14941:1: ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesAssignment_4_2_1());
             }
-            // InternalOCLinEcore.g:14940:1: ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 )
-            // InternalOCLinEcore.g:14940:2: rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1
+            // InternalOCLinEcore.g:14942:1: ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 )
+            // InternalOCLinEcore.g:14942:2: rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1();
@@ -46276,14 +46276,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_5__0"
-    // InternalOCLinEcore.g:14954:1: rule__StructuredClassCS__Group_5__0 : rule__StructuredClassCS__Group_5__0__Impl rule__StructuredClassCS__Group_5__1 ;
+    // InternalOCLinEcore.g:14956:1: rule__StructuredClassCS__Group_5__0 : rule__StructuredClassCS__Group_5__0__Impl rule__StructuredClassCS__Group_5__1 ;
     public final void rule__StructuredClassCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14958:1: ( rule__StructuredClassCS__Group_5__0__Impl rule__StructuredClassCS__Group_5__1 )
-            // InternalOCLinEcore.g:14959:2: rule__StructuredClassCS__Group_5__0__Impl rule__StructuredClassCS__Group_5__1
+            // InternalOCLinEcore.g:14960:1: ( rule__StructuredClassCS__Group_5__0__Impl rule__StructuredClassCS__Group_5__1 )
+            // InternalOCLinEcore.g:14961:2: rule__StructuredClassCS__Group_5__0__Impl rule__StructuredClassCS__Group_5__1
             {
             pushFollow(FollowSets000.FOLLOW_29);
             rule__StructuredClassCS__Group_5__0__Impl();
@@ -46314,17 +46314,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_5__0__Impl"
-    // InternalOCLinEcore.g:14966:1: rule__StructuredClassCS__Group_5__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:14968:1: rule__StructuredClassCS__Group_5__0__Impl : ( ':' ) ;
     public final void rule__StructuredClassCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14970:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:14971:1: ( ':' )
+            // InternalOCLinEcore.g:14972:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:14973:1: ( ':' )
             {
-            // InternalOCLinEcore.g:14971:1: ( ':' )
-            // InternalOCLinEcore.g:14972:1: ':'
+            // InternalOCLinEcore.g:14973:1: ( ':' )
+            // InternalOCLinEcore.g:14974:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getColonKeyword_5_0());
@@ -46355,14 +46355,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_5__1"
-    // InternalOCLinEcore.g:14985:1: rule__StructuredClassCS__Group_5__1 : rule__StructuredClassCS__Group_5__1__Impl ;
+    // InternalOCLinEcore.g:14987:1: rule__StructuredClassCS__Group_5__1 : rule__StructuredClassCS__Group_5__1__Impl ;
     public final void rule__StructuredClassCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:14989:1: ( rule__StructuredClassCS__Group_5__1__Impl )
-            // InternalOCLinEcore.g:14990:2: rule__StructuredClassCS__Group_5__1__Impl
+            // InternalOCLinEcore.g:14991:1: ( rule__StructuredClassCS__Group_5__1__Impl )
+            // InternalOCLinEcore.g:14992:2: rule__StructuredClassCS__Group_5__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__StructuredClassCS__Group_5__1__Impl();
@@ -46388,23 +46388,23 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_5__1__Impl"
-    // InternalOCLinEcore.g:14996:1: rule__StructuredClassCS__Group_5__1__Impl : ( ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 ) ) ;
+    // InternalOCLinEcore.g:14998:1: rule__StructuredClassCS__Group_5__1__Impl : ( ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 ) ) ;
     public final void rule__StructuredClassCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15000:1: ( ( ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 ) ) )
-            // InternalOCLinEcore.g:15001:1: ( ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 ) )
+            // InternalOCLinEcore.g:15002:1: ( ( ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 ) ) )
+            // InternalOCLinEcore.g:15003:1: ( ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 ) )
             {
-            // InternalOCLinEcore.g:15001:1: ( ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 ) )
-            // InternalOCLinEcore.g:15002:1: ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 )
+            // InternalOCLinEcore.g:15003:1: ( ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 ) )
+            // InternalOCLinEcore.g:15004:1: ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getInstanceClassNameAssignment_5_1());
             }
-            // InternalOCLinEcore.g:15003:1: ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 )
-            // InternalOCLinEcore.g:15003:2: rule__StructuredClassCS__InstanceClassNameAssignment_5_1
+            // InternalOCLinEcore.g:15005:1: ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 )
+            // InternalOCLinEcore.g:15005:2: rule__StructuredClassCS__InstanceClassNameAssignment_5_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__StructuredClassCS__InstanceClassNameAssignment_5_1();
@@ -46439,14 +46439,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_6__0"
-    // InternalOCLinEcore.g:15017:1: rule__StructuredClassCS__Group_6__0 : rule__StructuredClassCS__Group_6__0__Impl rule__StructuredClassCS__Group_6__1 ;
+    // InternalOCLinEcore.g:15019:1: rule__StructuredClassCS__Group_6__0 : rule__StructuredClassCS__Group_6__0__Impl rule__StructuredClassCS__Group_6__1 ;
     public final void rule__StructuredClassCS__Group_6__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15021:1: ( rule__StructuredClassCS__Group_6__0__Impl rule__StructuredClassCS__Group_6__1 )
-            // InternalOCLinEcore.g:15022:2: rule__StructuredClassCS__Group_6__0__Impl rule__StructuredClassCS__Group_6__1
+            // InternalOCLinEcore.g:15023:1: ( rule__StructuredClassCS__Group_6__0__Impl rule__StructuredClassCS__Group_6__1 )
+            // InternalOCLinEcore.g:15024:2: rule__StructuredClassCS__Group_6__0__Impl rule__StructuredClassCS__Group_6__1
             {
             pushFollow(FollowSets000.FOLLOW_76);
             rule__StructuredClassCS__Group_6__0__Impl();
@@ -46477,17 +46477,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_6__0__Impl"
-    // InternalOCLinEcore.g:15029:1: rule__StructuredClassCS__Group_6__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:15031:1: rule__StructuredClassCS__Group_6__0__Impl : ( '{' ) ;
     public final void rule__StructuredClassCS__Group_6__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15033:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:15034:1: ( '{' )
+            // InternalOCLinEcore.g:15035:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:15036:1: ( '{' )
             {
-            // InternalOCLinEcore.g:15034:1: ( '{' )
-            // InternalOCLinEcore.g:15035:1: '{'
+            // InternalOCLinEcore.g:15036:1: ( '{' )
+            // InternalOCLinEcore.g:15037:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_6_0());
@@ -46518,14 +46518,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_6__1"
-    // InternalOCLinEcore.g:15048:1: rule__StructuredClassCS__Group_6__1 : rule__StructuredClassCS__Group_6__1__Impl rule__StructuredClassCS__Group_6__2 ;
+    // InternalOCLinEcore.g:15050:1: rule__StructuredClassCS__Group_6__1 : rule__StructuredClassCS__Group_6__1__Impl rule__StructuredClassCS__Group_6__2 ;
     public final void rule__StructuredClassCS__Group_6__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15052:1: ( rule__StructuredClassCS__Group_6__1__Impl rule__StructuredClassCS__Group_6__2 )
-            // InternalOCLinEcore.g:15053:2: rule__StructuredClassCS__Group_6__1__Impl rule__StructuredClassCS__Group_6__2
+            // InternalOCLinEcore.g:15054:1: ( rule__StructuredClassCS__Group_6__1__Impl rule__StructuredClassCS__Group_6__2 )
+            // InternalOCLinEcore.g:15055:2: rule__StructuredClassCS__Group_6__1__Impl rule__StructuredClassCS__Group_6__2
             {
             pushFollow(FollowSets000.FOLLOW_76);
             rule__StructuredClassCS__Group_6__1__Impl();
@@ -46556,22 +46556,22 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_6__1__Impl"
-    // InternalOCLinEcore.g:15060:1: rule__StructuredClassCS__Group_6__1__Impl : ( ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )? ) ;
+    // InternalOCLinEcore.g:15062:1: rule__StructuredClassCS__Group_6__1__Impl : ( ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )? ) ;
     public final void rule__StructuredClassCS__Group_6__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15064:1: ( ( ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )? ) )
-            // InternalOCLinEcore.g:15065:1: ( ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )? )
+            // InternalOCLinEcore.g:15066:1: ( ( ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )? ) )
+            // InternalOCLinEcore.g:15067:1: ( ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )? )
             {
-            // InternalOCLinEcore.g:15065:1: ( ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )? )
-            // InternalOCLinEcore.g:15066:1: ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )?
+            // InternalOCLinEcore.g:15067:1: ( ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )? )
+            // InternalOCLinEcore.g:15068:1: ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getIsInterfaceAssignment_6_1());
             }
-            // InternalOCLinEcore.g:15067:1: ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )?
+            // InternalOCLinEcore.g:15069:1: ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )?
             int alt175=2;
             int LA175_0 = input.LA(1);
 
@@ -46580,7 +46580,7 @@
             }
             switch (alt175) {
                 case 1 :
-                    // InternalOCLinEcore.g:15067:2: rule__StructuredClassCS__IsInterfaceAssignment_6_1
+                    // InternalOCLinEcore.g:15069:2: rule__StructuredClassCS__IsInterfaceAssignment_6_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__StructuredClassCS__IsInterfaceAssignment_6_1();
@@ -46618,14 +46618,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_6__2"
-    // InternalOCLinEcore.g:15077:1: rule__StructuredClassCS__Group_6__2 : rule__StructuredClassCS__Group_6__2__Impl ;
+    // InternalOCLinEcore.g:15079:1: rule__StructuredClassCS__Group_6__2 : rule__StructuredClassCS__Group_6__2__Impl ;
     public final void rule__StructuredClassCS__Group_6__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15081:1: ( rule__StructuredClassCS__Group_6__2__Impl )
-            // InternalOCLinEcore.g:15082:2: rule__StructuredClassCS__Group_6__2__Impl
+            // InternalOCLinEcore.g:15083:1: ( rule__StructuredClassCS__Group_6__2__Impl )
+            // InternalOCLinEcore.g:15084:2: rule__StructuredClassCS__Group_6__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__StructuredClassCS__Group_6__2__Impl();
@@ -46651,17 +46651,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_6__2__Impl"
-    // InternalOCLinEcore.g:15088:1: rule__StructuredClassCS__Group_6__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:15090:1: rule__StructuredClassCS__Group_6__2__Impl : ( '}' ) ;
     public final void rule__StructuredClassCS__Group_6__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15092:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:15093:1: ( '}' )
+            // InternalOCLinEcore.g:15094:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:15095:1: ( '}' )
             {
-            // InternalOCLinEcore.g:15093:1: ( '}' )
-            // InternalOCLinEcore.g:15094:1: '}'
+            // InternalOCLinEcore.g:15095:1: ( '}' )
+            // InternalOCLinEcore.g:15096:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_6_2());
@@ -46692,14 +46692,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_7_0__0"
-    // InternalOCLinEcore.g:15113:1: rule__StructuredClassCS__Group_7_0__0 : rule__StructuredClassCS__Group_7_0__0__Impl rule__StructuredClassCS__Group_7_0__1 ;
+    // InternalOCLinEcore.g:15115:1: rule__StructuredClassCS__Group_7_0__0 : rule__StructuredClassCS__Group_7_0__0__Impl rule__StructuredClassCS__Group_7_0__1 ;
     public final void rule__StructuredClassCS__Group_7_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15117:1: ( rule__StructuredClassCS__Group_7_0__0__Impl rule__StructuredClassCS__Group_7_0__1 )
-            // InternalOCLinEcore.g:15118:2: rule__StructuredClassCS__Group_7_0__0__Impl rule__StructuredClassCS__Group_7_0__1
+            // InternalOCLinEcore.g:15119:1: ( rule__StructuredClassCS__Group_7_0__0__Impl rule__StructuredClassCS__Group_7_0__1 )
+            // InternalOCLinEcore.g:15120:2: rule__StructuredClassCS__Group_7_0__0__Impl rule__StructuredClassCS__Group_7_0__1
             {
             pushFollow(FollowSets000.FOLLOW_45);
             rule__StructuredClassCS__Group_7_0__0__Impl();
@@ -46730,17 +46730,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_7_0__0__Impl"
-    // InternalOCLinEcore.g:15125:1: rule__StructuredClassCS__Group_7_0__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:15127:1: rule__StructuredClassCS__Group_7_0__0__Impl : ( '{' ) ;
     public final void rule__StructuredClassCS__Group_7_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15129:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:15130:1: ( '{' )
+            // InternalOCLinEcore.g:15131:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:15132:1: ( '{' )
             {
-            // InternalOCLinEcore.g:15130:1: ( '{' )
-            // InternalOCLinEcore.g:15131:1: '{'
+            // InternalOCLinEcore.g:15132:1: ( '{' )
+            // InternalOCLinEcore.g:15133:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_7_0_0());
@@ -46771,14 +46771,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_7_0__1"
-    // InternalOCLinEcore.g:15144:1: rule__StructuredClassCS__Group_7_0__1 : rule__StructuredClassCS__Group_7_0__1__Impl rule__StructuredClassCS__Group_7_0__2 ;
+    // InternalOCLinEcore.g:15146:1: rule__StructuredClassCS__Group_7_0__1 : rule__StructuredClassCS__Group_7_0__1__Impl rule__StructuredClassCS__Group_7_0__2 ;
     public final void rule__StructuredClassCS__Group_7_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15148:1: ( rule__StructuredClassCS__Group_7_0__1__Impl rule__StructuredClassCS__Group_7_0__2 )
-            // InternalOCLinEcore.g:15149:2: rule__StructuredClassCS__Group_7_0__1__Impl rule__StructuredClassCS__Group_7_0__2
+            // InternalOCLinEcore.g:15150:1: ( rule__StructuredClassCS__Group_7_0__1__Impl rule__StructuredClassCS__Group_7_0__2 )
+            // InternalOCLinEcore.g:15151:2: rule__StructuredClassCS__Group_7_0__1__Impl rule__StructuredClassCS__Group_7_0__2
             {
             pushFollow(FollowSets000.FOLLOW_45);
             rule__StructuredClassCS__Group_7_0__1__Impl();
@@ -46809,22 +46809,22 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_7_0__1__Impl"
-    // InternalOCLinEcore.g:15156:1: rule__StructuredClassCS__Group_7_0__1__Impl : ( ( rule__StructuredClassCS__Alternatives_7_0_1 )* ) ;
+    // InternalOCLinEcore.g:15158:1: rule__StructuredClassCS__Group_7_0__1__Impl : ( ( rule__StructuredClassCS__Alternatives_7_0_1 )* ) ;
     public final void rule__StructuredClassCS__Group_7_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15160:1: ( ( ( rule__StructuredClassCS__Alternatives_7_0_1 )* ) )
-            // InternalOCLinEcore.g:15161:1: ( ( rule__StructuredClassCS__Alternatives_7_0_1 )* )
+            // InternalOCLinEcore.g:15162:1: ( ( ( rule__StructuredClassCS__Alternatives_7_0_1 )* ) )
+            // InternalOCLinEcore.g:15163:1: ( ( rule__StructuredClassCS__Alternatives_7_0_1 )* )
             {
-            // InternalOCLinEcore.g:15161:1: ( ( rule__StructuredClassCS__Alternatives_7_0_1 )* )
-            // InternalOCLinEcore.g:15162:1: ( rule__StructuredClassCS__Alternatives_7_0_1 )*
+            // InternalOCLinEcore.g:15163:1: ( ( rule__StructuredClassCS__Alternatives_7_0_1 )* )
+            // InternalOCLinEcore.g:15164:1: ( rule__StructuredClassCS__Alternatives_7_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getAlternatives_7_0_1());
             }
-            // InternalOCLinEcore.g:15163:1: ( rule__StructuredClassCS__Alternatives_7_0_1 )*
+            // InternalOCLinEcore.g:15165:1: ( rule__StructuredClassCS__Alternatives_7_0_1 )*
             loop176:
             do {
                 int alt176=2;
@@ -46837,7 +46837,7 @@
 
                 switch (alt176) {
             	case 1 :
-            	    // InternalOCLinEcore.g:15163:2: rule__StructuredClassCS__Alternatives_7_0_1
+            	    // InternalOCLinEcore.g:15165:2: rule__StructuredClassCS__Alternatives_7_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_46);
             	    rule__StructuredClassCS__Alternatives_7_0_1();
@@ -46878,14 +46878,14 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_7_0__2"
-    // InternalOCLinEcore.g:15173:1: rule__StructuredClassCS__Group_7_0__2 : rule__StructuredClassCS__Group_7_0__2__Impl ;
+    // InternalOCLinEcore.g:15175:1: rule__StructuredClassCS__Group_7_0__2 : rule__StructuredClassCS__Group_7_0__2__Impl ;
     public final void rule__StructuredClassCS__Group_7_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15177:1: ( rule__StructuredClassCS__Group_7_0__2__Impl )
-            // InternalOCLinEcore.g:15178:2: rule__StructuredClassCS__Group_7_0__2__Impl
+            // InternalOCLinEcore.g:15179:1: ( rule__StructuredClassCS__Group_7_0__2__Impl )
+            // InternalOCLinEcore.g:15180:2: rule__StructuredClassCS__Group_7_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__StructuredClassCS__Group_7_0__2__Impl();
@@ -46911,17 +46911,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__Group_7_0__2__Impl"
-    // InternalOCLinEcore.g:15184:1: rule__StructuredClassCS__Group_7_0__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:15186:1: rule__StructuredClassCS__Group_7_0__2__Impl : ( '}' ) ;
     public final void rule__StructuredClassCS__Group_7_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15188:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:15189:1: ( '}' )
+            // InternalOCLinEcore.g:15190:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:15191:1: ( '}' )
             {
-            // InternalOCLinEcore.g:15189:1: ( '}' )
-            // InternalOCLinEcore.g:15190:1: '}'
+            // InternalOCLinEcore.g:15191:1: ( '}' )
+            // InternalOCLinEcore.g:15192:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_7_0_2());
@@ -46952,14 +46952,14 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group__0"
-    // InternalOCLinEcore.g:15209:1: rule__SysMLCS__Group__0 : rule__SysMLCS__Group__0__Impl rule__SysMLCS__Group__1 ;
+    // InternalOCLinEcore.g:15211:1: rule__SysMLCS__Group__0 : rule__SysMLCS__Group__0__Impl rule__SysMLCS__Group__1 ;
     public final void rule__SysMLCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15213:1: ( rule__SysMLCS__Group__0__Impl rule__SysMLCS__Group__1 )
-            // InternalOCLinEcore.g:15214:2: rule__SysMLCS__Group__0__Impl rule__SysMLCS__Group__1
+            // InternalOCLinEcore.g:15215:1: ( rule__SysMLCS__Group__0__Impl rule__SysMLCS__Group__1 )
+            // InternalOCLinEcore.g:15216:2: rule__SysMLCS__Group__0__Impl rule__SysMLCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_77);
             rule__SysMLCS__Group__0__Impl();
@@ -46990,23 +46990,23 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group__0__Impl"
-    // InternalOCLinEcore.g:15221:1: rule__SysMLCS__Group__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:15223:1: rule__SysMLCS__Group__0__Impl : ( () ) ;
     public final void rule__SysMLCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15225:1: ( ( () ) )
-            // InternalOCLinEcore.g:15226:1: ( () )
+            // InternalOCLinEcore.g:15227:1: ( ( () ) )
+            // InternalOCLinEcore.g:15228:1: ( () )
             {
-            // InternalOCLinEcore.g:15226:1: ( () )
-            // InternalOCLinEcore.g:15227:1: ()
+            // InternalOCLinEcore.g:15228:1: ( () )
+            // InternalOCLinEcore.g:15229:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSysMLCSAccess().getSysMLCSAction_0());
             }
-            // InternalOCLinEcore.g:15228:1: ()
-            // InternalOCLinEcore.g:15230:1:
+            // InternalOCLinEcore.g:15230:1: ()
+            // InternalOCLinEcore.g:15232:1:
             {
             }
 
@@ -47031,14 +47031,14 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group__1"
-    // InternalOCLinEcore.g:15240:1: rule__SysMLCS__Group__1 : rule__SysMLCS__Group__1__Impl rule__SysMLCS__Group__2 ;
+    // InternalOCLinEcore.g:15242:1: rule__SysMLCS__Group__1 : rule__SysMLCS__Group__1__Impl rule__SysMLCS__Group__2 ;
     public final void rule__SysMLCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15244:1: ( rule__SysMLCS__Group__1__Impl rule__SysMLCS__Group__2 )
-            // InternalOCLinEcore.g:15245:2: rule__SysMLCS__Group__1__Impl rule__SysMLCS__Group__2
+            // InternalOCLinEcore.g:15246:1: ( rule__SysMLCS__Group__1__Impl rule__SysMLCS__Group__2 )
+            // InternalOCLinEcore.g:15247:2: rule__SysMLCS__Group__1__Impl rule__SysMLCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_78);
             rule__SysMLCS__Group__1__Impl();
@@ -47069,17 +47069,17 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group__1__Impl"
-    // InternalOCLinEcore.g:15252:1: rule__SysMLCS__Group__1__Impl : ( 'sysml' ) ;
+    // InternalOCLinEcore.g:15254:1: rule__SysMLCS__Group__1__Impl : ( 'sysml' ) ;
     public final void rule__SysMLCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15256:1: ( ( 'sysml' ) )
-            // InternalOCLinEcore.g:15257:1: ( 'sysml' )
+            // InternalOCLinEcore.g:15258:1: ( ( 'sysml' ) )
+            // InternalOCLinEcore.g:15259:1: ( 'sysml' )
             {
-            // InternalOCLinEcore.g:15257:1: ( 'sysml' )
-            // InternalOCLinEcore.g:15258:1: 'sysml'
+            // InternalOCLinEcore.g:15259:1: ( 'sysml' )
+            // InternalOCLinEcore.g:15260:1: 'sysml'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSysMLCSAccess().getSysmlKeyword_1());
@@ -47110,14 +47110,14 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group__2"
-    // InternalOCLinEcore.g:15271:1: rule__SysMLCS__Group__2 : rule__SysMLCS__Group__2__Impl ;
+    // InternalOCLinEcore.g:15273:1: rule__SysMLCS__Group__2 : rule__SysMLCS__Group__2__Impl ;
     public final void rule__SysMLCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15275:1: ( rule__SysMLCS__Group__2__Impl )
-            // InternalOCLinEcore.g:15276:2: rule__SysMLCS__Group__2__Impl
+            // InternalOCLinEcore.g:15277:1: ( rule__SysMLCS__Group__2__Impl )
+            // InternalOCLinEcore.g:15278:2: rule__SysMLCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SysMLCS__Group__2__Impl();
@@ -47143,23 +47143,23 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group__2__Impl"
-    // InternalOCLinEcore.g:15282:1: rule__SysMLCS__Group__2__Impl : ( ( rule__SysMLCS__Alternatives_2 ) ) ;
+    // InternalOCLinEcore.g:15284:1: rule__SysMLCS__Group__2__Impl : ( ( rule__SysMLCS__Alternatives_2 ) ) ;
     public final void rule__SysMLCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15286:1: ( ( ( rule__SysMLCS__Alternatives_2 ) ) )
-            // InternalOCLinEcore.g:15287:1: ( ( rule__SysMLCS__Alternatives_2 ) )
+            // InternalOCLinEcore.g:15288:1: ( ( ( rule__SysMLCS__Alternatives_2 ) ) )
+            // InternalOCLinEcore.g:15289:1: ( ( rule__SysMLCS__Alternatives_2 ) )
             {
-            // InternalOCLinEcore.g:15287:1: ( ( rule__SysMLCS__Alternatives_2 ) )
-            // InternalOCLinEcore.g:15288:1: ( rule__SysMLCS__Alternatives_2 )
+            // InternalOCLinEcore.g:15289:1: ( ( rule__SysMLCS__Alternatives_2 ) )
+            // InternalOCLinEcore.g:15290:1: ( rule__SysMLCS__Alternatives_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSysMLCSAccess().getAlternatives_2());
             }
-            // InternalOCLinEcore.g:15289:1: ( rule__SysMLCS__Alternatives_2 )
-            // InternalOCLinEcore.g:15289:2: rule__SysMLCS__Alternatives_2
+            // InternalOCLinEcore.g:15291:1: ( rule__SysMLCS__Alternatives_2 )
+            // InternalOCLinEcore.g:15291:2: rule__SysMLCS__Alternatives_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SysMLCS__Alternatives_2();
@@ -47194,14 +47194,14 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_0__0"
-    // InternalOCLinEcore.g:15305:1: rule__SysMLCS__Group_2_0__0 : rule__SysMLCS__Group_2_0__0__Impl rule__SysMLCS__Group_2_0__1 ;
+    // InternalOCLinEcore.g:15307:1: rule__SysMLCS__Group_2_0__0 : rule__SysMLCS__Group_2_0__0__Impl rule__SysMLCS__Group_2_0__1 ;
     public final void rule__SysMLCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15309:1: ( rule__SysMLCS__Group_2_0__0__Impl rule__SysMLCS__Group_2_0__1 )
-            // InternalOCLinEcore.g:15310:2: rule__SysMLCS__Group_2_0__0__Impl rule__SysMLCS__Group_2_0__1
+            // InternalOCLinEcore.g:15311:1: ( rule__SysMLCS__Group_2_0__0__Impl rule__SysMLCS__Group_2_0__1 )
+            // InternalOCLinEcore.g:15312:2: rule__SysMLCS__Group_2_0__0__Impl rule__SysMLCS__Group_2_0__1
             {
             pushFollow(FollowSets000.FOLLOW_52);
             rule__SysMLCS__Group_2_0__0__Impl();
@@ -47232,23 +47232,23 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_0__0__Impl"
-    // InternalOCLinEcore.g:15317:1: rule__SysMLCS__Group_2_0__0__Impl : ( ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 ) ) ;
+    // InternalOCLinEcore.g:15319:1: rule__SysMLCS__Group_2_0__0__Impl : ( ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 ) ) ;
     public final void rule__SysMLCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15321:1: ( ( ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 ) ) )
-            // InternalOCLinEcore.g:15322:1: ( ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 ) )
+            // InternalOCLinEcore.g:15323:1: ( ( ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 ) ) )
+            // InternalOCLinEcore.g:15324:1: ( ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 ) )
             {
-            // InternalOCLinEcore.g:15322:1: ( ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 ) )
-            // InternalOCLinEcore.g:15323:1: ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 )
+            // InternalOCLinEcore.g:15324:1: ( ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 ) )
+            // InternalOCLinEcore.g:15325:1: ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSysMLCSAccess().getOwnedDetailsAssignment_2_0_0());
             }
-            // InternalOCLinEcore.g:15324:1: ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 )
-            // InternalOCLinEcore.g:15324:2: rule__SysMLCS__OwnedDetailsAssignment_2_0_0
+            // InternalOCLinEcore.g:15326:1: ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 )
+            // InternalOCLinEcore.g:15326:2: rule__SysMLCS__OwnedDetailsAssignment_2_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SysMLCS__OwnedDetailsAssignment_2_0_0();
@@ -47283,14 +47283,14 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_0__1"
-    // InternalOCLinEcore.g:15334:1: rule__SysMLCS__Group_2_0__1 : rule__SysMLCS__Group_2_0__1__Impl ;
+    // InternalOCLinEcore.g:15336:1: rule__SysMLCS__Group_2_0__1 : rule__SysMLCS__Group_2_0__1__Impl ;
     public final void rule__SysMLCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15338:1: ( rule__SysMLCS__Group_2_0__1__Impl )
-            // InternalOCLinEcore.g:15339:2: rule__SysMLCS__Group_2_0__1__Impl
+            // InternalOCLinEcore.g:15340:1: ( rule__SysMLCS__Group_2_0__1__Impl )
+            // InternalOCLinEcore.g:15341:2: rule__SysMLCS__Group_2_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SysMLCS__Group_2_0__1__Impl();
@@ -47316,17 +47316,17 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_0__1__Impl"
-    // InternalOCLinEcore.g:15345:1: rule__SysMLCS__Group_2_0__1__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:15347:1: rule__SysMLCS__Group_2_0__1__Impl : ( ';' ) ;
     public final void rule__SysMLCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15349:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:15350:1: ( ';' )
+            // InternalOCLinEcore.g:15351:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:15352:1: ( ';' )
             {
-            // InternalOCLinEcore.g:15350:1: ( ';' )
-            // InternalOCLinEcore.g:15351:1: ';'
+            // InternalOCLinEcore.g:15352:1: ( ';' )
+            // InternalOCLinEcore.g:15353:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_0_1());
@@ -47357,14 +47357,14 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_1__0"
-    // InternalOCLinEcore.g:15368:1: rule__SysMLCS__Group_2_1__0 : rule__SysMLCS__Group_2_1__0__Impl rule__SysMLCS__Group_2_1__1 ;
+    // InternalOCLinEcore.g:15370:1: rule__SysMLCS__Group_2_1__0 : rule__SysMLCS__Group_2_1__0__Impl rule__SysMLCS__Group_2_1__1 ;
     public final void rule__SysMLCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15372:1: ( rule__SysMLCS__Group_2_1__0__Impl rule__SysMLCS__Group_2_1__1 )
-            // InternalOCLinEcore.g:15373:2: rule__SysMLCS__Group_2_1__0__Impl rule__SysMLCS__Group_2_1__1
+            // InternalOCLinEcore.g:15374:1: ( rule__SysMLCS__Group_2_1__0__Impl rule__SysMLCS__Group_2_1__1 )
+            // InternalOCLinEcore.g:15375:2: rule__SysMLCS__Group_2_1__0__Impl rule__SysMLCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_79);
             rule__SysMLCS__Group_2_1__0__Impl();
@@ -47395,17 +47395,17 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_1__0__Impl"
-    // InternalOCLinEcore.g:15380:1: rule__SysMLCS__Group_2_1__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:15382:1: rule__SysMLCS__Group_2_1__0__Impl : ( '{' ) ;
     public final void rule__SysMLCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15384:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:15385:1: ( '{' )
+            // InternalOCLinEcore.g:15386:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:15387:1: ( '{' )
             {
-            // InternalOCLinEcore.g:15385:1: ( '{' )
-            // InternalOCLinEcore.g:15386:1: '{'
+            // InternalOCLinEcore.g:15387:1: ( '{' )
+            // InternalOCLinEcore.g:15388:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSysMLCSAccess().getLeftCurlyBracketKeyword_2_1_0());
@@ -47436,14 +47436,14 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_1__1"
-    // InternalOCLinEcore.g:15399:1: rule__SysMLCS__Group_2_1__1 : rule__SysMLCS__Group_2_1__1__Impl rule__SysMLCS__Group_2_1__2 ;
+    // InternalOCLinEcore.g:15401:1: rule__SysMLCS__Group_2_1__1 : rule__SysMLCS__Group_2_1__1__Impl rule__SysMLCS__Group_2_1__2 ;
     public final void rule__SysMLCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15403:1: ( rule__SysMLCS__Group_2_1__1__Impl rule__SysMLCS__Group_2_1__2 )
-            // InternalOCLinEcore.g:15404:2: rule__SysMLCS__Group_2_1__1__Impl rule__SysMLCS__Group_2_1__2
+            // InternalOCLinEcore.g:15405:1: ( rule__SysMLCS__Group_2_1__1__Impl rule__SysMLCS__Group_2_1__2 )
+            // InternalOCLinEcore.g:15406:2: rule__SysMLCS__Group_2_1__1__Impl rule__SysMLCS__Group_2_1__2
             {
             pushFollow(FollowSets000.FOLLOW_79);
             rule__SysMLCS__Group_2_1__1__Impl();
@@ -47474,22 +47474,22 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_1__1__Impl"
-    // InternalOCLinEcore.g:15411:1: rule__SysMLCS__Group_2_1__1__Impl : ( ( rule__SysMLCS__Group_2_1_1__0 )* ) ;
+    // InternalOCLinEcore.g:15413:1: rule__SysMLCS__Group_2_1__1__Impl : ( ( rule__SysMLCS__Group_2_1_1__0 )* ) ;
     public final void rule__SysMLCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15415:1: ( ( ( rule__SysMLCS__Group_2_1_1__0 )* ) )
-            // InternalOCLinEcore.g:15416:1: ( ( rule__SysMLCS__Group_2_1_1__0 )* )
+            // InternalOCLinEcore.g:15417:1: ( ( ( rule__SysMLCS__Group_2_1_1__0 )* ) )
+            // InternalOCLinEcore.g:15418:1: ( ( rule__SysMLCS__Group_2_1_1__0 )* )
             {
-            // InternalOCLinEcore.g:15416:1: ( ( rule__SysMLCS__Group_2_1_1__0 )* )
-            // InternalOCLinEcore.g:15417:1: ( rule__SysMLCS__Group_2_1_1__0 )*
+            // InternalOCLinEcore.g:15418:1: ( ( rule__SysMLCS__Group_2_1_1__0 )* )
+            // InternalOCLinEcore.g:15419:1: ( rule__SysMLCS__Group_2_1_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSysMLCSAccess().getGroup_2_1_1());
             }
-            // InternalOCLinEcore.g:15418:1: ( rule__SysMLCS__Group_2_1_1__0 )*
+            // InternalOCLinEcore.g:15420:1: ( rule__SysMLCS__Group_2_1_1__0 )*
             loop177:
             do {
                 int alt177=2;
@@ -47502,7 +47502,7 @@
 
                 switch (alt177) {
             	case 1 :
-            	    // InternalOCLinEcore.g:15418:2: rule__SysMLCS__Group_2_1_1__0
+            	    // InternalOCLinEcore.g:15420:2: rule__SysMLCS__Group_2_1_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_80);
             	    rule__SysMLCS__Group_2_1_1__0();
@@ -47543,14 +47543,14 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_1__2"
-    // InternalOCLinEcore.g:15428:1: rule__SysMLCS__Group_2_1__2 : rule__SysMLCS__Group_2_1__2__Impl ;
+    // InternalOCLinEcore.g:15430:1: rule__SysMLCS__Group_2_1__2 : rule__SysMLCS__Group_2_1__2__Impl ;
     public final void rule__SysMLCS__Group_2_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15432:1: ( rule__SysMLCS__Group_2_1__2__Impl )
-            // InternalOCLinEcore.g:15433:2: rule__SysMLCS__Group_2_1__2__Impl
+            // InternalOCLinEcore.g:15434:1: ( rule__SysMLCS__Group_2_1__2__Impl )
+            // InternalOCLinEcore.g:15435:2: rule__SysMLCS__Group_2_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SysMLCS__Group_2_1__2__Impl();
@@ -47576,17 +47576,17 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_1__2__Impl"
-    // InternalOCLinEcore.g:15439:1: rule__SysMLCS__Group_2_1__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:15441:1: rule__SysMLCS__Group_2_1__2__Impl : ( '}' ) ;
     public final void rule__SysMLCS__Group_2_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15443:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:15444:1: ( '}' )
+            // InternalOCLinEcore.g:15445:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:15446:1: ( '}' )
             {
-            // InternalOCLinEcore.g:15444:1: ( '}' )
-            // InternalOCLinEcore.g:15445:1: '}'
+            // InternalOCLinEcore.g:15446:1: ( '}' )
+            // InternalOCLinEcore.g:15447:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSysMLCSAccess().getRightCurlyBracketKeyword_2_1_2());
@@ -47617,14 +47617,14 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_1_1__0"
-    // InternalOCLinEcore.g:15464:1: rule__SysMLCS__Group_2_1_1__0 : rule__SysMLCS__Group_2_1_1__0__Impl rule__SysMLCS__Group_2_1_1__1 ;
+    // InternalOCLinEcore.g:15466:1: rule__SysMLCS__Group_2_1_1__0 : rule__SysMLCS__Group_2_1_1__0__Impl rule__SysMLCS__Group_2_1_1__1 ;
     public final void rule__SysMLCS__Group_2_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15468:1: ( rule__SysMLCS__Group_2_1_1__0__Impl rule__SysMLCS__Group_2_1_1__1 )
-            // InternalOCLinEcore.g:15469:2: rule__SysMLCS__Group_2_1_1__0__Impl rule__SysMLCS__Group_2_1_1__1
+            // InternalOCLinEcore.g:15470:1: ( rule__SysMLCS__Group_2_1_1__0__Impl rule__SysMLCS__Group_2_1_1__1 )
+            // InternalOCLinEcore.g:15471:2: rule__SysMLCS__Group_2_1_1__0__Impl rule__SysMLCS__Group_2_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_52);
             rule__SysMLCS__Group_2_1_1__0__Impl();
@@ -47655,23 +47655,23 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_1_1__0__Impl"
-    // InternalOCLinEcore.g:15476:1: rule__SysMLCS__Group_2_1_1__0__Impl : ( ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 ) ) ;
+    // InternalOCLinEcore.g:15478:1: rule__SysMLCS__Group_2_1_1__0__Impl : ( ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 ) ) ;
     public final void rule__SysMLCS__Group_2_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15480:1: ( ( ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 ) ) )
-            // InternalOCLinEcore.g:15481:1: ( ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 ) )
+            // InternalOCLinEcore.g:15482:1: ( ( ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 ) ) )
+            // InternalOCLinEcore.g:15483:1: ( ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 ) )
             {
-            // InternalOCLinEcore.g:15481:1: ( ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 ) )
-            // InternalOCLinEcore.g:15482:1: ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 )
+            // InternalOCLinEcore.g:15483:1: ( ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 ) )
+            // InternalOCLinEcore.g:15484:1: ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSysMLCSAccess().getOwnedDetailsAssignment_2_1_1_0());
             }
-            // InternalOCLinEcore.g:15483:1: ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 )
-            // InternalOCLinEcore.g:15483:2: rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0
+            // InternalOCLinEcore.g:15485:1: ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 )
+            // InternalOCLinEcore.g:15485:2: rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0();
@@ -47706,14 +47706,14 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_1_1__1"
-    // InternalOCLinEcore.g:15493:1: rule__SysMLCS__Group_2_1_1__1 : rule__SysMLCS__Group_2_1_1__1__Impl ;
+    // InternalOCLinEcore.g:15495:1: rule__SysMLCS__Group_2_1_1__1 : rule__SysMLCS__Group_2_1_1__1__Impl ;
     public final void rule__SysMLCS__Group_2_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15497:1: ( rule__SysMLCS__Group_2_1_1__1__Impl )
-            // InternalOCLinEcore.g:15498:2: rule__SysMLCS__Group_2_1_1__1__Impl
+            // InternalOCLinEcore.g:15499:1: ( rule__SysMLCS__Group_2_1_1__1__Impl )
+            // InternalOCLinEcore.g:15500:2: rule__SysMLCS__Group_2_1_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SysMLCS__Group_2_1_1__1__Impl();
@@ -47739,17 +47739,17 @@
 
 
     // $ANTLR start "rule__SysMLCS__Group_2_1_1__1__Impl"
-    // InternalOCLinEcore.g:15504:1: rule__SysMLCS__Group_2_1_1__1__Impl : ( ';' ) ;
+    // InternalOCLinEcore.g:15506:1: rule__SysMLCS__Group_2_1_1__1__Impl : ( ';' ) ;
     public final void rule__SysMLCS__Group_2_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15508:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:15509:1: ( ';' )
+            // InternalOCLinEcore.g:15510:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:15511:1: ( ';' )
             {
-            // InternalOCLinEcore.g:15509:1: ( ';' )
-            // InternalOCLinEcore.g:15510:1: ';'
+            // InternalOCLinEcore.g:15511:1: ( ';' )
+            // InternalOCLinEcore.g:15512:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_1_1_1());
@@ -47780,14 +47780,14 @@
 
 
     // $ANTLR start "rule__TypedMultiplicityRefCS__Group__0"
-    // InternalOCLinEcore.g:15527:1: rule__TypedMultiplicityRefCS__Group__0 : rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1 ;
+    // InternalOCLinEcore.g:15529:1: rule__TypedMultiplicityRefCS__Group__0 : rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1 ;
     public final void rule__TypedMultiplicityRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15531:1: ( rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1 )
-            // InternalOCLinEcore.g:15532:2: rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1
+            // InternalOCLinEcore.g:15533:1: ( rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1 )
+            // InternalOCLinEcore.g:15534:2: rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_81);
             rule__TypedMultiplicityRefCS__Group__0__Impl();
@@ -47818,17 +47818,17 @@
 
 
     // $ANTLR start "rule__TypedMultiplicityRefCS__Group__0__Impl"
-    // InternalOCLinEcore.g:15539:1: rule__TypedMultiplicityRefCS__Group__0__Impl : ( ruleTypedRefCS ) ;
+    // InternalOCLinEcore.g:15541:1: rule__TypedMultiplicityRefCS__Group__0__Impl : ( ruleTypedRefCS ) ;
     public final void rule__TypedMultiplicityRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15543:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLinEcore.g:15544:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:15545:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLinEcore.g:15546:1: ( ruleTypedRefCS )
             {
-            // InternalOCLinEcore.g:15544:1: ( ruleTypedRefCS )
-            // InternalOCLinEcore.g:15545:1: ruleTypedRefCS
+            // InternalOCLinEcore.g:15546:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:15547:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedRefCSParserRuleCall_0());
@@ -47863,14 +47863,14 @@
 
 
     // $ANTLR start "rule__TypedMultiplicityRefCS__Group__1"
-    // InternalOCLinEcore.g:15556:1: rule__TypedMultiplicityRefCS__Group__1 : rule__TypedMultiplicityRefCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:15558:1: rule__TypedMultiplicityRefCS__Group__1 : rule__TypedMultiplicityRefCS__Group__1__Impl ;
     public final void rule__TypedMultiplicityRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15560:1: ( rule__TypedMultiplicityRefCS__Group__1__Impl )
-            // InternalOCLinEcore.g:15561:2: rule__TypedMultiplicityRefCS__Group__1__Impl
+            // InternalOCLinEcore.g:15562:1: ( rule__TypedMultiplicityRefCS__Group__1__Impl )
+            // InternalOCLinEcore.g:15563:2: rule__TypedMultiplicityRefCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedMultiplicityRefCS__Group__1__Impl();
@@ -47896,22 +47896,22 @@
 
 
     // $ANTLR start "rule__TypedMultiplicityRefCS__Group__1__Impl"
-    // InternalOCLinEcore.g:15567:1: rule__TypedMultiplicityRefCS__Group__1__Impl : ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? ) ;
+    // InternalOCLinEcore.g:15569:1: rule__TypedMultiplicityRefCS__Group__1__Impl : ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? ) ;
     public final void rule__TypedMultiplicityRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15571:1: ( ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? ) )
-            // InternalOCLinEcore.g:15572:1: ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalOCLinEcore.g:15573:1: ( ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? ) )
+            // InternalOCLinEcore.g:15574:1: ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? )
             {
-            // InternalOCLinEcore.g:15572:1: ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? )
-            // InternalOCLinEcore.g:15573:1: ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )?
+            // InternalOCLinEcore.g:15574:1: ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalOCLinEcore.g:15575:1: ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityAssignment_1());
             }
-            // InternalOCLinEcore.g:15574:1: ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )?
+            // InternalOCLinEcore.g:15576:1: ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )?
             int alt178=2;
             int LA178_0 = input.LA(1);
 
@@ -47920,7 +47920,7 @@
             }
             switch (alt178) {
                 case 1 :
-                    // InternalOCLinEcore.g:15574:2: rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1
+                    // InternalOCLinEcore.g:15576:2: rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1();
@@ -47958,14 +47958,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__0"
-    // InternalOCLinEcore.g:15588:1: rule__TemplateSignatureCS__Group_0__0 : rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1 ;
+    // InternalOCLinEcore.g:15590:1: rule__TemplateSignatureCS__Group_0__0 : rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1 ;
     public final void rule__TemplateSignatureCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15592:1: ( rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1 )
-            // InternalOCLinEcore.g:15593:2: rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1
+            // InternalOCLinEcore.g:15594:1: ( rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1 )
+            // InternalOCLinEcore.g:15595:2: rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__TemplateSignatureCS__Group_0__0__Impl();
@@ -47996,17 +47996,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__0__Impl"
-    // InternalOCLinEcore.g:15600:1: rule__TemplateSignatureCS__Group_0__0__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:15602:1: rule__TemplateSignatureCS__Group_0__0__Impl : ( '(' ) ;
     public final void rule__TemplateSignatureCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15604:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:15605:1: ( '(' )
+            // InternalOCLinEcore.g:15606:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:15607:1: ( '(' )
             {
-            // InternalOCLinEcore.g:15605:1: ( '(' )
-            // InternalOCLinEcore.g:15606:1: '('
+            // InternalOCLinEcore.g:15607:1: ( '(' )
+            // InternalOCLinEcore.g:15608:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0());
@@ -48037,14 +48037,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__1"
-    // InternalOCLinEcore.g:15619:1: rule__TemplateSignatureCS__Group_0__1 : rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2 ;
+    // InternalOCLinEcore.g:15621:1: rule__TemplateSignatureCS__Group_0__1 : rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2 ;
     public final void rule__TemplateSignatureCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15623:1: ( rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2 )
-            // InternalOCLinEcore.g:15624:2: rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2
+            // InternalOCLinEcore.g:15625:1: ( rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2 )
+            // InternalOCLinEcore.g:15626:2: rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_19);
             rule__TemplateSignatureCS__Group_0__1__Impl();
@@ -48075,23 +48075,23 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__1__Impl"
-    // InternalOCLinEcore.g:15631:1: rule__TemplateSignatureCS__Group_0__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) ) ;
+    // InternalOCLinEcore.g:15633:1: rule__TemplateSignatureCS__Group_0__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) ) ;
     public final void rule__TemplateSignatureCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15635:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) ) )
-            // InternalOCLinEcore.g:15636:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) )
+            // InternalOCLinEcore.g:15637:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) ) )
+            // InternalOCLinEcore.g:15638:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) )
             {
-            // InternalOCLinEcore.g:15636:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) )
-            // InternalOCLinEcore.g:15637:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 )
+            // InternalOCLinEcore.g:15638:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) )
+            // InternalOCLinEcore.g:15639:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_1());
             }
-            // InternalOCLinEcore.g:15638:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 )
-            // InternalOCLinEcore.g:15638:2: rule__TemplateSignatureCS__OwnedParametersAssignment_0_1
+            // InternalOCLinEcore.g:15640:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 )
+            // InternalOCLinEcore.g:15640:2: rule__TemplateSignatureCS__OwnedParametersAssignment_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__OwnedParametersAssignment_0_1();
@@ -48126,14 +48126,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__2"
-    // InternalOCLinEcore.g:15648:1: rule__TemplateSignatureCS__Group_0__2 : rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3 ;
+    // InternalOCLinEcore.g:15650:1: rule__TemplateSignatureCS__Group_0__2 : rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3 ;
     public final void rule__TemplateSignatureCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15652:1: ( rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3 )
-            // InternalOCLinEcore.g:15653:2: rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3
+            // InternalOCLinEcore.g:15654:1: ( rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3 )
+            // InternalOCLinEcore.g:15655:2: rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3
             {
             pushFollow(FollowSets000.FOLLOW_19);
             rule__TemplateSignatureCS__Group_0__2__Impl();
@@ -48164,22 +48164,22 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__2__Impl"
-    // InternalOCLinEcore.g:15660:1: rule__TemplateSignatureCS__Group_0__2__Impl : ( ( rule__TemplateSignatureCS__Group_0_2__0 )* ) ;
+    // InternalOCLinEcore.g:15662:1: rule__TemplateSignatureCS__Group_0__2__Impl : ( ( rule__TemplateSignatureCS__Group_0_2__0 )* ) ;
     public final void rule__TemplateSignatureCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15664:1: ( ( ( rule__TemplateSignatureCS__Group_0_2__0 )* ) )
-            // InternalOCLinEcore.g:15665:1: ( ( rule__TemplateSignatureCS__Group_0_2__0 )* )
+            // InternalOCLinEcore.g:15666:1: ( ( ( rule__TemplateSignatureCS__Group_0_2__0 )* ) )
+            // InternalOCLinEcore.g:15667:1: ( ( rule__TemplateSignatureCS__Group_0_2__0 )* )
             {
-            // InternalOCLinEcore.g:15665:1: ( ( rule__TemplateSignatureCS__Group_0_2__0 )* )
-            // InternalOCLinEcore.g:15666:1: ( rule__TemplateSignatureCS__Group_0_2__0 )*
+            // InternalOCLinEcore.g:15667:1: ( ( rule__TemplateSignatureCS__Group_0_2__0 )* )
+            // InternalOCLinEcore.g:15668:1: ( rule__TemplateSignatureCS__Group_0_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getGroup_0_2());
             }
-            // InternalOCLinEcore.g:15667:1: ( rule__TemplateSignatureCS__Group_0_2__0 )*
+            // InternalOCLinEcore.g:15669:1: ( rule__TemplateSignatureCS__Group_0_2__0 )*
             loop179:
             do {
                 int alt179=2;
@@ -48192,7 +48192,7 @@
 
                 switch (alt179) {
             	case 1 :
-            	    // InternalOCLinEcore.g:15667:2: rule__TemplateSignatureCS__Group_0_2__0
+            	    // InternalOCLinEcore.g:15669:2: rule__TemplateSignatureCS__Group_0_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__TemplateSignatureCS__Group_0_2__0();
@@ -48233,14 +48233,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__3"
-    // InternalOCLinEcore.g:15677:1: rule__TemplateSignatureCS__Group_0__3 : rule__TemplateSignatureCS__Group_0__3__Impl ;
+    // InternalOCLinEcore.g:15679:1: rule__TemplateSignatureCS__Group_0__3 : rule__TemplateSignatureCS__Group_0__3__Impl ;
     public final void rule__TemplateSignatureCS__Group_0__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15681:1: ( rule__TemplateSignatureCS__Group_0__3__Impl )
-            // InternalOCLinEcore.g:15682:2: rule__TemplateSignatureCS__Group_0__3__Impl
+            // InternalOCLinEcore.g:15683:1: ( rule__TemplateSignatureCS__Group_0__3__Impl )
+            // InternalOCLinEcore.g:15684:2: rule__TemplateSignatureCS__Group_0__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__Group_0__3__Impl();
@@ -48266,17 +48266,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0__3__Impl"
-    // InternalOCLinEcore.g:15688:1: rule__TemplateSignatureCS__Group_0__3__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:15690:1: rule__TemplateSignatureCS__Group_0__3__Impl : ( ')' ) ;
     public final void rule__TemplateSignatureCS__Group_0__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15692:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:15693:1: ( ')' )
+            // InternalOCLinEcore.g:15694:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:15695:1: ( ')' )
             {
-            // InternalOCLinEcore.g:15693:1: ( ')' )
-            // InternalOCLinEcore.g:15694:1: ')'
+            // InternalOCLinEcore.g:15695:1: ( ')' )
+            // InternalOCLinEcore.g:15696:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3());
@@ -48307,14 +48307,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0_2__0"
-    // InternalOCLinEcore.g:15715:1: rule__TemplateSignatureCS__Group_0_2__0 : rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1 ;
+    // InternalOCLinEcore.g:15717:1: rule__TemplateSignatureCS__Group_0_2__0 : rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1 ;
     public final void rule__TemplateSignatureCS__Group_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15719:1: ( rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1 )
-            // InternalOCLinEcore.g:15720:2: rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1
+            // InternalOCLinEcore.g:15721:1: ( rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1 )
+            // InternalOCLinEcore.g:15722:2: rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__TemplateSignatureCS__Group_0_2__0__Impl();
@@ -48345,17 +48345,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0_2__0__Impl"
-    // InternalOCLinEcore.g:15727:1: rule__TemplateSignatureCS__Group_0_2__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:15729:1: rule__TemplateSignatureCS__Group_0_2__0__Impl : ( ',' ) ;
     public final void rule__TemplateSignatureCS__Group_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15731:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:15732:1: ( ',' )
+            // InternalOCLinEcore.g:15733:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:15734:1: ( ',' )
             {
-            // InternalOCLinEcore.g:15732:1: ( ',' )
-            // InternalOCLinEcore.g:15733:1: ','
+            // InternalOCLinEcore.g:15734:1: ( ',' )
+            // InternalOCLinEcore.g:15735:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0());
@@ -48386,14 +48386,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0_2__1"
-    // InternalOCLinEcore.g:15746:1: rule__TemplateSignatureCS__Group_0_2__1 : rule__TemplateSignatureCS__Group_0_2__1__Impl ;
+    // InternalOCLinEcore.g:15748:1: rule__TemplateSignatureCS__Group_0_2__1 : rule__TemplateSignatureCS__Group_0_2__1__Impl ;
     public final void rule__TemplateSignatureCS__Group_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15750:1: ( rule__TemplateSignatureCS__Group_0_2__1__Impl )
-            // InternalOCLinEcore.g:15751:2: rule__TemplateSignatureCS__Group_0_2__1__Impl
+            // InternalOCLinEcore.g:15752:1: ( rule__TemplateSignatureCS__Group_0_2__1__Impl )
+            // InternalOCLinEcore.g:15753:2: rule__TemplateSignatureCS__Group_0_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__Group_0_2__1__Impl();
@@ -48419,23 +48419,23 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_0_2__1__Impl"
-    // InternalOCLinEcore.g:15757:1: rule__TemplateSignatureCS__Group_0_2__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) ) ;
+    // InternalOCLinEcore.g:15759:1: rule__TemplateSignatureCS__Group_0_2__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) ) ;
     public final void rule__TemplateSignatureCS__Group_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15761:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) ) )
-            // InternalOCLinEcore.g:15762:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) )
+            // InternalOCLinEcore.g:15763:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) ) )
+            // InternalOCLinEcore.g:15764:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) )
             {
-            // InternalOCLinEcore.g:15762:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) )
-            // InternalOCLinEcore.g:15763:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 )
+            // InternalOCLinEcore.g:15764:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) )
+            // InternalOCLinEcore.g:15765:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_2_1());
             }
-            // InternalOCLinEcore.g:15764:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 )
-            // InternalOCLinEcore.g:15764:2: rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1
+            // InternalOCLinEcore.g:15766:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 )
+            // InternalOCLinEcore.g:15766:2: rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1();
@@ -48470,14 +48470,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__0"
-    // InternalOCLinEcore.g:15778:1: rule__TemplateSignatureCS__Group_1__0 : rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1 ;
+    // InternalOCLinEcore.g:15780:1: rule__TemplateSignatureCS__Group_1__0 : rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1 ;
     public final void rule__TemplateSignatureCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15782:1: ( rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1 )
-            // InternalOCLinEcore.g:15783:2: rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1
+            // InternalOCLinEcore.g:15784:1: ( rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1 )
+            // InternalOCLinEcore.g:15785:2: rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__TemplateSignatureCS__Group_1__0__Impl();
@@ -48508,17 +48508,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:15790:1: rule__TemplateSignatureCS__Group_1__0__Impl : ( '<' ) ;
+    // InternalOCLinEcore.g:15792:1: rule__TemplateSignatureCS__Group_1__0__Impl : ( '<' ) ;
     public final void rule__TemplateSignatureCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15794:1: ( ( '<' ) )
-            // InternalOCLinEcore.g:15795:1: ( '<' )
+            // InternalOCLinEcore.g:15796:1: ( ( '<' ) )
+            // InternalOCLinEcore.g:15797:1: ( '<' )
             {
-            // InternalOCLinEcore.g:15795:1: ( '<' )
-            // InternalOCLinEcore.g:15796:1: '<'
+            // InternalOCLinEcore.g:15797:1: ( '<' )
+            // InternalOCLinEcore.g:15798:1: '<'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0());
@@ -48549,14 +48549,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__1"
-    // InternalOCLinEcore.g:15809:1: rule__TemplateSignatureCS__Group_1__1 : rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2 ;
+    // InternalOCLinEcore.g:15811:1: rule__TemplateSignatureCS__Group_1__1 : rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2 ;
     public final void rule__TemplateSignatureCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15813:1: ( rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2 )
-            // InternalOCLinEcore.g:15814:2: rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2
+            // InternalOCLinEcore.g:15815:1: ( rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2 )
+            // InternalOCLinEcore.g:15816:2: rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_82);
             rule__TemplateSignatureCS__Group_1__1__Impl();
@@ -48587,23 +48587,23 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:15821:1: rule__TemplateSignatureCS__Group_1__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:15823:1: rule__TemplateSignatureCS__Group_1__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) ) ;
     public final void rule__TemplateSignatureCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15825:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:15826:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) )
+            // InternalOCLinEcore.g:15827:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:15828:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:15826:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) )
-            // InternalOCLinEcore.g:15827:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 )
+            // InternalOCLinEcore.g:15828:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) )
+            // InternalOCLinEcore.g:15829:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_1());
             }
-            // InternalOCLinEcore.g:15828:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 )
-            // InternalOCLinEcore.g:15828:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1_1
+            // InternalOCLinEcore.g:15830:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 )
+            // InternalOCLinEcore.g:15830:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__OwnedParametersAssignment_1_1();
@@ -48638,14 +48638,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__2"
-    // InternalOCLinEcore.g:15838:1: rule__TemplateSignatureCS__Group_1__2 : rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3 ;
+    // InternalOCLinEcore.g:15840:1: rule__TemplateSignatureCS__Group_1__2 : rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3 ;
     public final void rule__TemplateSignatureCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15842:1: ( rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3 )
-            // InternalOCLinEcore.g:15843:2: rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3
+            // InternalOCLinEcore.g:15844:1: ( rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3 )
+            // InternalOCLinEcore.g:15845:2: rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3
             {
             pushFollow(FollowSets000.FOLLOW_82);
             rule__TemplateSignatureCS__Group_1__2__Impl();
@@ -48676,22 +48676,22 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__2__Impl"
-    // InternalOCLinEcore.g:15850:1: rule__TemplateSignatureCS__Group_1__2__Impl : ( ( rule__TemplateSignatureCS__Group_1_2__0 )* ) ;
+    // InternalOCLinEcore.g:15852:1: rule__TemplateSignatureCS__Group_1__2__Impl : ( ( rule__TemplateSignatureCS__Group_1_2__0 )* ) ;
     public final void rule__TemplateSignatureCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15854:1: ( ( ( rule__TemplateSignatureCS__Group_1_2__0 )* ) )
-            // InternalOCLinEcore.g:15855:1: ( ( rule__TemplateSignatureCS__Group_1_2__0 )* )
+            // InternalOCLinEcore.g:15856:1: ( ( ( rule__TemplateSignatureCS__Group_1_2__0 )* ) )
+            // InternalOCLinEcore.g:15857:1: ( ( rule__TemplateSignatureCS__Group_1_2__0 )* )
             {
-            // InternalOCLinEcore.g:15855:1: ( ( rule__TemplateSignatureCS__Group_1_2__0 )* )
-            // InternalOCLinEcore.g:15856:1: ( rule__TemplateSignatureCS__Group_1_2__0 )*
+            // InternalOCLinEcore.g:15857:1: ( ( rule__TemplateSignatureCS__Group_1_2__0 )* )
+            // InternalOCLinEcore.g:15858:1: ( rule__TemplateSignatureCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getGroup_1_2());
             }
-            // InternalOCLinEcore.g:15857:1: ( rule__TemplateSignatureCS__Group_1_2__0 )*
+            // InternalOCLinEcore.g:15859:1: ( rule__TemplateSignatureCS__Group_1_2__0 )*
             loop180:
             do {
                 int alt180=2;
@@ -48704,7 +48704,7 @@
 
                 switch (alt180) {
             	case 1 :
-            	    // InternalOCLinEcore.g:15857:2: rule__TemplateSignatureCS__Group_1_2__0
+            	    // InternalOCLinEcore.g:15859:2: rule__TemplateSignatureCS__Group_1_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__TemplateSignatureCS__Group_1_2__0();
@@ -48745,14 +48745,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__3"
-    // InternalOCLinEcore.g:15867:1: rule__TemplateSignatureCS__Group_1__3 : rule__TemplateSignatureCS__Group_1__3__Impl ;
+    // InternalOCLinEcore.g:15869:1: rule__TemplateSignatureCS__Group_1__3 : rule__TemplateSignatureCS__Group_1__3__Impl ;
     public final void rule__TemplateSignatureCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15871:1: ( rule__TemplateSignatureCS__Group_1__3__Impl )
-            // InternalOCLinEcore.g:15872:2: rule__TemplateSignatureCS__Group_1__3__Impl
+            // InternalOCLinEcore.g:15873:1: ( rule__TemplateSignatureCS__Group_1__3__Impl )
+            // InternalOCLinEcore.g:15874:2: rule__TemplateSignatureCS__Group_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__Group_1__3__Impl();
@@ -48778,17 +48778,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1__3__Impl"
-    // InternalOCLinEcore.g:15878:1: rule__TemplateSignatureCS__Group_1__3__Impl : ( '>' ) ;
+    // InternalOCLinEcore.g:15880:1: rule__TemplateSignatureCS__Group_1__3__Impl : ( '>' ) ;
     public final void rule__TemplateSignatureCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15882:1: ( ( '>' ) )
-            // InternalOCLinEcore.g:15883:1: ( '>' )
+            // InternalOCLinEcore.g:15884:1: ( ( '>' ) )
+            // InternalOCLinEcore.g:15885:1: ( '>' )
             {
-            // InternalOCLinEcore.g:15883:1: ( '>' )
-            // InternalOCLinEcore.g:15884:1: '>'
+            // InternalOCLinEcore.g:15885:1: ( '>' )
+            // InternalOCLinEcore.g:15886:1: '>'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3());
@@ -48819,14 +48819,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1_2__0"
-    // InternalOCLinEcore.g:15905:1: rule__TemplateSignatureCS__Group_1_2__0 : rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1 ;
+    // InternalOCLinEcore.g:15907:1: rule__TemplateSignatureCS__Group_1_2__0 : rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1 ;
     public final void rule__TemplateSignatureCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15909:1: ( rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1 )
-            // InternalOCLinEcore.g:15910:2: rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1
+            // InternalOCLinEcore.g:15911:1: ( rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1 )
+            // InternalOCLinEcore.g:15912:2: rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__TemplateSignatureCS__Group_1_2__0__Impl();
@@ -48857,17 +48857,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1_2__0__Impl"
-    // InternalOCLinEcore.g:15917:1: rule__TemplateSignatureCS__Group_1_2__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:15919:1: rule__TemplateSignatureCS__Group_1_2__0__Impl : ( ',' ) ;
     public final void rule__TemplateSignatureCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15921:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:15922:1: ( ',' )
+            // InternalOCLinEcore.g:15923:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:15924:1: ( ',' )
             {
-            // InternalOCLinEcore.g:15922:1: ( ',' )
-            // InternalOCLinEcore.g:15923:1: ','
+            // InternalOCLinEcore.g:15924:1: ( ',' )
+            // InternalOCLinEcore.g:15925:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0());
@@ -48898,14 +48898,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1_2__1"
-    // InternalOCLinEcore.g:15936:1: rule__TemplateSignatureCS__Group_1_2__1 : rule__TemplateSignatureCS__Group_1_2__1__Impl ;
+    // InternalOCLinEcore.g:15938:1: rule__TemplateSignatureCS__Group_1_2__1 : rule__TemplateSignatureCS__Group_1_2__1__Impl ;
     public final void rule__TemplateSignatureCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15940:1: ( rule__TemplateSignatureCS__Group_1_2__1__Impl )
-            // InternalOCLinEcore.g:15941:2: rule__TemplateSignatureCS__Group_1_2__1__Impl
+            // InternalOCLinEcore.g:15942:1: ( rule__TemplateSignatureCS__Group_1_2__1__Impl )
+            // InternalOCLinEcore.g:15943:2: rule__TemplateSignatureCS__Group_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__Group_1_2__1__Impl();
@@ -48931,23 +48931,23 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_1_2__1__Impl"
-    // InternalOCLinEcore.g:15947:1: rule__TemplateSignatureCS__Group_1_2__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) ) ;
+    // InternalOCLinEcore.g:15949:1: rule__TemplateSignatureCS__Group_1_2__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) ) ;
     public final void rule__TemplateSignatureCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15951:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) ) )
-            // InternalOCLinEcore.g:15952:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) )
+            // InternalOCLinEcore.g:15953:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) ) )
+            // InternalOCLinEcore.g:15954:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) )
             {
-            // InternalOCLinEcore.g:15952:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) )
-            // InternalOCLinEcore.g:15953:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 )
+            // InternalOCLinEcore.g:15954:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) )
+            // InternalOCLinEcore.g:15955:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_2_1());
             }
-            // InternalOCLinEcore.g:15954:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 )
-            // InternalOCLinEcore.g:15954:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1
+            // InternalOCLinEcore.g:15956:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 )
+            // InternalOCLinEcore.g:15956:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1();
@@ -48982,14 +48982,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__0"
-    // InternalOCLinEcore.g:15968:1: rule__TypedTypeRefCS__Group__0 : rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 ;
+    // InternalOCLinEcore.g:15970:1: rule__TypedTypeRefCS__Group__0 : rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 ;
     public final void rule__TypedTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15972:1: ( rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 )
-            // InternalOCLinEcore.g:15973:2: rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1
+            // InternalOCLinEcore.g:15974:1: ( rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 )
+            // InternalOCLinEcore.g:15975:2: rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_83);
             rule__TypedTypeRefCS__Group__0__Impl();
@@ -49020,23 +49020,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__0__Impl"
-    // InternalOCLinEcore.g:15980:1: rule__TypedTypeRefCS__Group__0__Impl : ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:15982:1: rule__TypedTypeRefCS__Group__0__Impl : ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) ;
     public final void rule__TypedTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:15984:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:15985:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
+            // InternalOCLinEcore.g:15986:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:15987:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:15985:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
-            // InternalOCLinEcore.g:15986:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
+            // InternalOCLinEcore.g:15987:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
+            // InternalOCLinEcore.g:15988:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0());
             }
-            // InternalOCLinEcore.g:15987:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
-            // InternalOCLinEcore.g:15987:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0
+            // InternalOCLinEcore.g:15989:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
+            // InternalOCLinEcore.g:15989:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__OwnedPathNameAssignment_0();
@@ -49071,14 +49071,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__1"
-    // InternalOCLinEcore.g:15997:1: rule__TypedTypeRefCS__Group__1 : rule__TypedTypeRefCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:15999:1: rule__TypedTypeRefCS__Group__1 : rule__TypedTypeRefCS__Group__1__Impl ;
     public final void rule__TypedTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16001:1: ( rule__TypedTypeRefCS__Group__1__Impl )
-            // InternalOCLinEcore.g:16002:2: rule__TypedTypeRefCS__Group__1__Impl
+            // InternalOCLinEcore.g:16003:1: ( rule__TypedTypeRefCS__Group__1__Impl )
+            // InternalOCLinEcore.g:16004:2: rule__TypedTypeRefCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group__1__Impl();
@@ -49104,22 +49104,22 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group__1__Impl"
-    // InternalOCLinEcore.g:16008:1: rule__TypedTypeRefCS__Group__1__Impl : ( ( rule__TypedTypeRefCS__Alternatives_1 )? ) ;
+    // InternalOCLinEcore.g:16010:1: rule__TypedTypeRefCS__Group__1__Impl : ( ( rule__TypedTypeRefCS__Alternatives_1 )? ) ;
     public final void rule__TypedTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16012:1: ( ( ( rule__TypedTypeRefCS__Alternatives_1 )? ) )
-            // InternalOCLinEcore.g:16013:1: ( ( rule__TypedTypeRefCS__Alternatives_1 )? )
+            // InternalOCLinEcore.g:16014:1: ( ( ( rule__TypedTypeRefCS__Alternatives_1 )? ) )
+            // InternalOCLinEcore.g:16015:1: ( ( rule__TypedTypeRefCS__Alternatives_1 )? )
             {
-            // InternalOCLinEcore.g:16013:1: ( ( rule__TypedTypeRefCS__Alternatives_1 )? )
-            // InternalOCLinEcore.g:16014:1: ( rule__TypedTypeRefCS__Alternatives_1 )?
+            // InternalOCLinEcore.g:16015:1: ( ( rule__TypedTypeRefCS__Alternatives_1 )? )
+            // InternalOCLinEcore.g:16016:1: ( rule__TypedTypeRefCS__Alternatives_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getAlternatives_1());
             }
-            // InternalOCLinEcore.g:16015:1: ( rule__TypedTypeRefCS__Alternatives_1 )?
+            // InternalOCLinEcore.g:16017:1: ( rule__TypedTypeRefCS__Alternatives_1 )?
             int alt181=2;
             int LA181_0 = input.LA(1);
 
@@ -49128,7 +49128,7 @@
             }
             switch (alt181) {
                 case 1 :
-                    // InternalOCLinEcore.g:16015:2: rule__TypedTypeRefCS__Alternatives_1
+                    // InternalOCLinEcore.g:16017:2: rule__TypedTypeRefCS__Alternatives_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypedTypeRefCS__Alternatives_1();
@@ -49166,14 +49166,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_0__0"
-    // InternalOCLinEcore.g:16029:1: rule__TypedTypeRefCS__Group_1_0__0 : rule__TypedTypeRefCS__Group_1_0__0__Impl rule__TypedTypeRefCS__Group_1_0__1 ;
+    // InternalOCLinEcore.g:16031:1: rule__TypedTypeRefCS__Group_1_0__0 : rule__TypedTypeRefCS__Group_1_0__0__Impl rule__TypedTypeRefCS__Group_1_0__1 ;
     public final void rule__TypedTypeRefCS__Group_1_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16033:1: ( rule__TypedTypeRefCS__Group_1_0__0__Impl rule__TypedTypeRefCS__Group_1_0__1 )
-            // InternalOCLinEcore.g:16034:2: rule__TypedTypeRefCS__Group_1_0__0__Impl rule__TypedTypeRefCS__Group_1_0__1
+            // InternalOCLinEcore.g:16035:1: ( rule__TypedTypeRefCS__Group_1_0__0__Impl rule__TypedTypeRefCS__Group_1_0__1 )
+            // InternalOCLinEcore.g:16036:2: rule__TypedTypeRefCS__Group_1_0__0__Impl rule__TypedTypeRefCS__Group_1_0__1
             {
             pushFollow(FollowSets000.FOLLOW_84);
             rule__TypedTypeRefCS__Group_1_0__0__Impl();
@@ -49204,17 +49204,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_0__0__Impl"
-    // InternalOCLinEcore.g:16041:1: rule__TypedTypeRefCS__Group_1_0__0__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:16043:1: rule__TypedTypeRefCS__Group_1_0__0__Impl : ( '(' ) ;
     public final void rule__TypedTypeRefCS__Group_1_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16045:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:16046:1: ( '(' )
+            // InternalOCLinEcore.g:16047:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:16048:1: ( '(' )
             {
-            // InternalOCLinEcore.g:16046:1: ( '(' )
-            // InternalOCLinEcore.g:16047:1: '('
+            // InternalOCLinEcore.g:16048:1: ( '(' )
+            // InternalOCLinEcore.g:16049:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0_0());
@@ -49245,14 +49245,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_0__1"
-    // InternalOCLinEcore.g:16060:1: rule__TypedTypeRefCS__Group_1_0__1 : rule__TypedTypeRefCS__Group_1_0__1__Impl rule__TypedTypeRefCS__Group_1_0__2 ;
+    // InternalOCLinEcore.g:16062:1: rule__TypedTypeRefCS__Group_1_0__1 : rule__TypedTypeRefCS__Group_1_0__1__Impl rule__TypedTypeRefCS__Group_1_0__2 ;
     public final void rule__TypedTypeRefCS__Group_1_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16064:1: ( rule__TypedTypeRefCS__Group_1_0__1__Impl rule__TypedTypeRefCS__Group_1_0__2 )
-            // InternalOCLinEcore.g:16065:2: rule__TypedTypeRefCS__Group_1_0__1__Impl rule__TypedTypeRefCS__Group_1_0__2
+            // InternalOCLinEcore.g:16066:1: ( rule__TypedTypeRefCS__Group_1_0__1__Impl rule__TypedTypeRefCS__Group_1_0__2 )
+            // InternalOCLinEcore.g:16067:2: rule__TypedTypeRefCS__Group_1_0__1__Impl rule__TypedTypeRefCS__Group_1_0__2
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__TypedTypeRefCS__Group_1_0__1__Impl();
@@ -49283,23 +49283,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_0__1__Impl"
-    // InternalOCLinEcore.g:16072:1: rule__TypedTypeRefCS__Group_1_0__1__Impl : ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 ) ) ;
+    // InternalOCLinEcore.g:16074:1: rule__TypedTypeRefCS__Group_1_0__1__Impl : ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 ) ) ;
     public final void rule__TypedTypeRefCS__Group_1_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16076:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 ) ) )
-            // InternalOCLinEcore.g:16077:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 ) )
+            // InternalOCLinEcore.g:16078:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 ) ) )
+            // InternalOCLinEcore.g:16079:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 ) )
             {
-            // InternalOCLinEcore.g:16077:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 ) )
-            // InternalOCLinEcore.g:16078:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 )
+            // InternalOCLinEcore.g:16079:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 ) )
+            // InternalOCLinEcore.g:16080:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_0_1());
             }
-            // InternalOCLinEcore.g:16079:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 )
-            // InternalOCLinEcore.g:16079:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1
+            // InternalOCLinEcore.g:16081:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 )
+            // InternalOCLinEcore.g:16081:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1();
@@ -49334,14 +49334,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_0__2"
-    // InternalOCLinEcore.g:16089:1: rule__TypedTypeRefCS__Group_1_0__2 : rule__TypedTypeRefCS__Group_1_0__2__Impl ;
+    // InternalOCLinEcore.g:16091:1: rule__TypedTypeRefCS__Group_1_0__2 : rule__TypedTypeRefCS__Group_1_0__2__Impl ;
     public final void rule__TypedTypeRefCS__Group_1_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16093:1: ( rule__TypedTypeRefCS__Group_1_0__2__Impl )
-            // InternalOCLinEcore.g:16094:2: rule__TypedTypeRefCS__Group_1_0__2__Impl
+            // InternalOCLinEcore.g:16095:1: ( rule__TypedTypeRefCS__Group_1_0__2__Impl )
+            // InternalOCLinEcore.g:16096:2: rule__TypedTypeRefCS__Group_1_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group_1_0__2__Impl();
@@ -49367,17 +49367,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_0__2__Impl"
-    // InternalOCLinEcore.g:16100:1: rule__TypedTypeRefCS__Group_1_0__2__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:16102:1: rule__TypedTypeRefCS__Group_1_0__2__Impl : ( ')' ) ;
     public final void rule__TypedTypeRefCS__Group_1_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16104:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:16105:1: ( ')' )
+            // InternalOCLinEcore.g:16106:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:16107:1: ( ')' )
             {
-            // InternalOCLinEcore.g:16105:1: ( ')' )
-            // InternalOCLinEcore.g:16106:1: ')'
+            // InternalOCLinEcore.g:16107:1: ( ')' )
+            // InternalOCLinEcore.g:16108:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_0_2());
@@ -49408,14 +49408,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_1__0"
-    // InternalOCLinEcore.g:16125:1: rule__TypedTypeRefCS__Group_1_1__0 : rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1 ;
+    // InternalOCLinEcore.g:16127:1: rule__TypedTypeRefCS__Group_1_1__0 : rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1 ;
     public final void rule__TypedTypeRefCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16129:1: ( rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1 )
-            // InternalOCLinEcore.g:16130:2: rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1
+            // InternalOCLinEcore.g:16131:1: ( rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1 )
+            // InternalOCLinEcore.g:16132:2: rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_84);
             rule__TypedTypeRefCS__Group_1_1__0__Impl();
@@ -49446,17 +49446,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_1__0__Impl"
-    // InternalOCLinEcore.g:16137:1: rule__TypedTypeRefCS__Group_1_1__0__Impl : ( '<' ) ;
+    // InternalOCLinEcore.g:16139:1: rule__TypedTypeRefCS__Group_1_1__0__Impl : ( '<' ) ;
     public final void rule__TypedTypeRefCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16141:1: ( ( '<' ) )
-            // InternalOCLinEcore.g:16142:1: ( '<' )
+            // InternalOCLinEcore.g:16143:1: ( ( '<' ) )
+            // InternalOCLinEcore.g:16144:1: ( '<' )
             {
-            // InternalOCLinEcore.g:16142:1: ( '<' )
-            // InternalOCLinEcore.g:16143:1: '<'
+            // InternalOCLinEcore.g:16144:1: ( '<' )
+            // InternalOCLinEcore.g:16145:1: '<'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getLessThanSignKeyword_1_1_0());
@@ -49487,14 +49487,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_1__1"
-    // InternalOCLinEcore.g:16156:1: rule__TypedTypeRefCS__Group_1_1__1 : rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2 ;
+    // InternalOCLinEcore.g:16158:1: rule__TypedTypeRefCS__Group_1_1__1 : rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2 ;
     public final void rule__TypedTypeRefCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16160:1: ( rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2 )
-            // InternalOCLinEcore.g:16161:2: rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2
+            // InternalOCLinEcore.g:16162:1: ( rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2 )
+            // InternalOCLinEcore.g:16163:2: rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_85);
             rule__TypedTypeRefCS__Group_1_1__1__Impl();
@@ -49525,23 +49525,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_1__1__Impl"
-    // InternalOCLinEcore.g:16168:1: rule__TypedTypeRefCS__Group_1_1__1__Impl : ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) ) ;
+    // InternalOCLinEcore.g:16170:1: rule__TypedTypeRefCS__Group_1_1__1__Impl : ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) ) ;
     public final void rule__TypedTypeRefCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16172:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) ) )
-            // InternalOCLinEcore.g:16173:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) )
+            // InternalOCLinEcore.g:16174:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) ) )
+            // InternalOCLinEcore.g:16175:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) )
             {
-            // InternalOCLinEcore.g:16173:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) )
-            // InternalOCLinEcore.g:16174:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 )
+            // InternalOCLinEcore.g:16175:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) )
+            // InternalOCLinEcore.g:16176:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1_1());
             }
-            // InternalOCLinEcore.g:16175:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 )
-            // InternalOCLinEcore.g:16175:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1
+            // InternalOCLinEcore.g:16177:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 )
+            // InternalOCLinEcore.g:16177:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1();
@@ -49576,14 +49576,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_1__2"
-    // InternalOCLinEcore.g:16185:1: rule__TypedTypeRefCS__Group_1_1__2 : rule__TypedTypeRefCS__Group_1_1__2__Impl ;
+    // InternalOCLinEcore.g:16187:1: rule__TypedTypeRefCS__Group_1_1__2 : rule__TypedTypeRefCS__Group_1_1__2__Impl ;
     public final void rule__TypedTypeRefCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16189:1: ( rule__TypedTypeRefCS__Group_1_1__2__Impl )
-            // InternalOCLinEcore.g:16190:2: rule__TypedTypeRefCS__Group_1_1__2__Impl
+            // InternalOCLinEcore.g:16191:1: ( rule__TypedTypeRefCS__Group_1_1__2__Impl )
+            // InternalOCLinEcore.g:16192:2: rule__TypedTypeRefCS__Group_1_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group_1_1__2__Impl();
@@ -49609,17 +49609,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_1__2__Impl"
-    // InternalOCLinEcore.g:16196:1: rule__TypedTypeRefCS__Group_1_1__2__Impl : ( '>' ) ;
+    // InternalOCLinEcore.g:16198:1: rule__TypedTypeRefCS__Group_1_1__2__Impl : ( '>' ) ;
     public final void rule__TypedTypeRefCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16200:1: ( ( '>' ) )
-            // InternalOCLinEcore.g:16201:1: ( '>' )
+            // InternalOCLinEcore.g:16202:1: ( ( '>' ) )
+            // InternalOCLinEcore.g:16203:1: ( '>' )
             {
-            // InternalOCLinEcore.g:16201:1: ( '>' )
-            // InternalOCLinEcore.g:16202:1: '>'
+            // InternalOCLinEcore.g:16203:1: ( '>' )
+            // InternalOCLinEcore.g:16204:1: '>'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getGreaterThanSignKeyword_1_1_2());
@@ -49650,14 +49650,14 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group__0"
-    // InternalOCLinEcore.g:16221:1: rule__URIPathNameCS__Group__0 : rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 ;
+    // InternalOCLinEcore.g:16223:1: rule__URIPathNameCS__Group__0 : rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 ;
     public final void rule__URIPathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16225:1: ( rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 )
-            // InternalOCLinEcore.g:16226:2: rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1
+            // InternalOCLinEcore.g:16227:1: ( rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 )
+            // InternalOCLinEcore.g:16228:2: rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_86);
             rule__URIPathNameCS__Group__0__Impl();
@@ -49688,23 +49688,23 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group__0__Impl"
-    // InternalOCLinEcore.g:16233:1: rule__URIPathNameCS__Group__0__Impl : ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:16235:1: rule__URIPathNameCS__Group__0__Impl : ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) ;
     public final void rule__URIPathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16237:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) )
-            // InternalOCLinEcore.g:16238:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalOCLinEcore.g:16239:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) )
+            // InternalOCLinEcore.g:16240:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:16238:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
-            // InternalOCLinEcore.g:16239:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalOCLinEcore.g:16240:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalOCLinEcore.g:16241:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
-            // InternalOCLinEcore.g:16240:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
-            // InternalOCLinEcore.g:16240:2: rule__URIPathNameCS__OwnedPathElementsAssignment_0
+            // InternalOCLinEcore.g:16242:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalOCLinEcore.g:16242:2: rule__URIPathNameCS__OwnedPathElementsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIPathNameCS__OwnedPathElementsAssignment_0();
@@ -49739,14 +49739,14 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group__1"
-    // InternalOCLinEcore.g:16250:1: rule__URIPathNameCS__Group__1 : rule__URIPathNameCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:16252:1: rule__URIPathNameCS__Group__1 : rule__URIPathNameCS__Group__1__Impl ;
     public final void rule__URIPathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16254:1: ( rule__URIPathNameCS__Group__1__Impl )
-            // InternalOCLinEcore.g:16255:2: rule__URIPathNameCS__Group__1__Impl
+            // InternalOCLinEcore.g:16256:1: ( rule__URIPathNameCS__Group__1__Impl )
+            // InternalOCLinEcore.g:16257:2: rule__URIPathNameCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIPathNameCS__Group__1__Impl();
@@ -49772,22 +49772,22 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group__1__Impl"
-    // InternalOCLinEcore.g:16261:1: rule__URIPathNameCS__Group__1__Impl : ( ( rule__URIPathNameCS__Group_1__0 )* ) ;
+    // InternalOCLinEcore.g:16263:1: rule__URIPathNameCS__Group__1__Impl : ( ( rule__URIPathNameCS__Group_1__0 )* ) ;
     public final void rule__URIPathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16265:1: ( ( ( rule__URIPathNameCS__Group_1__0 )* ) )
-            // InternalOCLinEcore.g:16266:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
+            // InternalOCLinEcore.g:16267:1: ( ( ( rule__URIPathNameCS__Group_1__0 )* ) )
+            // InternalOCLinEcore.g:16268:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
             {
-            // InternalOCLinEcore.g:16266:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
-            // InternalOCLinEcore.g:16267:1: ( rule__URIPathNameCS__Group_1__0 )*
+            // InternalOCLinEcore.g:16268:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
+            // InternalOCLinEcore.g:16269:1: ( rule__URIPathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:16268:1: ( rule__URIPathNameCS__Group_1__0 )*
+            // InternalOCLinEcore.g:16270:1: ( rule__URIPathNameCS__Group_1__0 )*
             loop182:
             do {
                 int alt182=2;
@@ -49800,7 +49800,7 @@
 
                 switch (alt182) {
             	case 1 :
-            	    // InternalOCLinEcore.g:16268:2: rule__URIPathNameCS__Group_1__0
+            	    // InternalOCLinEcore.g:16270:2: rule__URIPathNameCS__Group_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_87);
             	    rule__URIPathNameCS__Group_1__0();
@@ -49841,14 +49841,14 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group_1__0"
-    // InternalOCLinEcore.g:16282:1: rule__URIPathNameCS__Group_1__0 : rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 ;
+    // InternalOCLinEcore.g:16284:1: rule__URIPathNameCS__Group_1__0 : rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 ;
     public final void rule__URIPathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16286:1: ( rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 )
-            // InternalOCLinEcore.g:16287:2: rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1
+            // InternalOCLinEcore.g:16288:1: ( rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 )
+            // InternalOCLinEcore.g:16289:2: rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_88);
             rule__URIPathNameCS__Group_1__0__Impl();
@@ -49879,17 +49879,17 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:16294:1: rule__URIPathNameCS__Group_1__0__Impl : ( '::' ) ;
+    // InternalOCLinEcore.g:16296:1: rule__URIPathNameCS__Group_1__0__Impl : ( '::' ) ;
     public final void rule__URIPathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16298:1: ( ( '::' ) )
-            // InternalOCLinEcore.g:16299:1: ( '::' )
+            // InternalOCLinEcore.g:16300:1: ( ( '::' ) )
+            // InternalOCLinEcore.g:16301:1: ( '::' )
             {
-            // InternalOCLinEcore.g:16299:1: ( '::' )
-            // InternalOCLinEcore.g:16300:1: '::'
+            // InternalOCLinEcore.g:16301:1: ( '::' )
+            // InternalOCLinEcore.g:16302:1: '::'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
@@ -49920,14 +49920,14 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group_1__1"
-    // InternalOCLinEcore.g:16313:1: rule__URIPathNameCS__Group_1__1 : rule__URIPathNameCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:16315:1: rule__URIPathNameCS__Group_1__1 : rule__URIPathNameCS__Group_1__1__Impl ;
     public final void rule__URIPathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16317:1: ( rule__URIPathNameCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:16318:2: rule__URIPathNameCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:16319:1: ( rule__URIPathNameCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:16320:2: rule__URIPathNameCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIPathNameCS__Group_1__1__Impl();
@@ -49953,23 +49953,23 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:16324:1: rule__URIPathNameCS__Group_1__1__Impl : ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:16326:1: rule__URIPathNameCS__Group_1__1__Impl : ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
     public final void rule__URIPathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16328:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:16329:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalOCLinEcore.g:16330:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:16331:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:16329:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
-            // InternalOCLinEcore.g:16330:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalOCLinEcore.g:16331:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalOCLinEcore.g:16332:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
-            // InternalOCLinEcore.g:16331:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
-            // InternalOCLinEcore.g:16331:2: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1
+            // InternalOCLinEcore.g:16333:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalOCLinEcore.g:16333:2: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIPathNameCS__OwnedPathElementsAssignment_1_1();
@@ -50004,14 +50004,14 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__0"
-    // InternalOCLinEcore.g:16345:1: rule__URIFirstPathElementCS__Group_1__0 : rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 ;
+    // InternalOCLinEcore.g:16347:1: rule__URIFirstPathElementCS__Group_1__0 : rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 ;
     public final void rule__URIFirstPathElementCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16349:1: ( rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 )
-            // InternalOCLinEcore.g:16350:2: rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1
+            // InternalOCLinEcore.g:16351:1: ( rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 )
+            // InternalOCLinEcore.g:16352:2: rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__URIFirstPathElementCS__Group_1__0__Impl();
@@ -50042,23 +50042,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:16357:1: rule__URIFirstPathElementCS__Group_1__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:16359:1: rule__URIFirstPathElementCS__Group_1__0__Impl : ( () ) ;
     public final void rule__URIFirstPathElementCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16361:1: ( ( () ) )
-            // InternalOCLinEcore.g:16362:1: ( () )
+            // InternalOCLinEcore.g:16363:1: ( ( () ) )
+            // InternalOCLinEcore.g:16364:1: ( () )
             {
-            // InternalOCLinEcore.g:16362:1: ( () )
-            // InternalOCLinEcore.g:16363:1: ()
+            // InternalOCLinEcore.g:16364:1: ( () )
+            // InternalOCLinEcore.g:16365:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0());
             }
-            // InternalOCLinEcore.g:16364:1: ()
-            // InternalOCLinEcore.g:16366:1:
+            // InternalOCLinEcore.g:16366:1: ()
+            // InternalOCLinEcore.g:16368:1:
             {
             }
 
@@ -50083,14 +50083,14 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__1"
-    // InternalOCLinEcore.g:16376:1: rule__URIFirstPathElementCS__Group_1__1 : rule__URIFirstPathElementCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:16378:1: rule__URIFirstPathElementCS__Group_1__1 : rule__URIFirstPathElementCS__Group_1__1__Impl ;
     public final void rule__URIFirstPathElementCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16380:1: ( rule__URIFirstPathElementCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:16381:2: rule__URIFirstPathElementCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:16382:1: ( rule__URIFirstPathElementCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:16383:2: rule__URIFirstPathElementCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIFirstPathElementCS__Group_1__1__Impl();
@@ -50116,23 +50116,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:16387:1: rule__URIFirstPathElementCS__Group_1__1__Impl : ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:16389:1: rule__URIFirstPathElementCS__Group_1__1__Impl : ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) ;
     public final void rule__URIFirstPathElementCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16391:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:16392:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
+            // InternalOCLinEcore.g:16393:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:16394:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:16392:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
-            // InternalOCLinEcore.g:16393:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
+            // InternalOCLinEcore.g:16394:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
+            // InternalOCLinEcore.g:16395:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1());
             }
-            // InternalOCLinEcore.g:16394:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
-            // InternalOCLinEcore.g:16394:2: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1
+            // InternalOCLinEcore.g:16396:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
+            // InternalOCLinEcore.g:16396:2: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIFirstPathElementCS__ReferredElementAssignment_1_1();
@@ -50167,14 +50167,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__0"
-    // InternalOCLinEcore.g:16408:1: rule__CollectionTypeCS__Group__0 : rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 ;
+    // InternalOCLinEcore.g:16410:1: rule__CollectionTypeCS__Group__0 : rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 ;
     public final void rule__CollectionTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16412:1: ( rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 )
-            // InternalOCLinEcore.g:16413:2: rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1
+            // InternalOCLinEcore.g:16414:1: ( rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 )
+            // InternalOCLinEcore.g:16415:2: rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__CollectionTypeCS__Group__0__Impl();
@@ -50205,23 +50205,23 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__0__Impl"
-    // InternalOCLinEcore.g:16420:1: rule__CollectionTypeCS__Group__0__Impl : ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:16422:1: rule__CollectionTypeCS__Group__0__Impl : ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) ;
     public final void rule__CollectionTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16424:1: ( ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:16425:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:16426:1: ( ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:16427:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:16425:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
-            // InternalOCLinEcore.g:16426:1: ( rule__CollectionTypeCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:16427:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:16428:1: ( rule__CollectionTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0());
             }
-            // InternalOCLinEcore.g:16427:1: ( rule__CollectionTypeCS__NameAssignment_0 )
-            // InternalOCLinEcore.g:16427:2: rule__CollectionTypeCS__NameAssignment_0
+            // InternalOCLinEcore.g:16429:1: ( rule__CollectionTypeCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:16429:2: rule__CollectionTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__NameAssignment_0();
@@ -50256,14 +50256,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__1"
-    // InternalOCLinEcore.g:16437:1: rule__CollectionTypeCS__Group__1 : rule__CollectionTypeCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:16439:1: rule__CollectionTypeCS__Group__1 : rule__CollectionTypeCS__Group__1__Impl ;
     public final void rule__CollectionTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16441:1: ( rule__CollectionTypeCS__Group__1__Impl )
-            // InternalOCLinEcore.g:16442:2: rule__CollectionTypeCS__Group__1__Impl
+            // InternalOCLinEcore.g:16443:1: ( rule__CollectionTypeCS__Group__1__Impl )
+            // InternalOCLinEcore.g:16444:2: rule__CollectionTypeCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__Group__1__Impl();
@@ -50289,22 +50289,22 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__1__Impl"
-    // InternalOCLinEcore.g:16448:1: rule__CollectionTypeCS__Group__1__Impl : ( ( rule__CollectionTypeCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:16450:1: rule__CollectionTypeCS__Group__1__Impl : ( ( rule__CollectionTypeCS__Group_1__0 )? ) ;
     public final void rule__CollectionTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16452:1: ( ( ( rule__CollectionTypeCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:16453:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:16454:1: ( ( ( rule__CollectionTypeCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:16455:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:16453:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:16454:1: ( rule__CollectionTypeCS__Group_1__0 )?
+            // InternalOCLinEcore.g:16455:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:16456:1: ( rule__CollectionTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:16455:1: ( rule__CollectionTypeCS__Group_1__0 )?
+            // InternalOCLinEcore.g:16457:1: ( rule__CollectionTypeCS__Group_1__0 )?
             int alt183=2;
             int LA183_0 = input.LA(1);
 
@@ -50313,7 +50313,7 @@
             }
             switch (alt183) {
                 case 1 :
-                    // InternalOCLinEcore.g:16455:2: rule__CollectionTypeCS__Group_1__0
+                    // InternalOCLinEcore.g:16457:2: rule__CollectionTypeCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionTypeCS__Group_1__0();
@@ -50351,14 +50351,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__0"
-    // InternalOCLinEcore.g:16469:1: rule__CollectionTypeCS__Group_1__0 : rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 ;
+    // InternalOCLinEcore.g:16471:1: rule__CollectionTypeCS__Group_1__0 : rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 ;
     public final void rule__CollectionTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16473:1: ( rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 )
-            // InternalOCLinEcore.g:16474:2: rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1
+            // InternalOCLinEcore.g:16475:1: ( rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 )
+            // InternalOCLinEcore.g:16476:2: rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__CollectionTypeCS__Group_1__0__Impl();
@@ -50389,17 +50389,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:16481:1: rule__CollectionTypeCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:16483:1: rule__CollectionTypeCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__CollectionTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16485:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:16486:1: ( '(' )
+            // InternalOCLinEcore.g:16487:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:16488:1: ( '(' )
             {
-            // InternalOCLinEcore.g:16486:1: ( '(' )
-            // InternalOCLinEcore.g:16487:1: '('
+            // InternalOCLinEcore.g:16488:1: ( '(' )
+            // InternalOCLinEcore.g:16489:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -50430,14 +50430,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__1"
-    // InternalOCLinEcore.g:16500:1: rule__CollectionTypeCS__Group_1__1 : rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 ;
+    // InternalOCLinEcore.g:16502:1: rule__CollectionTypeCS__Group_1__1 : rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 ;
     public final void rule__CollectionTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16504:1: ( rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 )
-            // InternalOCLinEcore.g:16505:2: rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2
+            // InternalOCLinEcore.g:16506:1: ( rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 )
+            // InternalOCLinEcore.g:16507:2: rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_89);
             rule__CollectionTypeCS__Group_1__1__Impl();
@@ -50468,23 +50468,23 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:16512:1: rule__CollectionTypeCS__Group_1__1__Impl : ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:16514:1: rule__CollectionTypeCS__Group_1__1__Impl : ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__CollectionTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16516:1: ( ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:16517:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLinEcore.g:16518:1: ( ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:16519:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:16517:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
-            // InternalOCLinEcore.g:16518:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLinEcore.g:16519:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLinEcore.g:16520:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalOCLinEcore.g:16519:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
-            // InternalOCLinEcore.g:16519:2: rule__CollectionTypeCS__OwnedTypeAssignment_1_1
+            // InternalOCLinEcore.g:16521:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLinEcore.g:16521:2: rule__CollectionTypeCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__OwnedTypeAssignment_1_1();
@@ -50519,14 +50519,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__2"
-    // InternalOCLinEcore.g:16529:1: rule__CollectionTypeCS__Group_1__2 : rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 ;
+    // InternalOCLinEcore.g:16531:1: rule__CollectionTypeCS__Group_1__2 : rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 ;
     public final void rule__CollectionTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16533:1: ( rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 )
-            // InternalOCLinEcore.g:16534:2: rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3
+            // InternalOCLinEcore.g:16535:1: ( rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 )
+            // InternalOCLinEcore.g:16536:2: rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3
             {
             pushFollow(FollowSets000.FOLLOW_89);
             rule__CollectionTypeCS__Group_1__2__Impl();
@@ -50557,22 +50557,22 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__2__Impl"
-    // InternalOCLinEcore.g:16541:1: rule__CollectionTypeCS__Group_1__2__Impl : ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) ;
+    // InternalOCLinEcore.g:16543:1: rule__CollectionTypeCS__Group_1__2__Impl : ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) ;
     public final void rule__CollectionTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16545:1: ( ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) )
-            // InternalOCLinEcore.g:16546:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
+            // InternalOCLinEcore.g:16547:1: ( ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) )
+            // InternalOCLinEcore.g:16548:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
             {
-            // InternalOCLinEcore.g:16546:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
-            // InternalOCLinEcore.g:16547:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
+            // InternalOCLinEcore.g:16548:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
+            // InternalOCLinEcore.g:16549:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedCollectionMultiplicityAssignment_1_2());
             }
-            // InternalOCLinEcore.g:16548:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
+            // InternalOCLinEcore.g:16550:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
             int alt184=2;
             int LA184_0 = input.LA(1);
 
@@ -50581,7 +50581,7 @@
             }
             switch (alt184) {
                 case 1 :
-                    // InternalOCLinEcore.g:16548:2: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2
+                    // InternalOCLinEcore.g:16550:2: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2();
@@ -50619,14 +50619,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__3"
-    // InternalOCLinEcore.g:16558:1: rule__CollectionTypeCS__Group_1__3 : rule__CollectionTypeCS__Group_1__3__Impl ;
+    // InternalOCLinEcore.g:16560:1: rule__CollectionTypeCS__Group_1__3 : rule__CollectionTypeCS__Group_1__3__Impl ;
     public final void rule__CollectionTypeCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16562:1: ( rule__CollectionTypeCS__Group_1__3__Impl )
-            // InternalOCLinEcore.g:16563:2: rule__CollectionTypeCS__Group_1__3__Impl
+            // InternalOCLinEcore.g:16564:1: ( rule__CollectionTypeCS__Group_1__3__Impl )
+            // InternalOCLinEcore.g:16565:2: rule__CollectionTypeCS__Group_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__Group_1__3__Impl();
@@ -50652,17 +50652,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__3__Impl"
-    // InternalOCLinEcore.g:16569:1: rule__CollectionTypeCS__Group_1__3__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:16571:1: rule__CollectionTypeCS__Group_1__3__Impl : ( ')' ) ;
     public final void rule__CollectionTypeCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16573:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:16574:1: ( ')' )
+            // InternalOCLinEcore.g:16575:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:16576:1: ( ')' )
             {
-            // InternalOCLinEcore.g:16574:1: ( ')' )
-            // InternalOCLinEcore.g:16575:1: ')'
+            // InternalOCLinEcore.g:16576:1: ( ')' )
+            // InternalOCLinEcore.g:16577:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_3());
@@ -50693,14 +50693,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__0"
-    // InternalOCLinEcore.g:16596:1: rule__MapTypeCS__Group__0 : rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 ;
+    // InternalOCLinEcore.g:16598:1: rule__MapTypeCS__Group__0 : rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 ;
     public final void rule__MapTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16600:1: ( rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 )
-            // InternalOCLinEcore.g:16601:2: rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1
+            // InternalOCLinEcore.g:16602:1: ( rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 )
+            // InternalOCLinEcore.g:16603:2: rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__MapTypeCS__Group__0__Impl();
@@ -50731,23 +50731,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__0__Impl"
-    // InternalOCLinEcore.g:16608:1: rule__MapTypeCS__Group__0__Impl : ( ( rule__MapTypeCS__NameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:16610:1: rule__MapTypeCS__Group__0__Impl : ( ( rule__MapTypeCS__NameAssignment_0 ) ) ;
     public final void rule__MapTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16612:1: ( ( ( rule__MapTypeCS__NameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:16613:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:16614:1: ( ( ( rule__MapTypeCS__NameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:16615:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:16613:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
-            // InternalOCLinEcore.g:16614:1: ( rule__MapTypeCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:16615:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:16616:1: ( rule__MapTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getNameAssignment_0());
             }
-            // InternalOCLinEcore.g:16615:1: ( rule__MapTypeCS__NameAssignment_0 )
-            // InternalOCLinEcore.g:16615:2: rule__MapTypeCS__NameAssignment_0
+            // InternalOCLinEcore.g:16617:1: ( rule__MapTypeCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:16617:2: rule__MapTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__NameAssignment_0();
@@ -50782,14 +50782,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__1"
-    // InternalOCLinEcore.g:16625:1: rule__MapTypeCS__Group__1 : rule__MapTypeCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:16627:1: rule__MapTypeCS__Group__1 : rule__MapTypeCS__Group__1__Impl ;
     public final void rule__MapTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16629:1: ( rule__MapTypeCS__Group__1__Impl )
-            // InternalOCLinEcore.g:16630:2: rule__MapTypeCS__Group__1__Impl
+            // InternalOCLinEcore.g:16631:1: ( rule__MapTypeCS__Group__1__Impl )
+            // InternalOCLinEcore.g:16632:2: rule__MapTypeCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__Group__1__Impl();
@@ -50815,22 +50815,22 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__1__Impl"
-    // InternalOCLinEcore.g:16636:1: rule__MapTypeCS__Group__1__Impl : ( ( rule__MapTypeCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:16638:1: rule__MapTypeCS__Group__1__Impl : ( ( rule__MapTypeCS__Group_1__0 )? ) ;
     public final void rule__MapTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16640:1: ( ( ( rule__MapTypeCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:16641:1: ( ( rule__MapTypeCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:16642:1: ( ( ( rule__MapTypeCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:16643:1: ( ( rule__MapTypeCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:16641:1: ( ( rule__MapTypeCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:16642:1: ( rule__MapTypeCS__Group_1__0 )?
+            // InternalOCLinEcore.g:16643:1: ( ( rule__MapTypeCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:16644:1: ( rule__MapTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:16643:1: ( rule__MapTypeCS__Group_1__0 )?
+            // InternalOCLinEcore.g:16645:1: ( rule__MapTypeCS__Group_1__0 )?
             int alt185=2;
             int LA185_0 = input.LA(1);
 
@@ -50839,7 +50839,7 @@
             }
             switch (alt185) {
                 case 1 :
-                    // InternalOCLinEcore.g:16643:2: rule__MapTypeCS__Group_1__0
+                    // InternalOCLinEcore.g:16645:2: rule__MapTypeCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MapTypeCS__Group_1__0();
@@ -50877,14 +50877,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__0"
-    // InternalOCLinEcore.g:16657:1: rule__MapTypeCS__Group_1__0 : rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 ;
+    // InternalOCLinEcore.g:16659:1: rule__MapTypeCS__Group_1__0 : rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 ;
     public final void rule__MapTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16661:1: ( rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 )
-            // InternalOCLinEcore.g:16662:2: rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1
+            // InternalOCLinEcore.g:16663:1: ( rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 )
+            // InternalOCLinEcore.g:16664:2: rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__MapTypeCS__Group_1__0__Impl();
@@ -50915,17 +50915,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:16669:1: rule__MapTypeCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:16671:1: rule__MapTypeCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__MapTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16673:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:16674:1: ( '(' )
+            // InternalOCLinEcore.g:16675:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:16676:1: ( '(' )
             {
-            // InternalOCLinEcore.g:16674:1: ( '(' )
-            // InternalOCLinEcore.g:16675:1: '('
+            // InternalOCLinEcore.g:16676:1: ( '(' )
+            // InternalOCLinEcore.g:16677:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -50956,14 +50956,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__1"
-    // InternalOCLinEcore.g:16688:1: rule__MapTypeCS__Group_1__1 : rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 ;
+    // InternalOCLinEcore.g:16690:1: rule__MapTypeCS__Group_1__1 : rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 ;
     public final void rule__MapTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16692:1: ( rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 )
-            // InternalOCLinEcore.g:16693:2: rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2
+            // InternalOCLinEcore.g:16694:1: ( rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 )
+            // InternalOCLinEcore.g:16695:2: rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__MapTypeCS__Group_1__1__Impl();
@@ -50994,23 +50994,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:16700:1: rule__MapTypeCS__Group_1__1__Impl : ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:16702:1: rule__MapTypeCS__Group_1__1__Impl : ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) ;
     public final void rule__MapTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16704:1: ( ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:16705:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
+            // InternalOCLinEcore.g:16706:1: ( ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:16707:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:16705:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
-            // InternalOCLinEcore.g:16706:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
+            // InternalOCLinEcore.g:16707:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
+            // InternalOCLinEcore.g:16708:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1());
             }
-            // InternalOCLinEcore.g:16707:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
-            // InternalOCLinEcore.g:16707:2: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1
+            // InternalOCLinEcore.g:16709:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
+            // InternalOCLinEcore.g:16709:2: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__OwnedKeyTypeAssignment_1_1();
@@ -51045,14 +51045,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__2"
-    // InternalOCLinEcore.g:16717:1: rule__MapTypeCS__Group_1__2 : rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 ;
+    // InternalOCLinEcore.g:16719:1: rule__MapTypeCS__Group_1__2 : rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 ;
     public final void rule__MapTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16721:1: ( rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 )
-            // InternalOCLinEcore.g:16722:2: rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3
+            // InternalOCLinEcore.g:16723:1: ( rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 )
+            // InternalOCLinEcore.g:16724:2: rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__MapTypeCS__Group_1__2__Impl();
@@ -51083,17 +51083,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__2__Impl"
-    // InternalOCLinEcore.g:16729:1: rule__MapTypeCS__Group_1__2__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:16731:1: rule__MapTypeCS__Group_1__2__Impl : ( ',' ) ;
     public final void rule__MapTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16733:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:16734:1: ( ',' )
+            // InternalOCLinEcore.g:16735:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:16736:1: ( ',' )
             {
-            // InternalOCLinEcore.g:16734:1: ( ',' )
-            // InternalOCLinEcore.g:16735:1: ','
+            // InternalOCLinEcore.g:16736:1: ( ',' )
+            // InternalOCLinEcore.g:16737:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
@@ -51124,14 +51124,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__3"
-    // InternalOCLinEcore.g:16748:1: rule__MapTypeCS__Group_1__3 : rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 ;
+    // InternalOCLinEcore.g:16750:1: rule__MapTypeCS__Group_1__3 : rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 ;
     public final void rule__MapTypeCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16752:1: ( rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 )
-            // InternalOCLinEcore.g:16753:2: rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4
+            // InternalOCLinEcore.g:16754:1: ( rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 )
+            // InternalOCLinEcore.g:16755:2: rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__MapTypeCS__Group_1__3__Impl();
@@ -51162,23 +51162,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__3__Impl"
-    // InternalOCLinEcore.g:16760:1: rule__MapTypeCS__Group_1__3__Impl : ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) ;
+    // InternalOCLinEcore.g:16762:1: rule__MapTypeCS__Group_1__3__Impl : ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) ;
     public final void rule__MapTypeCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16764:1: ( ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) )
-            // InternalOCLinEcore.g:16765:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
+            // InternalOCLinEcore.g:16766:1: ( ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) )
+            // InternalOCLinEcore.g:16767:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
             {
-            // InternalOCLinEcore.g:16765:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
-            // InternalOCLinEcore.g:16766:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
+            // InternalOCLinEcore.g:16767:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
+            // InternalOCLinEcore.g:16768:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3());
             }
-            // InternalOCLinEcore.g:16767:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
-            // InternalOCLinEcore.g:16767:2: rule__MapTypeCS__OwnedValueTypeAssignment_1_3
+            // InternalOCLinEcore.g:16769:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
+            // InternalOCLinEcore.g:16769:2: rule__MapTypeCS__OwnedValueTypeAssignment_1_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__OwnedValueTypeAssignment_1_3();
@@ -51213,14 +51213,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__4"
-    // InternalOCLinEcore.g:16777:1: rule__MapTypeCS__Group_1__4 : rule__MapTypeCS__Group_1__4__Impl ;
+    // InternalOCLinEcore.g:16779:1: rule__MapTypeCS__Group_1__4 : rule__MapTypeCS__Group_1__4__Impl ;
     public final void rule__MapTypeCS__Group_1__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16781:1: ( rule__MapTypeCS__Group_1__4__Impl )
-            // InternalOCLinEcore.g:16782:2: rule__MapTypeCS__Group_1__4__Impl
+            // InternalOCLinEcore.g:16783:1: ( rule__MapTypeCS__Group_1__4__Impl )
+            // InternalOCLinEcore.g:16784:2: rule__MapTypeCS__Group_1__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__Group_1__4__Impl();
@@ -51246,17 +51246,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__4__Impl"
-    // InternalOCLinEcore.g:16788:1: rule__MapTypeCS__Group_1__4__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:16790:1: rule__MapTypeCS__Group_1__4__Impl : ( ')' ) ;
     public final void rule__MapTypeCS__Group_1__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16792:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:16793:1: ( ')' )
+            // InternalOCLinEcore.g:16794:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:16795:1: ( ')' )
             {
-            // InternalOCLinEcore.g:16793:1: ( ')' )
-            // InternalOCLinEcore.g:16794:1: ')'
+            // InternalOCLinEcore.g:16795:1: ( ')' )
+            // InternalOCLinEcore.g:16796:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
@@ -51287,14 +51287,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__0"
-    // InternalOCLinEcore.g:16817:1: rule__TupleTypeCS__Group__0 : rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 ;
+    // InternalOCLinEcore.g:16819:1: rule__TupleTypeCS__Group__0 : rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 ;
     public final void rule__TupleTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16821:1: ( rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 )
-            // InternalOCLinEcore.g:16822:2: rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1
+            // InternalOCLinEcore.g:16823:1: ( rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 )
+            // InternalOCLinEcore.g:16824:2: rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__TupleTypeCS__Group__0__Impl();
@@ -51325,23 +51325,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__0__Impl"
-    // InternalOCLinEcore.g:16829:1: rule__TupleTypeCS__Group__0__Impl : ( ( rule__TupleTypeCS__NameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:16831:1: rule__TupleTypeCS__Group__0__Impl : ( ( rule__TupleTypeCS__NameAssignment_0 ) ) ;
     public final void rule__TupleTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16833:1: ( ( ( rule__TupleTypeCS__NameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:16834:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:16835:1: ( ( ( rule__TupleTypeCS__NameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:16836:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:16834:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
-            // InternalOCLinEcore.g:16835:1: ( rule__TupleTypeCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:16836:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:16837:1: ( rule__TupleTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0());
             }
-            // InternalOCLinEcore.g:16836:1: ( rule__TupleTypeCS__NameAssignment_0 )
-            // InternalOCLinEcore.g:16836:2: rule__TupleTypeCS__NameAssignment_0
+            // InternalOCLinEcore.g:16838:1: ( rule__TupleTypeCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:16838:2: rule__TupleTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__NameAssignment_0();
@@ -51376,14 +51376,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__1"
-    // InternalOCLinEcore.g:16846:1: rule__TupleTypeCS__Group__1 : rule__TupleTypeCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:16848:1: rule__TupleTypeCS__Group__1 : rule__TupleTypeCS__Group__1__Impl ;
     public final void rule__TupleTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16850:1: ( rule__TupleTypeCS__Group__1__Impl )
-            // InternalOCLinEcore.g:16851:2: rule__TupleTypeCS__Group__1__Impl
+            // InternalOCLinEcore.g:16852:1: ( rule__TupleTypeCS__Group__1__Impl )
+            // InternalOCLinEcore.g:16853:2: rule__TupleTypeCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group__1__Impl();
@@ -51409,22 +51409,22 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__1__Impl"
-    // InternalOCLinEcore.g:16857:1: rule__TupleTypeCS__Group__1__Impl : ( ( rule__TupleTypeCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:16859:1: rule__TupleTypeCS__Group__1__Impl : ( ( rule__TupleTypeCS__Group_1__0 )? ) ;
     public final void rule__TupleTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16861:1: ( ( ( rule__TupleTypeCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:16862:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:16863:1: ( ( ( rule__TupleTypeCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:16864:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:16862:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:16863:1: ( rule__TupleTypeCS__Group_1__0 )?
+            // InternalOCLinEcore.g:16864:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:16865:1: ( rule__TupleTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:16864:1: ( rule__TupleTypeCS__Group_1__0 )?
+            // InternalOCLinEcore.g:16866:1: ( rule__TupleTypeCS__Group_1__0 )?
             int alt186=2;
             int LA186_0 = input.LA(1);
 
@@ -51433,7 +51433,7 @@
             }
             switch (alt186) {
                 case 1 :
-                    // InternalOCLinEcore.g:16864:2: rule__TupleTypeCS__Group_1__0
+                    // InternalOCLinEcore.g:16866:2: rule__TupleTypeCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TupleTypeCS__Group_1__0();
@@ -51471,14 +51471,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__0"
-    // InternalOCLinEcore.g:16878:1: rule__TupleTypeCS__Group_1__0 : rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 ;
+    // InternalOCLinEcore.g:16880:1: rule__TupleTypeCS__Group_1__0 : rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 ;
     public final void rule__TupleTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16882:1: ( rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 )
-            // InternalOCLinEcore.g:16883:2: rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1
+            // InternalOCLinEcore.g:16884:1: ( rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 )
+            // InternalOCLinEcore.g:16885:2: rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_55);
             rule__TupleTypeCS__Group_1__0__Impl();
@@ -51509,17 +51509,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:16890:1: rule__TupleTypeCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:16892:1: rule__TupleTypeCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__TupleTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16894:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:16895:1: ( '(' )
+            // InternalOCLinEcore.g:16896:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:16897:1: ( '(' )
             {
-            // InternalOCLinEcore.g:16895:1: ( '(' )
-            // InternalOCLinEcore.g:16896:1: '('
+            // InternalOCLinEcore.g:16897:1: ( '(' )
+            // InternalOCLinEcore.g:16898:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -51550,14 +51550,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__1"
-    // InternalOCLinEcore.g:16909:1: rule__TupleTypeCS__Group_1__1 : rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 ;
+    // InternalOCLinEcore.g:16911:1: rule__TupleTypeCS__Group_1__1 : rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 ;
     public final void rule__TupleTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16913:1: ( rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 )
-            // InternalOCLinEcore.g:16914:2: rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2
+            // InternalOCLinEcore.g:16915:1: ( rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 )
+            // InternalOCLinEcore.g:16916:2: rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_55);
             rule__TupleTypeCS__Group_1__1__Impl();
@@ -51588,22 +51588,22 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:16921:1: rule__TupleTypeCS__Group_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1__0 )? ) ;
+    // InternalOCLinEcore.g:16923:1: rule__TupleTypeCS__Group_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1__0 )? ) ;
     public final void rule__TupleTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16925:1: ( ( ( rule__TupleTypeCS__Group_1_1__0 )? ) )
-            // InternalOCLinEcore.g:16926:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
+            // InternalOCLinEcore.g:16927:1: ( ( ( rule__TupleTypeCS__Group_1_1__0 )? ) )
+            // InternalOCLinEcore.g:16928:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
             {
-            // InternalOCLinEcore.g:16926:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
-            // InternalOCLinEcore.g:16927:1: ( rule__TupleTypeCS__Group_1_1__0 )?
+            // InternalOCLinEcore.g:16928:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
+            // InternalOCLinEcore.g:16929:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1());
             }
-            // InternalOCLinEcore.g:16928:1: ( rule__TupleTypeCS__Group_1_1__0 )?
+            // InternalOCLinEcore.g:16930:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             int alt187=2;
             int LA187_0 = input.LA(1);
 
@@ -51612,7 +51612,7 @@
             }
             switch (alt187) {
                 case 1 :
-                    // InternalOCLinEcore.g:16928:2: rule__TupleTypeCS__Group_1_1__0
+                    // InternalOCLinEcore.g:16930:2: rule__TupleTypeCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TupleTypeCS__Group_1_1__0();
@@ -51650,14 +51650,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__2"
-    // InternalOCLinEcore.g:16938:1: rule__TupleTypeCS__Group_1__2 : rule__TupleTypeCS__Group_1__2__Impl ;
+    // InternalOCLinEcore.g:16940:1: rule__TupleTypeCS__Group_1__2 : rule__TupleTypeCS__Group_1__2__Impl ;
     public final void rule__TupleTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16942:1: ( rule__TupleTypeCS__Group_1__2__Impl )
-            // InternalOCLinEcore.g:16943:2: rule__TupleTypeCS__Group_1__2__Impl
+            // InternalOCLinEcore.g:16944:1: ( rule__TupleTypeCS__Group_1__2__Impl )
+            // InternalOCLinEcore.g:16945:2: rule__TupleTypeCS__Group_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group_1__2__Impl();
@@ -51683,17 +51683,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__2__Impl"
-    // InternalOCLinEcore.g:16949:1: rule__TupleTypeCS__Group_1__2__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:16951:1: rule__TupleTypeCS__Group_1__2__Impl : ( ')' ) ;
     public final void rule__TupleTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16953:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:16954:1: ( ')' )
+            // InternalOCLinEcore.g:16955:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:16956:1: ( ')' )
             {
-            // InternalOCLinEcore.g:16954:1: ( ')' )
-            // InternalOCLinEcore.g:16955:1: ')'
+            // InternalOCLinEcore.g:16956:1: ( ')' )
+            // InternalOCLinEcore.g:16957:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
@@ -51724,14 +51724,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__0"
-    // InternalOCLinEcore.g:16974:1: rule__TupleTypeCS__Group_1_1__0 : rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 ;
+    // InternalOCLinEcore.g:16976:1: rule__TupleTypeCS__Group_1_1__0 : rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 ;
     public final void rule__TupleTypeCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16978:1: ( rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 )
-            // InternalOCLinEcore.g:16979:2: rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1
+            // InternalOCLinEcore.g:16980:1: ( rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 )
+            // InternalOCLinEcore.g:16981:2: rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__TupleTypeCS__Group_1_1__0__Impl();
@@ -51762,23 +51762,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__0__Impl"
-    // InternalOCLinEcore.g:16986:1: rule__TupleTypeCS__Group_1_1__0__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) ;
+    // InternalOCLinEcore.g:16988:1: rule__TupleTypeCS__Group_1_1__0__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) ;
     public final void rule__TupleTypeCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:16990:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) )
-            // InternalOCLinEcore.g:16991:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
+            // InternalOCLinEcore.g:16992:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) )
+            // InternalOCLinEcore.g:16993:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
             {
-            // InternalOCLinEcore.g:16991:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
-            // InternalOCLinEcore.g:16992:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
+            // InternalOCLinEcore.g:16993:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
+            // InternalOCLinEcore.g:16994:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0());
             }
-            // InternalOCLinEcore.g:16993:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
-            // InternalOCLinEcore.g:16993:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0
+            // InternalOCLinEcore.g:16995:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
+            // InternalOCLinEcore.g:16995:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__OwnedPartsAssignment_1_1_0();
@@ -51813,14 +51813,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__1"
-    // InternalOCLinEcore.g:17003:1: rule__TupleTypeCS__Group_1_1__1 : rule__TupleTypeCS__Group_1_1__1__Impl ;
+    // InternalOCLinEcore.g:17005:1: rule__TupleTypeCS__Group_1_1__1 : rule__TupleTypeCS__Group_1_1__1__Impl ;
     public final void rule__TupleTypeCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17007:1: ( rule__TupleTypeCS__Group_1_1__1__Impl )
-            // InternalOCLinEcore.g:17008:2: rule__TupleTypeCS__Group_1_1__1__Impl
+            // InternalOCLinEcore.g:17009:1: ( rule__TupleTypeCS__Group_1_1__1__Impl )
+            // InternalOCLinEcore.g:17010:2: rule__TupleTypeCS__Group_1_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group_1_1__1__Impl();
@@ -51846,22 +51846,22 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__1__Impl"
-    // InternalOCLinEcore.g:17014:1: rule__TupleTypeCS__Group_1_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) ;
+    // InternalOCLinEcore.g:17016:1: rule__TupleTypeCS__Group_1_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) ;
     public final void rule__TupleTypeCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17018:1: ( ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) )
-            // InternalOCLinEcore.g:17019:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
+            // InternalOCLinEcore.g:17020:1: ( ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) )
+            // InternalOCLinEcore.g:17021:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
             {
-            // InternalOCLinEcore.g:17019:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
-            // InternalOCLinEcore.g:17020:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
+            // InternalOCLinEcore.g:17021:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
+            // InternalOCLinEcore.g:17022:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1());
             }
-            // InternalOCLinEcore.g:17021:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
+            // InternalOCLinEcore.g:17023:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             loop188:
             do {
                 int alt188=2;
@@ -51874,7 +51874,7 @@
 
                 switch (alt188) {
             	case 1 :
-            	    // InternalOCLinEcore.g:17021:2: rule__TupleTypeCS__Group_1_1_1__0
+            	    // InternalOCLinEcore.g:17023:2: rule__TupleTypeCS__Group_1_1_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__TupleTypeCS__Group_1_1_1__0();
@@ -51915,14 +51915,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__0"
-    // InternalOCLinEcore.g:17035:1: rule__TupleTypeCS__Group_1_1_1__0 : rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 ;
+    // InternalOCLinEcore.g:17037:1: rule__TupleTypeCS__Group_1_1_1__0 : rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 ;
     public final void rule__TupleTypeCS__Group_1_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17039:1: ( rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 )
-            // InternalOCLinEcore.g:17040:2: rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1
+            // InternalOCLinEcore.g:17041:1: ( rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 )
+            // InternalOCLinEcore.g:17042:2: rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__TupleTypeCS__Group_1_1_1__0__Impl();
@@ -51953,17 +51953,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__0__Impl"
-    // InternalOCLinEcore.g:17047:1: rule__TupleTypeCS__Group_1_1_1__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:17049:1: rule__TupleTypeCS__Group_1_1_1__0__Impl : ( ',' ) ;
     public final void rule__TupleTypeCS__Group_1_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17051:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:17052:1: ( ',' )
+            // InternalOCLinEcore.g:17053:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:17054:1: ( ',' )
             {
-            // InternalOCLinEcore.g:17052:1: ( ',' )
-            // InternalOCLinEcore.g:17053:1: ','
+            // InternalOCLinEcore.g:17054:1: ( ',' )
+            // InternalOCLinEcore.g:17055:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
@@ -51994,14 +51994,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__1"
-    // InternalOCLinEcore.g:17066:1: rule__TupleTypeCS__Group_1_1_1__1 : rule__TupleTypeCS__Group_1_1_1__1__Impl ;
+    // InternalOCLinEcore.g:17068:1: rule__TupleTypeCS__Group_1_1_1__1 : rule__TupleTypeCS__Group_1_1_1__1__Impl ;
     public final void rule__TupleTypeCS__Group_1_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17070:1: ( rule__TupleTypeCS__Group_1_1_1__1__Impl )
-            // InternalOCLinEcore.g:17071:2: rule__TupleTypeCS__Group_1_1_1__1__Impl
+            // InternalOCLinEcore.g:17072:1: ( rule__TupleTypeCS__Group_1_1_1__1__Impl )
+            // InternalOCLinEcore.g:17073:2: rule__TupleTypeCS__Group_1_1_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group_1_1_1__1__Impl();
@@ -52027,23 +52027,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__1__Impl"
-    // InternalOCLinEcore.g:17077:1: rule__TupleTypeCS__Group_1_1_1__1__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) ;
+    // InternalOCLinEcore.g:17079:1: rule__TupleTypeCS__Group_1_1_1__1__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) ;
     public final void rule__TupleTypeCS__Group_1_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17081:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) )
-            // InternalOCLinEcore.g:17082:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
+            // InternalOCLinEcore.g:17083:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) )
+            // InternalOCLinEcore.g:17084:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
             {
-            // InternalOCLinEcore.g:17082:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
-            // InternalOCLinEcore.g:17083:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
+            // InternalOCLinEcore.g:17084:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
+            // InternalOCLinEcore.g:17085:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1());
             }
-            // InternalOCLinEcore.g:17084:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
-            // InternalOCLinEcore.g:17084:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1
+            // InternalOCLinEcore.g:17086:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
+            // InternalOCLinEcore.g:17086:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1();
@@ -52078,14 +52078,14 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__0"
-    // InternalOCLinEcore.g:17098:1: rule__TuplePartCS__Group__0 : rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 ;
+    // InternalOCLinEcore.g:17100:1: rule__TuplePartCS__Group__0 : rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 ;
     public final void rule__TuplePartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17102:1: ( rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 )
-            // InternalOCLinEcore.g:17103:2: rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1
+            // InternalOCLinEcore.g:17104:1: ( rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 )
+            // InternalOCLinEcore.g:17105:2: rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_51);
             rule__TuplePartCS__Group__0__Impl();
@@ -52116,23 +52116,23 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__0__Impl"
-    // InternalOCLinEcore.g:17110:1: rule__TuplePartCS__Group__0__Impl : ( ( rule__TuplePartCS__NameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:17112:1: rule__TuplePartCS__Group__0__Impl : ( ( rule__TuplePartCS__NameAssignment_0 ) ) ;
     public final void rule__TuplePartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17114:1: ( ( ( rule__TuplePartCS__NameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:17115:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:17116:1: ( ( ( rule__TuplePartCS__NameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:17117:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:17115:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
-            // InternalOCLinEcore.g:17116:1: ( rule__TuplePartCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:17117:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:17118:1: ( rule__TuplePartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getNameAssignment_0());
             }
-            // InternalOCLinEcore.g:17117:1: ( rule__TuplePartCS__NameAssignment_0 )
-            // InternalOCLinEcore.g:17117:2: rule__TuplePartCS__NameAssignment_0
+            // InternalOCLinEcore.g:17119:1: ( rule__TuplePartCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:17119:2: rule__TuplePartCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TuplePartCS__NameAssignment_0();
@@ -52167,14 +52167,14 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__1"
-    // InternalOCLinEcore.g:17127:1: rule__TuplePartCS__Group__1 : rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 ;
+    // InternalOCLinEcore.g:17129:1: rule__TuplePartCS__Group__1 : rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 ;
     public final void rule__TuplePartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17131:1: ( rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 )
-            // InternalOCLinEcore.g:17132:2: rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2
+            // InternalOCLinEcore.g:17133:1: ( rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 )
+            // InternalOCLinEcore.g:17134:2: rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__TuplePartCS__Group__1__Impl();
@@ -52205,17 +52205,17 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__1__Impl"
-    // InternalOCLinEcore.g:17139:1: rule__TuplePartCS__Group__1__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:17141:1: rule__TuplePartCS__Group__1__Impl : ( ':' ) ;
     public final void rule__TuplePartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17143:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:17144:1: ( ':' )
+            // InternalOCLinEcore.g:17145:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:17146:1: ( ':' )
             {
-            // InternalOCLinEcore.g:17144:1: ( ':' )
-            // InternalOCLinEcore.g:17145:1: ':'
+            // InternalOCLinEcore.g:17146:1: ( ':' )
+            // InternalOCLinEcore.g:17147:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
@@ -52246,14 +52246,14 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__2"
-    // InternalOCLinEcore.g:17158:1: rule__TuplePartCS__Group__2 : rule__TuplePartCS__Group__2__Impl ;
+    // InternalOCLinEcore.g:17160:1: rule__TuplePartCS__Group__2 : rule__TuplePartCS__Group__2__Impl ;
     public final void rule__TuplePartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17162:1: ( rule__TuplePartCS__Group__2__Impl )
-            // InternalOCLinEcore.g:17163:2: rule__TuplePartCS__Group__2__Impl
+            // InternalOCLinEcore.g:17164:1: ( rule__TuplePartCS__Group__2__Impl )
+            // InternalOCLinEcore.g:17165:2: rule__TuplePartCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TuplePartCS__Group__2__Impl();
@@ -52279,23 +52279,23 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__2__Impl"
-    // InternalOCLinEcore.g:17169:1: rule__TuplePartCS__Group__2__Impl : ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) ;
+    // InternalOCLinEcore.g:17171:1: rule__TuplePartCS__Group__2__Impl : ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) ;
     public final void rule__TuplePartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17173:1: ( ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) )
-            // InternalOCLinEcore.g:17174:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
+            // InternalOCLinEcore.g:17175:1: ( ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) )
+            // InternalOCLinEcore.g:17176:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
             {
-            // InternalOCLinEcore.g:17174:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
-            // InternalOCLinEcore.g:17175:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
+            // InternalOCLinEcore.g:17176:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
+            // InternalOCLinEcore.g:17177:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2());
             }
-            // InternalOCLinEcore.g:17176:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
-            // InternalOCLinEcore.g:17176:2: rule__TuplePartCS__OwnedTypeAssignment_2
+            // InternalOCLinEcore.g:17178:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
+            // InternalOCLinEcore.g:17178:2: rule__TuplePartCS__OwnedTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TuplePartCS__OwnedTypeAssignment_2();
@@ -52330,14 +52330,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__0"
-    // InternalOCLinEcore.g:17192:1: rule__CollectionLiteralExpCS__Group__0 : rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 ;
+    // InternalOCLinEcore.g:17194:1: rule__CollectionLiteralExpCS__Group__0 : rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 ;
     public final void rule__CollectionLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17196:1: ( rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 )
-            // InternalOCLinEcore.g:17197:2: rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1
+            // InternalOCLinEcore.g:17198:1: ( rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 )
+            // InternalOCLinEcore.g:17199:2: rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__CollectionLiteralExpCS__Group__0__Impl();
@@ -52368,23 +52368,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:17204:1: rule__CollectionLiteralExpCS__Group__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:17206:1: rule__CollectionLiteralExpCS__Group__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
     public final void rule__CollectionLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17208:1: ( ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) )
-            // InternalOCLinEcore.g:17209:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalOCLinEcore.g:17210:1: ( ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) )
+            // InternalOCLinEcore.g:17211:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:17209:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
-            // InternalOCLinEcore.g:17210:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalOCLinEcore.g:17211:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalOCLinEcore.g:17212:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
-            // InternalOCLinEcore.g:17211:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
-            // InternalOCLinEcore.g:17211:2: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0
+            // InternalOCLinEcore.g:17213:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalOCLinEcore.g:17213:2: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__OwnedTypeAssignment_0();
@@ -52419,14 +52419,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__1"
-    // InternalOCLinEcore.g:17221:1: rule__CollectionLiteralExpCS__Group__1 : rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 ;
+    // InternalOCLinEcore.g:17223:1: rule__CollectionLiteralExpCS__Group__1 : rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 ;
     public final void rule__CollectionLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17225:1: ( rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 )
-            // InternalOCLinEcore.g:17226:2: rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2
+            // InternalOCLinEcore.g:17227:1: ( rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 )
+            // InternalOCLinEcore.g:17228:2: rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_90);
             rule__CollectionLiteralExpCS__Group__1__Impl();
@@ -52457,17 +52457,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:17233:1: rule__CollectionLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:17235:1: rule__CollectionLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__CollectionLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17237:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:17238:1: ( '{' )
+            // InternalOCLinEcore.g:17239:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:17240:1: ( '{' )
             {
-            // InternalOCLinEcore.g:17238:1: ( '{' )
-            // InternalOCLinEcore.g:17239:1: '{'
+            // InternalOCLinEcore.g:17240:1: ( '{' )
+            // InternalOCLinEcore.g:17241:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -52498,14 +52498,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__2"
-    // InternalOCLinEcore.g:17252:1: rule__CollectionLiteralExpCS__Group__2 : rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 ;
+    // InternalOCLinEcore.g:17254:1: rule__CollectionLiteralExpCS__Group__2 : rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 ;
     public final void rule__CollectionLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17256:1: ( rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 )
-            // InternalOCLinEcore.g:17257:2: rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3
+            // InternalOCLinEcore.g:17258:1: ( rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 )
+            // InternalOCLinEcore.g:17259:2: rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_90);
             rule__CollectionLiteralExpCS__Group__2__Impl();
@@ -52536,22 +52536,22 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__2__Impl"
-    // InternalOCLinEcore.g:17264:1: rule__CollectionLiteralExpCS__Group__2__Impl : ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:17266:1: rule__CollectionLiteralExpCS__Group__2__Impl : ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) ;
     public final void rule__CollectionLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17268:1: ( ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:17269:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:17270:1: ( ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:17271:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:17269:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:17270:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
+            // InternalOCLinEcore.g:17271:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:17272:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:17271:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
+            // InternalOCLinEcore.g:17273:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             int alt189=2;
             int LA189_0 = input.LA(1);
 
@@ -52560,7 +52560,7 @@
             }
             switch (alt189) {
                 case 1 :
-                    // InternalOCLinEcore.g:17271:2: rule__CollectionLiteralExpCS__Group_2__0
+                    // InternalOCLinEcore.g:17273:2: rule__CollectionLiteralExpCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralExpCS__Group_2__0();
@@ -52598,14 +52598,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__3"
-    // InternalOCLinEcore.g:17281:1: rule__CollectionLiteralExpCS__Group__3 : rule__CollectionLiteralExpCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:17283:1: rule__CollectionLiteralExpCS__Group__3 : rule__CollectionLiteralExpCS__Group__3__Impl ;
     public final void rule__CollectionLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17285:1: ( rule__CollectionLiteralExpCS__Group__3__Impl )
-            // InternalOCLinEcore.g:17286:2: rule__CollectionLiteralExpCS__Group__3__Impl
+            // InternalOCLinEcore.g:17287:1: ( rule__CollectionLiteralExpCS__Group__3__Impl )
+            // InternalOCLinEcore.g:17288:2: rule__CollectionLiteralExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__Group__3__Impl();
@@ -52631,17 +52631,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__3__Impl"
-    // InternalOCLinEcore.g:17292:1: rule__CollectionLiteralExpCS__Group__3__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:17294:1: rule__CollectionLiteralExpCS__Group__3__Impl : ( '}' ) ;
     public final void rule__CollectionLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17296:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:17297:1: ( '}' )
+            // InternalOCLinEcore.g:17298:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:17299:1: ( '}' )
             {
-            // InternalOCLinEcore.g:17297:1: ( '}' )
-            // InternalOCLinEcore.g:17298:1: '}'
+            // InternalOCLinEcore.g:17299:1: ( '}' )
+            // InternalOCLinEcore.g:17300:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
@@ -52672,14 +52672,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__0"
-    // InternalOCLinEcore.g:17319:1: rule__CollectionLiteralExpCS__Group_2__0 : rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 ;
+    // InternalOCLinEcore.g:17321:1: rule__CollectionLiteralExpCS__Group_2__0 : rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 ;
     public final void rule__CollectionLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17323:1: ( rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 )
-            // InternalOCLinEcore.g:17324:2: rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1
+            // InternalOCLinEcore.g:17325:1: ( rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 )
+            // InternalOCLinEcore.g:17326:2: rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__CollectionLiteralExpCS__Group_2__0__Impl();
@@ -52710,23 +52710,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:17331:1: rule__CollectionLiteralExpCS__Group_2__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalOCLinEcore.g:17333:1: rule__CollectionLiteralExpCS__Group_2__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__CollectionLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17335:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalOCLinEcore.g:17336:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLinEcore.g:17337:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalOCLinEcore.g:17338:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalOCLinEcore.g:17336:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
-            // InternalOCLinEcore.g:17337:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLinEcore.g:17338:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLinEcore.g:17339:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalOCLinEcore.g:17338:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
-            // InternalOCLinEcore.g:17338:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0
+            // InternalOCLinEcore.g:17340:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLinEcore.g:17340:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0();
@@ -52761,14 +52761,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__1"
-    // InternalOCLinEcore.g:17348:1: rule__CollectionLiteralExpCS__Group_2__1 : rule__CollectionLiteralExpCS__Group_2__1__Impl ;
+    // InternalOCLinEcore.g:17350:1: rule__CollectionLiteralExpCS__Group_2__1 : rule__CollectionLiteralExpCS__Group_2__1__Impl ;
     public final void rule__CollectionLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17352:1: ( rule__CollectionLiteralExpCS__Group_2__1__Impl )
-            // InternalOCLinEcore.g:17353:2: rule__CollectionLiteralExpCS__Group_2__1__Impl
+            // InternalOCLinEcore.g:17354:1: ( rule__CollectionLiteralExpCS__Group_2__1__Impl )
+            // InternalOCLinEcore.g:17355:2: rule__CollectionLiteralExpCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__Group_2__1__Impl();
@@ -52794,22 +52794,22 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:17359:1: rule__CollectionLiteralExpCS__Group_2__1__Impl : ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) ;
+    // InternalOCLinEcore.g:17361:1: rule__CollectionLiteralExpCS__Group_2__1__Impl : ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) ;
     public final void rule__CollectionLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17363:1: ( ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) )
-            // InternalOCLinEcore.g:17364:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
+            // InternalOCLinEcore.g:17365:1: ( ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) )
+            // InternalOCLinEcore.g:17366:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
             {
-            // InternalOCLinEcore.g:17364:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
-            // InternalOCLinEcore.g:17365:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
+            // InternalOCLinEcore.g:17366:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
+            // InternalOCLinEcore.g:17367:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1());
             }
-            // InternalOCLinEcore.g:17366:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
+            // InternalOCLinEcore.g:17368:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             loop190:
             do {
                 int alt190=2;
@@ -52822,7 +52822,7 @@
 
                 switch (alt190) {
             	case 1 :
-            	    // InternalOCLinEcore.g:17366:2: rule__CollectionLiteralExpCS__Group_2_1__0
+            	    // InternalOCLinEcore.g:17368:2: rule__CollectionLiteralExpCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__CollectionLiteralExpCS__Group_2_1__0();
@@ -52863,14 +52863,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__0"
-    // InternalOCLinEcore.g:17380:1: rule__CollectionLiteralExpCS__Group_2_1__0 : rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 ;
+    // InternalOCLinEcore.g:17382:1: rule__CollectionLiteralExpCS__Group_2_1__0 : rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17384:1: ( rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 )
-            // InternalOCLinEcore.g:17385:2: rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1
+            // InternalOCLinEcore.g:17386:1: ( rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 )
+            // InternalOCLinEcore.g:17387:2: rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_91);
             rule__CollectionLiteralExpCS__Group_2_1__0__Impl();
@@ -52901,17 +52901,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__0__Impl"
-    // InternalOCLinEcore.g:17392:1: rule__CollectionLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:17394:1: rule__CollectionLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17396:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:17397:1: ( ',' )
+            // InternalOCLinEcore.g:17398:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:17399:1: ( ',' )
             {
-            // InternalOCLinEcore.g:17397:1: ( ',' )
-            // InternalOCLinEcore.g:17398:1: ','
+            // InternalOCLinEcore.g:17399:1: ( ',' )
+            // InternalOCLinEcore.g:17400:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
@@ -52942,14 +52942,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__1"
-    // InternalOCLinEcore.g:17411:1: rule__CollectionLiteralExpCS__Group_2_1__1 : rule__CollectionLiteralExpCS__Group_2_1__1__Impl ;
+    // InternalOCLinEcore.g:17413:1: rule__CollectionLiteralExpCS__Group_2_1__1 : rule__CollectionLiteralExpCS__Group_2_1__1__Impl ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17415:1: ( rule__CollectionLiteralExpCS__Group_2_1__1__Impl )
-            // InternalOCLinEcore.g:17416:2: rule__CollectionLiteralExpCS__Group_2_1__1__Impl
+            // InternalOCLinEcore.g:17417:1: ( rule__CollectionLiteralExpCS__Group_2_1__1__Impl )
+            // InternalOCLinEcore.g:17418:2: rule__CollectionLiteralExpCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__Group_2_1__1__Impl();
@@ -52975,23 +52975,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__1__Impl"
-    // InternalOCLinEcore.g:17422:1: rule__CollectionLiteralExpCS__Group_2_1__1__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalOCLinEcore.g:17424:1: rule__CollectionLiteralExpCS__Group_2_1__1__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17426:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalOCLinEcore.g:17427:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLinEcore.g:17428:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalOCLinEcore.g:17429:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalOCLinEcore.g:17427:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalOCLinEcore.g:17428:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLinEcore.g:17429:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLinEcore.g:17430:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalOCLinEcore.g:17429:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
-            // InternalOCLinEcore.g:17429:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1
+            // InternalOCLinEcore.g:17431:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLinEcore.g:17431:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1();
@@ -53026,14 +53026,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__0"
-    // InternalOCLinEcore.g:17443:1: rule__CollectionLiteralPartCS__Group_0__0 : rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 ;
+    // InternalOCLinEcore.g:17445:1: rule__CollectionLiteralPartCS__Group_0__0 : rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 ;
     public final void rule__CollectionLiteralPartCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17447:1: ( rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 )
-            // InternalOCLinEcore.g:17448:2: rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1
+            // InternalOCLinEcore.g:17449:1: ( rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 )
+            // InternalOCLinEcore.g:17450:2: rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_92);
             rule__CollectionLiteralPartCS__Group_0__0__Impl();
@@ -53064,23 +53064,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__0__Impl"
-    // InternalOCLinEcore.g:17455:1: rule__CollectionLiteralPartCS__Group_0__0__Impl : ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) ;
+    // InternalOCLinEcore.g:17457:1: rule__CollectionLiteralPartCS__Group_0__0__Impl : ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) ;
     public final void rule__CollectionLiteralPartCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17459:1: ( ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) )
-            // InternalOCLinEcore.g:17460:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
+            // InternalOCLinEcore.g:17461:1: ( ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) )
+            // InternalOCLinEcore.g:17462:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
             {
-            // InternalOCLinEcore.g:17460:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
-            // InternalOCLinEcore.g:17461:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
+            // InternalOCLinEcore.g:17462:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
+            // InternalOCLinEcore.g:17463:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0());
             }
-            // InternalOCLinEcore.g:17462:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
-            // InternalOCLinEcore.g:17462:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0
+            // InternalOCLinEcore.g:17464:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
+            // InternalOCLinEcore.g:17464:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0();
@@ -53115,14 +53115,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__1"
-    // InternalOCLinEcore.g:17472:1: rule__CollectionLiteralPartCS__Group_0__1 : rule__CollectionLiteralPartCS__Group_0__1__Impl ;
+    // InternalOCLinEcore.g:17474:1: rule__CollectionLiteralPartCS__Group_0__1 : rule__CollectionLiteralPartCS__Group_0__1__Impl ;
     public final void rule__CollectionLiteralPartCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17476:1: ( rule__CollectionLiteralPartCS__Group_0__1__Impl )
-            // InternalOCLinEcore.g:17477:2: rule__CollectionLiteralPartCS__Group_0__1__Impl
+            // InternalOCLinEcore.g:17478:1: ( rule__CollectionLiteralPartCS__Group_0__1__Impl )
+            // InternalOCLinEcore.g:17479:2: rule__CollectionLiteralPartCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__Group_0__1__Impl();
@@ -53148,22 +53148,22 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__1__Impl"
-    // InternalOCLinEcore.g:17483:1: rule__CollectionLiteralPartCS__Group_0__1__Impl : ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) ;
+    // InternalOCLinEcore.g:17485:1: rule__CollectionLiteralPartCS__Group_0__1__Impl : ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) ;
     public final void rule__CollectionLiteralPartCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17487:1: ( ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) )
-            // InternalOCLinEcore.g:17488:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
+            // InternalOCLinEcore.g:17489:1: ( ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) )
+            // InternalOCLinEcore.g:17490:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
             {
-            // InternalOCLinEcore.g:17488:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
-            // InternalOCLinEcore.g:17489:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
+            // InternalOCLinEcore.g:17490:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
+            // InternalOCLinEcore.g:17491:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1());
             }
-            // InternalOCLinEcore.g:17490:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
+            // InternalOCLinEcore.g:17492:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             int alt191=2;
             int LA191_0 = input.LA(1);
 
@@ -53172,7 +53172,7 @@
             }
             switch (alt191) {
                 case 1 :
-                    // InternalOCLinEcore.g:17490:2: rule__CollectionLiteralPartCS__Group_0_1__0
+                    // InternalOCLinEcore.g:17492:2: rule__CollectionLiteralPartCS__Group_0_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralPartCS__Group_0_1__0();
@@ -53210,14 +53210,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__0"
-    // InternalOCLinEcore.g:17504:1: rule__CollectionLiteralPartCS__Group_0_1__0 : rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 ;
+    // InternalOCLinEcore.g:17506:1: rule__CollectionLiteralPartCS__Group_0_1__0 : rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17508:1: ( rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 )
-            // InternalOCLinEcore.g:17509:2: rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1
+            // InternalOCLinEcore.g:17510:1: ( rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 )
+            // InternalOCLinEcore.g:17511:2: rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__CollectionLiteralPartCS__Group_0_1__0__Impl();
@@ -53248,17 +53248,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__0__Impl"
-    // InternalOCLinEcore.g:17516:1: rule__CollectionLiteralPartCS__Group_0_1__0__Impl : ( '..' ) ;
+    // InternalOCLinEcore.g:17518:1: rule__CollectionLiteralPartCS__Group_0_1__0__Impl : ( '..' ) ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17520:1: ( ( '..' ) )
-            // InternalOCLinEcore.g:17521:1: ( '..' )
+            // InternalOCLinEcore.g:17522:1: ( ( '..' ) )
+            // InternalOCLinEcore.g:17523:1: ( '..' )
             {
-            // InternalOCLinEcore.g:17521:1: ( '..' )
-            // InternalOCLinEcore.g:17522:1: '..'
+            // InternalOCLinEcore.g:17523:1: ( '..' )
+            // InternalOCLinEcore.g:17524:1: '..'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
@@ -53289,14 +53289,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__1"
-    // InternalOCLinEcore.g:17535:1: rule__CollectionLiteralPartCS__Group_0_1__1 : rule__CollectionLiteralPartCS__Group_0_1__1__Impl ;
+    // InternalOCLinEcore.g:17537:1: rule__CollectionLiteralPartCS__Group_0_1__1 : rule__CollectionLiteralPartCS__Group_0_1__1__Impl ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17539:1: ( rule__CollectionLiteralPartCS__Group_0_1__1__Impl )
-            // InternalOCLinEcore.g:17540:2: rule__CollectionLiteralPartCS__Group_0_1__1__Impl
+            // InternalOCLinEcore.g:17541:1: ( rule__CollectionLiteralPartCS__Group_0_1__1__Impl )
+            // InternalOCLinEcore.g:17542:2: rule__CollectionLiteralPartCS__Group_0_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__Group_0_1__1__Impl();
@@ -53322,23 +53322,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__1__Impl"
-    // InternalOCLinEcore.g:17546:1: rule__CollectionLiteralPartCS__Group_0_1__1__Impl : ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) ;
+    // InternalOCLinEcore.g:17548:1: rule__CollectionLiteralPartCS__Group_0_1__1__Impl : ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17550:1: ( ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) )
-            // InternalOCLinEcore.g:17551:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
+            // InternalOCLinEcore.g:17552:1: ( ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) )
+            // InternalOCLinEcore.g:17553:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
             {
-            // InternalOCLinEcore.g:17551:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
-            // InternalOCLinEcore.g:17552:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
+            // InternalOCLinEcore.g:17553:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
+            // InternalOCLinEcore.g:17554:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1());
             }
-            // InternalOCLinEcore.g:17553:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
-            // InternalOCLinEcore.g:17553:2: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1
+            // InternalOCLinEcore.g:17555:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
+            // InternalOCLinEcore.g:17555:2: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1();
@@ -53373,14 +53373,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__0"
-    // InternalOCLinEcore.g:17567:1: rule__CollectionPatternCS__Group__0 : rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 ;
+    // InternalOCLinEcore.g:17569:1: rule__CollectionPatternCS__Group__0 : rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 ;
     public final void rule__CollectionPatternCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17571:1: ( rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 )
-            // InternalOCLinEcore.g:17572:2: rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1
+            // InternalOCLinEcore.g:17573:1: ( rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 )
+            // InternalOCLinEcore.g:17574:2: rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__CollectionPatternCS__Group__0__Impl();
@@ -53411,23 +53411,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__0__Impl"
-    // InternalOCLinEcore.g:17579:1: rule__CollectionPatternCS__Group__0__Impl : ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:17581:1: rule__CollectionPatternCS__Group__0__Impl : ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) ;
     public final void rule__CollectionPatternCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17583:1: ( ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) )
-            // InternalOCLinEcore.g:17584:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
+            // InternalOCLinEcore.g:17585:1: ( ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) )
+            // InternalOCLinEcore.g:17586:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:17584:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
-            // InternalOCLinEcore.g:17585:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
+            // InternalOCLinEcore.g:17586:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
+            // InternalOCLinEcore.g:17587:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0());
             }
-            // InternalOCLinEcore.g:17586:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
-            // InternalOCLinEcore.g:17586:2: rule__CollectionPatternCS__OwnedTypeAssignment_0
+            // InternalOCLinEcore.g:17588:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
+            // InternalOCLinEcore.g:17588:2: rule__CollectionPatternCS__OwnedTypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__OwnedTypeAssignment_0();
@@ -53462,14 +53462,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__1"
-    // InternalOCLinEcore.g:17596:1: rule__CollectionPatternCS__Group__1 : rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 ;
+    // InternalOCLinEcore.g:17598:1: rule__CollectionPatternCS__Group__1 : rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 ;
     public final void rule__CollectionPatternCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17600:1: ( rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 )
-            // InternalOCLinEcore.g:17601:2: rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2
+            // InternalOCLinEcore.g:17602:1: ( rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 )
+            // InternalOCLinEcore.g:17603:2: rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_90);
             rule__CollectionPatternCS__Group__1__Impl();
@@ -53500,17 +53500,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__1__Impl"
-    // InternalOCLinEcore.g:17608:1: rule__CollectionPatternCS__Group__1__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:17610:1: rule__CollectionPatternCS__Group__1__Impl : ( '{' ) ;
     public final void rule__CollectionPatternCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17612:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:17613:1: ( '{' )
+            // InternalOCLinEcore.g:17614:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:17615:1: ( '{' )
             {
-            // InternalOCLinEcore.g:17613:1: ( '{' )
-            // InternalOCLinEcore.g:17614:1: '{'
+            // InternalOCLinEcore.g:17615:1: ( '{' )
+            // InternalOCLinEcore.g:17616:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
@@ -53541,14 +53541,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__2"
-    // InternalOCLinEcore.g:17627:1: rule__CollectionPatternCS__Group__2 : rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 ;
+    // InternalOCLinEcore.g:17629:1: rule__CollectionPatternCS__Group__2 : rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 ;
     public final void rule__CollectionPatternCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17631:1: ( rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 )
-            // InternalOCLinEcore.g:17632:2: rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3
+            // InternalOCLinEcore.g:17633:1: ( rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 )
+            // InternalOCLinEcore.g:17634:2: rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_90);
             rule__CollectionPatternCS__Group__2__Impl();
@@ -53579,22 +53579,22 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__2__Impl"
-    // InternalOCLinEcore.g:17639:1: rule__CollectionPatternCS__Group__2__Impl : ( ( rule__CollectionPatternCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:17641:1: rule__CollectionPatternCS__Group__2__Impl : ( ( rule__CollectionPatternCS__Group_2__0 )? ) ;
     public final void rule__CollectionPatternCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17643:1: ( ( ( rule__CollectionPatternCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:17644:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:17645:1: ( ( ( rule__CollectionPatternCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:17646:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:17644:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:17645:1: ( rule__CollectionPatternCS__Group_2__0 )?
+            // InternalOCLinEcore.g:17646:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:17647:1: ( rule__CollectionPatternCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:17646:1: ( rule__CollectionPatternCS__Group_2__0 )?
+            // InternalOCLinEcore.g:17648:1: ( rule__CollectionPatternCS__Group_2__0 )?
             int alt192=2;
             int LA192_0 = input.LA(1);
 
@@ -53603,7 +53603,7 @@
             }
             switch (alt192) {
                 case 1 :
-                    // InternalOCLinEcore.g:17646:2: rule__CollectionPatternCS__Group_2__0
+                    // InternalOCLinEcore.g:17648:2: rule__CollectionPatternCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionPatternCS__Group_2__0();
@@ -53641,14 +53641,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__3"
-    // InternalOCLinEcore.g:17656:1: rule__CollectionPatternCS__Group__3 : rule__CollectionPatternCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:17658:1: rule__CollectionPatternCS__Group__3 : rule__CollectionPatternCS__Group__3__Impl ;
     public final void rule__CollectionPatternCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17660:1: ( rule__CollectionPatternCS__Group__3__Impl )
-            // InternalOCLinEcore.g:17661:2: rule__CollectionPatternCS__Group__3__Impl
+            // InternalOCLinEcore.g:17662:1: ( rule__CollectionPatternCS__Group__3__Impl )
+            // InternalOCLinEcore.g:17663:2: rule__CollectionPatternCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group__3__Impl();
@@ -53674,17 +53674,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__3__Impl"
-    // InternalOCLinEcore.g:17667:1: rule__CollectionPatternCS__Group__3__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:17669:1: rule__CollectionPatternCS__Group__3__Impl : ( '}' ) ;
     public final void rule__CollectionPatternCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17671:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:17672:1: ( '}' )
+            // InternalOCLinEcore.g:17673:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:17674:1: ( '}' )
             {
-            // InternalOCLinEcore.g:17672:1: ( '}' )
-            // InternalOCLinEcore.g:17673:1: '}'
+            // InternalOCLinEcore.g:17674:1: ( '}' )
+            // InternalOCLinEcore.g:17675:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
@@ -53715,14 +53715,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__0"
-    // InternalOCLinEcore.g:17694:1: rule__CollectionPatternCS__Group_2__0 : rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 ;
+    // InternalOCLinEcore.g:17696:1: rule__CollectionPatternCS__Group_2__0 : rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 ;
     public final void rule__CollectionPatternCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17698:1: ( rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 )
-            // InternalOCLinEcore.g:17699:2: rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1
+            // InternalOCLinEcore.g:17700:1: ( rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 )
+            // InternalOCLinEcore.g:17701:2: rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_94);
             rule__CollectionPatternCS__Group_2__0__Impl();
@@ -53753,23 +53753,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:17706:1: rule__CollectionPatternCS__Group_2__0__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalOCLinEcore.g:17708:1: rule__CollectionPatternCS__Group_2__0__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__CollectionPatternCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17710:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalOCLinEcore.g:17711:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLinEcore.g:17712:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalOCLinEcore.g:17713:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalOCLinEcore.g:17711:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
-            // InternalOCLinEcore.g:17712:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLinEcore.g:17713:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLinEcore.g:17714:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalOCLinEcore.g:17713:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
-            // InternalOCLinEcore.g:17713:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_0
+            // InternalOCLinEcore.g:17715:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLinEcore.g:17715:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__OwnedPartsAssignment_2_0();
@@ -53804,14 +53804,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__1"
-    // InternalOCLinEcore.g:17723:1: rule__CollectionPatternCS__Group_2__1 : rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 ;
+    // InternalOCLinEcore.g:17725:1: rule__CollectionPatternCS__Group_2__1 : rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 ;
     public final void rule__CollectionPatternCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17727:1: ( rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 )
-            // InternalOCLinEcore.g:17728:2: rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2
+            // InternalOCLinEcore.g:17729:1: ( rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 )
+            // InternalOCLinEcore.g:17730:2: rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_94);
             rule__CollectionPatternCS__Group_2__1__Impl();
@@ -53842,22 +53842,22 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:17735:1: rule__CollectionPatternCS__Group_2__1__Impl : ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) ;
+    // InternalOCLinEcore.g:17737:1: rule__CollectionPatternCS__Group_2__1__Impl : ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) ;
     public final void rule__CollectionPatternCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17739:1: ( ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) )
-            // InternalOCLinEcore.g:17740:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
+            // InternalOCLinEcore.g:17741:1: ( ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) )
+            // InternalOCLinEcore.g:17742:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
             {
-            // InternalOCLinEcore.g:17740:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
-            // InternalOCLinEcore.g:17741:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
+            // InternalOCLinEcore.g:17742:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
+            // InternalOCLinEcore.g:17743:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1());
             }
-            // InternalOCLinEcore.g:17742:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
+            // InternalOCLinEcore.g:17744:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             loop193:
             do {
                 int alt193=2;
@@ -53870,7 +53870,7 @@
 
                 switch (alt193) {
             	case 1 :
-            	    // InternalOCLinEcore.g:17742:2: rule__CollectionPatternCS__Group_2_1__0
+            	    // InternalOCLinEcore.g:17744:2: rule__CollectionPatternCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__CollectionPatternCS__Group_2_1__0();
@@ -53911,14 +53911,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__2"
-    // InternalOCLinEcore.g:17752:1: rule__CollectionPatternCS__Group_2__2 : rule__CollectionPatternCS__Group_2__2__Impl ;
+    // InternalOCLinEcore.g:17754:1: rule__CollectionPatternCS__Group_2__2 : rule__CollectionPatternCS__Group_2__2__Impl ;
     public final void rule__CollectionPatternCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17756:1: ( rule__CollectionPatternCS__Group_2__2__Impl )
-            // InternalOCLinEcore.g:17757:2: rule__CollectionPatternCS__Group_2__2__Impl
+            // InternalOCLinEcore.g:17758:1: ( rule__CollectionPatternCS__Group_2__2__Impl )
+            // InternalOCLinEcore.g:17759:2: rule__CollectionPatternCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2__2__Impl();
@@ -53944,23 +53944,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__2__Impl"
-    // InternalOCLinEcore.g:17763:1: rule__CollectionPatternCS__Group_2__2__Impl : ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) ;
+    // InternalOCLinEcore.g:17765:1: rule__CollectionPatternCS__Group_2__2__Impl : ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) ;
     public final void rule__CollectionPatternCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17767:1: ( ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) )
-            // InternalOCLinEcore.g:17768:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
+            // InternalOCLinEcore.g:17769:1: ( ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) )
+            // InternalOCLinEcore.g:17770:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
             {
-            // InternalOCLinEcore.g:17768:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
-            // InternalOCLinEcore.g:17769:1: ( rule__CollectionPatternCS__Group_2_2__0 )
+            // InternalOCLinEcore.g:17770:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
+            // InternalOCLinEcore.g:17771:1: ( rule__CollectionPatternCS__Group_2_2__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2());
             }
-            // InternalOCLinEcore.g:17770:1: ( rule__CollectionPatternCS__Group_2_2__0 )
-            // InternalOCLinEcore.g:17770:2: rule__CollectionPatternCS__Group_2_2__0
+            // InternalOCLinEcore.g:17772:1: ( rule__CollectionPatternCS__Group_2_2__0 )
+            // InternalOCLinEcore.g:17772:2: rule__CollectionPatternCS__Group_2_2__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2_2__0();
@@ -53995,14 +53995,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__0"
-    // InternalOCLinEcore.g:17786:1: rule__CollectionPatternCS__Group_2_1__0 : rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 ;
+    // InternalOCLinEcore.g:17788:1: rule__CollectionPatternCS__Group_2_1__0 : rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 ;
     public final void rule__CollectionPatternCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17790:1: ( rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 )
-            // InternalOCLinEcore.g:17791:2: rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1
+            // InternalOCLinEcore.g:17792:1: ( rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 )
+            // InternalOCLinEcore.g:17793:2: rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_91);
             rule__CollectionPatternCS__Group_2_1__0__Impl();
@@ -54033,17 +54033,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__0__Impl"
-    // InternalOCLinEcore.g:17798:1: rule__CollectionPatternCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:17800:1: rule__CollectionPatternCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CollectionPatternCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17802:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:17803:1: ( ',' )
+            // InternalOCLinEcore.g:17804:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:17805:1: ( ',' )
             {
-            // InternalOCLinEcore.g:17803:1: ( ',' )
-            // InternalOCLinEcore.g:17804:1: ','
+            // InternalOCLinEcore.g:17805:1: ( ',' )
+            // InternalOCLinEcore.g:17806:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
@@ -54074,14 +54074,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__1"
-    // InternalOCLinEcore.g:17817:1: rule__CollectionPatternCS__Group_2_1__1 : rule__CollectionPatternCS__Group_2_1__1__Impl ;
+    // InternalOCLinEcore.g:17819:1: rule__CollectionPatternCS__Group_2_1__1 : rule__CollectionPatternCS__Group_2_1__1__Impl ;
     public final void rule__CollectionPatternCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17821:1: ( rule__CollectionPatternCS__Group_2_1__1__Impl )
-            // InternalOCLinEcore.g:17822:2: rule__CollectionPatternCS__Group_2_1__1__Impl
+            // InternalOCLinEcore.g:17823:1: ( rule__CollectionPatternCS__Group_2_1__1__Impl )
+            // InternalOCLinEcore.g:17824:2: rule__CollectionPatternCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2_1__1__Impl();
@@ -54107,23 +54107,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__1__Impl"
-    // InternalOCLinEcore.g:17828:1: rule__CollectionPatternCS__Group_2_1__1__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalOCLinEcore.g:17830:1: rule__CollectionPatternCS__Group_2_1__1__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__CollectionPatternCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17832:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalOCLinEcore.g:17833:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLinEcore.g:17834:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalOCLinEcore.g:17835:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalOCLinEcore.g:17833:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalOCLinEcore.g:17834:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLinEcore.g:17835:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLinEcore.g:17836:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalOCLinEcore.g:17835:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
-            // InternalOCLinEcore.g:17835:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1
+            // InternalOCLinEcore.g:17837:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLinEcore.g:17837:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1();
@@ -54158,14 +54158,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__0"
-    // InternalOCLinEcore.g:17849:1: rule__CollectionPatternCS__Group_2_2__0 : rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 ;
+    // InternalOCLinEcore.g:17851:1: rule__CollectionPatternCS__Group_2_2__0 : rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 ;
     public final void rule__CollectionPatternCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17853:1: ( rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 )
-            // InternalOCLinEcore.g:17854:2: rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1
+            // InternalOCLinEcore.g:17855:1: ( rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 )
+            // InternalOCLinEcore.g:17856:2: rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_95);
             rule__CollectionPatternCS__Group_2_2__0__Impl();
@@ -54196,17 +54196,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__0__Impl"
-    // InternalOCLinEcore.g:17861:1: rule__CollectionPatternCS__Group_2_2__0__Impl : ( '++' ) ;
+    // InternalOCLinEcore.g:17863:1: rule__CollectionPatternCS__Group_2_2__0__Impl : ( '++' ) ;
     public final void rule__CollectionPatternCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17865:1: ( ( '++' ) )
-            // InternalOCLinEcore.g:17866:1: ( '++' )
+            // InternalOCLinEcore.g:17867:1: ( ( '++' ) )
+            // InternalOCLinEcore.g:17868:1: ( '++' )
             {
-            // InternalOCLinEcore.g:17866:1: ( '++' )
-            // InternalOCLinEcore.g:17867:1: '++'
+            // InternalOCLinEcore.g:17868:1: ( '++' )
+            // InternalOCLinEcore.g:17869:1: '++'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
@@ -54237,14 +54237,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__1"
-    // InternalOCLinEcore.g:17880:1: rule__CollectionPatternCS__Group_2_2__1 : rule__CollectionPatternCS__Group_2_2__1__Impl ;
+    // InternalOCLinEcore.g:17882:1: rule__CollectionPatternCS__Group_2_2__1 : rule__CollectionPatternCS__Group_2_2__1__Impl ;
     public final void rule__CollectionPatternCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17884:1: ( rule__CollectionPatternCS__Group_2_2__1__Impl )
-            // InternalOCLinEcore.g:17885:2: rule__CollectionPatternCS__Group_2_2__1__Impl
+            // InternalOCLinEcore.g:17886:1: ( rule__CollectionPatternCS__Group_2_2__1__Impl )
+            // InternalOCLinEcore.g:17887:2: rule__CollectionPatternCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2_2__1__Impl();
@@ -54270,23 +54270,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__1__Impl"
-    // InternalOCLinEcore.g:17891:1: rule__CollectionPatternCS__Group_2_2__1__Impl : ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) ;
+    // InternalOCLinEcore.g:17893:1: rule__CollectionPatternCS__Group_2_2__1__Impl : ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) ;
     public final void rule__CollectionPatternCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17895:1: ( ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) )
-            // InternalOCLinEcore.g:17896:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
+            // InternalOCLinEcore.g:17897:1: ( ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) )
+            // InternalOCLinEcore.g:17898:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
             {
-            // InternalOCLinEcore.g:17896:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
-            // InternalOCLinEcore.g:17897:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
+            // InternalOCLinEcore.g:17898:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
+            // InternalOCLinEcore.g:17899:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1());
             }
-            // InternalOCLinEcore.g:17898:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
-            // InternalOCLinEcore.g:17898:2: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1
+            // InternalOCLinEcore.g:17900:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
+            // InternalOCLinEcore.g:17900:2: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1();
@@ -54321,14 +54321,14 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__0"
-    // InternalOCLinEcore.g:17912:1: rule__ShadowPartCS__Group_0__0 : rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 ;
+    // InternalOCLinEcore.g:17914:1: rule__ShadowPartCS__Group_0__0 : rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 ;
     public final void rule__ShadowPartCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17916:1: ( rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 )
-            // InternalOCLinEcore.g:17917:2: rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1
+            // InternalOCLinEcore.g:17918:1: ( rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 )
+            // InternalOCLinEcore.g:17919:2: rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__ShadowPartCS__Group_0__0__Impl();
@@ -54359,23 +54359,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__0__Impl"
-    // InternalOCLinEcore.g:17924:1: rule__ShadowPartCS__Group_0__0__Impl : ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) ;
+    // InternalOCLinEcore.g:17926:1: rule__ShadowPartCS__Group_0__0__Impl : ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) ;
     public final void rule__ShadowPartCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17928:1: ( ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) )
-            // InternalOCLinEcore.g:17929:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
+            // InternalOCLinEcore.g:17930:1: ( ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) )
+            // InternalOCLinEcore.g:17931:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
             {
-            // InternalOCLinEcore.g:17929:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
-            // InternalOCLinEcore.g:17930:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
+            // InternalOCLinEcore.g:17931:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
+            // InternalOCLinEcore.g:17932:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0_0());
             }
-            // InternalOCLinEcore.g:17931:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
-            // InternalOCLinEcore.g:17931:2: rule__ShadowPartCS__ReferredPropertyAssignment_0_0
+            // InternalOCLinEcore.g:17933:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
+            // InternalOCLinEcore.g:17933:2: rule__ShadowPartCS__ReferredPropertyAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__ReferredPropertyAssignment_0_0();
@@ -54410,14 +54410,14 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__1"
-    // InternalOCLinEcore.g:17941:1: rule__ShadowPartCS__Group_0__1 : rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 ;
+    // InternalOCLinEcore.g:17943:1: rule__ShadowPartCS__Group_0__1 : rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 ;
     public final void rule__ShadowPartCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17945:1: ( rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 )
-            // InternalOCLinEcore.g:17946:2: rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2
+            // InternalOCLinEcore.g:17947:1: ( rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 )
+            // InternalOCLinEcore.g:17948:2: rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_91);
             rule__ShadowPartCS__Group_0__1__Impl();
@@ -54448,17 +54448,17 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__1__Impl"
-    // InternalOCLinEcore.g:17953:1: rule__ShadowPartCS__Group_0__1__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:17955:1: rule__ShadowPartCS__Group_0__1__Impl : ( '=' ) ;
     public final void rule__ShadowPartCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17957:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:17958:1: ( '=' )
+            // InternalOCLinEcore.g:17959:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:17960:1: ( '=' )
             {
-            // InternalOCLinEcore.g:17958:1: ( '=' )
-            // InternalOCLinEcore.g:17959:1: '='
+            // InternalOCLinEcore.g:17960:1: ( '=' )
+            // InternalOCLinEcore.g:17961:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_0_1());
@@ -54489,14 +54489,14 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__2"
-    // InternalOCLinEcore.g:17972:1: rule__ShadowPartCS__Group_0__2 : rule__ShadowPartCS__Group_0__2__Impl ;
+    // InternalOCLinEcore.g:17974:1: rule__ShadowPartCS__Group_0__2 : rule__ShadowPartCS__Group_0__2__Impl ;
     public final void rule__ShadowPartCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17976:1: ( rule__ShadowPartCS__Group_0__2__Impl )
-            // InternalOCLinEcore.g:17977:2: rule__ShadowPartCS__Group_0__2__Impl
+            // InternalOCLinEcore.g:17978:1: ( rule__ShadowPartCS__Group_0__2__Impl )
+            // InternalOCLinEcore.g:17979:2: rule__ShadowPartCS__Group_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__Group_0__2__Impl();
@@ -54522,23 +54522,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__2__Impl"
-    // InternalOCLinEcore.g:17983:1: rule__ShadowPartCS__Group_0__2__Impl : ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) ;
+    // InternalOCLinEcore.g:17985:1: rule__ShadowPartCS__Group_0__2__Impl : ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) ;
     public final void rule__ShadowPartCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:17987:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) )
-            // InternalOCLinEcore.g:17988:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
+            // InternalOCLinEcore.g:17989:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) )
+            // InternalOCLinEcore.g:17990:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
             {
-            // InternalOCLinEcore.g:17988:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
-            // InternalOCLinEcore.g:17989:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
+            // InternalOCLinEcore.g:17990:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
+            // InternalOCLinEcore.g:17991:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_0_2());
             }
-            // InternalOCLinEcore.g:17990:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
-            // InternalOCLinEcore.g:17990:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2
+            // InternalOCLinEcore.g:17992:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
+            // InternalOCLinEcore.g:17992:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2();
@@ -54573,14 +54573,14 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__0"
-    // InternalOCLinEcore.g:18006:1: rule__PatternExpCS__Group__0 : rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 ;
+    // InternalOCLinEcore.g:18008:1: rule__PatternExpCS__Group__0 : rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 ;
     public final void rule__PatternExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18010:1: ( rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 )
-            // InternalOCLinEcore.g:18011:2: rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1
+            // InternalOCLinEcore.g:18012:1: ( rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 )
+            // InternalOCLinEcore.g:18013:2: rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_91);
             rule__PatternExpCS__Group__0__Impl();
@@ -54611,22 +54611,22 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:18018:1: rule__PatternExpCS__Group__0__Impl : ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) ;
+    // InternalOCLinEcore.g:18020:1: rule__PatternExpCS__Group__0__Impl : ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) ;
     public final void rule__PatternExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18022:1: ( ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) )
-            // InternalOCLinEcore.g:18023:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
+            // InternalOCLinEcore.g:18024:1: ( ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) )
+            // InternalOCLinEcore.g:18025:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
             {
-            // InternalOCLinEcore.g:18023:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
-            // InternalOCLinEcore.g:18024:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
+            // InternalOCLinEcore.g:18025:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
+            // InternalOCLinEcore.g:18026:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0());
             }
-            // InternalOCLinEcore.g:18025:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
+            // InternalOCLinEcore.g:18027:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             int alt194=2;
             int LA194_0 = input.LA(1);
 
@@ -54635,7 +54635,7 @@
             }
             switch (alt194) {
                 case 1 :
-                    // InternalOCLinEcore.g:18025:2: rule__PatternExpCS__PatternVariableNameAssignment_0
+                    // InternalOCLinEcore.g:18027:2: rule__PatternExpCS__PatternVariableNameAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PatternExpCS__PatternVariableNameAssignment_0();
@@ -54673,14 +54673,14 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__1"
-    // InternalOCLinEcore.g:18035:1: rule__PatternExpCS__Group__1 : rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 ;
+    // InternalOCLinEcore.g:18037:1: rule__PatternExpCS__Group__1 : rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 ;
     public final void rule__PatternExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18039:1: ( rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 )
-            // InternalOCLinEcore.g:18040:2: rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2
+            // InternalOCLinEcore.g:18041:1: ( rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 )
+            // InternalOCLinEcore.g:18042:2: rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__PatternExpCS__Group__1__Impl();
@@ -54711,17 +54711,17 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:18047:1: rule__PatternExpCS__Group__1__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:18049:1: rule__PatternExpCS__Group__1__Impl : ( ':' ) ;
     public final void rule__PatternExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18051:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:18052:1: ( ':' )
+            // InternalOCLinEcore.g:18053:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:18054:1: ( ':' )
             {
-            // InternalOCLinEcore.g:18052:1: ( ':' )
-            // InternalOCLinEcore.g:18053:1: ':'
+            // InternalOCLinEcore.g:18054:1: ( ':' )
+            // InternalOCLinEcore.g:18055:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
@@ -54752,14 +54752,14 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__2"
-    // InternalOCLinEcore.g:18066:1: rule__PatternExpCS__Group__2 : rule__PatternExpCS__Group__2__Impl ;
+    // InternalOCLinEcore.g:18068:1: rule__PatternExpCS__Group__2 : rule__PatternExpCS__Group__2__Impl ;
     public final void rule__PatternExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18070:1: ( rule__PatternExpCS__Group__2__Impl )
-            // InternalOCLinEcore.g:18071:2: rule__PatternExpCS__Group__2__Impl
+            // InternalOCLinEcore.g:18072:1: ( rule__PatternExpCS__Group__2__Impl )
+            // InternalOCLinEcore.g:18073:2: rule__PatternExpCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PatternExpCS__Group__2__Impl();
@@ -54785,23 +54785,23 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__2__Impl"
-    // InternalOCLinEcore.g:18077:1: rule__PatternExpCS__Group__2__Impl : ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) ;
+    // InternalOCLinEcore.g:18079:1: rule__PatternExpCS__Group__2__Impl : ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) ;
     public final void rule__PatternExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18081:1: ( ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) )
-            // InternalOCLinEcore.g:18082:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
+            // InternalOCLinEcore.g:18083:1: ( ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) )
+            // InternalOCLinEcore.g:18084:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
             {
-            // InternalOCLinEcore.g:18082:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
-            // InternalOCLinEcore.g:18083:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
+            // InternalOCLinEcore.g:18084:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
+            // InternalOCLinEcore.g:18085:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2());
             }
-            // InternalOCLinEcore.g:18084:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
-            // InternalOCLinEcore.g:18084:2: rule__PatternExpCS__OwnedPatternTypeAssignment_2
+            // InternalOCLinEcore.g:18086:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
+            // InternalOCLinEcore.g:18086:2: rule__PatternExpCS__OwnedPatternTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PatternExpCS__OwnedPatternTypeAssignment_2();
@@ -54836,14 +54836,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__0"
-    // InternalOCLinEcore.g:18100:1: rule__LambdaLiteralExpCS__Group__0 : rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 ;
+    // InternalOCLinEcore.g:18102:1: rule__LambdaLiteralExpCS__Group__0 : rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 ;
     public final void rule__LambdaLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18104:1: ( rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 )
-            // InternalOCLinEcore.g:18105:2: rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1
+            // InternalOCLinEcore.g:18106:1: ( rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 )
+            // InternalOCLinEcore.g:18107:2: rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__LambdaLiteralExpCS__Group__0__Impl();
@@ -54874,17 +54874,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:18112:1: rule__LambdaLiteralExpCS__Group__0__Impl : ( 'Lambda' ) ;
+    // InternalOCLinEcore.g:18114:1: rule__LambdaLiteralExpCS__Group__0__Impl : ( 'Lambda' ) ;
     public final void rule__LambdaLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18116:1: ( ( 'Lambda' ) )
-            // InternalOCLinEcore.g:18117:1: ( 'Lambda' )
+            // InternalOCLinEcore.g:18118:1: ( ( 'Lambda' ) )
+            // InternalOCLinEcore.g:18119:1: ( 'Lambda' )
             {
-            // InternalOCLinEcore.g:18117:1: ( 'Lambda' )
-            // InternalOCLinEcore.g:18118:1: 'Lambda'
+            // InternalOCLinEcore.g:18119:1: ( 'Lambda' )
+            // InternalOCLinEcore.g:18120:1: 'Lambda'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
@@ -54915,14 +54915,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__1"
-    // InternalOCLinEcore.g:18131:1: rule__LambdaLiteralExpCS__Group__1 : rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 ;
+    // InternalOCLinEcore.g:18133:1: rule__LambdaLiteralExpCS__Group__1 : rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 ;
     public final void rule__LambdaLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18135:1: ( rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 )
-            // InternalOCLinEcore.g:18136:2: rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2
+            // InternalOCLinEcore.g:18137:1: ( rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 )
+            // InternalOCLinEcore.g:18138:2: rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__LambdaLiteralExpCS__Group__1__Impl();
@@ -54953,17 +54953,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:18143:1: rule__LambdaLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:18145:1: rule__LambdaLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__LambdaLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18147:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:18148:1: ( '{' )
+            // InternalOCLinEcore.g:18149:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:18150:1: ( '{' )
             {
-            // InternalOCLinEcore.g:18148:1: ( '{' )
-            // InternalOCLinEcore.g:18149:1: '{'
+            // InternalOCLinEcore.g:18150:1: ( '{' )
+            // InternalOCLinEcore.g:18151:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -54994,14 +54994,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__2"
-    // InternalOCLinEcore.g:18162:1: rule__LambdaLiteralExpCS__Group__2 : rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 ;
+    // InternalOCLinEcore.g:18164:1: rule__LambdaLiteralExpCS__Group__2 : rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 ;
     public final void rule__LambdaLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18166:1: ( rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 )
-            // InternalOCLinEcore.g:18167:2: rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3
+            // InternalOCLinEcore.g:18168:1: ( rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 )
+            // InternalOCLinEcore.g:18169:2: rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__LambdaLiteralExpCS__Group__2__Impl();
@@ -55032,23 +55032,23 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__2__Impl"
-    // InternalOCLinEcore.g:18174:1: rule__LambdaLiteralExpCS__Group__2__Impl : ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) ;
+    // InternalOCLinEcore.g:18176:1: rule__LambdaLiteralExpCS__Group__2__Impl : ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) ;
     public final void rule__LambdaLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18178:1: ( ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) )
-            // InternalOCLinEcore.g:18179:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
+            // InternalOCLinEcore.g:18180:1: ( ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) )
+            // InternalOCLinEcore.g:18181:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
             {
-            // InternalOCLinEcore.g:18179:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
-            // InternalOCLinEcore.g:18180:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
+            // InternalOCLinEcore.g:18181:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
+            // InternalOCLinEcore.g:18182:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2());
             }
-            // InternalOCLinEcore.g:18181:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
-            // InternalOCLinEcore.g:18181:2: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2
+            // InternalOCLinEcore.g:18183:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
+            // InternalOCLinEcore.g:18183:2: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2();
@@ -55083,14 +55083,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__3"
-    // InternalOCLinEcore.g:18191:1: rule__LambdaLiteralExpCS__Group__3 : rule__LambdaLiteralExpCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:18193:1: rule__LambdaLiteralExpCS__Group__3 : rule__LambdaLiteralExpCS__Group__3__Impl ;
     public final void rule__LambdaLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18195:1: ( rule__LambdaLiteralExpCS__Group__3__Impl )
-            // InternalOCLinEcore.g:18196:2: rule__LambdaLiteralExpCS__Group__3__Impl
+            // InternalOCLinEcore.g:18197:1: ( rule__LambdaLiteralExpCS__Group__3__Impl )
+            // InternalOCLinEcore.g:18198:2: rule__LambdaLiteralExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaLiteralExpCS__Group__3__Impl();
@@ -55116,17 +55116,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__3__Impl"
-    // InternalOCLinEcore.g:18202:1: rule__LambdaLiteralExpCS__Group__3__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:18204:1: rule__LambdaLiteralExpCS__Group__3__Impl : ( '}' ) ;
     public final void rule__LambdaLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18206:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:18207:1: ( '}' )
+            // InternalOCLinEcore.g:18208:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:18209:1: ( '}' )
             {
-            // InternalOCLinEcore.g:18207:1: ( '}' )
-            // InternalOCLinEcore.g:18208:1: '}'
+            // InternalOCLinEcore.g:18209:1: ( '}' )
+            // InternalOCLinEcore.g:18210:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
@@ -55157,14 +55157,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__0"
-    // InternalOCLinEcore.g:18229:1: rule__MapLiteralExpCS__Group__0 : rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 ;
+    // InternalOCLinEcore.g:18231:1: rule__MapLiteralExpCS__Group__0 : rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 ;
     public final void rule__MapLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18233:1: ( rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 )
-            // InternalOCLinEcore.g:18234:2: rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1
+            // InternalOCLinEcore.g:18235:1: ( rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 )
+            // InternalOCLinEcore.g:18236:2: rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__MapLiteralExpCS__Group__0__Impl();
@@ -55195,23 +55195,23 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:18241:1: rule__MapLiteralExpCS__Group__0__Impl : ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:18243:1: rule__MapLiteralExpCS__Group__0__Impl : ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
     public final void rule__MapLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18245:1: ( ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) )
-            // InternalOCLinEcore.g:18246:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalOCLinEcore.g:18247:1: ( ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) )
+            // InternalOCLinEcore.g:18248:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:18246:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
-            // InternalOCLinEcore.g:18247:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalOCLinEcore.g:18248:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalOCLinEcore.g:18249:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
-            // InternalOCLinEcore.g:18248:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
-            // InternalOCLinEcore.g:18248:2: rule__MapLiteralExpCS__OwnedTypeAssignment_0
+            // InternalOCLinEcore.g:18250:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalOCLinEcore.g:18250:2: rule__MapLiteralExpCS__OwnedTypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__OwnedTypeAssignment_0();
@@ -55246,14 +55246,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__1"
-    // InternalOCLinEcore.g:18258:1: rule__MapLiteralExpCS__Group__1 : rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 ;
+    // InternalOCLinEcore.g:18260:1: rule__MapLiteralExpCS__Group__1 : rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 ;
     public final void rule__MapLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18262:1: ( rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 )
-            // InternalOCLinEcore.g:18263:2: rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2
+            // InternalOCLinEcore.g:18264:1: ( rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 )
+            // InternalOCLinEcore.g:18265:2: rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_96);
             rule__MapLiteralExpCS__Group__1__Impl();
@@ -55284,17 +55284,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:18270:1: rule__MapLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:18272:1: rule__MapLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__MapLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18274:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:18275:1: ( '{' )
+            // InternalOCLinEcore.g:18276:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:18277:1: ( '{' )
             {
-            // InternalOCLinEcore.g:18275:1: ( '{' )
-            // InternalOCLinEcore.g:18276:1: '{'
+            // InternalOCLinEcore.g:18277:1: ( '{' )
+            // InternalOCLinEcore.g:18278:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -55325,14 +55325,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__2"
-    // InternalOCLinEcore.g:18289:1: rule__MapLiteralExpCS__Group__2 : rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 ;
+    // InternalOCLinEcore.g:18291:1: rule__MapLiteralExpCS__Group__2 : rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 ;
     public final void rule__MapLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18293:1: ( rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 )
-            // InternalOCLinEcore.g:18294:2: rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3
+            // InternalOCLinEcore.g:18295:1: ( rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 )
+            // InternalOCLinEcore.g:18296:2: rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_96);
             rule__MapLiteralExpCS__Group__2__Impl();
@@ -55363,22 +55363,22 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__2__Impl"
-    // InternalOCLinEcore.g:18301:1: rule__MapLiteralExpCS__Group__2__Impl : ( ( rule__MapLiteralExpCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:18303:1: rule__MapLiteralExpCS__Group__2__Impl : ( ( rule__MapLiteralExpCS__Group_2__0 )? ) ;
     public final void rule__MapLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18305:1: ( ( ( rule__MapLiteralExpCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:18306:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:18307:1: ( ( ( rule__MapLiteralExpCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:18308:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:18306:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:18307:1: ( rule__MapLiteralExpCS__Group_2__0 )?
+            // InternalOCLinEcore.g:18308:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:18309:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:18308:1: ( rule__MapLiteralExpCS__Group_2__0 )?
+            // InternalOCLinEcore.g:18310:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             int alt195=2;
             int LA195_0 = input.LA(1);
 
@@ -55387,7 +55387,7 @@
             }
             switch (alt195) {
                 case 1 :
-                    // InternalOCLinEcore.g:18308:2: rule__MapLiteralExpCS__Group_2__0
+                    // InternalOCLinEcore.g:18310:2: rule__MapLiteralExpCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MapLiteralExpCS__Group_2__0();
@@ -55425,14 +55425,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__3"
-    // InternalOCLinEcore.g:18318:1: rule__MapLiteralExpCS__Group__3 : rule__MapLiteralExpCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:18320:1: rule__MapLiteralExpCS__Group__3 : rule__MapLiteralExpCS__Group__3__Impl ;
     public final void rule__MapLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18322:1: ( rule__MapLiteralExpCS__Group__3__Impl )
-            // InternalOCLinEcore.g:18323:2: rule__MapLiteralExpCS__Group__3__Impl
+            // InternalOCLinEcore.g:18324:1: ( rule__MapLiteralExpCS__Group__3__Impl )
+            // InternalOCLinEcore.g:18325:2: rule__MapLiteralExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__Group__3__Impl();
@@ -55458,17 +55458,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__3__Impl"
-    // InternalOCLinEcore.g:18329:1: rule__MapLiteralExpCS__Group__3__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:18331:1: rule__MapLiteralExpCS__Group__3__Impl : ( '}' ) ;
     public final void rule__MapLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18333:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:18334:1: ( '}' )
+            // InternalOCLinEcore.g:18335:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:18336:1: ( '}' )
             {
-            // InternalOCLinEcore.g:18334:1: ( '}' )
-            // InternalOCLinEcore.g:18335:1: '}'
+            // InternalOCLinEcore.g:18336:1: ( '}' )
+            // InternalOCLinEcore.g:18337:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
@@ -55499,14 +55499,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__0"
-    // InternalOCLinEcore.g:18356:1: rule__MapLiteralExpCS__Group_2__0 : rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 ;
+    // InternalOCLinEcore.g:18358:1: rule__MapLiteralExpCS__Group_2__0 : rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 ;
     public final void rule__MapLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18360:1: ( rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 )
-            // InternalOCLinEcore.g:18361:2: rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1
+            // InternalOCLinEcore.g:18362:1: ( rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 )
+            // InternalOCLinEcore.g:18363:2: rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__MapLiteralExpCS__Group_2__0__Impl();
@@ -55537,23 +55537,23 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:18368:1: rule__MapLiteralExpCS__Group_2__0__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalOCLinEcore.g:18370:1: rule__MapLiteralExpCS__Group_2__0__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__MapLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18372:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalOCLinEcore.g:18373:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLinEcore.g:18374:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalOCLinEcore.g:18375:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalOCLinEcore.g:18373:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
-            // InternalOCLinEcore.g:18374:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLinEcore.g:18375:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLinEcore.g:18376:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalOCLinEcore.g:18375:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
-            // InternalOCLinEcore.g:18375:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0
+            // InternalOCLinEcore.g:18377:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLinEcore.g:18377:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__OwnedPartsAssignment_2_0();
@@ -55588,14 +55588,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__1"
-    // InternalOCLinEcore.g:18385:1: rule__MapLiteralExpCS__Group_2__1 : rule__MapLiteralExpCS__Group_2__1__Impl ;
+    // InternalOCLinEcore.g:18387:1: rule__MapLiteralExpCS__Group_2__1 : rule__MapLiteralExpCS__Group_2__1__Impl ;
     public final void rule__MapLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18389:1: ( rule__MapLiteralExpCS__Group_2__1__Impl )
-            // InternalOCLinEcore.g:18390:2: rule__MapLiteralExpCS__Group_2__1__Impl
+            // InternalOCLinEcore.g:18391:1: ( rule__MapLiteralExpCS__Group_2__1__Impl )
+            // InternalOCLinEcore.g:18392:2: rule__MapLiteralExpCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__Group_2__1__Impl();
@@ -55621,22 +55621,22 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:18396:1: rule__MapLiteralExpCS__Group_2__1__Impl : ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) ;
+    // InternalOCLinEcore.g:18398:1: rule__MapLiteralExpCS__Group_2__1__Impl : ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) ;
     public final void rule__MapLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18400:1: ( ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) )
-            // InternalOCLinEcore.g:18401:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
+            // InternalOCLinEcore.g:18402:1: ( ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) )
+            // InternalOCLinEcore.g:18403:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
             {
-            // InternalOCLinEcore.g:18401:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
-            // InternalOCLinEcore.g:18402:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
+            // InternalOCLinEcore.g:18403:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
+            // InternalOCLinEcore.g:18404:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1());
             }
-            // InternalOCLinEcore.g:18403:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
+            // InternalOCLinEcore.g:18405:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             loop196:
             do {
                 int alt196=2;
@@ -55649,7 +55649,7 @@
 
                 switch (alt196) {
             	case 1 :
-            	    // InternalOCLinEcore.g:18403:2: rule__MapLiteralExpCS__Group_2_1__0
+            	    // InternalOCLinEcore.g:18405:2: rule__MapLiteralExpCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__MapLiteralExpCS__Group_2_1__0();
@@ -55690,14 +55690,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__0"
-    // InternalOCLinEcore.g:18417:1: rule__MapLiteralExpCS__Group_2_1__0 : rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 ;
+    // InternalOCLinEcore.g:18419:1: rule__MapLiteralExpCS__Group_2_1__0 : rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 ;
     public final void rule__MapLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18421:1: ( rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 )
-            // InternalOCLinEcore.g:18422:2: rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1
+            // InternalOCLinEcore.g:18423:1: ( rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 )
+            // InternalOCLinEcore.g:18424:2: rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__MapLiteralExpCS__Group_2_1__0__Impl();
@@ -55728,17 +55728,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__0__Impl"
-    // InternalOCLinEcore.g:18429:1: rule__MapLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:18431:1: rule__MapLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__MapLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18433:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:18434:1: ( ',' )
+            // InternalOCLinEcore.g:18435:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:18436:1: ( ',' )
             {
-            // InternalOCLinEcore.g:18434:1: ( ',' )
-            // InternalOCLinEcore.g:18435:1: ','
+            // InternalOCLinEcore.g:18436:1: ( ',' )
+            // InternalOCLinEcore.g:18437:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
@@ -55769,14 +55769,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__1"
-    // InternalOCLinEcore.g:18448:1: rule__MapLiteralExpCS__Group_2_1__1 : rule__MapLiteralExpCS__Group_2_1__1__Impl ;
+    // InternalOCLinEcore.g:18450:1: rule__MapLiteralExpCS__Group_2_1__1 : rule__MapLiteralExpCS__Group_2_1__1__Impl ;
     public final void rule__MapLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18452:1: ( rule__MapLiteralExpCS__Group_2_1__1__Impl )
-            // InternalOCLinEcore.g:18453:2: rule__MapLiteralExpCS__Group_2_1__1__Impl
+            // InternalOCLinEcore.g:18454:1: ( rule__MapLiteralExpCS__Group_2_1__1__Impl )
+            // InternalOCLinEcore.g:18455:2: rule__MapLiteralExpCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__Group_2_1__1__Impl();
@@ -55802,23 +55802,23 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__1__Impl"
-    // InternalOCLinEcore.g:18459:1: rule__MapLiteralExpCS__Group_2_1__1__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalOCLinEcore.g:18461:1: rule__MapLiteralExpCS__Group_2_1__1__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__MapLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18463:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalOCLinEcore.g:18464:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLinEcore.g:18465:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalOCLinEcore.g:18466:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalOCLinEcore.g:18464:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalOCLinEcore.g:18465:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLinEcore.g:18466:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLinEcore.g:18467:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalOCLinEcore.g:18466:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
-            // InternalOCLinEcore.g:18466:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1
+            // InternalOCLinEcore.g:18468:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLinEcore.g:18468:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1();
@@ -55853,14 +55853,14 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__0"
-    // InternalOCLinEcore.g:18480:1: rule__MapLiteralPartCS__Group__0 : rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 ;
+    // InternalOCLinEcore.g:18482:1: rule__MapLiteralPartCS__Group__0 : rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 ;
     public final void rule__MapLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18484:1: ( rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 )
-            // InternalOCLinEcore.g:18485:2: rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1
+            // InternalOCLinEcore.g:18486:1: ( rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 )
+            // InternalOCLinEcore.g:18487:2: rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_97);
             rule__MapLiteralPartCS__Group__0__Impl();
@@ -55891,23 +55891,23 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__0__Impl"
-    // InternalOCLinEcore.g:18492:1: rule__MapLiteralPartCS__Group__0__Impl : ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:18494:1: rule__MapLiteralPartCS__Group__0__Impl : ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) ;
     public final void rule__MapLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18496:1: ( ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) )
-            // InternalOCLinEcore.g:18497:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
+            // InternalOCLinEcore.g:18498:1: ( ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) )
+            // InternalOCLinEcore.g:18499:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:18497:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
-            // InternalOCLinEcore.g:18498:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
+            // InternalOCLinEcore.g:18499:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
+            // InternalOCLinEcore.g:18500:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0());
             }
-            // InternalOCLinEcore.g:18499:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
-            // InternalOCLinEcore.g:18499:2: rule__MapLiteralPartCS__OwnedKeyAssignment_0
+            // InternalOCLinEcore.g:18501:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
+            // InternalOCLinEcore.g:18501:2: rule__MapLiteralPartCS__OwnedKeyAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralPartCS__OwnedKeyAssignment_0();
@@ -55942,14 +55942,14 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__1"
-    // InternalOCLinEcore.g:18509:1: rule__MapLiteralPartCS__Group__1 : rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 ;
+    // InternalOCLinEcore.g:18511:1: rule__MapLiteralPartCS__Group__1 : rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 ;
     public final void rule__MapLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18513:1: ( rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 )
-            // InternalOCLinEcore.g:18514:2: rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2
+            // InternalOCLinEcore.g:18515:1: ( rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 )
+            // InternalOCLinEcore.g:18516:2: rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__MapLiteralPartCS__Group__1__Impl();
@@ -55980,17 +55980,17 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__1__Impl"
-    // InternalOCLinEcore.g:18521:1: rule__MapLiteralPartCS__Group__1__Impl : ( '<-' ) ;
+    // InternalOCLinEcore.g:18523:1: rule__MapLiteralPartCS__Group__1__Impl : ( '<-' ) ;
     public final void rule__MapLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18525:1: ( ( '<-' ) )
-            // InternalOCLinEcore.g:18526:1: ( '<-' )
+            // InternalOCLinEcore.g:18527:1: ( ( '<-' ) )
+            // InternalOCLinEcore.g:18528:1: ( '<-' )
             {
-            // InternalOCLinEcore.g:18526:1: ( '<-' )
-            // InternalOCLinEcore.g:18527:1: '<-'
+            // InternalOCLinEcore.g:18528:1: ( '<-' )
+            // InternalOCLinEcore.g:18529:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
@@ -56021,14 +56021,14 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__2"
-    // InternalOCLinEcore.g:18540:1: rule__MapLiteralPartCS__Group__2 : rule__MapLiteralPartCS__Group__2__Impl ;
+    // InternalOCLinEcore.g:18542:1: rule__MapLiteralPartCS__Group__2 : rule__MapLiteralPartCS__Group__2__Impl ;
     public final void rule__MapLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18544:1: ( rule__MapLiteralPartCS__Group__2__Impl )
-            // InternalOCLinEcore.g:18545:2: rule__MapLiteralPartCS__Group__2__Impl
+            // InternalOCLinEcore.g:18546:1: ( rule__MapLiteralPartCS__Group__2__Impl )
+            // InternalOCLinEcore.g:18547:2: rule__MapLiteralPartCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralPartCS__Group__2__Impl();
@@ -56054,23 +56054,23 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__2__Impl"
-    // InternalOCLinEcore.g:18551:1: rule__MapLiteralPartCS__Group__2__Impl : ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) ;
+    // InternalOCLinEcore.g:18553:1: rule__MapLiteralPartCS__Group__2__Impl : ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) ;
     public final void rule__MapLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18555:1: ( ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) )
-            // InternalOCLinEcore.g:18556:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
+            // InternalOCLinEcore.g:18557:1: ( ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) )
+            // InternalOCLinEcore.g:18558:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
             {
-            // InternalOCLinEcore.g:18556:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
-            // InternalOCLinEcore.g:18557:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
+            // InternalOCLinEcore.g:18558:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
+            // InternalOCLinEcore.g:18559:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2());
             }
-            // InternalOCLinEcore.g:18558:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
-            // InternalOCLinEcore.g:18558:2: rule__MapLiteralPartCS__OwnedValueAssignment_2
+            // InternalOCLinEcore.g:18560:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
+            // InternalOCLinEcore.g:18560:2: rule__MapLiteralPartCS__OwnedValueAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralPartCS__OwnedValueAssignment_2();
@@ -56105,14 +56105,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__0"
-    // InternalOCLinEcore.g:18574:1: rule__TupleLiteralExpCS__Group__0 : rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 ;
+    // InternalOCLinEcore.g:18576:1: rule__TupleLiteralExpCS__Group__0 : rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 ;
     public final void rule__TupleLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18578:1: ( rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 )
-            // InternalOCLinEcore.g:18579:2: rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1
+            // InternalOCLinEcore.g:18580:1: ( rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 )
+            // InternalOCLinEcore.g:18581:2: rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__TupleLiteralExpCS__Group__0__Impl();
@@ -56143,17 +56143,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:18586:1: rule__TupleLiteralExpCS__Group__0__Impl : ( 'Tuple' ) ;
+    // InternalOCLinEcore.g:18588:1: rule__TupleLiteralExpCS__Group__0__Impl : ( 'Tuple' ) ;
     public final void rule__TupleLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18590:1: ( ( 'Tuple' ) )
-            // InternalOCLinEcore.g:18591:1: ( 'Tuple' )
+            // InternalOCLinEcore.g:18592:1: ( ( 'Tuple' ) )
+            // InternalOCLinEcore.g:18593:1: ( 'Tuple' )
             {
-            // InternalOCLinEcore.g:18591:1: ( 'Tuple' )
-            // InternalOCLinEcore.g:18592:1: 'Tuple'
+            // InternalOCLinEcore.g:18593:1: ( 'Tuple' )
+            // InternalOCLinEcore.g:18594:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
@@ -56184,14 +56184,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__1"
-    // InternalOCLinEcore.g:18605:1: rule__TupleLiteralExpCS__Group__1 : rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 ;
+    // InternalOCLinEcore.g:18607:1: rule__TupleLiteralExpCS__Group__1 : rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 ;
     public final void rule__TupleLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18609:1: ( rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 )
-            // InternalOCLinEcore.g:18610:2: rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2
+            // InternalOCLinEcore.g:18611:1: ( rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 )
+            // InternalOCLinEcore.g:18612:2: rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__TupleLiteralExpCS__Group__1__Impl();
@@ -56222,17 +56222,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:18617:1: rule__TupleLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:18619:1: rule__TupleLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__TupleLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18621:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:18622:1: ( '{' )
+            // InternalOCLinEcore.g:18623:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:18624:1: ( '{' )
             {
-            // InternalOCLinEcore.g:18622:1: ( '{' )
-            // InternalOCLinEcore.g:18623:1: '{'
+            // InternalOCLinEcore.g:18624:1: ( '{' )
+            // InternalOCLinEcore.g:18625:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -56263,14 +56263,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__2"
-    // InternalOCLinEcore.g:18636:1: rule__TupleLiteralExpCS__Group__2 : rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 ;
+    // InternalOCLinEcore.g:18638:1: rule__TupleLiteralExpCS__Group__2 : rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 ;
     public final void rule__TupleLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18640:1: ( rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 )
-            // InternalOCLinEcore.g:18641:2: rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3
+            // InternalOCLinEcore.g:18642:1: ( rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 )
+            // InternalOCLinEcore.g:18643:2: rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_98);
             rule__TupleLiteralExpCS__Group__2__Impl();
@@ -56301,23 +56301,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__2__Impl"
-    // InternalOCLinEcore.g:18648:1: rule__TupleLiteralExpCS__Group__2__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) ;
+    // InternalOCLinEcore.g:18650:1: rule__TupleLiteralExpCS__Group__2__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) ;
     public final void rule__TupleLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18652:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) )
-            // InternalOCLinEcore.g:18653:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
+            // InternalOCLinEcore.g:18654:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) )
+            // InternalOCLinEcore.g:18655:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
             {
-            // InternalOCLinEcore.g:18653:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
-            // InternalOCLinEcore.g:18654:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
+            // InternalOCLinEcore.g:18655:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
+            // InternalOCLinEcore.g:18656:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2());
             }
-            // InternalOCLinEcore.g:18655:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
-            // InternalOCLinEcore.g:18655:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_2
+            // InternalOCLinEcore.g:18657:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
+            // InternalOCLinEcore.g:18657:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__OwnedPartsAssignment_2();
@@ -56352,14 +56352,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__3"
-    // InternalOCLinEcore.g:18665:1: rule__TupleLiteralExpCS__Group__3 : rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 ;
+    // InternalOCLinEcore.g:18667:1: rule__TupleLiteralExpCS__Group__3 : rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 ;
     public final void rule__TupleLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18669:1: ( rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 )
-            // InternalOCLinEcore.g:18670:2: rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4
+            // InternalOCLinEcore.g:18671:1: ( rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 )
+            // InternalOCLinEcore.g:18672:2: rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_98);
             rule__TupleLiteralExpCS__Group__3__Impl();
@@ -56390,22 +56390,22 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__3__Impl"
-    // InternalOCLinEcore.g:18677:1: rule__TupleLiteralExpCS__Group__3__Impl : ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) ;
+    // InternalOCLinEcore.g:18679:1: rule__TupleLiteralExpCS__Group__3__Impl : ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) ;
     public final void rule__TupleLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18681:1: ( ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) )
-            // InternalOCLinEcore.g:18682:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
+            // InternalOCLinEcore.g:18683:1: ( ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) )
+            // InternalOCLinEcore.g:18684:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
             {
-            // InternalOCLinEcore.g:18682:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
-            // InternalOCLinEcore.g:18683:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
+            // InternalOCLinEcore.g:18684:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
+            // InternalOCLinEcore.g:18685:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3());
             }
-            // InternalOCLinEcore.g:18684:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
+            // InternalOCLinEcore.g:18686:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             loop197:
             do {
                 int alt197=2;
@@ -56418,7 +56418,7 @@
 
                 switch (alt197) {
             	case 1 :
-            	    // InternalOCLinEcore.g:18684:2: rule__TupleLiteralExpCS__Group_3__0
+            	    // InternalOCLinEcore.g:18686:2: rule__TupleLiteralExpCS__Group_3__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__TupleLiteralExpCS__Group_3__0();
@@ -56459,14 +56459,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__4"
-    // InternalOCLinEcore.g:18694:1: rule__TupleLiteralExpCS__Group__4 : rule__TupleLiteralExpCS__Group__4__Impl ;
+    // InternalOCLinEcore.g:18696:1: rule__TupleLiteralExpCS__Group__4 : rule__TupleLiteralExpCS__Group__4__Impl ;
     public final void rule__TupleLiteralExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18698:1: ( rule__TupleLiteralExpCS__Group__4__Impl )
-            // InternalOCLinEcore.g:18699:2: rule__TupleLiteralExpCS__Group__4__Impl
+            // InternalOCLinEcore.g:18700:1: ( rule__TupleLiteralExpCS__Group__4__Impl )
+            // InternalOCLinEcore.g:18701:2: rule__TupleLiteralExpCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__Group__4__Impl();
@@ -56492,17 +56492,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__4__Impl"
-    // InternalOCLinEcore.g:18705:1: rule__TupleLiteralExpCS__Group__4__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:18707:1: rule__TupleLiteralExpCS__Group__4__Impl : ( '}' ) ;
     public final void rule__TupleLiteralExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18709:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:18710:1: ( '}' )
+            // InternalOCLinEcore.g:18711:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:18712:1: ( '}' )
             {
-            // InternalOCLinEcore.g:18710:1: ( '}' )
-            // InternalOCLinEcore.g:18711:1: '}'
+            // InternalOCLinEcore.g:18712:1: ( '}' )
+            // InternalOCLinEcore.g:18713:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
@@ -56533,14 +56533,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__0"
-    // InternalOCLinEcore.g:18734:1: rule__TupleLiteralExpCS__Group_3__0 : rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 ;
+    // InternalOCLinEcore.g:18736:1: rule__TupleLiteralExpCS__Group_3__0 : rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 ;
     public final void rule__TupleLiteralExpCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18738:1: ( rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 )
-            // InternalOCLinEcore.g:18739:2: rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1
+            // InternalOCLinEcore.g:18740:1: ( rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 )
+            // InternalOCLinEcore.g:18741:2: rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__TupleLiteralExpCS__Group_3__0__Impl();
@@ -56571,17 +56571,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__0__Impl"
-    // InternalOCLinEcore.g:18746:1: rule__TupleLiteralExpCS__Group_3__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:18748:1: rule__TupleLiteralExpCS__Group_3__0__Impl : ( ',' ) ;
     public final void rule__TupleLiteralExpCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18750:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:18751:1: ( ',' )
+            // InternalOCLinEcore.g:18752:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:18753:1: ( ',' )
             {
-            // InternalOCLinEcore.g:18751:1: ( ',' )
-            // InternalOCLinEcore.g:18752:1: ','
+            // InternalOCLinEcore.g:18753:1: ( ',' )
+            // InternalOCLinEcore.g:18754:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
@@ -56612,14 +56612,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__1"
-    // InternalOCLinEcore.g:18765:1: rule__TupleLiteralExpCS__Group_3__1 : rule__TupleLiteralExpCS__Group_3__1__Impl ;
+    // InternalOCLinEcore.g:18767:1: rule__TupleLiteralExpCS__Group_3__1 : rule__TupleLiteralExpCS__Group_3__1__Impl ;
     public final void rule__TupleLiteralExpCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18769:1: ( rule__TupleLiteralExpCS__Group_3__1__Impl )
-            // InternalOCLinEcore.g:18770:2: rule__TupleLiteralExpCS__Group_3__1__Impl
+            // InternalOCLinEcore.g:18771:1: ( rule__TupleLiteralExpCS__Group_3__1__Impl )
+            // InternalOCLinEcore.g:18772:2: rule__TupleLiteralExpCS__Group_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__Group_3__1__Impl();
@@ -56645,23 +56645,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__1__Impl"
-    // InternalOCLinEcore.g:18776:1: rule__TupleLiteralExpCS__Group_3__1__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) ;
+    // InternalOCLinEcore.g:18778:1: rule__TupleLiteralExpCS__Group_3__1__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) ;
     public final void rule__TupleLiteralExpCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18780:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) )
-            // InternalOCLinEcore.g:18781:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
+            // InternalOCLinEcore.g:18782:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) )
+            // InternalOCLinEcore.g:18783:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
             {
-            // InternalOCLinEcore.g:18781:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
-            // InternalOCLinEcore.g:18782:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
+            // InternalOCLinEcore.g:18783:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
+            // InternalOCLinEcore.g:18784:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1());
             }
-            // InternalOCLinEcore.g:18783:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
-            // InternalOCLinEcore.g:18783:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1
+            // InternalOCLinEcore.g:18785:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
+            // InternalOCLinEcore.g:18785:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1();
@@ -56696,14 +56696,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__0"
-    // InternalOCLinEcore.g:18797:1: rule__TupleLiteralPartCS__Group__0 : rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 ;
+    // InternalOCLinEcore.g:18799:1: rule__TupleLiteralPartCS__Group__0 : rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 ;
     public final void rule__TupleLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18801:1: ( rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 )
-            // InternalOCLinEcore.g:18802:2: rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1
+            // InternalOCLinEcore.g:18803:1: ( rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 )
+            // InternalOCLinEcore.g:18804:2: rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_99);
             rule__TupleLiteralPartCS__Group__0__Impl();
@@ -56734,23 +56734,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__0__Impl"
-    // InternalOCLinEcore.g:18809:1: rule__TupleLiteralPartCS__Group__0__Impl : ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:18811:1: rule__TupleLiteralPartCS__Group__0__Impl : ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) ;
     public final void rule__TupleLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18813:1: ( ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:18814:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:18815:1: ( ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:18816:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:18814:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
-            // InternalOCLinEcore.g:18815:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:18816:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:18817:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0());
             }
-            // InternalOCLinEcore.g:18816:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
-            // InternalOCLinEcore.g:18816:2: rule__TupleLiteralPartCS__NameAssignment_0
+            // InternalOCLinEcore.g:18818:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:18818:2: rule__TupleLiteralPartCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__NameAssignment_0();
@@ -56785,14 +56785,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__1"
-    // InternalOCLinEcore.g:18826:1: rule__TupleLiteralPartCS__Group__1 : rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 ;
+    // InternalOCLinEcore.g:18828:1: rule__TupleLiteralPartCS__Group__1 : rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 ;
     public final void rule__TupleLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18830:1: ( rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 )
-            // InternalOCLinEcore.g:18831:2: rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2
+            // InternalOCLinEcore.g:18832:1: ( rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 )
+            // InternalOCLinEcore.g:18833:2: rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_99);
             rule__TupleLiteralPartCS__Group__1__Impl();
@@ -56823,22 +56823,22 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__1__Impl"
-    // InternalOCLinEcore.g:18838:1: rule__TupleLiteralPartCS__Group__1__Impl : ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:18840:1: rule__TupleLiteralPartCS__Group__1__Impl : ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) ;
     public final void rule__TupleLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18842:1: ( ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:18843:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:18844:1: ( ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:18845:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:18843:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:18844:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
+            // InternalOCLinEcore.g:18845:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:18846:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:18845:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
+            // InternalOCLinEcore.g:18847:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             int alt198=2;
             int LA198_0 = input.LA(1);
 
@@ -56847,7 +56847,7 @@
             }
             switch (alt198) {
                 case 1 :
-                    // InternalOCLinEcore.g:18845:2: rule__TupleLiteralPartCS__Group_1__0
+                    // InternalOCLinEcore.g:18847:2: rule__TupleLiteralPartCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TupleLiteralPartCS__Group_1__0();
@@ -56885,14 +56885,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__2"
-    // InternalOCLinEcore.g:18855:1: rule__TupleLiteralPartCS__Group__2 : rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 ;
+    // InternalOCLinEcore.g:18857:1: rule__TupleLiteralPartCS__Group__2 : rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 ;
     public final void rule__TupleLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18859:1: ( rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 )
-            // InternalOCLinEcore.g:18860:2: rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3
+            // InternalOCLinEcore.g:18861:1: ( rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 )
+            // InternalOCLinEcore.g:18862:2: rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__TupleLiteralPartCS__Group__2__Impl();
@@ -56923,17 +56923,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__2__Impl"
-    // InternalOCLinEcore.g:18867:1: rule__TupleLiteralPartCS__Group__2__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:18869:1: rule__TupleLiteralPartCS__Group__2__Impl : ( '=' ) ;
     public final void rule__TupleLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18871:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:18872:1: ( '=' )
+            // InternalOCLinEcore.g:18873:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:18874:1: ( '=' )
             {
-            // InternalOCLinEcore.g:18872:1: ( '=' )
-            // InternalOCLinEcore.g:18873:1: '='
+            // InternalOCLinEcore.g:18874:1: ( '=' )
+            // InternalOCLinEcore.g:18875:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
@@ -56964,14 +56964,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__3"
-    // InternalOCLinEcore.g:18886:1: rule__TupleLiteralPartCS__Group__3 : rule__TupleLiteralPartCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:18888:1: rule__TupleLiteralPartCS__Group__3 : rule__TupleLiteralPartCS__Group__3__Impl ;
     public final void rule__TupleLiteralPartCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18890:1: ( rule__TupleLiteralPartCS__Group__3__Impl )
-            // InternalOCLinEcore.g:18891:2: rule__TupleLiteralPartCS__Group__3__Impl
+            // InternalOCLinEcore.g:18892:1: ( rule__TupleLiteralPartCS__Group__3__Impl )
+            // InternalOCLinEcore.g:18893:2: rule__TupleLiteralPartCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__Group__3__Impl();
@@ -56997,23 +56997,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__3__Impl"
-    // InternalOCLinEcore.g:18897:1: rule__TupleLiteralPartCS__Group__3__Impl : ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) ;
+    // InternalOCLinEcore.g:18899:1: rule__TupleLiteralPartCS__Group__3__Impl : ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) ;
     public final void rule__TupleLiteralPartCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18901:1: ( ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) )
-            // InternalOCLinEcore.g:18902:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
+            // InternalOCLinEcore.g:18903:1: ( ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) )
+            // InternalOCLinEcore.g:18904:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
             {
-            // InternalOCLinEcore.g:18902:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
-            // InternalOCLinEcore.g:18903:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
+            // InternalOCLinEcore.g:18904:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
+            // InternalOCLinEcore.g:18905:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3());
             }
-            // InternalOCLinEcore.g:18904:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
-            // InternalOCLinEcore.g:18904:2: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3
+            // InternalOCLinEcore.g:18906:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
+            // InternalOCLinEcore.g:18906:2: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3();
@@ -57048,14 +57048,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__0"
-    // InternalOCLinEcore.g:18922:1: rule__TupleLiteralPartCS__Group_1__0 : rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 ;
+    // InternalOCLinEcore.g:18924:1: rule__TupleLiteralPartCS__Group_1__0 : rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 ;
     public final void rule__TupleLiteralPartCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18926:1: ( rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 )
-            // InternalOCLinEcore.g:18927:2: rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1
+            // InternalOCLinEcore.g:18928:1: ( rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 )
+            // InternalOCLinEcore.g:18929:2: rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__TupleLiteralPartCS__Group_1__0__Impl();
@@ -57086,17 +57086,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:18934:1: rule__TupleLiteralPartCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:18936:1: rule__TupleLiteralPartCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__TupleLiteralPartCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18938:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:18939:1: ( ':' )
+            // InternalOCLinEcore.g:18940:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:18941:1: ( ':' )
             {
-            // InternalOCLinEcore.g:18939:1: ( ':' )
-            // InternalOCLinEcore.g:18940:1: ':'
+            // InternalOCLinEcore.g:18941:1: ( ':' )
+            // InternalOCLinEcore.g:18942:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
@@ -57127,14 +57127,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__1"
-    // InternalOCLinEcore.g:18953:1: rule__TupleLiteralPartCS__Group_1__1 : rule__TupleLiteralPartCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:18955:1: rule__TupleLiteralPartCS__Group_1__1 : rule__TupleLiteralPartCS__Group_1__1__Impl ;
     public final void rule__TupleLiteralPartCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18957:1: ( rule__TupleLiteralPartCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:18958:2: rule__TupleLiteralPartCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:18959:1: ( rule__TupleLiteralPartCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:18960:2: rule__TupleLiteralPartCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__Group_1__1__Impl();
@@ -57160,23 +57160,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:18964:1: rule__TupleLiteralPartCS__Group_1__1__Impl : ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:18966:1: rule__TupleLiteralPartCS__Group_1__1__Impl : ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__TupleLiteralPartCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18968:1: ( ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:18969:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLinEcore.g:18970:1: ( ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:18971:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:18969:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
-            // InternalOCLinEcore.g:18970:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLinEcore.g:18971:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLinEcore.g:18972:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalOCLinEcore.g:18971:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
-            // InternalOCLinEcore.g:18971:2: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1
+            // InternalOCLinEcore.g:18973:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLinEcore.g:18973:2: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1();
@@ -57211,14 +57211,14 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__0"
-    // InternalOCLinEcore.g:18985:1: rule__UnlimitedNaturalLiteralExpCS__Group__0 : rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 ;
+    // InternalOCLinEcore.g:18987:1: rule__UnlimitedNaturalLiteralExpCS__Group__0 : rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:18989:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 )
-            // InternalOCLinEcore.g:18990:2: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1
+            // InternalOCLinEcore.g:18991:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 )
+            // InternalOCLinEcore.g:18992:2: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_100);
             rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl();
@@ -57249,23 +57249,23 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:18997:1: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:18999:1: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl : ( () ) ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19001:1: ( ( () ) )
-            // InternalOCLinEcore.g:19002:1: ( () )
+            // InternalOCLinEcore.g:19003:1: ( ( () ) )
+            // InternalOCLinEcore.g:19004:1: ( () )
             {
-            // InternalOCLinEcore.g:19002:1: ( () )
-            // InternalOCLinEcore.g:19003:1: ()
+            // InternalOCLinEcore.g:19004:1: ( () )
+            // InternalOCLinEcore.g:19005:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0());
             }
-            // InternalOCLinEcore.g:19004:1: ()
-            // InternalOCLinEcore.g:19006:1:
+            // InternalOCLinEcore.g:19006:1: ()
+            // InternalOCLinEcore.g:19008:1:
             {
             }
 
@@ -57290,14 +57290,14 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__1"
-    // InternalOCLinEcore.g:19016:1: rule__UnlimitedNaturalLiteralExpCS__Group__1 : rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:19018:1: rule__UnlimitedNaturalLiteralExpCS__Group__1 : rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19020:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl )
-            // InternalOCLinEcore.g:19021:2: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl
+            // InternalOCLinEcore.g:19022:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl )
+            // InternalOCLinEcore.g:19023:2: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl();
@@ -57323,17 +57323,17 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:19027:1: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl : ( '*' ) ;
+    // InternalOCLinEcore.g:19029:1: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl : ( '*' ) ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19031:1: ( ( '*' ) )
-            // InternalOCLinEcore.g:19032:1: ( '*' )
+            // InternalOCLinEcore.g:19033:1: ( ( '*' ) )
+            // InternalOCLinEcore.g:19034:1: ( '*' )
             {
-            // InternalOCLinEcore.g:19032:1: ( '*' )
-            // InternalOCLinEcore.g:19033:1: '*'
+            // InternalOCLinEcore.g:19034:1: ( '*' )
+            // InternalOCLinEcore.g:19035:1: '*'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
@@ -57364,14 +57364,14 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__0"
-    // InternalOCLinEcore.g:19050:1: rule__InvalidLiteralExpCS__Group__0 : rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 ;
+    // InternalOCLinEcore.g:19052:1: rule__InvalidLiteralExpCS__Group__0 : rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 ;
     public final void rule__InvalidLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19054:1: ( rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 )
-            // InternalOCLinEcore.g:19055:2: rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1
+            // InternalOCLinEcore.g:19056:1: ( rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 )
+            // InternalOCLinEcore.g:19057:2: rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_101);
             rule__InvalidLiteralExpCS__Group__0__Impl();
@@ -57402,23 +57402,23 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:19062:1: rule__InvalidLiteralExpCS__Group__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:19064:1: rule__InvalidLiteralExpCS__Group__0__Impl : ( () ) ;
     public final void rule__InvalidLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19066:1: ( ( () ) )
-            // InternalOCLinEcore.g:19067:1: ( () )
+            // InternalOCLinEcore.g:19068:1: ( ( () ) )
+            // InternalOCLinEcore.g:19069:1: ( () )
             {
-            // InternalOCLinEcore.g:19067:1: ( () )
-            // InternalOCLinEcore.g:19068:1: ()
+            // InternalOCLinEcore.g:19069:1: ( () )
+            // InternalOCLinEcore.g:19070:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0());
             }
-            // InternalOCLinEcore.g:19069:1: ()
-            // InternalOCLinEcore.g:19071:1:
+            // InternalOCLinEcore.g:19071:1: ()
+            // InternalOCLinEcore.g:19073:1:
             {
             }
 
@@ -57443,14 +57443,14 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__1"
-    // InternalOCLinEcore.g:19081:1: rule__InvalidLiteralExpCS__Group__1 : rule__InvalidLiteralExpCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:19083:1: rule__InvalidLiteralExpCS__Group__1 : rule__InvalidLiteralExpCS__Group__1__Impl ;
     public final void rule__InvalidLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19085:1: ( rule__InvalidLiteralExpCS__Group__1__Impl )
-            // InternalOCLinEcore.g:19086:2: rule__InvalidLiteralExpCS__Group__1__Impl
+            // InternalOCLinEcore.g:19087:1: ( rule__InvalidLiteralExpCS__Group__1__Impl )
+            // InternalOCLinEcore.g:19088:2: rule__InvalidLiteralExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvalidLiteralExpCS__Group__1__Impl();
@@ -57476,17 +57476,17 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:19092:1: rule__InvalidLiteralExpCS__Group__1__Impl : ( 'invalid' ) ;
+    // InternalOCLinEcore.g:19094:1: rule__InvalidLiteralExpCS__Group__1__Impl : ( 'invalid' ) ;
     public final void rule__InvalidLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19096:1: ( ( 'invalid' ) )
-            // InternalOCLinEcore.g:19097:1: ( 'invalid' )
+            // InternalOCLinEcore.g:19098:1: ( ( 'invalid' ) )
+            // InternalOCLinEcore.g:19099:1: ( 'invalid' )
             {
-            // InternalOCLinEcore.g:19097:1: ( 'invalid' )
-            // InternalOCLinEcore.g:19098:1: 'invalid'
+            // InternalOCLinEcore.g:19099:1: ( 'invalid' )
+            // InternalOCLinEcore.g:19100:1: 'invalid'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
@@ -57517,14 +57517,14 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__0"
-    // InternalOCLinEcore.g:19115:1: rule__NullLiteralExpCS__Group__0 : rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 ;
+    // InternalOCLinEcore.g:19117:1: rule__NullLiteralExpCS__Group__0 : rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 ;
     public final void rule__NullLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19119:1: ( rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 )
-            // InternalOCLinEcore.g:19120:2: rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1
+            // InternalOCLinEcore.g:19121:1: ( rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 )
+            // InternalOCLinEcore.g:19122:2: rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_102);
             rule__NullLiteralExpCS__Group__0__Impl();
@@ -57555,23 +57555,23 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:19127:1: rule__NullLiteralExpCS__Group__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:19129:1: rule__NullLiteralExpCS__Group__0__Impl : ( () ) ;
     public final void rule__NullLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19131:1: ( ( () ) )
-            // InternalOCLinEcore.g:19132:1: ( () )
+            // InternalOCLinEcore.g:19133:1: ( ( () ) )
+            // InternalOCLinEcore.g:19134:1: ( () )
             {
-            // InternalOCLinEcore.g:19132:1: ( () )
-            // InternalOCLinEcore.g:19133:1: ()
+            // InternalOCLinEcore.g:19134:1: ( () )
+            // InternalOCLinEcore.g:19135:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0());
             }
-            // InternalOCLinEcore.g:19134:1: ()
-            // InternalOCLinEcore.g:19136:1:
+            // InternalOCLinEcore.g:19136:1: ()
+            // InternalOCLinEcore.g:19138:1:
             {
             }
 
@@ -57596,14 +57596,14 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__1"
-    // InternalOCLinEcore.g:19146:1: rule__NullLiteralExpCS__Group__1 : rule__NullLiteralExpCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:19148:1: rule__NullLiteralExpCS__Group__1 : rule__NullLiteralExpCS__Group__1__Impl ;
     public final void rule__NullLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19150:1: ( rule__NullLiteralExpCS__Group__1__Impl )
-            // InternalOCLinEcore.g:19151:2: rule__NullLiteralExpCS__Group__1__Impl
+            // InternalOCLinEcore.g:19152:1: ( rule__NullLiteralExpCS__Group__1__Impl )
+            // InternalOCLinEcore.g:19153:2: rule__NullLiteralExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NullLiteralExpCS__Group__1__Impl();
@@ -57629,17 +57629,17 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:19157:1: rule__NullLiteralExpCS__Group__1__Impl : ( 'null' ) ;
+    // InternalOCLinEcore.g:19159:1: rule__NullLiteralExpCS__Group__1__Impl : ( 'null' ) ;
     public final void rule__NullLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19161:1: ( ( 'null' ) )
-            // InternalOCLinEcore.g:19162:1: ( 'null' )
+            // InternalOCLinEcore.g:19163:1: ( ( 'null' ) )
+            // InternalOCLinEcore.g:19164:1: ( 'null' )
             {
-            // InternalOCLinEcore.g:19162:1: ( 'null' )
-            // InternalOCLinEcore.g:19163:1: 'null'
+            // InternalOCLinEcore.g:19164:1: ( 'null' )
+            // InternalOCLinEcore.g:19165:1: 'null'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
@@ -57670,14 +57670,14 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__0"
-    // InternalOCLinEcore.g:19180:1: rule__TypeLiteralWithMultiplicityCS__Group__0 : rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 ;
+    // InternalOCLinEcore.g:19182:1: rule__TypeLiteralWithMultiplicityCS__Group__0 : rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19184:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 )
-            // InternalOCLinEcore.g:19185:2: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1
+            // InternalOCLinEcore.g:19186:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 )
+            // InternalOCLinEcore.g:19187:2: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_81);
             rule__TypeLiteralWithMultiplicityCS__Group__0__Impl();
@@ -57708,17 +57708,17 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__0__Impl"
-    // InternalOCLinEcore.g:19192:1: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl : ( ruleTypeLiteralCS ) ;
+    // InternalOCLinEcore.g:19194:1: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl : ( ruleTypeLiteralCS ) ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19196:1: ( ( ruleTypeLiteralCS ) )
-            // InternalOCLinEcore.g:19197:1: ( ruleTypeLiteralCS )
+            // InternalOCLinEcore.g:19198:1: ( ( ruleTypeLiteralCS ) )
+            // InternalOCLinEcore.g:19199:1: ( ruleTypeLiteralCS )
             {
-            // InternalOCLinEcore.g:19197:1: ( ruleTypeLiteralCS )
-            // InternalOCLinEcore.g:19198:1: ruleTypeLiteralCS
+            // InternalOCLinEcore.g:19199:1: ( ruleTypeLiteralCS )
+            // InternalOCLinEcore.g:19200:1: ruleTypeLiteralCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
@@ -57753,14 +57753,14 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__1"
-    // InternalOCLinEcore.g:19209:1: rule__TypeLiteralWithMultiplicityCS__Group__1 : rule__TypeLiteralWithMultiplicityCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:19211:1: rule__TypeLiteralWithMultiplicityCS__Group__1 : rule__TypeLiteralWithMultiplicityCS__Group__1__Impl ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19213:1: ( rule__TypeLiteralWithMultiplicityCS__Group__1__Impl )
-            // InternalOCLinEcore.g:19214:2: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl
+            // InternalOCLinEcore.g:19215:1: ( rule__TypeLiteralWithMultiplicityCS__Group__1__Impl )
+            // InternalOCLinEcore.g:19216:2: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeLiteralWithMultiplicityCS__Group__1__Impl();
@@ -57786,22 +57786,22 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__1__Impl"
-    // InternalOCLinEcore.g:19220:1: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl : ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) ;
+    // InternalOCLinEcore.g:19222:1: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl : ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19224:1: ( ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) )
-            // InternalOCLinEcore.g:19225:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalOCLinEcore.g:19226:1: ( ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) )
+            // InternalOCLinEcore.g:19227:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
             {
-            // InternalOCLinEcore.g:19225:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
-            // InternalOCLinEcore.g:19226:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
+            // InternalOCLinEcore.g:19227:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalOCLinEcore.g:19228:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1());
             }
-            // InternalOCLinEcore.g:19227:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
+            // InternalOCLinEcore.g:19229:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             int alt199=2;
             int LA199_0 = input.LA(1);
 
@@ -57810,7 +57810,7 @@
             }
             switch (alt199) {
                 case 1 :
-                    // InternalOCLinEcore.g:19227:2: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1
+                    // InternalOCLinEcore.g:19229:2: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1();
@@ -57848,14 +57848,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__0"
-    // InternalOCLinEcore.g:19241:1: rule__TypeNameExpCS__Group__0 : rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 ;
+    // InternalOCLinEcore.g:19243:1: rule__TypeNameExpCS__Group__0 : rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 ;
     public final void rule__TypeNameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19245:1: ( rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 )
-            // InternalOCLinEcore.g:19246:2: rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1
+            // InternalOCLinEcore.g:19247:1: ( rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 )
+            // InternalOCLinEcore.g:19248:2: rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__TypeNameExpCS__Group__0__Impl();
@@ -57886,23 +57886,23 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:19253:1: rule__TypeNameExpCS__Group__0__Impl : ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:19255:1: rule__TypeNameExpCS__Group__0__Impl : ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) ;
     public final void rule__TypeNameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19257:1: ( ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:19258:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalOCLinEcore.g:19259:1: ( ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:19260:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:19258:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
-            // InternalOCLinEcore.g:19259:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
+            // InternalOCLinEcore.g:19260:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalOCLinEcore.g:19261:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
-            // InternalOCLinEcore.g:19260:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
-            // InternalOCLinEcore.g:19260:2: rule__TypeNameExpCS__OwnedPathNameAssignment_0
+            // InternalOCLinEcore.g:19262:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
+            // InternalOCLinEcore.g:19262:2: rule__TypeNameExpCS__OwnedPathNameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__OwnedPathNameAssignment_0();
@@ -57937,14 +57937,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__1"
-    // InternalOCLinEcore.g:19270:1: rule__TypeNameExpCS__Group__1 : rule__TypeNameExpCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:19272:1: rule__TypeNameExpCS__Group__1 : rule__TypeNameExpCS__Group__1__Impl ;
     public final void rule__TypeNameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19274:1: ( rule__TypeNameExpCS__Group__1__Impl )
-            // InternalOCLinEcore.g:19275:2: rule__TypeNameExpCS__Group__1__Impl
+            // InternalOCLinEcore.g:19276:1: ( rule__TypeNameExpCS__Group__1__Impl )
+            // InternalOCLinEcore.g:19277:2: rule__TypeNameExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__Group__1__Impl();
@@ -57970,22 +57970,22 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:19281:1: rule__TypeNameExpCS__Group__1__Impl : ( ( rule__TypeNameExpCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:19283:1: rule__TypeNameExpCS__Group__1__Impl : ( ( rule__TypeNameExpCS__Group_1__0 )? ) ;
     public final void rule__TypeNameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19285:1: ( ( ( rule__TypeNameExpCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:19286:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:19287:1: ( ( ( rule__TypeNameExpCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:19288:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:19286:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:19287:1: ( rule__TypeNameExpCS__Group_1__0 )?
+            // InternalOCLinEcore.g:19288:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:19289:1: ( rule__TypeNameExpCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:19288:1: ( rule__TypeNameExpCS__Group_1__0 )?
+            // InternalOCLinEcore.g:19290:1: ( rule__TypeNameExpCS__Group_1__0 )?
             int alt200=2;
             int LA200_0 = input.LA(1);
 
@@ -57994,7 +57994,7 @@
             }
             switch (alt200) {
                 case 1 :
-                    // InternalOCLinEcore.g:19288:2: rule__TypeNameExpCS__Group_1__0
+                    // InternalOCLinEcore.g:19290:2: rule__TypeNameExpCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeNameExpCS__Group_1__0();
@@ -58032,14 +58032,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__0"
-    // InternalOCLinEcore.g:19302:1: rule__TypeNameExpCS__Group_1__0 : rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 ;
+    // InternalOCLinEcore.g:19304:1: rule__TypeNameExpCS__Group_1__0 : rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 ;
     public final void rule__TypeNameExpCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19306:1: ( rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 )
-            // InternalOCLinEcore.g:19307:2: rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1
+            // InternalOCLinEcore.g:19308:1: ( rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 )
+            // InternalOCLinEcore.g:19309:2: rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__TypeNameExpCS__Group_1__0__Impl();
@@ -58070,23 +58070,23 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:19314:1: rule__TypeNameExpCS__Group_1__0__Impl : ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) ;
+    // InternalOCLinEcore.g:19316:1: rule__TypeNameExpCS__Group_1__0__Impl : ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) ;
     public final void rule__TypeNameExpCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19318:1: ( ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) )
-            // InternalOCLinEcore.g:19319:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
+            // InternalOCLinEcore.g:19320:1: ( ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) )
+            // InternalOCLinEcore.g:19321:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
             {
-            // InternalOCLinEcore.g:19319:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
-            // InternalOCLinEcore.g:19320:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
+            // InternalOCLinEcore.g:19321:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
+            // InternalOCLinEcore.g:19322:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0());
             }
-            // InternalOCLinEcore.g:19321:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
-            // InternalOCLinEcore.g:19321:2: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0
+            // InternalOCLinEcore.g:19323:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
+            // InternalOCLinEcore.g:19323:2: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0();
@@ -58121,14 +58121,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__1"
-    // InternalOCLinEcore.g:19331:1: rule__TypeNameExpCS__Group_1__1 : rule__TypeNameExpCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:19333:1: rule__TypeNameExpCS__Group_1__1 : rule__TypeNameExpCS__Group_1__1__Impl ;
     public final void rule__TypeNameExpCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19335:1: ( rule__TypeNameExpCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:19336:2: rule__TypeNameExpCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:19337:1: ( rule__TypeNameExpCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:19338:2: rule__TypeNameExpCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__Group_1__1__Impl();
@@ -58154,22 +58154,22 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:19342:1: rule__TypeNameExpCS__Group_1__1__Impl : ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) ;
+    // InternalOCLinEcore.g:19344:1: rule__TypeNameExpCS__Group_1__1__Impl : ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) ;
     public final void rule__TypeNameExpCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19346:1: ( ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) )
-            // InternalOCLinEcore.g:19347:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
+            // InternalOCLinEcore.g:19348:1: ( ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) )
+            // InternalOCLinEcore.g:19349:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
             {
-            // InternalOCLinEcore.g:19347:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
-            // InternalOCLinEcore.g:19348:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
+            // InternalOCLinEcore.g:19349:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
+            // InternalOCLinEcore.g:19350:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1());
             }
-            // InternalOCLinEcore.g:19349:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
+            // InternalOCLinEcore.g:19351:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             int alt201=2;
             int LA201_0 = input.LA(1);
 
@@ -58178,7 +58178,7 @@
             }
             switch (alt201) {
                 case 1 :
-                    // InternalOCLinEcore.g:19349:2: rule__TypeNameExpCS__Group_1_1__0
+                    // InternalOCLinEcore.g:19351:2: rule__TypeNameExpCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeNameExpCS__Group_1_1__0();
@@ -58216,14 +58216,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__0"
-    // InternalOCLinEcore.g:19363:1: rule__TypeNameExpCS__Group_1_1__0 : rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 ;
+    // InternalOCLinEcore.g:19365:1: rule__TypeNameExpCS__Group_1_1__0 : rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 ;
     public final void rule__TypeNameExpCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19367:1: ( rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 )
-            // InternalOCLinEcore.g:19368:2: rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1
+            // InternalOCLinEcore.g:19369:1: ( rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 )
+            // InternalOCLinEcore.g:19370:2: rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__TypeNameExpCS__Group_1_1__0__Impl();
@@ -58254,17 +58254,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__0__Impl"
-    // InternalOCLinEcore.g:19375:1: rule__TypeNameExpCS__Group_1_1__0__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:19377:1: rule__TypeNameExpCS__Group_1_1__0__Impl : ( '{' ) ;
     public final void rule__TypeNameExpCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19379:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:19380:1: ( '{' )
+            // InternalOCLinEcore.g:19381:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:19382:1: ( '{' )
             {
-            // InternalOCLinEcore.g:19380:1: ( '{' )
-            // InternalOCLinEcore.g:19381:1: '{'
+            // InternalOCLinEcore.g:19382:1: ( '{' )
+            // InternalOCLinEcore.g:19383:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
@@ -58295,14 +58295,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__1"
-    // InternalOCLinEcore.g:19394:1: rule__TypeNameExpCS__Group_1_1__1 : rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 ;
+    // InternalOCLinEcore.g:19396:1: rule__TypeNameExpCS__Group_1_1__1 : rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 ;
     public final void rule__TypeNameExpCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19398:1: ( rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 )
-            // InternalOCLinEcore.g:19399:2: rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2
+            // InternalOCLinEcore.g:19400:1: ( rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 )
+            // InternalOCLinEcore.g:19401:2: rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__TypeNameExpCS__Group_1_1__1__Impl();
@@ -58333,23 +58333,23 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__1__Impl"
-    // InternalOCLinEcore.g:19406:1: rule__TypeNameExpCS__Group_1_1__1__Impl : ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) ;
+    // InternalOCLinEcore.g:19408:1: rule__TypeNameExpCS__Group_1_1__1__Impl : ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) ;
     public final void rule__TypeNameExpCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19410:1: ( ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) )
-            // InternalOCLinEcore.g:19411:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
+            // InternalOCLinEcore.g:19412:1: ( ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) )
+            // InternalOCLinEcore.g:19413:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
             {
-            // InternalOCLinEcore.g:19411:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
-            // InternalOCLinEcore.g:19412:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
+            // InternalOCLinEcore.g:19413:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
+            // InternalOCLinEcore.g:19414:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1());
             }
-            // InternalOCLinEcore.g:19413:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
-            // InternalOCLinEcore.g:19413:2: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1
+            // InternalOCLinEcore.g:19415:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
+            // InternalOCLinEcore.g:19415:2: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1();
@@ -58384,14 +58384,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__2"
-    // InternalOCLinEcore.g:19423:1: rule__TypeNameExpCS__Group_1_1__2 : rule__TypeNameExpCS__Group_1_1__2__Impl ;
+    // InternalOCLinEcore.g:19425:1: rule__TypeNameExpCS__Group_1_1__2 : rule__TypeNameExpCS__Group_1_1__2__Impl ;
     public final void rule__TypeNameExpCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19427:1: ( rule__TypeNameExpCS__Group_1_1__2__Impl )
-            // InternalOCLinEcore.g:19428:2: rule__TypeNameExpCS__Group_1_1__2__Impl
+            // InternalOCLinEcore.g:19429:1: ( rule__TypeNameExpCS__Group_1_1__2__Impl )
+            // InternalOCLinEcore.g:19430:2: rule__TypeNameExpCS__Group_1_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__Group_1_1__2__Impl();
@@ -58417,17 +58417,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__2__Impl"
-    // InternalOCLinEcore.g:19434:1: rule__TypeNameExpCS__Group_1_1__2__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:19436:1: rule__TypeNameExpCS__Group_1_1__2__Impl : ( '}' ) ;
     public final void rule__TypeNameExpCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19438:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:19439:1: ( '}' )
+            // InternalOCLinEcore.g:19440:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:19441:1: ( '}' )
             {
-            // InternalOCLinEcore.g:19439:1: ( '}' )
-            // InternalOCLinEcore.g:19440:1: '}'
+            // InternalOCLinEcore.g:19441:1: ( '}' )
+            // InternalOCLinEcore.g:19442:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
@@ -58458,14 +58458,14 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__0"
-    // InternalOCLinEcore.g:19459:1: rule__TypeExpCS__Group__0 : rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 ;
+    // InternalOCLinEcore.g:19461:1: rule__TypeExpCS__Group__0 : rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 ;
     public final void rule__TypeExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19463:1: ( rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 )
-            // InternalOCLinEcore.g:19464:2: rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1
+            // InternalOCLinEcore.g:19465:1: ( rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 )
+            // InternalOCLinEcore.g:19466:2: rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_81);
             rule__TypeExpCS__Group__0__Impl();
@@ -58496,17 +58496,17 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:19471:1: rule__TypeExpCS__Group__0__Impl : ( ruleTypeExpWithoutMultiplicityCS ) ;
+    // InternalOCLinEcore.g:19473:1: rule__TypeExpCS__Group__0__Impl : ( ruleTypeExpWithoutMultiplicityCS ) ;
     public final void rule__TypeExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19475:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
-            // InternalOCLinEcore.g:19476:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalOCLinEcore.g:19477:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
+            // InternalOCLinEcore.g:19478:1: ( ruleTypeExpWithoutMultiplicityCS )
             {
-            // InternalOCLinEcore.g:19476:1: ( ruleTypeExpWithoutMultiplicityCS )
-            // InternalOCLinEcore.g:19477:1: ruleTypeExpWithoutMultiplicityCS
+            // InternalOCLinEcore.g:19478:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalOCLinEcore.g:19479:1: ruleTypeExpWithoutMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeExpCSAccess().getTypeExpWithoutMultiplicityCSParserRuleCall_0());
@@ -58541,14 +58541,14 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__1"
-    // InternalOCLinEcore.g:19488:1: rule__TypeExpCS__Group__1 : rule__TypeExpCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:19490:1: rule__TypeExpCS__Group__1 : rule__TypeExpCS__Group__1__Impl ;
     public final void rule__TypeExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19492:1: ( rule__TypeExpCS__Group__1__Impl )
-            // InternalOCLinEcore.g:19493:2: rule__TypeExpCS__Group__1__Impl
+            // InternalOCLinEcore.g:19494:1: ( rule__TypeExpCS__Group__1__Impl )
+            // InternalOCLinEcore.g:19495:2: rule__TypeExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeExpCS__Group__1__Impl();
@@ -58574,22 +58574,22 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:19499:1: rule__TypeExpCS__Group__1__Impl : ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) ;
+    // InternalOCLinEcore.g:19501:1: rule__TypeExpCS__Group__1__Impl : ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) ;
     public final void rule__TypeExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19503:1: ( ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) )
-            // InternalOCLinEcore.g:19504:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalOCLinEcore.g:19505:1: ( ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) )
+            // InternalOCLinEcore.g:19506:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
             {
-            // InternalOCLinEcore.g:19504:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
-            // InternalOCLinEcore.g:19505:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
+            // InternalOCLinEcore.g:19506:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalOCLinEcore.g:19507:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1());
             }
-            // InternalOCLinEcore.g:19506:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
+            // InternalOCLinEcore.g:19508:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             int alt202=2;
             int LA202_0 = input.LA(1);
 
@@ -58598,7 +58598,7 @@
             }
             switch (alt202) {
                 case 1 :
-                    // InternalOCLinEcore.g:19506:2: rule__TypeExpCS__OwnedMultiplicityAssignment_1
+                    // InternalOCLinEcore.g:19508:2: rule__TypeExpCS__OwnedMultiplicityAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeExpCS__OwnedMultiplicityAssignment_1();
@@ -58636,14 +58636,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__0"
-    // InternalOCLinEcore.g:19520:1: rule__ExpCS__Group_0__0 : rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 ;
+    // InternalOCLinEcore.g:19522:1: rule__ExpCS__Group_0__0 : rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 ;
     public final void rule__ExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19524:1: ( rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 )
-            // InternalOCLinEcore.g:19525:2: rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1
+            // InternalOCLinEcore.g:19526:1: ( rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 )
+            // InternalOCLinEcore.g:19527:2: rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_103);
             rule__ExpCS__Group_0__0__Impl();
@@ -58674,17 +58674,17 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__0__Impl"
-    // InternalOCLinEcore.g:19532:1: rule__ExpCS__Group_0__0__Impl : ( rulePrefixedPrimaryExpCS ) ;
+    // InternalOCLinEcore.g:19534:1: rule__ExpCS__Group_0__0__Impl : ( rulePrefixedPrimaryExpCS ) ;
     public final void rule__ExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19536:1: ( ( rulePrefixedPrimaryExpCS ) )
-            // InternalOCLinEcore.g:19537:1: ( rulePrefixedPrimaryExpCS )
+            // InternalOCLinEcore.g:19538:1: ( ( rulePrefixedPrimaryExpCS ) )
+            // InternalOCLinEcore.g:19539:1: ( rulePrefixedPrimaryExpCS )
             {
-            // InternalOCLinEcore.g:19537:1: ( rulePrefixedPrimaryExpCS )
-            // InternalOCLinEcore.g:19538:1: rulePrefixedPrimaryExpCS
+            // InternalOCLinEcore.g:19539:1: ( rulePrefixedPrimaryExpCS )
+            // InternalOCLinEcore.g:19540:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
@@ -58719,14 +58719,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__1"
-    // InternalOCLinEcore.g:19549:1: rule__ExpCS__Group_0__1 : rule__ExpCS__Group_0__1__Impl ;
+    // InternalOCLinEcore.g:19551:1: rule__ExpCS__Group_0__1 : rule__ExpCS__Group_0__1__Impl ;
     public final void rule__ExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19553:1: ( rule__ExpCS__Group_0__1__Impl )
-            // InternalOCLinEcore.g:19554:2: rule__ExpCS__Group_0__1__Impl
+            // InternalOCLinEcore.g:19555:1: ( rule__ExpCS__Group_0__1__Impl )
+            // InternalOCLinEcore.g:19556:2: rule__ExpCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__Group_0__1__Impl();
@@ -58752,22 +58752,22 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__1__Impl"
-    // InternalOCLinEcore.g:19560:1: rule__ExpCS__Group_0__1__Impl : ( ( rule__ExpCS__Group_0_1__0 )? ) ;
+    // InternalOCLinEcore.g:19562:1: rule__ExpCS__Group_0__1__Impl : ( ( rule__ExpCS__Group_0_1__0 )? ) ;
     public final void rule__ExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19564:1: ( ( ( rule__ExpCS__Group_0_1__0 )? ) )
-            // InternalOCLinEcore.g:19565:1: ( ( rule__ExpCS__Group_0_1__0 )? )
+            // InternalOCLinEcore.g:19566:1: ( ( ( rule__ExpCS__Group_0_1__0 )? ) )
+            // InternalOCLinEcore.g:19567:1: ( ( rule__ExpCS__Group_0_1__0 )? )
             {
-            // InternalOCLinEcore.g:19565:1: ( ( rule__ExpCS__Group_0_1__0 )? )
-            // InternalOCLinEcore.g:19566:1: ( rule__ExpCS__Group_0_1__0 )?
+            // InternalOCLinEcore.g:19567:1: ( ( rule__ExpCS__Group_0_1__0 )? )
+            // InternalOCLinEcore.g:19568:1: ( rule__ExpCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getGroup_0_1());
             }
-            // InternalOCLinEcore.g:19567:1: ( rule__ExpCS__Group_0_1__0 )?
+            // InternalOCLinEcore.g:19569:1: ( rule__ExpCS__Group_0_1__0 )?
             int alt203=2;
             int LA203_0 = input.LA(1);
 
@@ -58776,7 +58776,7 @@
             }
             switch (alt203) {
                 case 1 :
-                    // InternalOCLinEcore.g:19567:2: rule__ExpCS__Group_0_1__0
+                    // InternalOCLinEcore.g:19569:2: rule__ExpCS__Group_0_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ExpCS__Group_0_1__0();
@@ -58814,14 +58814,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__0"
-    // InternalOCLinEcore.g:19581:1: rule__ExpCS__Group_0_1__0 : rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 ;
+    // InternalOCLinEcore.g:19583:1: rule__ExpCS__Group_0_1__0 : rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 ;
     public final void rule__ExpCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19585:1: ( rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 )
-            // InternalOCLinEcore.g:19586:2: rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1
+            // InternalOCLinEcore.g:19587:1: ( rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 )
+            // InternalOCLinEcore.g:19588:2: rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1
             {
             pushFollow(FollowSets000.FOLLOW_103);
             rule__ExpCS__Group_0_1__0__Impl();
@@ -58852,23 +58852,23 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__0__Impl"
-    // InternalOCLinEcore.g:19593:1: rule__ExpCS__Group_0_1__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:19595:1: rule__ExpCS__Group_0_1__0__Impl : ( () ) ;
     public final void rule__ExpCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19597:1: ( ( () ) )
-            // InternalOCLinEcore.g:19598:1: ( () )
+            // InternalOCLinEcore.g:19599:1: ( ( () ) )
+            // InternalOCLinEcore.g:19600:1: ( () )
             {
-            // InternalOCLinEcore.g:19598:1: ( () )
-            // InternalOCLinEcore.g:19599:1: ()
+            // InternalOCLinEcore.g:19600:1: ( () )
+            // InternalOCLinEcore.g:19601:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0());
             }
-            // InternalOCLinEcore.g:19600:1: ()
-            // InternalOCLinEcore.g:19602:1:
+            // InternalOCLinEcore.g:19602:1: ()
+            // InternalOCLinEcore.g:19604:1:
             {
             }
 
@@ -58893,14 +58893,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__1"
-    // InternalOCLinEcore.g:19612:1: rule__ExpCS__Group_0_1__1 : rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 ;
+    // InternalOCLinEcore.g:19614:1: rule__ExpCS__Group_0_1__1 : rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 ;
     public final void rule__ExpCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19616:1: ( rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 )
-            // InternalOCLinEcore.g:19617:2: rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2
+            // InternalOCLinEcore.g:19618:1: ( rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 )
+            // InternalOCLinEcore.g:19619:2: rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__ExpCS__Group_0_1__1__Impl();
@@ -58931,23 +58931,23 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__1__Impl"
-    // InternalOCLinEcore.g:19624:1: rule__ExpCS__Group_0_1__1__Impl : ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) ;
+    // InternalOCLinEcore.g:19626:1: rule__ExpCS__Group_0_1__1__Impl : ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) ;
     public final void rule__ExpCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19628:1: ( ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) )
-            // InternalOCLinEcore.g:19629:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
+            // InternalOCLinEcore.g:19630:1: ( ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) )
+            // InternalOCLinEcore.g:19631:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
             {
-            // InternalOCLinEcore.g:19629:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
-            // InternalOCLinEcore.g:19630:1: ( rule__ExpCS__NameAssignment_0_1_1 )
+            // InternalOCLinEcore.g:19631:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
+            // InternalOCLinEcore.g:19632:1: ( rule__ExpCS__NameAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1());
             }
-            // InternalOCLinEcore.g:19631:1: ( rule__ExpCS__NameAssignment_0_1_1 )
-            // InternalOCLinEcore.g:19631:2: rule__ExpCS__NameAssignment_0_1_1
+            // InternalOCLinEcore.g:19633:1: ( rule__ExpCS__NameAssignment_0_1_1 )
+            // InternalOCLinEcore.g:19633:2: rule__ExpCS__NameAssignment_0_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__NameAssignment_0_1_1();
@@ -58982,14 +58982,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__2"
-    // InternalOCLinEcore.g:19641:1: rule__ExpCS__Group_0_1__2 : rule__ExpCS__Group_0_1__2__Impl ;
+    // InternalOCLinEcore.g:19643:1: rule__ExpCS__Group_0_1__2 : rule__ExpCS__Group_0_1__2__Impl ;
     public final void rule__ExpCS__Group_0_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19645:1: ( rule__ExpCS__Group_0_1__2__Impl )
-            // InternalOCLinEcore.g:19646:2: rule__ExpCS__Group_0_1__2__Impl
+            // InternalOCLinEcore.g:19647:1: ( rule__ExpCS__Group_0_1__2__Impl )
+            // InternalOCLinEcore.g:19648:2: rule__ExpCS__Group_0_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__Group_0_1__2__Impl();
@@ -59015,23 +59015,23 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__2__Impl"
-    // InternalOCLinEcore.g:19652:1: rule__ExpCS__Group_0_1__2__Impl : ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) ;
+    // InternalOCLinEcore.g:19654:1: rule__ExpCS__Group_0_1__2__Impl : ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) ;
     public final void rule__ExpCS__Group_0_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19656:1: ( ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) )
-            // InternalOCLinEcore.g:19657:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
+            // InternalOCLinEcore.g:19658:1: ( ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) )
+            // InternalOCLinEcore.g:19659:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
             {
-            // InternalOCLinEcore.g:19657:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
-            // InternalOCLinEcore.g:19658:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
+            // InternalOCLinEcore.g:19659:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
+            // InternalOCLinEcore.g:19660:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2());
             }
-            // InternalOCLinEcore.g:19659:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
-            // InternalOCLinEcore.g:19659:2: rule__ExpCS__OwnedRightAssignment_0_1_2
+            // InternalOCLinEcore.g:19661:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
+            // InternalOCLinEcore.g:19661:2: rule__ExpCS__OwnedRightAssignment_0_1_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__OwnedRightAssignment_0_1_2();
@@ -59066,14 +59066,14 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__0"
-    // InternalOCLinEcore.g:19675:1: rule__PrefixedLetExpCS__Group_0__0 : rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 ;
+    // InternalOCLinEcore.g:19677:1: rule__PrefixedLetExpCS__Group_0__0 : rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 ;
     public final void rule__PrefixedLetExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19679:1: ( rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 )
-            // InternalOCLinEcore.g:19680:2: rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1
+            // InternalOCLinEcore.g:19681:1: ( rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 )
+            // InternalOCLinEcore.g:19682:2: rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_104);
             rule__PrefixedLetExpCS__Group_0__0__Impl();
@@ -59104,23 +59104,23 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__0__Impl"
-    // InternalOCLinEcore.g:19687:1: rule__PrefixedLetExpCS__Group_0__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:19689:1: rule__PrefixedLetExpCS__Group_0__0__Impl : ( () ) ;
     public final void rule__PrefixedLetExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19691:1: ( ( () ) )
-            // InternalOCLinEcore.g:19692:1: ( () )
+            // InternalOCLinEcore.g:19693:1: ( ( () ) )
+            // InternalOCLinEcore.g:19694:1: ( () )
             {
-            // InternalOCLinEcore.g:19692:1: ( () )
-            // InternalOCLinEcore.g:19693:1: ()
+            // InternalOCLinEcore.g:19694:1: ( () )
+            // InternalOCLinEcore.g:19695:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0());
             }
-            // InternalOCLinEcore.g:19694:1: ()
-            // InternalOCLinEcore.g:19696:1:
+            // InternalOCLinEcore.g:19696:1: ()
+            // InternalOCLinEcore.g:19698:1:
             {
             }
 
@@ -59145,14 +59145,14 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__1"
-    // InternalOCLinEcore.g:19706:1: rule__PrefixedLetExpCS__Group_0__1 : rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 ;
+    // InternalOCLinEcore.g:19708:1: rule__PrefixedLetExpCS__Group_0__1 : rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 ;
     public final void rule__PrefixedLetExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19710:1: ( rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 )
-            // InternalOCLinEcore.g:19711:2: rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2
+            // InternalOCLinEcore.g:19712:1: ( rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 )
+            // InternalOCLinEcore.g:19713:2: rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__PrefixedLetExpCS__Group_0__1__Impl();
@@ -59183,23 +59183,23 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__1__Impl"
-    // InternalOCLinEcore.g:19718:1: rule__PrefixedLetExpCS__Group_0__1__Impl : ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) ;
+    // InternalOCLinEcore.g:19720:1: rule__PrefixedLetExpCS__Group_0__1__Impl : ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) ;
     public final void rule__PrefixedLetExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19722:1: ( ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) )
-            // InternalOCLinEcore.g:19723:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
+            // InternalOCLinEcore.g:19724:1: ( ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) )
+            // InternalOCLinEcore.g:19725:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
             {
-            // InternalOCLinEcore.g:19723:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
-            // InternalOCLinEcore.g:19724:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
+            // InternalOCLinEcore.g:19725:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
+            // InternalOCLinEcore.g:19726:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1());
             }
-            // InternalOCLinEcore.g:19725:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
-            // InternalOCLinEcore.g:19725:2: rule__PrefixedLetExpCS__NameAssignment_0_1
+            // InternalOCLinEcore.g:19727:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
+            // InternalOCLinEcore.g:19727:2: rule__PrefixedLetExpCS__NameAssignment_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedLetExpCS__NameAssignment_0_1();
@@ -59234,14 +59234,14 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__2"
-    // InternalOCLinEcore.g:19735:1: rule__PrefixedLetExpCS__Group_0__2 : rule__PrefixedLetExpCS__Group_0__2__Impl ;
+    // InternalOCLinEcore.g:19737:1: rule__PrefixedLetExpCS__Group_0__2 : rule__PrefixedLetExpCS__Group_0__2__Impl ;
     public final void rule__PrefixedLetExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19739:1: ( rule__PrefixedLetExpCS__Group_0__2__Impl )
-            // InternalOCLinEcore.g:19740:2: rule__PrefixedLetExpCS__Group_0__2__Impl
+            // InternalOCLinEcore.g:19741:1: ( rule__PrefixedLetExpCS__Group_0__2__Impl )
+            // InternalOCLinEcore.g:19742:2: rule__PrefixedLetExpCS__Group_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedLetExpCS__Group_0__2__Impl();
@@ -59267,23 +59267,23 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__2__Impl"
-    // InternalOCLinEcore.g:19746:1: rule__PrefixedLetExpCS__Group_0__2__Impl : ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) ;
+    // InternalOCLinEcore.g:19748:1: rule__PrefixedLetExpCS__Group_0__2__Impl : ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) ;
     public final void rule__PrefixedLetExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19750:1: ( ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) )
-            // InternalOCLinEcore.g:19751:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalOCLinEcore.g:19752:1: ( ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) )
+            // InternalOCLinEcore.g:19753:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
             {
-            // InternalOCLinEcore.g:19751:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
-            // InternalOCLinEcore.g:19752:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
+            // InternalOCLinEcore.g:19753:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalOCLinEcore.g:19754:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2());
             }
-            // InternalOCLinEcore.g:19753:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
-            // InternalOCLinEcore.g:19753:2: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2
+            // InternalOCLinEcore.g:19755:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
+            // InternalOCLinEcore.g:19755:2: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedLetExpCS__OwnedRightAssignment_0_2();
@@ -59318,14 +59318,14 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__0"
-    // InternalOCLinEcore.g:19769:1: rule__PrefixedPrimaryExpCS__Group_0__0 : rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 ;
+    // InternalOCLinEcore.g:19771:1: rule__PrefixedPrimaryExpCS__Group_0__0 : rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19773:1: ( rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 )
-            // InternalOCLinEcore.g:19774:2: rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1
+            // InternalOCLinEcore.g:19775:1: ( rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 )
+            // InternalOCLinEcore.g:19776:2: rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_104);
             rule__PrefixedPrimaryExpCS__Group_0__0__Impl();
@@ -59356,23 +59356,23 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__0__Impl"
-    // InternalOCLinEcore.g:19781:1: rule__PrefixedPrimaryExpCS__Group_0__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:19783:1: rule__PrefixedPrimaryExpCS__Group_0__0__Impl : ( () ) ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19785:1: ( ( () ) )
-            // InternalOCLinEcore.g:19786:1: ( () )
+            // InternalOCLinEcore.g:19787:1: ( ( () ) )
+            // InternalOCLinEcore.g:19788:1: ( () )
             {
-            // InternalOCLinEcore.g:19786:1: ( () )
-            // InternalOCLinEcore.g:19787:1: ()
+            // InternalOCLinEcore.g:19788:1: ( () )
+            // InternalOCLinEcore.g:19789:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0());
             }
-            // InternalOCLinEcore.g:19788:1: ()
-            // InternalOCLinEcore.g:19790:1:
+            // InternalOCLinEcore.g:19790:1: ()
+            // InternalOCLinEcore.g:19792:1:
             {
             }
 
@@ -59397,14 +59397,14 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__1"
-    // InternalOCLinEcore.g:19800:1: rule__PrefixedPrimaryExpCS__Group_0__1 : rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 ;
+    // InternalOCLinEcore.g:19802:1: rule__PrefixedPrimaryExpCS__Group_0__1 : rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19804:1: ( rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 )
-            // InternalOCLinEcore.g:19805:2: rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2
+            // InternalOCLinEcore.g:19806:1: ( rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 )
+            // InternalOCLinEcore.g:19807:2: rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__PrefixedPrimaryExpCS__Group_0__1__Impl();
@@ -59435,23 +59435,23 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__1__Impl"
-    // InternalOCLinEcore.g:19812:1: rule__PrefixedPrimaryExpCS__Group_0__1__Impl : ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) ;
+    // InternalOCLinEcore.g:19814:1: rule__PrefixedPrimaryExpCS__Group_0__1__Impl : ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19816:1: ( ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) )
-            // InternalOCLinEcore.g:19817:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
+            // InternalOCLinEcore.g:19818:1: ( ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) )
+            // InternalOCLinEcore.g:19819:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
             {
-            // InternalOCLinEcore.g:19817:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
-            // InternalOCLinEcore.g:19818:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
+            // InternalOCLinEcore.g:19819:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
+            // InternalOCLinEcore.g:19820:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1());
             }
-            // InternalOCLinEcore.g:19819:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
-            // InternalOCLinEcore.g:19819:2: rule__PrefixedPrimaryExpCS__NameAssignment_0_1
+            // InternalOCLinEcore.g:19821:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
+            // InternalOCLinEcore.g:19821:2: rule__PrefixedPrimaryExpCS__NameAssignment_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedPrimaryExpCS__NameAssignment_0_1();
@@ -59486,14 +59486,14 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__2"
-    // InternalOCLinEcore.g:19829:1: rule__PrefixedPrimaryExpCS__Group_0__2 : rule__PrefixedPrimaryExpCS__Group_0__2__Impl ;
+    // InternalOCLinEcore.g:19831:1: rule__PrefixedPrimaryExpCS__Group_0__2 : rule__PrefixedPrimaryExpCS__Group_0__2__Impl ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19833:1: ( rule__PrefixedPrimaryExpCS__Group_0__2__Impl )
-            // InternalOCLinEcore.g:19834:2: rule__PrefixedPrimaryExpCS__Group_0__2__Impl
+            // InternalOCLinEcore.g:19835:1: ( rule__PrefixedPrimaryExpCS__Group_0__2__Impl )
+            // InternalOCLinEcore.g:19836:2: rule__PrefixedPrimaryExpCS__Group_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedPrimaryExpCS__Group_0__2__Impl();
@@ -59519,23 +59519,23 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__2__Impl"
-    // InternalOCLinEcore.g:19840:1: rule__PrefixedPrimaryExpCS__Group_0__2__Impl : ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) ;
+    // InternalOCLinEcore.g:19842:1: rule__PrefixedPrimaryExpCS__Group_0__2__Impl : ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19844:1: ( ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) )
-            // InternalOCLinEcore.g:19845:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalOCLinEcore.g:19846:1: ( ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) )
+            // InternalOCLinEcore.g:19847:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
             {
-            // InternalOCLinEcore.g:19845:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
-            // InternalOCLinEcore.g:19846:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
+            // InternalOCLinEcore.g:19847:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalOCLinEcore.g:19848:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2());
             }
-            // InternalOCLinEcore.g:19847:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
-            // InternalOCLinEcore.g:19847:2: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2
+            // InternalOCLinEcore.g:19849:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
+            // InternalOCLinEcore.g:19849:2: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2();
@@ -59570,14 +59570,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__0"
-    // InternalOCLinEcore.g:19863:1: rule__NameExpCS__Group__0 : rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 ;
+    // InternalOCLinEcore.g:19865:1: rule__NameExpCS__Group__0 : rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 ;
     public final void rule__NameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19867:1: ( rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 )
-            // InternalOCLinEcore.g:19868:2: rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1
+            // InternalOCLinEcore.g:19869:1: ( rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 )
+            // InternalOCLinEcore.g:19870:2: rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_105);
             rule__NameExpCS__Group__0__Impl();
@@ -59608,23 +59608,23 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:19875:1: rule__NameExpCS__Group__0__Impl : ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:19877:1: rule__NameExpCS__Group__0__Impl : ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) ;
     public final void rule__NameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19879:1: ( ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:19880:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalOCLinEcore.g:19881:1: ( ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:19882:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:19880:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
-            // InternalOCLinEcore.g:19881:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
+            // InternalOCLinEcore.g:19882:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalOCLinEcore.g:19883:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
-            // InternalOCLinEcore.g:19882:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
-            // InternalOCLinEcore.g:19882:2: rule__NameExpCS__OwnedPathNameAssignment_0
+            // InternalOCLinEcore.g:19884:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
+            // InternalOCLinEcore.g:19884:2: rule__NameExpCS__OwnedPathNameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__OwnedPathNameAssignment_0();
@@ -59659,14 +59659,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__1"
-    // InternalOCLinEcore.g:19892:1: rule__NameExpCS__Group__1 : rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 ;
+    // InternalOCLinEcore.g:19894:1: rule__NameExpCS__Group__1 : rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 ;
     public final void rule__NameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19896:1: ( rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 )
-            // InternalOCLinEcore.g:19897:2: rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2
+            // InternalOCLinEcore.g:19898:1: ( rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 )
+            // InternalOCLinEcore.g:19899:2: rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_105);
             rule__NameExpCS__Group__1__Impl();
@@ -59697,22 +59697,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:19904:1: rule__NameExpCS__Group__1__Impl : ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) ;
+    // InternalOCLinEcore.g:19906:1: rule__NameExpCS__Group__1__Impl : ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) ;
     public final void rule__NameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19908:1: ( ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) )
-            // InternalOCLinEcore.g:19909:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
+            // InternalOCLinEcore.g:19910:1: ( ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) )
+            // InternalOCLinEcore.g:19911:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
             {
-            // InternalOCLinEcore.g:19909:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
-            // InternalOCLinEcore.g:19910:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
+            // InternalOCLinEcore.g:19911:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
+            // InternalOCLinEcore.g:19912:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1());
             }
-            // InternalOCLinEcore.g:19911:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
+            // InternalOCLinEcore.g:19913:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             loop204:
             do {
                 int alt204=2;
@@ -59725,7 +59725,7 @@
 
                 switch (alt204) {
             	case 1 :
-            	    // InternalOCLinEcore.g:19911:2: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1
+            	    // InternalOCLinEcore.g:19913:2: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_106);
             	    rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1();
@@ -59766,14 +59766,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__2"
-    // InternalOCLinEcore.g:19921:1: rule__NameExpCS__Group__2 : rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 ;
+    // InternalOCLinEcore.g:19923:1: rule__NameExpCS__Group__2 : rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 ;
     public final void rule__NameExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19925:1: ( rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 )
-            // InternalOCLinEcore.g:19926:2: rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3
+            // InternalOCLinEcore.g:19927:1: ( rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 )
+            // InternalOCLinEcore.g:19928:2: rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_105);
             rule__NameExpCS__Group__2__Impl();
@@ -59804,22 +59804,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__2__Impl"
-    // InternalOCLinEcore.g:19933:1: rule__NameExpCS__Group__2__Impl : ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) ;
+    // InternalOCLinEcore.g:19935:1: rule__NameExpCS__Group__2__Impl : ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) ;
     public final void rule__NameExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19937:1: ( ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) )
-            // InternalOCLinEcore.g:19938:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
+            // InternalOCLinEcore.g:19939:1: ( ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) )
+            // InternalOCLinEcore.g:19940:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
             {
-            // InternalOCLinEcore.g:19938:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
-            // InternalOCLinEcore.g:19939:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
+            // InternalOCLinEcore.g:19940:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
+            // InternalOCLinEcore.g:19941:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2());
             }
-            // InternalOCLinEcore.g:19940:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
+            // InternalOCLinEcore.g:19942:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             int alt205=2;
             int LA205_0 = input.LA(1);
 
@@ -59828,7 +59828,7 @@
             }
             switch (alt205) {
                 case 1 :
-                    // InternalOCLinEcore.g:19940:2: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2
+                    // InternalOCLinEcore.g:19942:2: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2();
@@ -59866,14 +59866,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__3"
-    // InternalOCLinEcore.g:19950:1: rule__NameExpCS__Group__3 : rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 ;
+    // InternalOCLinEcore.g:19952:1: rule__NameExpCS__Group__3 : rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 ;
     public final void rule__NameExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19954:1: ( rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 )
-            // InternalOCLinEcore.g:19955:2: rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4
+            // InternalOCLinEcore.g:19956:1: ( rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 )
+            // InternalOCLinEcore.g:19957:2: rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_105);
             rule__NameExpCS__Group__3__Impl();
@@ -59904,22 +59904,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__3__Impl"
-    // InternalOCLinEcore.g:19962:1: rule__NameExpCS__Group__3__Impl : ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) ;
+    // InternalOCLinEcore.g:19964:1: rule__NameExpCS__Group__3__Impl : ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) ;
     public final void rule__NameExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19966:1: ( ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) )
-            // InternalOCLinEcore.g:19967:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
+            // InternalOCLinEcore.g:19968:1: ( ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) )
+            // InternalOCLinEcore.g:19969:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
             {
-            // InternalOCLinEcore.g:19967:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
-            // InternalOCLinEcore.g:19968:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
+            // InternalOCLinEcore.g:19969:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
+            // InternalOCLinEcore.g:19970:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3());
             }
-            // InternalOCLinEcore.g:19969:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
+            // InternalOCLinEcore.g:19971:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             int alt206=2;
             int LA206_0 = input.LA(1);
 
@@ -59928,7 +59928,7 @@
             }
             switch (alt206) {
                 case 1 :
-                    // InternalOCLinEcore.g:19969:2: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3
+                    // InternalOCLinEcore.g:19971:2: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3();
@@ -59966,14 +59966,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__4"
-    // InternalOCLinEcore.g:19979:1: rule__NameExpCS__Group__4 : rule__NameExpCS__Group__4__Impl ;
+    // InternalOCLinEcore.g:19981:1: rule__NameExpCS__Group__4 : rule__NameExpCS__Group__4__Impl ;
     public final void rule__NameExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19983:1: ( rule__NameExpCS__Group__4__Impl )
-            // InternalOCLinEcore.g:19984:2: rule__NameExpCS__Group__4__Impl
+            // InternalOCLinEcore.g:19985:1: ( rule__NameExpCS__Group__4__Impl )
+            // InternalOCLinEcore.g:19986:2: rule__NameExpCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__Group__4__Impl();
@@ -59999,22 +59999,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__4__Impl"
-    // InternalOCLinEcore.g:19990:1: rule__NameExpCS__Group__4__Impl : ( ( rule__NameExpCS__Group_4__0 )? ) ;
+    // InternalOCLinEcore.g:19992:1: rule__NameExpCS__Group__4__Impl : ( ( rule__NameExpCS__Group_4__0 )? ) ;
     public final void rule__NameExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:19994:1: ( ( ( rule__NameExpCS__Group_4__0 )? ) )
-            // InternalOCLinEcore.g:19995:1: ( ( rule__NameExpCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:19996:1: ( ( ( rule__NameExpCS__Group_4__0 )? ) )
+            // InternalOCLinEcore.g:19997:1: ( ( rule__NameExpCS__Group_4__0 )? )
             {
-            // InternalOCLinEcore.g:19995:1: ( ( rule__NameExpCS__Group_4__0 )? )
-            // InternalOCLinEcore.g:19996:1: ( rule__NameExpCS__Group_4__0 )?
+            // InternalOCLinEcore.g:19997:1: ( ( rule__NameExpCS__Group_4__0 )? )
+            // InternalOCLinEcore.g:19998:1: ( rule__NameExpCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getGroup_4());
             }
-            // InternalOCLinEcore.g:19997:1: ( rule__NameExpCS__Group_4__0 )?
+            // InternalOCLinEcore.g:19999:1: ( rule__NameExpCS__Group_4__0 )?
             int alt207=2;
             int LA207_0 = input.LA(1);
 
@@ -60023,7 +60023,7 @@
             }
             switch (alt207) {
                 case 1 :
-                    // InternalOCLinEcore.g:19997:2: rule__NameExpCS__Group_4__0
+                    // InternalOCLinEcore.g:19999:2: rule__NameExpCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NameExpCS__Group_4__0();
@@ -60061,14 +60061,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__0"
-    // InternalOCLinEcore.g:20017:1: rule__NameExpCS__Group_4__0 : rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 ;
+    // InternalOCLinEcore.g:20019:1: rule__NameExpCS__Group_4__0 : rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 ;
     public final void rule__NameExpCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20021:1: ( rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 )
-            // InternalOCLinEcore.g:20022:2: rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1
+            // InternalOCLinEcore.g:20023:1: ( rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 )
+            // InternalOCLinEcore.g:20024:2: rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1
             {
             pushFollow(FollowSets000.FOLLOW_107);
             rule__NameExpCS__Group_4__0__Impl();
@@ -60099,23 +60099,23 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__0__Impl"
-    // InternalOCLinEcore.g:20029:1: rule__NameExpCS__Group_4__0__Impl : ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) ;
+    // InternalOCLinEcore.g:20031:1: rule__NameExpCS__Group_4__0__Impl : ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) ;
     public final void rule__NameExpCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20033:1: ( ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) )
-            // InternalOCLinEcore.g:20034:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
+            // InternalOCLinEcore.g:20035:1: ( ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) )
+            // InternalOCLinEcore.g:20036:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
             {
-            // InternalOCLinEcore.g:20034:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
-            // InternalOCLinEcore.g:20035:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
+            // InternalOCLinEcore.g:20036:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
+            // InternalOCLinEcore.g:20037:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0());
             }
-            // InternalOCLinEcore.g:20036:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
-            // InternalOCLinEcore.g:20036:2: rule__NameExpCS__IsPreAssignment_4_0
+            // InternalOCLinEcore.g:20038:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
+            // InternalOCLinEcore.g:20038:2: rule__NameExpCS__IsPreAssignment_4_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__IsPreAssignment_4_0();
@@ -60150,14 +60150,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__1"
-    // InternalOCLinEcore.g:20046:1: rule__NameExpCS__Group_4__1 : rule__NameExpCS__Group_4__1__Impl ;
+    // InternalOCLinEcore.g:20048:1: rule__NameExpCS__Group_4__1 : rule__NameExpCS__Group_4__1__Impl ;
     public final void rule__NameExpCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20050:1: ( rule__NameExpCS__Group_4__1__Impl )
-            // InternalOCLinEcore.g:20051:2: rule__NameExpCS__Group_4__1__Impl
+            // InternalOCLinEcore.g:20052:1: ( rule__NameExpCS__Group_4__1__Impl )
+            // InternalOCLinEcore.g:20053:2: rule__NameExpCS__Group_4__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__Group_4__1__Impl();
@@ -60183,17 +60183,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__1__Impl"
-    // InternalOCLinEcore.g:20057:1: rule__NameExpCS__Group_4__1__Impl : ( 'pre' ) ;
+    // InternalOCLinEcore.g:20059:1: rule__NameExpCS__Group_4__1__Impl : ( 'pre' ) ;
     public final void rule__NameExpCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20061:1: ( ( 'pre' ) )
-            // InternalOCLinEcore.g:20062:1: ( 'pre' )
+            // InternalOCLinEcore.g:20063:1: ( ( 'pre' ) )
+            // InternalOCLinEcore.g:20064:1: ( 'pre' )
             {
-            // InternalOCLinEcore.g:20062:1: ( 'pre' )
-            // InternalOCLinEcore.g:20063:1: 'pre'
+            // InternalOCLinEcore.g:20064:1: ( 'pre' )
+            // InternalOCLinEcore.g:20065:1: 'pre'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
@@ -60224,14 +60224,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__0"
-    // InternalOCLinEcore.g:20080:1: rule__CurlyBracketedClauseCS__Group__0 : rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 ;
+    // InternalOCLinEcore.g:20082:1: rule__CurlyBracketedClauseCS__Group__0 : rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 ;
     public final void rule__CurlyBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20084:1: ( rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 )
-            // InternalOCLinEcore.g:20085:2: rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1
+            // InternalOCLinEcore.g:20086:1: ( rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 )
+            // InternalOCLinEcore.g:20087:2: rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__CurlyBracketedClauseCS__Group__0__Impl();
@@ -60262,23 +60262,23 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__0__Impl"
-    // InternalOCLinEcore.g:20092:1: rule__CurlyBracketedClauseCS__Group__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:20094:1: rule__CurlyBracketedClauseCS__Group__0__Impl : ( () ) ;
     public final void rule__CurlyBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20096:1: ( ( () ) )
-            // InternalOCLinEcore.g:20097:1: ( () )
+            // InternalOCLinEcore.g:20098:1: ( ( () ) )
+            // InternalOCLinEcore.g:20099:1: ( () )
             {
-            // InternalOCLinEcore.g:20097:1: ( () )
-            // InternalOCLinEcore.g:20098:1: ()
+            // InternalOCLinEcore.g:20099:1: ( () )
+            // InternalOCLinEcore.g:20100:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0());
             }
-            // InternalOCLinEcore.g:20099:1: ()
-            // InternalOCLinEcore.g:20101:1:
+            // InternalOCLinEcore.g:20101:1: ()
+            // InternalOCLinEcore.g:20103:1:
             {
             }
 
@@ -60303,14 +60303,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__1"
-    // InternalOCLinEcore.g:20111:1: rule__CurlyBracketedClauseCS__Group__1 : rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 ;
+    // InternalOCLinEcore.g:20113:1: rule__CurlyBracketedClauseCS__Group__1 : rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 ;
     public final void rule__CurlyBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20115:1: ( rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 )
-            // InternalOCLinEcore.g:20116:2: rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2
+            // InternalOCLinEcore.g:20117:1: ( rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 )
+            // InternalOCLinEcore.g:20118:2: rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_79);
             rule__CurlyBracketedClauseCS__Group__1__Impl();
@@ -60341,17 +60341,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__1__Impl"
-    // InternalOCLinEcore.g:20123:1: rule__CurlyBracketedClauseCS__Group__1__Impl : ( '{' ) ;
+    // InternalOCLinEcore.g:20125:1: rule__CurlyBracketedClauseCS__Group__1__Impl : ( '{' ) ;
     public final void rule__CurlyBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20127:1: ( ( '{' ) )
-            // InternalOCLinEcore.g:20128:1: ( '{' )
+            // InternalOCLinEcore.g:20129:1: ( ( '{' ) )
+            // InternalOCLinEcore.g:20130:1: ( '{' )
             {
-            // InternalOCLinEcore.g:20128:1: ( '{' )
-            // InternalOCLinEcore.g:20129:1: '{'
+            // InternalOCLinEcore.g:20130:1: ( '{' )
+            // InternalOCLinEcore.g:20131:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
@@ -60382,14 +60382,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__2"
-    // InternalOCLinEcore.g:20142:1: rule__CurlyBracketedClauseCS__Group__2 : rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 ;
+    // InternalOCLinEcore.g:20144:1: rule__CurlyBracketedClauseCS__Group__2 : rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 ;
     public final void rule__CurlyBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20146:1: ( rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 )
-            // InternalOCLinEcore.g:20147:2: rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3
+            // InternalOCLinEcore.g:20148:1: ( rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 )
+            // InternalOCLinEcore.g:20149:2: rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_79);
             rule__CurlyBracketedClauseCS__Group__2__Impl();
@@ -60420,22 +60420,22 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__2__Impl"
-    // InternalOCLinEcore.g:20154:1: rule__CurlyBracketedClauseCS__Group__2__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:20156:1: rule__CurlyBracketedClauseCS__Group__2__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) ;
     public final void rule__CurlyBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20158:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:20159:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:20160:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:20161:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:20159:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:20160:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
+            // InternalOCLinEcore.g:20161:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:20162:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:20161:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
+            // InternalOCLinEcore.g:20163:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
             int alt208=2;
             int LA208_0 = input.LA(1);
 
@@ -60444,7 +60444,7 @@
             }
             switch (alt208) {
                 case 1 :
-                    // InternalOCLinEcore.g:20161:2: rule__CurlyBracketedClauseCS__Group_2__0
+                    // InternalOCLinEcore.g:20163:2: rule__CurlyBracketedClauseCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CurlyBracketedClauseCS__Group_2__0();
@@ -60482,14 +60482,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__3"
-    // InternalOCLinEcore.g:20171:1: rule__CurlyBracketedClauseCS__Group__3 : rule__CurlyBracketedClauseCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:20173:1: rule__CurlyBracketedClauseCS__Group__3 : rule__CurlyBracketedClauseCS__Group__3__Impl ;
     public final void rule__CurlyBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20175:1: ( rule__CurlyBracketedClauseCS__Group__3__Impl )
-            // InternalOCLinEcore.g:20176:2: rule__CurlyBracketedClauseCS__Group__3__Impl
+            // InternalOCLinEcore.g:20177:1: ( rule__CurlyBracketedClauseCS__Group__3__Impl )
+            // InternalOCLinEcore.g:20178:2: rule__CurlyBracketedClauseCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__Group__3__Impl();
@@ -60515,17 +60515,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__3__Impl"
-    // InternalOCLinEcore.g:20182:1: rule__CurlyBracketedClauseCS__Group__3__Impl : ( '}' ) ;
+    // InternalOCLinEcore.g:20184:1: rule__CurlyBracketedClauseCS__Group__3__Impl : ( '}' ) ;
     public final void rule__CurlyBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20186:1: ( ( '}' ) )
-            // InternalOCLinEcore.g:20187:1: ( '}' )
+            // InternalOCLinEcore.g:20188:1: ( ( '}' ) )
+            // InternalOCLinEcore.g:20189:1: ( '}' )
             {
-            // InternalOCLinEcore.g:20187:1: ( '}' )
-            // InternalOCLinEcore.g:20188:1: '}'
+            // InternalOCLinEcore.g:20189:1: ( '}' )
+            // InternalOCLinEcore.g:20190:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
@@ -60556,14 +60556,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__0"
-    // InternalOCLinEcore.g:20209:1: rule__CurlyBracketedClauseCS__Group_2__0 : rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 ;
+    // InternalOCLinEcore.g:20211:1: rule__CurlyBracketedClauseCS__Group_2__0 : rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 ;
     public final void rule__CurlyBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20213:1: ( rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 )
-            // InternalOCLinEcore.g:20214:2: rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1
+            // InternalOCLinEcore.g:20215:1: ( rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 )
+            // InternalOCLinEcore.g:20216:2: rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__CurlyBracketedClauseCS__Group_2__0__Impl();
@@ -60594,23 +60594,23 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:20221:1: rule__CurlyBracketedClauseCS__Group_2__0__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalOCLinEcore.g:20223:1: rule__CurlyBracketedClauseCS__Group_2__0__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20225:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalOCLinEcore.g:20226:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLinEcore.g:20227:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalOCLinEcore.g:20228:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalOCLinEcore.g:20226:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
-            // InternalOCLinEcore.g:20227:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLinEcore.g:20228:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLinEcore.g:20229:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalOCLinEcore.g:20228:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
-            // InternalOCLinEcore.g:20228:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0
+            // InternalOCLinEcore.g:20230:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLinEcore.g:20230:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0();
@@ -60645,14 +60645,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__1"
-    // InternalOCLinEcore.g:20238:1: rule__CurlyBracketedClauseCS__Group_2__1 : rule__CurlyBracketedClauseCS__Group_2__1__Impl ;
+    // InternalOCLinEcore.g:20240:1: rule__CurlyBracketedClauseCS__Group_2__1 : rule__CurlyBracketedClauseCS__Group_2__1__Impl ;
     public final void rule__CurlyBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20242:1: ( rule__CurlyBracketedClauseCS__Group_2__1__Impl )
-            // InternalOCLinEcore.g:20243:2: rule__CurlyBracketedClauseCS__Group_2__1__Impl
+            // InternalOCLinEcore.g:20244:1: ( rule__CurlyBracketedClauseCS__Group_2__1__Impl )
+            // InternalOCLinEcore.g:20245:2: rule__CurlyBracketedClauseCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__Group_2__1__Impl();
@@ -60678,22 +60678,22 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:20249:1: rule__CurlyBracketedClauseCS__Group_2__1__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) ;
+    // InternalOCLinEcore.g:20251:1: rule__CurlyBracketedClauseCS__Group_2__1__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20253:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) )
-            // InternalOCLinEcore.g:20254:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
+            // InternalOCLinEcore.g:20255:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) )
+            // InternalOCLinEcore.g:20256:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
             {
-            // InternalOCLinEcore.g:20254:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
-            // InternalOCLinEcore.g:20255:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
+            // InternalOCLinEcore.g:20256:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
+            // InternalOCLinEcore.g:20257:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_1());
             }
-            // InternalOCLinEcore.g:20256:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
+            // InternalOCLinEcore.g:20258:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
             loop209:
             do {
                 int alt209=2;
@@ -60706,7 +60706,7 @@
 
                 switch (alt209) {
             	case 1 :
-            	    // InternalOCLinEcore.g:20256:2: rule__CurlyBracketedClauseCS__Group_2_1__0
+            	    // InternalOCLinEcore.g:20258:2: rule__CurlyBracketedClauseCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__CurlyBracketedClauseCS__Group_2_1__0();
@@ -60747,14 +60747,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__0"
-    // InternalOCLinEcore.g:20270:1: rule__CurlyBracketedClauseCS__Group_2_1__0 : rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 ;
+    // InternalOCLinEcore.g:20272:1: rule__CurlyBracketedClauseCS__Group_2_1__0 : rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20274:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 )
-            // InternalOCLinEcore.g:20275:2: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1
+            // InternalOCLinEcore.g:20276:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 )
+            // InternalOCLinEcore.g:20277:2: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__CurlyBracketedClauseCS__Group_2_1__0__Impl();
@@ -60785,17 +60785,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__0__Impl"
-    // InternalOCLinEcore.g:20282:1: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:20284:1: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20286:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:20287:1: ( ',' )
+            // InternalOCLinEcore.g:20288:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:20289:1: ( ',' )
             {
-            // InternalOCLinEcore.g:20287:1: ( ',' )
-            // InternalOCLinEcore.g:20288:1: ','
+            // InternalOCLinEcore.g:20289:1: ( ',' )
+            // InternalOCLinEcore.g:20290:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_1_0());
@@ -60826,14 +60826,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__1"
-    // InternalOCLinEcore.g:20301:1: rule__CurlyBracketedClauseCS__Group_2_1__1 : rule__CurlyBracketedClauseCS__Group_2_1__1__Impl ;
+    // InternalOCLinEcore.g:20303:1: rule__CurlyBracketedClauseCS__Group_2_1__1 : rule__CurlyBracketedClauseCS__Group_2_1__1__Impl ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20305:1: ( rule__CurlyBracketedClauseCS__Group_2_1__1__Impl )
-            // InternalOCLinEcore.g:20306:2: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl
+            // InternalOCLinEcore.g:20307:1: ( rule__CurlyBracketedClauseCS__Group_2_1__1__Impl )
+            // InternalOCLinEcore.g:20308:2: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__Group_2_1__1__Impl();
@@ -60859,23 +60859,23 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__1__Impl"
-    // InternalOCLinEcore.g:20312:1: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalOCLinEcore.g:20314:1: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20316:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalOCLinEcore.g:20317:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLinEcore.g:20318:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalOCLinEcore.g:20319:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalOCLinEcore.g:20317:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalOCLinEcore.g:20318:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLinEcore.g:20319:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLinEcore.g:20320:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalOCLinEcore.g:20319:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
-            // InternalOCLinEcore.g:20319:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1
+            // InternalOCLinEcore.g:20321:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLinEcore.g:20321:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1();
@@ -60910,14 +60910,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__0"
-    // InternalOCLinEcore.g:20333:1: rule__RoundBracketedClauseCS__Group__0 : rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 ;
+    // InternalOCLinEcore.g:20335:1: rule__RoundBracketedClauseCS__Group__0 : rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 ;
     public final void rule__RoundBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20337:1: ( rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 )
-            // InternalOCLinEcore.g:20338:2: rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1
+            // InternalOCLinEcore.g:20339:1: ( rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 )
+            // InternalOCLinEcore.g:20340:2: rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__RoundBracketedClauseCS__Group__0__Impl();
@@ -60948,23 +60948,23 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__0__Impl"
-    // InternalOCLinEcore.g:20345:1: rule__RoundBracketedClauseCS__Group__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:20347:1: rule__RoundBracketedClauseCS__Group__0__Impl : ( () ) ;
     public final void rule__RoundBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20349:1: ( ( () ) )
-            // InternalOCLinEcore.g:20350:1: ( () )
+            // InternalOCLinEcore.g:20351:1: ( ( () ) )
+            // InternalOCLinEcore.g:20352:1: ( () )
             {
-            // InternalOCLinEcore.g:20350:1: ( () )
-            // InternalOCLinEcore.g:20351:1: ()
+            // InternalOCLinEcore.g:20352:1: ( () )
+            // InternalOCLinEcore.g:20353:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0());
             }
-            // InternalOCLinEcore.g:20352:1: ()
-            // InternalOCLinEcore.g:20354:1:
+            // InternalOCLinEcore.g:20354:1: ()
+            // InternalOCLinEcore.g:20356:1:
             {
             }
 
@@ -60989,14 +60989,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__1"
-    // InternalOCLinEcore.g:20364:1: rule__RoundBracketedClauseCS__Group__1 : rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 ;
+    // InternalOCLinEcore.g:20366:1: rule__RoundBracketedClauseCS__Group__1 : rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 ;
     public final void rule__RoundBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20368:1: ( rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 )
-            // InternalOCLinEcore.g:20369:2: rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2
+            // InternalOCLinEcore.g:20370:1: ( rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 )
+            // InternalOCLinEcore.g:20371:2: rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_108);
             rule__RoundBracketedClauseCS__Group__1__Impl();
@@ -61027,17 +61027,17 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__1__Impl"
-    // InternalOCLinEcore.g:20376:1: rule__RoundBracketedClauseCS__Group__1__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:20378:1: rule__RoundBracketedClauseCS__Group__1__Impl : ( '(' ) ;
     public final void rule__RoundBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20380:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:20381:1: ( '(' )
+            // InternalOCLinEcore.g:20382:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:20383:1: ( '(' )
             {
-            // InternalOCLinEcore.g:20381:1: ( '(' )
-            // InternalOCLinEcore.g:20382:1: '('
+            // InternalOCLinEcore.g:20383:1: ( '(' )
+            // InternalOCLinEcore.g:20384:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
@@ -61068,14 +61068,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__2"
-    // InternalOCLinEcore.g:20395:1: rule__RoundBracketedClauseCS__Group__2 : rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 ;
+    // InternalOCLinEcore.g:20397:1: rule__RoundBracketedClauseCS__Group__2 : rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 ;
     public final void rule__RoundBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20399:1: ( rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 )
-            // InternalOCLinEcore.g:20400:2: rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3
+            // InternalOCLinEcore.g:20401:1: ( rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 )
+            // InternalOCLinEcore.g:20402:2: rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_108);
             rule__RoundBracketedClauseCS__Group__2__Impl();
@@ -61106,22 +61106,22 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__2__Impl"
-    // InternalOCLinEcore.g:20407:1: rule__RoundBracketedClauseCS__Group__2__Impl : ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:20409:1: rule__RoundBracketedClauseCS__Group__2__Impl : ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) ;
     public final void rule__RoundBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20411:1: ( ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:20412:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:20413:1: ( ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:20414:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:20412:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:20413:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
+            // InternalOCLinEcore.g:20414:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:20415:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:20414:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
+            // InternalOCLinEcore.g:20416:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             int alt210=2;
             int LA210_0 = input.LA(1);
 
@@ -61130,7 +61130,7 @@
             }
             switch (alt210) {
                 case 1 :
-                    // InternalOCLinEcore.g:20414:2: rule__RoundBracketedClauseCS__Group_2__0
+                    // InternalOCLinEcore.g:20416:2: rule__RoundBracketedClauseCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__RoundBracketedClauseCS__Group_2__0();
@@ -61168,14 +61168,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__3"
-    // InternalOCLinEcore.g:20424:1: rule__RoundBracketedClauseCS__Group__3 : rule__RoundBracketedClauseCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:20426:1: rule__RoundBracketedClauseCS__Group__3 : rule__RoundBracketedClauseCS__Group__3__Impl ;
     public final void rule__RoundBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20428:1: ( rule__RoundBracketedClauseCS__Group__3__Impl )
-            // InternalOCLinEcore.g:20429:2: rule__RoundBracketedClauseCS__Group__3__Impl
+            // InternalOCLinEcore.g:20430:1: ( rule__RoundBracketedClauseCS__Group__3__Impl )
+            // InternalOCLinEcore.g:20431:2: rule__RoundBracketedClauseCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__Group__3__Impl();
@@ -61201,17 +61201,17 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__3__Impl"
-    // InternalOCLinEcore.g:20435:1: rule__RoundBracketedClauseCS__Group__3__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:20437:1: rule__RoundBracketedClauseCS__Group__3__Impl : ( ')' ) ;
     public final void rule__RoundBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20439:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:20440:1: ( ')' )
+            // InternalOCLinEcore.g:20441:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:20442:1: ( ')' )
             {
-            // InternalOCLinEcore.g:20440:1: ( ')' )
-            // InternalOCLinEcore.g:20441:1: ')'
+            // InternalOCLinEcore.g:20442:1: ( ')' )
+            // InternalOCLinEcore.g:20443:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
@@ -61242,14 +61242,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__0"
-    // InternalOCLinEcore.g:20462:1: rule__RoundBracketedClauseCS__Group_2__0 : rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 ;
+    // InternalOCLinEcore.g:20464:1: rule__RoundBracketedClauseCS__Group_2__0 : rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 ;
     public final void rule__RoundBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20466:1: ( rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 )
-            // InternalOCLinEcore.g:20467:2: rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1
+            // InternalOCLinEcore.g:20468:1: ( rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 )
+            // InternalOCLinEcore.g:20469:2: rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_109);
             rule__RoundBracketedClauseCS__Group_2__0__Impl();
@@ -61280,23 +61280,23 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:20474:1: rule__RoundBracketedClauseCS__Group_2__0__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) ;
+    // InternalOCLinEcore.g:20476:1: rule__RoundBracketedClauseCS__Group_2__0__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) ;
     public final void rule__RoundBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20478:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) )
-            // InternalOCLinEcore.g:20479:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
+            // InternalOCLinEcore.g:20480:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) )
+            // InternalOCLinEcore.g:20481:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
             {
-            // InternalOCLinEcore.g:20479:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
-            // InternalOCLinEcore.g:20480:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
+            // InternalOCLinEcore.g:20481:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
+            // InternalOCLinEcore.g:20482:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0());
             }
-            // InternalOCLinEcore.g:20481:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
-            // InternalOCLinEcore.g:20481:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0
+            // InternalOCLinEcore.g:20483:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
+            // InternalOCLinEcore.g:20483:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0();
@@ -61331,14 +61331,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__1"
-    // InternalOCLinEcore.g:20491:1: rule__RoundBracketedClauseCS__Group_2__1 : rule__RoundBracketedClauseCS__Group_2__1__Impl ;
+    // InternalOCLinEcore.g:20493:1: rule__RoundBracketedClauseCS__Group_2__1 : rule__RoundBracketedClauseCS__Group_2__1__Impl ;
     public final void rule__RoundBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20495:1: ( rule__RoundBracketedClauseCS__Group_2__1__Impl )
-            // InternalOCLinEcore.g:20496:2: rule__RoundBracketedClauseCS__Group_2__1__Impl
+            // InternalOCLinEcore.g:20497:1: ( rule__RoundBracketedClauseCS__Group_2__1__Impl )
+            // InternalOCLinEcore.g:20498:2: rule__RoundBracketedClauseCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__Group_2__1__Impl();
@@ -61364,22 +61364,22 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:20502:1: rule__RoundBracketedClauseCS__Group_2__1__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) ;
+    // InternalOCLinEcore.g:20504:1: rule__RoundBracketedClauseCS__Group_2__1__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) ;
     public final void rule__RoundBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20506:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) )
-            // InternalOCLinEcore.g:20507:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
+            // InternalOCLinEcore.g:20508:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) )
+            // InternalOCLinEcore.g:20509:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
             {
-            // InternalOCLinEcore.g:20507:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
-            // InternalOCLinEcore.g:20508:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
+            // InternalOCLinEcore.g:20509:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
+            // InternalOCLinEcore.g:20510:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1());
             }
-            // InternalOCLinEcore.g:20509:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
+            // InternalOCLinEcore.g:20511:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             loop211:
             do {
                 int alt211=2;
@@ -61392,7 +61392,7 @@
 
                 switch (alt211) {
             	case 1 :
-            	    // InternalOCLinEcore.g:20509:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1
+            	    // InternalOCLinEcore.g:20511:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_110);
             	    rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1();
@@ -61433,14 +61433,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__0"
-    // InternalOCLinEcore.g:20523:1: rule__SquareBracketedClauseCS__Group__0 : rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 ;
+    // InternalOCLinEcore.g:20525:1: rule__SquareBracketedClauseCS__Group__0 : rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 ;
     public final void rule__SquareBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20527:1: ( rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 )
-            // InternalOCLinEcore.g:20528:2: rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1
+            // InternalOCLinEcore.g:20529:1: ( rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 )
+            // InternalOCLinEcore.g:20530:2: rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__SquareBracketedClauseCS__Group__0__Impl();
@@ -61471,17 +61471,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__0__Impl"
-    // InternalOCLinEcore.g:20535:1: rule__SquareBracketedClauseCS__Group__0__Impl : ( '[' ) ;
+    // InternalOCLinEcore.g:20537:1: rule__SquareBracketedClauseCS__Group__0__Impl : ( '[' ) ;
     public final void rule__SquareBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20539:1: ( ( '[' ) )
-            // InternalOCLinEcore.g:20540:1: ( '[' )
+            // InternalOCLinEcore.g:20541:1: ( ( '[' ) )
+            // InternalOCLinEcore.g:20542:1: ( '[' )
             {
-            // InternalOCLinEcore.g:20540:1: ( '[' )
-            // InternalOCLinEcore.g:20541:1: '['
+            // InternalOCLinEcore.g:20542:1: ( '[' )
+            // InternalOCLinEcore.g:20543:1: '['
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
@@ -61512,14 +61512,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__1"
-    // InternalOCLinEcore.g:20554:1: rule__SquareBracketedClauseCS__Group__1 : rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 ;
+    // InternalOCLinEcore.g:20556:1: rule__SquareBracketedClauseCS__Group__1 : rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 ;
     public final void rule__SquareBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20558:1: ( rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 )
-            // InternalOCLinEcore.g:20559:2: rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2
+            // InternalOCLinEcore.g:20560:1: ( rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 )
+            // InternalOCLinEcore.g:20561:2: rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_111);
             rule__SquareBracketedClauseCS__Group__1__Impl();
@@ -61550,23 +61550,23 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__1__Impl"
-    // InternalOCLinEcore.g:20566:1: rule__SquareBracketedClauseCS__Group__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:20568:1: rule__SquareBracketedClauseCS__Group__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) ;
     public final void rule__SquareBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20570:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) )
-            // InternalOCLinEcore.g:20571:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
+            // InternalOCLinEcore.g:20572:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) )
+            // InternalOCLinEcore.g:20573:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:20571:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
-            // InternalOCLinEcore.g:20572:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
+            // InternalOCLinEcore.g:20573:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
+            // InternalOCLinEcore.g:20574:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1());
             }
-            // InternalOCLinEcore.g:20573:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
-            // InternalOCLinEcore.g:20573:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1
+            // InternalOCLinEcore.g:20575:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
+            // InternalOCLinEcore.g:20575:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__OwnedTermsAssignment_1();
@@ -61601,14 +61601,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__2"
-    // InternalOCLinEcore.g:20583:1: rule__SquareBracketedClauseCS__Group__2 : rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 ;
+    // InternalOCLinEcore.g:20585:1: rule__SquareBracketedClauseCS__Group__2 : rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 ;
     public final void rule__SquareBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20587:1: ( rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 )
-            // InternalOCLinEcore.g:20588:2: rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3
+            // InternalOCLinEcore.g:20589:1: ( rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 )
+            // InternalOCLinEcore.g:20590:2: rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_111);
             rule__SquareBracketedClauseCS__Group__2__Impl();
@@ -61639,22 +61639,22 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__2__Impl"
-    // InternalOCLinEcore.g:20595:1: rule__SquareBracketedClauseCS__Group__2__Impl : ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) ;
+    // InternalOCLinEcore.g:20597:1: rule__SquareBracketedClauseCS__Group__2__Impl : ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) ;
     public final void rule__SquareBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20599:1: ( ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) )
-            // InternalOCLinEcore.g:20600:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
+            // InternalOCLinEcore.g:20601:1: ( ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) )
+            // InternalOCLinEcore.g:20602:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
             {
-            // InternalOCLinEcore.g:20600:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
-            // InternalOCLinEcore.g:20601:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
+            // InternalOCLinEcore.g:20602:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
+            // InternalOCLinEcore.g:20603:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:20602:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
+            // InternalOCLinEcore.g:20604:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             loop212:
             do {
                 int alt212=2;
@@ -61667,7 +61667,7 @@
 
                 switch (alt212) {
             	case 1 :
-            	    // InternalOCLinEcore.g:20602:2: rule__SquareBracketedClauseCS__Group_2__0
+            	    // InternalOCLinEcore.g:20604:2: rule__SquareBracketedClauseCS__Group_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__SquareBracketedClauseCS__Group_2__0();
@@ -61708,14 +61708,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__3"
-    // InternalOCLinEcore.g:20612:1: rule__SquareBracketedClauseCS__Group__3 : rule__SquareBracketedClauseCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:20614:1: rule__SquareBracketedClauseCS__Group__3 : rule__SquareBracketedClauseCS__Group__3__Impl ;
     public final void rule__SquareBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20616:1: ( rule__SquareBracketedClauseCS__Group__3__Impl )
-            // InternalOCLinEcore.g:20617:2: rule__SquareBracketedClauseCS__Group__3__Impl
+            // InternalOCLinEcore.g:20618:1: ( rule__SquareBracketedClauseCS__Group__3__Impl )
+            // InternalOCLinEcore.g:20619:2: rule__SquareBracketedClauseCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__Group__3__Impl();
@@ -61741,17 +61741,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__3__Impl"
-    // InternalOCLinEcore.g:20623:1: rule__SquareBracketedClauseCS__Group__3__Impl : ( ']' ) ;
+    // InternalOCLinEcore.g:20625:1: rule__SquareBracketedClauseCS__Group__3__Impl : ( ']' ) ;
     public final void rule__SquareBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20627:1: ( ( ']' ) )
-            // InternalOCLinEcore.g:20628:1: ( ']' )
+            // InternalOCLinEcore.g:20629:1: ( ( ']' ) )
+            // InternalOCLinEcore.g:20630:1: ( ']' )
             {
-            // InternalOCLinEcore.g:20628:1: ( ']' )
-            // InternalOCLinEcore.g:20629:1: ']'
+            // InternalOCLinEcore.g:20630:1: ( ']' )
+            // InternalOCLinEcore.g:20631:1: ']'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
@@ -61782,14 +61782,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__0"
-    // InternalOCLinEcore.g:20650:1: rule__SquareBracketedClauseCS__Group_2__0 : rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 ;
+    // InternalOCLinEcore.g:20652:1: rule__SquareBracketedClauseCS__Group_2__0 : rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 ;
     public final void rule__SquareBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20654:1: ( rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 )
-            // InternalOCLinEcore.g:20655:2: rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1
+            // InternalOCLinEcore.g:20656:1: ( rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 )
+            // InternalOCLinEcore.g:20657:2: rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__SquareBracketedClauseCS__Group_2__0__Impl();
@@ -61820,17 +61820,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:20662:1: rule__SquareBracketedClauseCS__Group_2__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:20664:1: rule__SquareBracketedClauseCS__Group_2__0__Impl : ( ',' ) ;
     public final void rule__SquareBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20666:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:20667:1: ( ',' )
+            // InternalOCLinEcore.g:20668:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:20669:1: ( ',' )
             {
-            // InternalOCLinEcore.g:20667:1: ( ',' )
-            // InternalOCLinEcore.g:20668:1: ','
+            // InternalOCLinEcore.g:20669:1: ( ',' )
+            // InternalOCLinEcore.g:20670:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
@@ -61861,14 +61861,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__1"
-    // InternalOCLinEcore.g:20681:1: rule__SquareBracketedClauseCS__Group_2__1 : rule__SquareBracketedClauseCS__Group_2__1__Impl ;
+    // InternalOCLinEcore.g:20683:1: rule__SquareBracketedClauseCS__Group_2__1 : rule__SquareBracketedClauseCS__Group_2__1__Impl ;
     public final void rule__SquareBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20685:1: ( rule__SquareBracketedClauseCS__Group_2__1__Impl )
-            // InternalOCLinEcore.g:20686:2: rule__SquareBracketedClauseCS__Group_2__1__Impl
+            // InternalOCLinEcore.g:20687:1: ( rule__SquareBracketedClauseCS__Group_2__1__Impl )
+            // InternalOCLinEcore.g:20688:2: rule__SquareBracketedClauseCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__Group_2__1__Impl();
@@ -61894,23 +61894,23 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:20692:1: rule__SquareBracketedClauseCS__Group_2__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) ;
+    // InternalOCLinEcore.g:20694:1: rule__SquareBracketedClauseCS__Group_2__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) ;
     public final void rule__SquareBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20696:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) )
-            // InternalOCLinEcore.g:20697:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
+            // InternalOCLinEcore.g:20698:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) )
+            // InternalOCLinEcore.g:20699:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
             {
-            // InternalOCLinEcore.g:20697:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
-            // InternalOCLinEcore.g:20698:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
+            // InternalOCLinEcore.g:20699:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
+            // InternalOCLinEcore.g:20700:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1());
             }
-            // InternalOCLinEcore.g:20699:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
-            // InternalOCLinEcore.g:20699:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1
+            // InternalOCLinEcore.g:20701:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
+            // InternalOCLinEcore.g:20701:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1();
@@ -61945,14 +61945,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__0"
-    // InternalOCLinEcore.g:20713:1: rule__NavigatingArgCS__Group_0__0 : rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 ;
+    // InternalOCLinEcore.g:20715:1: rule__NavigatingArgCS__Group_0__0 : rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 ;
     public final void rule__NavigatingArgCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20717:1: ( rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 )
-            // InternalOCLinEcore.g:20718:2: rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1
+            // InternalOCLinEcore.g:20719:1: ( rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 )
+            // InternalOCLinEcore.g:20720:2: rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_112);
             rule__NavigatingArgCS__Group_0__0__Impl();
@@ -61983,23 +61983,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__0__Impl"
-    // InternalOCLinEcore.g:20725:1: rule__NavigatingArgCS__Group_0__0__Impl : ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) ;
+    // InternalOCLinEcore.g:20727:1: rule__NavigatingArgCS__Group_0__0__Impl : ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) ;
     public final void rule__NavigatingArgCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20729:1: ( ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) )
-            // InternalOCLinEcore.g:20730:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
+            // InternalOCLinEcore.g:20731:1: ( ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) )
+            // InternalOCLinEcore.g:20732:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
             {
-            // InternalOCLinEcore.g:20730:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
-            // InternalOCLinEcore.g:20731:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
+            // InternalOCLinEcore.g:20732:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
+            // InternalOCLinEcore.g:20733:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0());
             }
-            // InternalOCLinEcore.g:20732:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
-            // InternalOCLinEcore.g:20732:2: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0
+            // InternalOCLinEcore.g:20734:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
+            // InternalOCLinEcore.g:20734:2: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0();
@@ -62034,14 +62034,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__1"
-    // InternalOCLinEcore.g:20742:1: rule__NavigatingArgCS__Group_0__1 : rule__NavigatingArgCS__Group_0__1__Impl ;
+    // InternalOCLinEcore.g:20744:1: rule__NavigatingArgCS__Group_0__1 : rule__NavigatingArgCS__Group_0__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20746:1: ( rule__NavigatingArgCS__Group_0__1__Impl )
-            // InternalOCLinEcore.g:20747:2: rule__NavigatingArgCS__Group_0__1__Impl
+            // InternalOCLinEcore.g:20748:1: ( rule__NavigatingArgCS__Group_0__1__Impl )
+            // InternalOCLinEcore.g:20749:2: rule__NavigatingArgCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0__1__Impl();
@@ -62067,22 +62067,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__1__Impl"
-    // InternalOCLinEcore.g:20753:1: rule__NavigatingArgCS__Group_0__1__Impl : ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) ;
+    // InternalOCLinEcore.g:20755:1: rule__NavigatingArgCS__Group_0__1__Impl : ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) ;
     public final void rule__NavigatingArgCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20757:1: ( ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) )
-            // InternalOCLinEcore.g:20758:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
+            // InternalOCLinEcore.g:20759:1: ( ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) )
+            // InternalOCLinEcore.g:20760:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
             {
-            // InternalOCLinEcore.g:20758:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
-            // InternalOCLinEcore.g:20759:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
+            // InternalOCLinEcore.g:20760:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
+            // InternalOCLinEcore.g:20761:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1());
             }
-            // InternalOCLinEcore.g:20760:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
+            // InternalOCLinEcore.g:20762:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             int alt213=2;
             int LA213_0 = input.LA(1);
 
@@ -62091,7 +62091,7 @@
             }
             switch (alt213) {
                 case 1 :
-                    // InternalOCLinEcore.g:20760:2: rule__NavigatingArgCS__Alternatives_0_1
+                    // InternalOCLinEcore.g:20762:2: rule__NavigatingArgCS__Alternatives_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Alternatives_0_1();
@@ -62129,14 +62129,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__0"
-    // InternalOCLinEcore.g:20774:1: rule__NavigatingArgCS__Group_0_1_0__0 : rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 ;
+    // InternalOCLinEcore.g:20776:1: rule__NavigatingArgCS__Group_0_1_0__0 : rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20778:1: ( rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 )
-            // InternalOCLinEcore.g:20779:2: rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1
+            // InternalOCLinEcore.g:20780:1: ( rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 )
+            // InternalOCLinEcore.g:20781:2: rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__NavigatingArgCS__Group_0_1_0__0__Impl();
@@ -62167,17 +62167,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__0__Impl"
-    // InternalOCLinEcore.g:20786:1: rule__NavigatingArgCS__Group_0_1_0__0__Impl : ( '<-' ) ;
+    // InternalOCLinEcore.g:20788:1: rule__NavigatingArgCS__Group_0_1_0__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20790:1: ( ( '<-' ) )
-            // InternalOCLinEcore.g:20791:1: ( '<-' )
+            // InternalOCLinEcore.g:20792:1: ( ( '<-' ) )
+            // InternalOCLinEcore.g:20793:1: ( '<-' )
             {
-            // InternalOCLinEcore.g:20791:1: ( '<-' )
-            // InternalOCLinEcore.g:20792:1: '<-'
+            // InternalOCLinEcore.g:20793:1: ( '<-' )
+            // InternalOCLinEcore.g:20794:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_0_0());
@@ -62208,14 +62208,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__1"
-    // InternalOCLinEcore.g:20805:1: rule__NavigatingArgCS__Group_0_1_0__1 : rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 ;
+    // InternalOCLinEcore.g:20807:1: rule__NavigatingArgCS__Group_0_1_0__1 : rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 ;
     public final void rule__NavigatingArgCS__Group_0_1_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20809:1: ( rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 )
-            // InternalOCLinEcore.g:20810:2: rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2
+            // InternalOCLinEcore.g:20811:1: ( rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 )
+            // InternalOCLinEcore.g:20812:2: rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__NavigatingArgCS__Group_0_1_0__1__Impl();
@@ -62246,23 +62246,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__1__Impl"
-    // InternalOCLinEcore.g:20817:1: rule__NavigatingArgCS__Group_0_1_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) ;
+    // InternalOCLinEcore.g:20819:1: rule__NavigatingArgCS__Group_0_1_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20821:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) )
-            // InternalOCLinEcore.g:20822:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
+            // InternalOCLinEcore.g:20823:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) )
+            // InternalOCLinEcore.g:20824:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
             {
-            // InternalOCLinEcore.g:20822:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
-            // InternalOCLinEcore.g:20823:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
+            // InternalOCLinEcore.g:20824:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
+            // InternalOCLinEcore.g:20825:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorAssignment_0_1_0_1());
             }
-            // InternalOCLinEcore.g:20824:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
-            // InternalOCLinEcore.g:20824:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1
+            // InternalOCLinEcore.g:20826:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
+            // InternalOCLinEcore.g:20826:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1();
@@ -62297,14 +62297,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__2"
-    // InternalOCLinEcore.g:20834:1: rule__NavigatingArgCS__Group_0_1_0__2 : rule__NavigatingArgCS__Group_0_1_0__2__Impl ;
+    // InternalOCLinEcore.g:20836:1: rule__NavigatingArgCS__Group_0_1_0__2 : rule__NavigatingArgCS__Group_0_1_0__2__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20838:1: ( rule__NavigatingArgCS__Group_0_1_0__2__Impl )
-            // InternalOCLinEcore.g:20839:2: rule__NavigatingArgCS__Group_0_1_0__2__Impl
+            // InternalOCLinEcore.g:20840:1: ( rule__NavigatingArgCS__Group_0_1_0__2__Impl )
+            // InternalOCLinEcore.g:20841:2: rule__NavigatingArgCS__Group_0_1_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_0__2__Impl();
@@ -62330,22 +62330,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__2__Impl"
-    // InternalOCLinEcore.g:20845:1: rule__NavigatingArgCS__Group_0_1_0__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) ;
+    // InternalOCLinEcore.g:20847:1: rule__NavigatingArgCS__Group_0_1_0__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20849:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) )
-            // InternalOCLinEcore.g:20850:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
+            // InternalOCLinEcore.g:20851:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) )
+            // InternalOCLinEcore.g:20852:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
             {
-            // InternalOCLinEcore.g:20850:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
-            // InternalOCLinEcore.g:20851:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
+            // InternalOCLinEcore.g:20852:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
+            // InternalOCLinEcore.g:20853:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2());
             }
-            // InternalOCLinEcore.g:20852:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
+            // InternalOCLinEcore.g:20854:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             int alt214=2;
             int LA214_0 = input.LA(1);
 
@@ -62354,7 +62354,7 @@
             }
             switch (alt214) {
                 case 1 :
-                    // InternalOCLinEcore.g:20852:2: rule__NavigatingArgCS__Group_0_1_0_2__0
+                    // InternalOCLinEcore.g:20854:2: rule__NavigatingArgCS__Group_0_1_0_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_0_2__0();
@@ -62392,14 +62392,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__0"
-    // InternalOCLinEcore.g:20868:1: rule__NavigatingArgCS__Group_0_1_0_2__0 : rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 ;
+    // InternalOCLinEcore.g:20870:1: rule__NavigatingArgCS__Group_0_1_0_2__0 : rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20872:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 )
-            // InternalOCLinEcore.g:20873:2: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1
+            // InternalOCLinEcore.g:20874:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 )
+            // InternalOCLinEcore.g:20875:2: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__NavigatingArgCS__Group_0_1_0_2__0__Impl();
@@ -62430,17 +62430,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__0__Impl"
-    // InternalOCLinEcore.g:20880:1: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:20882:1: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20884:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:20885:1: ( '=' )
+            // InternalOCLinEcore.g:20886:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:20887:1: ( '=' )
             {
-            // InternalOCLinEcore.g:20885:1: ( '=' )
-            // InternalOCLinEcore.g:20886:1: '='
+            // InternalOCLinEcore.g:20887:1: ( '=' )
+            // InternalOCLinEcore.g:20888:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
@@ -62471,14 +62471,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__1"
-    // InternalOCLinEcore.g:20899:1: rule__NavigatingArgCS__Group_0_1_0_2__1 : rule__NavigatingArgCS__Group_0_1_0_2__1__Impl ;
+    // InternalOCLinEcore.g:20901:1: rule__NavigatingArgCS__Group_0_1_0_2__1 : rule__NavigatingArgCS__Group_0_1_0_2__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20903:1: ( rule__NavigatingArgCS__Group_0_1_0_2__1__Impl )
-            // InternalOCLinEcore.g:20904:2: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl
+            // InternalOCLinEcore.g:20905:1: ( rule__NavigatingArgCS__Group_0_1_0_2__1__Impl )
+            // InternalOCLinEcore.g:20906:2: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_0_2__1__Impl();
@@ -62504,23 +62504,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__1__Impl"
-    // InternalOCLinEcore.g:20910:1: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) ;
+    // InternalOCLinEcore.g:20912:1: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20914:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) )
-            // InternalOCLinEcore.g:20915:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
+            // InternalOCLinEcore.g:20916:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) )
+            // InternalOCLinEcore.g:20917:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
             {
-            // InternalOCLinEcore.g:20915:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
-            // InternalOCLinEcore.g:20916:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
+            // InternalOCLinEcore.g:20917:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
+            // InternalOCLinEcore.g:20918:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1());
             }
-            // InternalOCLinEcore.g:20917:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
-            // InternalOCLinEcore.g:20917:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1
+            // InternalOCLinEcore.g:20919:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
+            // InternalOCLinEcore.g:20919:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1();
@@ -62555,14 +62555,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__0"
-    // InternalOCLinEcore.g:20931:1: rule__NavigatingArgCS__Group_0_1_1__0 : rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 ;
+    // InternalOCLinEcore.g:20933:1: rule__NavigatingArgCS__Group_0_1_1__0 : rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20935:1: ( rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 )
-            // InternalOCLinEcore.g:20936:2: rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1
+            // InternalOCLinEcore.g:20937:1: ( rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 )
+            // InternalOCLinEcore.g:20938:2: rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__NavigatingArgCS__Group_0_1_1__0__Impl();
@@ -62593,17 +62593,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__0__Impl"
-    // InternalOCLinEcore.g:20943:1: rule__NavigatingArgCS__Group_0_1_1__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:20945:1: rule__NavigatingArgCS__Group_0_1_1__0__Impl : ( ':' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20947:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:20948:1: ( ':' )
+            // InternalOCLinEcore.g:20949:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:20950:1: ( ':' )
             {
-            // InternalOCLinEcore.g:20948:1: ( ':' )
-            // InternalOCLinEcore.g:20949:1: ':'
+            // InternalOCLinEcore.g:20950:1: ( ':' )
+            // InternalOCLinEcore.g:20951:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_1_0());
@@ -62634,14 +62634,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__1"
-    // InternalOCLinEcore.g:20962:1: rule__NavigatingArgCS__Group_0_1_1__1 : rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 ;
+    // InternalOCLinEcore.g:20964:1: rule__NavigatingArgCS__Group_0_1_1__1 : rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 ;
     public final void rule__NavigatingArgCS__Group_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20966:1: ( rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 )
-            // InternalOCLinEcore.g:20967:2: rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2
+            // InternalOCLinEcore.g:20968:1: ( rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 )
+            // InternalOCLinEcore.g:20969:2: rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_113);
             rule__NavigatingArgCS__Group_0_1_1__1__Impl();
@@ -62672,23 +62672,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__1__Impl"
-    // InternalOCLinEcore.g:20974:1: rule__NavigatingArgCS__Group_0_1_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) ;
+    // InternalOCLinEcore.g:20976:1: rule__NavigatingArgCS__Group_0_1_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20978:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) )
-            // InternalOCLinEcore.g:20979:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
+            // InternalOCLinEcore.g:20980:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) )
+            // InternalOCLinEcore.g:20981:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
             {
-            // InternalOCLinEcore.g:20979:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
-            // InternalOCLinEcore.g:20980:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
+            // InternalOCLinEcore.g:20981:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
+            // InternalOCLinEcore.g:20982:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_1_1());
             }
-            // InternalOCLinEcore.g:20981:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
-            // InternalOCLinEcore.g:20981:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1
+            // InternalOCLinEcore.g:20983:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
+            // InternalOCLinEcore.g:20983:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1();
@@ -62723,14 +62723,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__2"
-    // InternalOCLinEcore.g:20991:1: rule__NavigatingArgCS__Group_0_1_1__2 : rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 ;
+    // InternalOCLinEcore.g:20993:1: rule__NavigatingArgCS__Group_0_1_1__2 : rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 ;
     public final void rule__NavigatingArgCS__Group_0_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:20995:1: ( rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 )
-            // InternalOCLinEcore.g:20996:2: rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3
+            // InternalOCLinEcore.g:20997:1: ( rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 )
+            // InternalOCLinEcore.g:20998:2: rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3
             {
             pushFollow(FollowSets000.FOLLOW_113);
             rule__NavigatingArgCS__Group_0_1_1__2__Impl();
@@ -62761,22 +62761,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__2__Impl"
-    // InternalOCLinEcore.g:21003:1: rule__NavigatingArgCS__Group_0_1_1__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) ;
+    // InternalOCLinEcore.g:21005:1: rule__NavigatingArgCS__Group_0_1_1__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21007:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) )
-            // InternalOCLinEcore.g:21008:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
+            // InternalOCLinEcore.g:21009:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) )
+            // InternalOCLinEcore.g:21010:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
             {
-            // InternalOCLinEcore.g:21008:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
-            // InternalOCLinEcore.g:21009:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
+            // InternalOCLinEcore.g:21010:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
+            // InternalOCLinEcore.g:21011:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1_2());
             }
-            // InternalOCLinEcore.g:21010:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
+            // InternalOCLinEcore.g:21012:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
             int alt215=2;
             int LA215_0 = input.LA(1);
 
@@ -62785,7 +62785,7 @@
             }
             switch (alt215) {
                 case 1 :
-                    // InternalOCLinEcore.g:21010:2: rule__NavigatingArgCS__Group_0_1_1_2__0
+                    // InternalOCLinEcore.g:21012:2: rule__NavigatingArgCS__Group_0_1_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_1_2__0();
@@ -62823,14 +62823,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__3"
-    // InternalOCLinEcore.g:21020:1: rule__NavigatingArgCS__Group_0_1_1__3 : rule__NavigatingArgCS__Group_0_1_1__3__Impl ;
+    // InternalOCLinEcore.g:21022:1: rule__NavigatingArgCS__Group_0_1_1__3 : rule__NavigatingArgCS__Group_0_1_1__3__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21024:1: ( rule__NavigatingArgCS__Group_0_1_1__3__Impl )
-            // InternalOCLinEcore.g:21025:2: rule__NavigatingArgCS__Group_0_1_1__3__Impl
+            // InternalOCLinEcore.g:21026:1: ( rule__NavigatingArgCS__Group_0_1_1__3__Impl )
+            // InternalOCLinEcore.g:21027:2: rule__NavigatingArgCS__Group_0_1_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_1__3__Impl();
@@ -62856,22 +62856,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__3__Impl"
-    // InternalOCLinEcore.g:21031:1: rule__NavigatingArgCS__Group_0_1_1__3__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) ;
+    // InternalOCLinEcore.g:21033:1: rule__NavigatingArgCS__Group_0_1_1__3__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21035:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) )
-            // InternalOCLinEcore.g:21036:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
+            // InternalOCLinEcore.g:21037:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) )
+            // InternalOCLinEcore.g:21038:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
             {
-            // InternalOCLinEcore.g:21036:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
-            // InternalOCLinEcore.g:21037:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
+            // InternalOCLinEcore.g:21038:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
+            // InternalOCLinEcore.g:21039:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1_3());
             }
-            // InternalOCLinEcore.g:21038:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
+            // InternalOCLinEcore.g:21040:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
             int alt216=2;
             int LA216_0 = input.LA(1);
 
@@ -62880,7 +62880,7 @@
             }
             switch (alt216) {
                 case 1 :
-                    // InternalOCLinEcore.g:21038:2: rule__NavigatingArgCS__Group_0_1_1_3__0
+                    // InternalOCLinEcore.g:21040:2: rule__NavigatingArgCS__Group_0_1_1_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_1_3__0();
@@ -62918,14 +62918,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__0"
-    // InternalOCLinEcore.g:21056:1: rule__NavigatingArgCS__Group_0_1_1_2__0 : rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 ;
+    // InternalOCLinEcore.g:21058:1: rule__NavigatingArgCS__Group_0_1_1_2__0 : rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21060:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 )
-            // InternalOCLinEcore.g:21061:2: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1
+            // InternalOCLinEcore.g:21062:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 )
+            // InternalOCLinEcore.g:21063:2: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__NavigatingArgCS__Group_0_1_1_2__0__Impl();
@@ -62956,17 +62956,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__0__Impl"
-    // InternalOCLinEcore.g:21068:1: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl : ( '<-' ) ;
+    // InternalOCLinEcore.g:21070:1: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21072:1: ( ( '<-' ) )
-            // InternalOCLinEcore.g:21073:1: ( '<-' )
+            // InternalOCLinEcore.g:21074:1: ( ( '<-' ) )
+            // InternalOCLinEcore.g:21075:1: ( '<-' )
             {
-            // InternalOCLinEcore.g:21073:1: ( '<-' )
-            // InternalOCLinEcore.g:21074:1: '<-'
+            // InternalOCLinEcore.g:21075:1: ( '<-' )
+            // InternalOCLinEcore.g:21076:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_1_2_0());
@@ -62997,14 +62997,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__1"
-    // InternalOCLinEcore.g:21087:1: rule__NavigatingArgCS__Group_0_1_1_2__1 : rule__NavigatingArgCS__Group_0_1_1_2__1__Impl ;
+    // InternalOCLinEcore.g:21089:1: rule__NavigatingArgCS__Group_0_1_1_2__1 : rule__NavigatingArgCS__Group_0_1_1_2__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21091:1: ( rule__NavigatingArgCS__Group_0_1_1_2__1__Impl )
-            // InternalOCLinEcore.g:21092:2: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl
+            // InternalOCLinEcore.g:21093:1: ( rule__NavigatingArgCS__Group_0_1_1_2__1__Impl )
+            // InternalOCLinEcore.g:21094:2: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_1_2__1__Impl();
@@ -63030,23 +63030,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__1__Impl"
-    // InternalOCLinEcore.g:21098:1: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) ;
+    // InternalOCLinEcore.g:21100:1: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21102:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) )
-            // InternalOCLinEcore.g:21103:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
+            // InternalOCLinEcore.g:21104:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) )
+            // InternalOCLinEcore.g:21105:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
             {
-            // InternalOCLinEcore.g:21103:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
-            // InternalOCLinEcore.g:21104:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
+            // InternalOCLinEcore.g:21105:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
+            // InternalOCLinEcore.g:21106:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorAssignment_0_1_1_2_1());
             }
-            // InternalOCLinEcore.g:21105:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
-            // InternalOCLinEcore.g:21105:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1
+            // InternalOCLinEcore.g:21107:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
+            // InternalOCLinEcore.g:21107:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1();
@@ -63081,14 +63081,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__0"
-    // InternalOCLinEcore.g:21119:1: rule__NavigatingArgCS__Group_0_1_1_3__0 : rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 ;
+    // InternalOCLinEcore.g:21121:1: rule__NavigatingArgCS__Group_0_1_1_3__0 : rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21123:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 )
-            // InternalOCLinEcore.g:21124:2: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1
+            // InternalOCLinEcore.g:21125:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 )
+            // InternalOCLinEcore.g:21126:2: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__NavigatingArgCS__Group_0_1_1_3__0__Impl();
@@ -63119,17 +63119,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__0__Impl"
-    // InternalOCLinEcore.g:21131:1: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:21133:1: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl : ( '=' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21135:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:21136:1: ( '=' )
+            // InternalOCLinEcore.g:21137:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:21138:1: ( '=' )
             {
-            // InternalOCLinEcore.g:21136:1: ( '=' )
-            // InternalOCLinEcore.g:21137:1: '='
+            // InternalOCLinEcore.g:21138:1: ( '=' )
+            // InternalOCLinEcore.g:21139:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_1_3_0());
@@ -63160,14 +63160,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__1"
-    // InternalOCLinEcore.g:21150:1: rule__NavigatingArgCS__Group_0_1_1_3__1 : rule__NavigatingArgCS__Group_0_1_1_3__1__Impl ;
+    // InternalOCLinEcore.g:21152:1: rule__NavigatingArgCS__Group_0_1_1_3__1 : rule__NavigatingArgCS__Group_0_1_1_3__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21154:1: ( rule__NavigatingArgCS__Group_0_1_1_3__1__Impl )
-            // InternalOCLinEcore.g:21155:2: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl
+            // InternalOCLinEcore.g:21156:1: ( rule__NavigatingArgCS__Group_0_1_1_3__1__Impl )
+            // InternalOCLinEcore.g:21157:2: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_1_3__1__Impl();
@@ -63193,23 +63193,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__1__Impl"
-    // InternalOCLinEcore.g:21161:1: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) ;
+    // InternalOCLinEcore.g:21163:1: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21165:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) )
-            // InternalOCLinEcore.g:21166:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
+            // InternalOCLinEcore.g:21167:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) )
+            // InternalOCLinEcore.g:21168:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
             {
-            // InternalOCLinEcore.g:21166:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
-            // InternalOCLinEcore.g:21167:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
+            // InternalOCLinEcore.g:21168:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
+            // InternalOCLinEcore.g:21169:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_3_1());
             }
-            // InternalOCLinEcore.g:21168:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
-            // InternalOCLinEcore.g:21168:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1
+            // InternalOCLinEcore.g:21170:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
+            // InternalOCLinEcore.g:21170:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1();
@@ -63244,14 +63244,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__0"
-    // InternalOCLinEcore.g:21182:1: rule__NavigatingArgCS__Group_0_1_2__0 : rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 ;
+    // InternalOCLinEcore.g:21184:1: rule__NavigatingArgCS__Group_0_1_2__0 : rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21186:1: ( rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 )
-            // InternalOCLinEcore.g:21187:2: rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1
+            // InternalOCLinEcore.g:21188:1: ( rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 )
+            // InternalOCLinEcore.g:21189:2: rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_112);
             rule__NavigatingArgCS__Group_0_1_2__0__Impl();
@@ -63282,22 +63282,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__0__Impl"
-    // InternalOCLinEcore.g:21194:1: rule__NavigatingArgCS__Group_0_1_2__0__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) ;
+    // InternalOCLinEcore.g:21196:1: rule__NavigatingArgCS__Group_0_1_2__0__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21198:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) )
-            // InternalOCLinEcore.g:21199:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
+            // InternalOCLinEcore.g:21200:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) )
+            // InternalOCLinEcore.g:21201:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
             {
-            // InternalOCLinEcore.g:21199:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
-            // InternalOCLinEcore.g:21200:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
+            // InternalOCLinEcore.g:21201:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
+            // InternalOCLinEcore.g:21202:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_2_0());
             }
-            // InternalOCLinEcore.g:21201:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
+            // InternalOCLinEcore.g:21203:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
             int alt217=2;
             int LA217_0 = input.LA(1);
 
@@ -63306,7 +63306,7 @@
             }
             switch (alt217) {
                 case 1 :
-                    // InternalOCLinEcore.g:21201:2: rule__NavigatingArgCS__Group_0_1_2_0__0
+                    // InternalOCLinEcore.g:21203:2: rule__NavigatingArgCS__Group_0_1_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_2_0__0();
@@ -63344,14 +63344,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__1"
-    // InternalOCLinEcore.g:21211:1: rule__NavigatingArgCS__Group_0_1_2__1 : rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 ;
+    // InternalOCLinEcore.g:21213:1: rule__NavigatingArgCS__Group_0_1_2__1 : rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 ;
     public final void rule__NavigatingArgCS__Group_0_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21215:1: ( rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 )
-            // InternalOCLinEcore.g:21216:2: rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2
+            // InternalOCLinEcore.g:21217:1: ( rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 )
+            // InternalOCLinEcore.g:21218:2: rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2
             {
             pushFollow(FollowSets000.FOLLOW_112);
             rule__NavigatingArgCS__Group_0_1_2__1__Impl();
@@ -63382,22 +63382,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__1__Impl"
-    // InternalOCLinEcore.g:21223:1: rule__NavigatingArgCS__Group_0_1_2__1__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) ;
+    // InternalOCLinEcore.g:21225:1: rule__NavigatingArgCS__Group_0_1_2__1__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21227:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) )
-            // InternalOCLinEcore.g:21228:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
+            // InternalOCLinEcore.g:21229:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) )
+            // InternalOCLinEcore.g:21230:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
             {
-            // InternalOCLinEcore.g:21228:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
-            // InternalOCLinEcore.g:21229:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
+            // InternalOCLinEcore.g:21230:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
+            // InternalOCLinEcore.g:21231:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_2_1());
             }
-            // InternalOCLinEcore.g:21230:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
+            // InternalOCLinEcore.g:21232:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
             int alt218=2;
             int LA218_0 = input.LA(1);
 
@@ -63406,7 +63406,7 @@
             }
             switch (alt218) {
                 case 1 :
-                    // InternalOCLinEcore.g:21230:2: rule__NavigatingArgCS__Group_0_1_2_1__0
+                    // InternalOCLinEcore.g:21232:2: rule__NavigatingArgCS__Group_0_1_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_2_1__0();
@@ -63444,14 +63444,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__2"
-    // InternalOCLinEcore.g:21240:1: rule__NavigatingArgCS__Group_0_1_2__2 : rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 ;
+    // InternalOCLinEcore.g:21242:1: rule__NavigatingArgCS__Group_0_1_2__2 : rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 ;
     public final void rule__NavigatingArgCS__Group_0_1_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21244:1: ( rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 )
-            // InternalOCLinEcore.g:21245:2: rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3
+            // InternalOCLinEcore.g:21246:1: ( rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 )
+            // InternalOCLinEcore.g:21247:2: rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__NavigatingArgCS__Group_0_1_2__2__Impl();
@@ -63482,17 +63482,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__2__Impl"
-    // InternalOCLinEcore.g:21252:1: rule__NavigatingArgCS__Group_0_1_2__2__Impl : ( 'in' ) ;
+    // InternalOCLinEcore.g:21254:1: rule__NavigatingArgCS__Group_0_1_2__2__Impl : ( 'in' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21256:1: ( ( 'in' ) )
-            // InternalOCLinEcore.g:21257:1: ( 'in' )
+            // InternalOCLinEcore.g:21258:1: ( ( 'in' ) )
+            // InternalOCLinEcore.g:21259:1: ( 'in' )
             {
-            // InternalOCLinEcore.g:21257:1: ( 'in' )
-            // InternalOCLinEcore.g:21258:1: 'in'
+            // InternalOCLinEcore.g:21259:1: ( 'in' )
+            // InternalOCLinEcore.g:21260:1: 'in'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_2_2());
@@ -63523,14 +63523,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__3"
-    // InternalOCLinEcore.g:21271:1: rule__NavigatingArgCS__Group_0_1_2__3 : rule__NavigatingArgCS__Group_0_1_2__3__Impl ;
+    // InternalOCLinEcore.g:21273:1: rule__NavigatingArgCS__Group_0_1_2__3 : rule__NavigatingArgCS__Group_0_1_2__3__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21275:1: ( rule__NavigatingArgCS__Group_0_1_2__3__Impl )
-            // InternalOCLinEcore.g:21276:2: rule__NavigatingArgCS__Group_0_1_2__3__Impl
+            // InternalOCLinEcore.g:21277:1: ( rule__NavigatingArgCS__Group_0_1_2__3__Impl )
+            // InternalOCLinEcore.g:21278:2: rule__NavigatingArgCS__Group_0_1_2__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_2__3__Impl();
@@ -63556,23 +63556,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__3__Impl"
-    // InternalOCLinEcore.g:21282:1: rule__NavigatingArgCS__Group_0_1_2__3__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) ;
+    // InternalOCLinEcore.g:21284:1: rule__NavigatingArgCS__Group_0_1_2__3__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21286:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) )
-            // InternalOCLinEcore.g:21287:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
+            // InternalOCLinEcore.g:21288:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) )
+            // InternalOCLinEcore.g:21289:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
             {
-            // InternalOCLinEcore.g:21287:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
-            // InternalOCLinEcore.g:21288:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
+            // InternalOCLinEcore.g:21289:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
+            // InternalOCLinEcore.g:21290:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_2_3());
             }
-            // InternalOCLinEcore.g:21289:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
-            // InternalOCLinEcore.g:21289:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3
+            // InternalOCLinEcore.g:21291:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
+            // InternalOCLinEcore.g:21291:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3();
@@ -63607,14 +63607,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__0"
-    // InternalOCLinEcore.g:21307:1: rule__NavigatingArgCS__Group_0_1_2_0__0 : rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 ;
+    // InternalOCLinEcore.g:21309:1: rule__NavigatingArgCS__Group_0_1_2_0__0 : rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21311:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 )
-            // InternalOCLinEcore.g:21312:2: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1
+            // InternalOCLinEcore.g:21313:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 )
+            // InternalOCLinEcore.g:21314:2: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__NavigatingArgCS__Group_0_1_2_0__0__Impl();
@@ -63645,17 +63645,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__0__Impl"
-    // InternalOCLinEcore.g:21319:1: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:21321:1: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl : ( ':' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21323:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:21324:1: ( ':' )
+            // InternalOCLinEcore.g:21325:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:21326:1: ( ':' )
             {
-            // InternalOCLinEcore.g:21324:1: ( ':' )
-            // InternalOCLinEcore.g:21325:1: ':'
+            // InternalOCLinEcore.g:21326:1: ( ':' )
+            // InternalOCLinEcore.g:21327:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_2_0_0());
@@ -63686,14 +63686,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__1"
-    // InternalOCLinEcore.g:21338:1: rule__NavigatingArgCS__Group_0_1_2_0__1 : rule__NavigatingArgCS__Group_0_1_2_0__1__Impl ;
+    // InternalOCLinEcore.g:21340:1: rule__NavigatingArgCS__Group_0_1_2_0__1 : rule__NavigatingArgCS__Group_0_1_2_0__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21342:1: ( rule__NavigatingArgCS__Group_0_1_2_0__1__Impl )
-            // InternalOCLinEcore.g:21343:2: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl
+            // InternalOCLinEcore.g:21344:1: ( rule__NavigatingArgCS__Group_0_1_2_0__1__Impl )
+            // InternalOCLinEcore.g:21345:2: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_2_0__1__Impl();
@@ -63719,23 +63719,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__1__Impl"
-    // InternalOCLinEcore.g:21349:1: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) ;
+    // InternalOCLinEcore.g:21351:1: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21353:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) )
-            // InternalOCLinEcore.g:21354:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
+            // InternalOCLinEcore.g:21355:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) )
+            // InternalOCLinEcore.g:21356:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
             {
-            // InternalOCLinEcore.g:21354:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
-            // InternalOCLinEcore.g:21355:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
+            // InternalOCLinEcore.g:21356:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
+            // InternalOCLinEcore.g:21357:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_2_0_1());
             }
-            // InternalOCLinEcore.g:21356:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
-            // InternalOCLinEcore.g:21356:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1
+            // InternalOCLinEcore.g:21358:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
+            // InternalOCLinEcore.g:21358:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1();
@@ -63770,14 +63770,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__0"
-    // InternalOCLinEcore.g:21370:1: rule__NavigatingArgCS__Group_0_1_2_1__0 : rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 ;
+    // InternalOCLinEcore.g:21372:1: rule__NavigatingArgCS__Group_0_1_2_1__0 : rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21374:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 )
-            // InternalOCLinEcore.g:21375:2: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1
+            // InternalOCLinEcore.g:21376:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 )
+            // InternalOCLinEcore.g:21377:2: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__NavigatingArgCS__Group_0_1_2_1__0__Impl();
@@ -63808,17 +63808,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__0__Impl"
-    // InternalOCLinEcore.g:21382:1: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl : ( '<-' ) ;
+    // InternalOCLinEcore.g:21384:1: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21386:1: ( ( '<-' ) )
-            // InternalOCLinEcore.g:21387:1: ( '<-' )
+            // InternalOCLinEcore.g:21388:1: ( ( '<-' ) )
+            // InternalOCLinEcore.g:21389:1: ( '<-' )
             {
-            // InternalOCLinEcore.g:21387:1: ( '<-' )
-            // InternalOCLinEcore.g:21388:1: '<-'
+            // InternalOCLinEcore.g:21389:1: ( '<-' )
+            // InternalOCLinEcore.g:21390:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_2_1_0());
@@ -63849,14 +63849,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__1"
-    // InternalOCLinEcore.g:21401:1: rule__NavigatingArgCS__Group_0_1_2_1__1 : rule__NavigatingArgCS__Group_0_1_2_1__1__Impl ;
+    // InternalOCLinEcore.g:21403:1: rule__NavigatingArgCS__Group_0_1_2_1__1 : rule__NavigatingArgCS__Group_0_1_2_1__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21405:1: ( rule__NavigatingArgCS__Group_0_1_2_1__1__Impl )
-            // InternalOCLinEcore.g:21406:2: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl
+            // InternalOCLinEcore.g:21407:1: ( rule__NavigatingArgCS__Group_0_1_2_1__1__Impl )
+            // InternalOCLinEcore.g:21408:2: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_2_1__1__Impl();
@@ -63882,23 +63882,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__1__Impl"
-    // InternalOCLinEcore.g:21412:1: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) ;
+    // InternalOCLinEcore.g:21414:1: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21416:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) )
-            // InternalOCLinEcore.g:21417:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
+            // InternalOCLinEcore.g:21418:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) )
+            // InternalOCLinEcore.g:21419:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
             {
-            // InternalOCLinEcore.g:21417:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
-            // InternalOCLinEcore.g:21418:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
+            // InternalOCLinEcore.g:21419:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
+            // InternalOCLinEcore.g:21420:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorAssignment_0_1_2_1_1());
             }
-            // InternalOCLinEcore.g:21419:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
-            // InternalOCLinEcore.g:21419:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1
+            // InternalOCLinEcore.g:21421:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
+            // InternalOCLinEcore.g:21421:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1();
@@ -63933,14 +63933,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__0"
-    // InternalOCLinEcore.g:21433:1: rule__NavigatingArgCS__Group_1__0 : rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 ;
+    // InternalOCLinEcore.g:21435:1: rule__NavigatingArgCS__Group_1__0 : rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 ;
     public final void rule__NavigatingArgCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21437:1: ( rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 )
-            // InternalOCLinEcore.g:21438:2: rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1
+            // InternalOCLinEcore.g:21439:1: ( rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 )
+            // InternalOCLinEcore.g:21440:2: rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__NavigatingArgCS__Group_1__0__Impl();
@@ -63971,17 +63971,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:21445:1: rule__NavigatingArgCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:21447:1: rule__NavigatingArgCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__NavigatingArgCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21449:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:21450:1: ( ':' )
+            // InternalOCLinEcore.g:21451:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:21452:1: ( ':' )
             {
-            // InternalOCLinEcore.g:21450:1: ( ':' )
-            // InternalOCLinEcore.g:21451:1: ':'
+            // InternalOCLinEcore.g:21452:1: ( ':' )
+            // InternalOCLinEcore.g:21453:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
@@ -64012,14 +64012,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__1"
-    // InternalOCLinEcore.g:21464:1: rule__NavigatingArgCS__Group_1__1 : rule__NavigatingArgCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:21466:1: rule__NavigatingArgCS__Group_1__1 : rule__NavigatingArgCS__Group_1__1__Impl ;
     public final void rule__NavigatingArgCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21468:1: ( rule__NavigatingArgCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:21469:2: rule__NavigatingArgCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:21470:1: ( rule__NavigatingArgCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:21471:2: rule__NavigatingArgCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_1__1__Impl();
@@ -64045,23 +64045,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:21475:1: rule__NavigatingArgCS__Group_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:21477:1: rule__NavigatingArgCS__Group_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21479:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:21480:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLinEcore.g:21481:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:21482:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:21480:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
-            // InternalOCLinEcore.g:21481:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLinEcore.g:21482:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLinEcore.g:21483:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalOCLinEcore.g:21482:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
-            // InternalOCLinEcore.g:21482:2: rule__NavigatingArgCS__OwnedTypeAssignment_1_1
+            // InternalOCLinEcore.g:21484:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLinEcore.g:21484:2: rule__NavigatingArgCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedTypeAssignment_1_1();
@@ -64096,14 +64096,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__0"
-    // InternalOCLinEcore.g:21496:1: rule__NavigatingBarArgCS__Group__0 : rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 ;
+    // InternalOCLinEcore.g:21498:1: rule__NavigatingBarArgCS__Group__0 : rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 ;
     public final void rule__NavigatingBarArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21500:1: ( rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 )
-            // InternalOCLinEcore.g:21501:2: rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1
+            // InternalOCLinEcore.g:21502:1: ( rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 )
+            // InternalOCLinEcore.g:21503:2: rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__NavigatingBarArgCS__Group__0__Impl();
@@ -64134,23 +64134,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__0__Impl"
-    // InternalOCLinEcore.g:21508:1: rule__NavigatingBarArgCS__Group__0__Impl : ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:21510:1: rule__NavigatingBarArgCS__Group__0__Impl : ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) ;
     public final void rule__NavigatingBarArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21512:1: ( ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) )
-            // InternalOCLinEcore.g:21513:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
+            // InternalOCLinEcore.g:21514:1: ( ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) )
+            // InternalOCLinEcore.g:21515:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:21513:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
-            // InternalOCLinEcore.g:21514:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
+            // InternalOCLinEcore.g:21515:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
+            // InternalOCLinEcore.g:21516:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0());
             }
-            // InternalOCLinEcore.g:21515:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
-            // InternalOCLinEcore.g:21515:2: rule__NavigatingBarArgCS__PrefixAssignment_0
+            // InternalOCLinEcore.g:21517:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
+            // InternalOCLinEcore.g:21517:2: rule__NavigatingBarArgCS__PrefixAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__PrefixAssignment_0();
@@ -64185,14 +64185,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__1"
-    // InternalOCLinEcore.g:21525:1: rule__NavigatingBarArgCS__Group__1 : rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 ;
+    // InternalOCLinEcore.g:21527:1: rule__NavigatingBarArgCS__Group__1 : rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 ;
     public final void rule__NavigatingBarArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21529:1: ( rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 )
-            // InternalOCLinEcore.g:21530:2: rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2
+            // InternalOCLinEcore.g:21531:1: ( rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 )
+            // InternalOCLinEcore.g:21532:2: rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_51);
             rule__NavigatingBarArgCS__Group__1__Impl();
@@ -64223,23 +64223,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__1__Impl"
-    // InternalOCLinEcore.g:21537:1: rule__NavigatingBarArgCS__Group__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:21539:1: rule__NavigatingBarArgCS__Group__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) ;
     public final void rule__NavigatingBarArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21541:1: ( ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) )
-            // InternalOCLinEcore.g:21542:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalOCLinEcore.g:21543:1: ( ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) )
+            // InternalOCLinEcore.g:21544:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:21542:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
-            // InternalOCLinEcore.g:21543:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalOCLinEcore.g:21544:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalOCLinEcore.g:21545:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
-            // InternalOCLinEcore.g:21544:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
-            // InternalOCLinEcore.g:21544:2: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1
+            // InternalOCLinEcore.g:21546:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalOCLinEcore.g:21546:2: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1();
@@ -64274,14 +64274,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__2"
-    // InternalOCLinEcore.g:21554:1: rule__NavigatingBarArgCS__Group__2 : rule__NavigatingBarArgCS__Group__2__Impl ;
+    // InternalOCLinEcore.g:21556:1: rule__NavigatingBarArgCS__Group__2 : rule__NavigatingBarArgCS__Group__2__Impl ;
     public final void rule__NavigatingBarArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21558:1: ( rule__NavigatingBarArgCS__Group__2__Impl )
-            // InternalOCLinEcore.g:21559:2: rule__NavigatingBarArgCS__Group__2__Impl
+            // InternalOCLinEcore.g:21560:1: ( rule__NavigatingBarArgCS__Group__2__Impl )
+            // InternalOCLinEcore.g:21561:2: rule__NavigatingBarArgCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__Group__2__Impl();
@@ -64307,22 +64307,22 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__2__Impl"
-    // InternalOCLinEcore.g:21565:1: rule__NavigatingBarArgCS__Group__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:21567:1: rule__NavigatingBarArgCS__Group__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) ;
     public final void rule__NavigatingBarArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21569:1: ( ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:21570:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:21571:1: ( ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:21572:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:21570:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:21571:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
+            // InternalOCLinEcore.g:21572:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:21573:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:21572:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
+            // InternalOCLinEcore.g:21574:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             int alt219=2;
             int LA219_0 = input.LA(1);
 
@@ -64331,7 +64331,7 @@
             }
             switch (alt219) {
                 case 1 :
-                    // InternalOCLinEcore.g:21572:2: rule__NavigatingBarArgCS__Group_2__0
+                    // InternalOCLinEcore.g:21574:2: rule__NavigatingBarArgCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingBarArgCS__Group_2__0();
@@ -64369,14 +64369,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__0"
-    // InternalOCLinEcore.g:21588:1: rule__NavigatingBarArgCS__Group_2__0 : rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 ;
+    // InternalOCLinEcore.g:21590:1: rule__NavigatingBarArgCS__Group_2__0 : rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 ;
     public final void rule__NavigatingBarArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21592:1: ( rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 )
-            // InternalOCLinEcore.g:21593:2: rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1
+            // InternalOCLinEcore.g:21594:1: ( rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 )
+            // InternalOCLinEcore.g:21595:2: rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__NavigatingBarArgCS__Group_2__0__Impl();
@@ -64407,17 +64407,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:21600:1: rule__NavigatingBarArgCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:21602:1: rule__NavigatingBarArgCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__NavigatingBarArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21604:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:21605:1: ( ':' )
+            // InternalOCLinEcore.g:21606:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:21607:1: ( ':' )
             {
-            // InternalOCLinEcore.g:21605:1: ( ':' )
-            // InternalOCLinEcore.g:21606:1: ':'
+            // InternalOCLinEcore.g:21607:1: ( ':' )
+            // InternalOCLinEcore.g:21608:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
@@ -64448,14 +64448,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__1"
-    // InternalOCLinEcore.g:21619:1: rule__NavigatingBarArgCS__Group_2__1 : rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 ;
+    // InternalOCLinEcore.g:21621:1: rule__NavigatingBarArgCS__Group_2__1 : rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 ;
     public final void rule__NavigatingBarArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21623:1: ( rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 )
-            // InternalOCLinEcore.g:21624:2: rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2
+            // InternalOCLinEcore.g:21625:1: ( rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 )
+            // InternalOCLinEcore.g:21626:2: rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__NavigatingBarArgCS__Group_2__1__Impl();
@@ -64486,23 +64486,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:21631:1: rule__NavigatingBarArgCS__Group_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) ;
+    // InternalOCLinEcore.g:21633:1: rule__NavigatingBarArgCS__Group_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) ;
     public final void rule__NavigatingBarArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21635:1: ( ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) )
-            // InternalOCLinEcore.g:21636:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalOCLinEcore.g:21637:1: ( ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) )
+            // InternalOCLinEcore.g:21638:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
             {
-            // InternalOCLinEcore.g:21636:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
-            // InternalOCLinEcore.g:21637:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
+            // InternalOCLinEcore.g:21638:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalOCLinEcore.g:21639:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1());
             }
-            // InternalOCLinEcore.g:21638:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
-            // InternalOCLinEcore.g:21638:2: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1
+            // InternalOCLinEcore.g:21640:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
+            // InternalOCLinEcore.g:21640:2: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1();
@@ -64537,14 +64537,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__2"
-    // InternalOCLinEcore.g:21648:1: rule__NavigatingBarArgCS__Group_2__2 : rule__NavigatingBarArgCS__Group_2__2__Impl ;
+    // InternalOCLinEcore.g:21650:1: rule__NavigatingBarArgCS__Group_2__2 : rule__NavigatingBarArgCS__Group_2__2__Impl ;
     public final void rule__NavigatingBarArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21652:1: ( rule__NavigatingBarArgCS__Group_2__2__Impl )
-            // InternalOCLinEcore.g:21653:2: rule__NavigatingBarArgCS__Group_2__2__Impl
+            // InternalOCLinEcore.g:21654:1: ( rule__NavigatingBarArgCS__Group_2__2__Impl )
+            // InternalOCLinEcore.g:21655:2: rule__NavigatingBarArgCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__Group_2__2__Impl();
@@ -64570,22 +64570,22 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__2__Impl"
-    // InternalOCLinEcore.g:21659:1: rule__NavigatingBarArgCS__Group_2__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) ;
+    // InternalOCLinEcore.g:21661:1: rule__NavigatingBarArgCS__Group_2__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) ;
     public final void rule__NavigatingBarArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21663:1: ( ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) )
-            // InternalOCLinEcore.g:21664:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
+            // InternalOCLinEcore.g:21665:1: ( ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) )
+            // InternalOCLinEcore.g:21666:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
             {
-            // InternalOCLinEcore.g:21664:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
-            // InternalOCLinEcore.g:21665:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
+            // InternalOCLinEcore.g:21666:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
+            // InternalOCLinEcore.g:21667:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2());
             }
-            // InternalOCLinEcore.g:21666:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
+            // InternalOCLinEcore.g:21668:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             int alt220=2;
             int LA220_0 = input.LA(1);
 
@@ -64594,7 +64594,7 @@
             }
             switch (alt220) {
                 case 1 :
-                    // InternalOCLinEcore.g:21666:2: rule__NavigatingBarArgCS__Group_2_2__0
+                    // InternalOCLinEcore.g:21668:2: rule__NavigatingBarArgCS__Group_2_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingBarArgCS__Group_2_2__0();
@@ -64632,14 +64632,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__0"
-    // InternalOCLinEcore.g:21682:1: rule__NavigatingBarArgCS__Group_2_2__0 : rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 ;
+    // InternalOCLinEcore.g:21684:1: rule__NavigatingBarArgCS__Group_2_2__0 : rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 ;
     public final void rule__NavigatingBarArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21686:1: ( rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 )
-            // InternalOCLinEcore.g:21687:2: rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1
+            // InternalOCLinEcore.g:21688:1: ( rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 )
+            // InternalOCLinEcore.g:21689:2: rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__NavigatingBarArgCS__Group_2_2__0__Impl();
@@ -64670,17 +64670,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__0__Impl"
-    // InternalOCLinEcore.g:21694:1: rule__NavigatingBarArgCS__Group_2_2__0__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:21696:1: rule__NavigatingBarArgCS__Group_2_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingBarArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21698:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:21699:1: ( '=' )
+            // InternalOCLinEcore.g:21700:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:21701:1: ( '=' )
             {
-            // InternalOCLinEcore.g:21699:1: ( '=' )
-            // InternalOCLinEcore.g:21700:1: '='
+            // InternalOCLinEcore.g:21701:1: ( '=' )
+            // InternalOCLinEcore.g:21702:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
@@ -64711,14 +64711,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__1"
-    // InternalOCLinEcore.g:21713:1: rule__NavigatingBarArgCS__Group_2_2__1 : rule__NavigatingBarArgCS__Group_2_2__1__Impl ;
+    // InternalOCLinEcore.g:21715:1: rule__NavigatingBarArgCS__Group_2_2__1 : rule__NavigatingBarArgCS__Group_2_2__1__Impl ;
     public final void rule__NavigatingBarArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21717:1: ( rule__NavigatingBarArgCS__Group_2_2__1__Impl )
-            // InternalOCLinEcore.g:21718:2: rule__NavigatingBarArgCS__Group_2_2__1__Impl
+            // InternalOCLinEcore.g:21719:1: ( rule__NavigatingBarArgCS__Group_2_2__1__Impl )
+            // InternalOCLinEcore.g:21720:2: rule__NavigatingBarArgCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__Group_2_2__1__Impl();
@@ -64744,23 +64744,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__1__Impl"
-    // InternalOCLinEcore.g:21724:1: rule__NavigatingBarArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
+    // InternalOCLinEcore.g:21726:1: rule__NavigatingBarArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
     public final void rule__NavigatingBarArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21728:1: ( ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
-            // InternalOCLinEcore.g:21729:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalOCLinEcore.g:21730:1: ( ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
+            // InternalOCLinEcore.g:21731:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
             {
-            // InternalOCLinEcore.g:21729:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
-            // InternalOCLinEcore.g:21730:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalOCLinEcore.g:21731:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalOCLinEcore.g:21732:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
-            // InternalOCLinEcore.g:21731:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
-            // InternalOCLinEcore.g:21731:2: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1
+            // InternalOCLinEcore.g:21733:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalOCLinEcore.g:21733:2: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1();
@@ -64795,14 +64795,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__0"
-    // InternalOCLinEcore.g:21745:1: rule__NavigatingCommaArgCS__Group__0 : rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 ;
+    // InternalOCLinEcore.g:21747:1: rule__NavigatingCommaArgCS__Group__0 : rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 ;
     public final void rule__NavigatingCommaArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21749:1: ( rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 )
-            // InternalOCLinEcore.g:21750:2: rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1
+            // InternalOCLinEcore.g:21751:1: ( rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 )
+            // InternalOCLinEcore.g:21752:2: rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__NavigatingCommaArgCS__Group__0__Impl();
@@ -64833,23 +64833,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__0__Impl"
-    // InternalOCLinEcore.g:21757:1: rule__NavigatingCommaArgCS__Group__0__Impl : ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:21759:1: rule__NavigatingCommaArgCS__Group__0__Impl : ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21761:1: ( ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) )
-            // InternalOCLinEcore.g:21762:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
+            // InternalOCLinEcore.g:21763:1: ( ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) )
+            // InternalOCLinEcore.g:21764:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:21762:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
-            // InternalOCLinEcore.g:21763:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
+            // InternalOCLinEcore.g:21764:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
+            // InternalOCLinEcore.g:21765:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0());
             }
-            // InternalOCLinEcore.g:21764:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
-            // InternalOCLinEcore.g:21764:2: rule__NavigatingCommaArgCS__PrefixAssignment_0
+            // InternalOCLinEcore.g:21766:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
+            // InternalOCLinEcore.g:21766:2: rule__NavigatingCommaArgCS__PrefixAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__PrefixAssignment_0();
@@ -64884,14 +64884,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__1"
-    // InternalOCLinEcore.g:21774:1: rule__NavigatingCommaArgCS__Group__1 : rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 ;
+    // InternalOCLinEcore.g:21776:1: rule__NavigatingCommaArgCS__Group__1 : rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 ;
     public final void rule__NavigatingCommaArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21778:1: ( rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 )
-            // InternalOCLinEcore.g:21779:2: rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2
+            // InternalOCLinEcore.g:21780:1: ( rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 )
+            // InternalOCLinEcore.g:21781:2: rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_112);
             rule__NavigatingCommaArgCS__Group__1__Impl();
@@ -64922,23 +64922,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__1__Impl"
-    // InternalOCLinEcore.g:21786:1: rule__NavigatingCommaArgCS__Group__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:21788:1: rule__NavigatingCommaArgCS__Group__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21790:1: ( ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) )
-            // InternalOCLinEcore.g:21791:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalOCLinEcore.g:21792:1: ( ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) )
+            // InternalOCLinEcore.g:21793:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:21791:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
-            // InternalOCLinEcore.g:21792:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalOCLinEcore.g:21793:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalOCLinEcore.g:21794:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
-            // InternalOCLinEcore.g:21793:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
-            // InternalOCLinEcore.g:21793:2: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1
+            // InternalOCLinEcore.g:21795:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalOCLinEcore.g:21795:2: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1();
@@ -64973,14 +64973,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__2"
-    // InternalOCLinEcore.g:21803:1: rule__NavigatingCommaArgCS__Group__2 : rule__NavigatingCommaArgCS__Group__2__Impl ;
+    // InternalOCLinEcore.g:21805:1: rule__NavigatingCommaArgCS__Group__2 : rule__NavigatingCommaArgCS__Group__2__Impl ;
     public final void rule__NavigatingCommaArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21807:1: ( rule__NavigatingCommaArgCS__Group__2__Impl )
-            // InternalOCLinEcore.g:21808:2: rule__NavigatingCommaArgCS__Group__2__Impl
+            // InternalOCLinEcore.g:21809:1: ( rule__NavigatingCommaArgCS__Group__2__Impl )
+            // InternalOCLinEcore.g:21810:2: rule__NavigatingCommaArgCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group__2__Impl();
@@ -65006,22 +65006,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__2__Impl"
-    // InternalOCLinEcore.g:21814:1: rule__NavigatingCommaArgCS__Group__2__Impl : ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) ;
+    // InternalOCLinEcore.g:21816:1: rule__NavigatingCommaArgCS__Group__2__Impl : ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21818:1: ( ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) )
-            // InternalOCLinEcore.g:21819:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
+            // InternalOCLinEcore.g:21820:1: ( ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) )
+            // InternalOCLinEcore.g:21821:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
             {
-            // InternalOCLinEcore.g:21819:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
-            // InternalOCLinEcore.g:21820:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
+            // InternalOCLinEcore.g:21821:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
+            // InternalOCLinEcore.g:21822:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2());
             }
-            // InternalOCLinEcore.g:21821:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
+            // InternalOCLinEcore.g:21823:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             int alt221=2;
             int LA221_0 = input.LA(1);
 
@@ -65030,7 +65030,7 @@
             }
             switch (alt221) {
                 case 1 :
-                    // InternalOCLinEcore.g:21821:2: rule__NavigatingCommaArgCS__Alternatives_2
+                    // InternalOCLinEcore.g:21823:2: rule__NavigatingCommaArgCS__Alternatives_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Alternatives_2();
@@ -65068,14 +65068,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__0"
-    // InternalOCLinEcore.g:21837:1: rule__NavigatingCommaArgCS__Group_2_0__0 : rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 ;
+    // InternalOCLinEcore.g:21839:1: rule__NavigatingCommaArgCS__Group_2_0__0 : rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21841:1: ( rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 )
-            // InternalOCLinEcore.g:21842:2: rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1
+            // InternalOCLinEcore.g:21843:1: ( rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 )
+            // InternalOCLinEcore.g:21844:2: rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__NavigatingCommaArgCS__Group_2_0__0__Impl();
@@ -65106,17 +65106,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__0__Impl"
-    // InternalOCLinEcore.g:21849:1: rule__NavigatingCommaArgCS__Group_2_0__0__Impl : ( '<-' ) ;
+    // InternalOCLinEcore.g:21851:1: rule__NavigatingCommaArgCS__Group_2_0__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21853:1: ( ( '<-' ) )
-            // InternalOCLinEcore.g:21854:1: ( '<-' )
+            // InternalOCLinEcore.g:21855:1: ( ( '<-' ) )
+            // InternalOCLinEcore.g:21856:1: ( '<-' )
             {
-            // InternalOCLinEcore.g:21854:1: ( '<-' )
-            // InternalOCLinEcore.g:21855:1: '<-'
+            // InternalOCLinEcore.g:21856:1: ( '<-' )
+            // InternalOCLinEcore.g:21857:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_0_0());
@@ -65147,14 +65147,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__1"
-    // InternalOCLinEcore.g:21868:1: rule__NavigatingCommaArgCS__Group_2_0__1 : rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 ;
+    // InternalOCLinEcore.g:21870:1: rule__NavigatingCommaArgCS__Group_2_0__1 : rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21872:1: ( rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 )
-            // InternalOCLinEcore.g:21873:2: rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2
+            // InternalOCLinEcore.g:21874:1: ( rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 )
+            // InternalOCLinEcore.g:21875:2: rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__NavigatingCommaArgCS__Group_2_0__1__Impl();
@@ -65185,23 +65185,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__1__Impl"
-    // InternalOCLinEcore.g:21880:1: rule__NavigatingCommaArgCS__Group_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) ;
+    // InternalOCLinEcore.g:21882:1: rule__NavigatingCommaArgCS__Group_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21884:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) )
-            // InternalOCLinEcore.g:21885:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
+            // InternalOCLinEcore.g:21886:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) )
+            // InternalOCLinEcore.g:21887:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
             {
-            // InternalOCLinEcore.g:21885:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
-            // InternalOCLinEcore.g:21886:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
+            // InternalOCLinEcore.g:21887:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
+            // InternalOCLinEcore.g:21888:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorAssignment_2_0_1());
             }
-            // InternalOCLinEcore.g:21887:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
-            // InternalOCLinEcore.g:21887:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1
+            // InternalOCLinEcore.g:21889:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
+            // InternalOCLinEcore.g:21889:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1();
@@ -65236,14 +65236,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__2"
-    // InternalOCLinEcore.g:21897:1: rule__NavigatingCommaArgCS__Group_2_0__2 : rule__NavigatingCommaArgCS__Group_2_0__2__Impl ;
+    // InternalOCLinEcore.g:21899:1: rule__NavigatingCommaArgCS__Group_2_0__2 : rule__NavigatingCommaArgCS__Group_2_0__2__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21901:1: ( rule__NavigatingCommaArgCS__Group_2_0__2__Impl )
-            // InternalOCLinEcore.g:21902:2: rule__NavigatingCommaArgCS__Group_2_0__2__Impl
+            // InternalOCLinEcore.g:21903:1: ( rule__NavigatingCommaArgCS__Group_2_0__2__Impl )
+            // InternalOCLinEcore.g:21904:2: rule__NavigatingCommaArgCS__Group_2_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_0__2__Impl();
@@ -65269,22 +65269,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__2__Impl"
-    // InternalOCLinEcore.g:21908:1: rule__NavigatingCommaArgCS__Group_2_0__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) ;
+    // InternalOCLinEcore.g:21910:1: rule__NavigatingCommaArgCS__Group_2_0__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21912:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) )
-            // InternalOCLinEcore.g:21913:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
+            // InternalOCLinEcore.g:21914:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) )
+            // InternalOCLinEcore.g:21915:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
             {
-            // InternalOCLinEcore.g:21913:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
-            // InternalOCLinEcore.g:21914:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
+            // InternalOCLinEcore.g:21915:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
+            // InternalOCLinEcore.g:21916:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2());
             }
-            // InternalOCLinEcore.g:21915:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
+            // InternalOCLinEcore.g:21917:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             int alt222=2;
             int LA222_0 = input.LA(1);
 
@@ -65293,7 +65293,7 @@
             }
             switch (alt222) {
                 case 1 :
-                    // InternalOCLinEcore.g:21915:2: rule__NavigatingCommaArgCS__Group_2_0_2__0
+                    // InternalOCLinEcore.g:21917:2: rule__NavigatingCommaArgCS__Group_2_0_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_0_2__0();
@@ -65331,14 +65331,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__0"
-    // InternalOCLinEcore.g:21931:1: rule__NavigatingCommaArgCS__Group_2_0_2__0 : rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 ;
+    // InternalOCLinEcore.g:21933:1: rule__NavigatingCommaArgCS__Group_2_0_2__0 : rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21935:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 )
-            // InternalOCLinEcore.g:21936:2: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1
+            // InternalOCLinEcore.g:21937:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 )
+            // InternalOCLinEcore.g:21938:2: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl();
@@ -65369,17 +65369,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl"
-    // InternalOCLinEcore.g:21943:1: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:21945:1: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21947:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:21948:1: ( '=' )
+            // InternalOCLinEcore.g:21949:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:21950:1: ( '=' )
             {
-            // InternalOCLinEcore.g:21948:1: ( '=' )
-            // InternalOCLinEcore.g:21949:1: '='
+            // InternalOCLinEcore.g:21950:1: ( '=' )
+            // InternalOCLinEcore.g:21951:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
@@ -65410,14 +65410,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__1"
-    // InternalOCLinEcore.g:21962:1: rule__NavigatingCommaArgCS__Group_2_0_2__1 : rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl ;
+    // InternalOCLinEcore.g:21964:1: rule__NavigatingCommaArgCS__Group_2_0_2__1 : rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21966:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl )
-            // InternalOCLinEcore.g:21967:2: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl
+            // InternalOCLinEcore.g:21968:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl )
+            // InternalOCLinEcore.g:21969:2: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl();
@@ -65443,23 +65443,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl"
-    // InternalOCLinEcore.g:21973:1: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) ;
+    // InternalOCLinEcore.g:21975:1: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21977:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) )
-            // InternalOCLinEcore.g:21978:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
+            // InternalOCLinEcore.g:21979:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) )
+            // InternalOCLinEcore.g:21980:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
             {
-            // InternalOCLinEcore.g:21978:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
-            // InternalOCLinEcore.g:21979:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
+            // InternalOCLinEcore.g:21980:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
+            // InternalOCLinEcore.g:21981:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1());
             }
-            // InternalOCLinEcore.g:21980:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
-            // InternalOCLinEcore.g:21980:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1
+            // InternalOCLinEcore.g:21982:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
+            // InternalOCLinEcore.g:21982:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1();
@@ -65494,14 +65494,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__0"
-    // InternalOCLinEcore.g:21994:1: rule__NavigatingCommaArgCS__Group_2_1__0 : rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 ;
+    // InternalOCLinEcore.g:21996:1: rule__NavigatingCommaArgCS__Group_2_1__0 : rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:21998:1: ( rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 )
-            // InternalOCLinEcore.g:21999:2: rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1
+            // InternalOCLinEcore.g:22000:1: ( rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 )
+            // InternalOCLinEcore.g:22001:2: rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__NavigatingCommaArgCS__Group_2_1__0__Impl();
@@ -65532,17 +65532,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__0__Impl"
-    // InternalOCLinEcore.g:22006:1: rule__NavigatingCommaArgCS__Group_2_1__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:22008:1: rule__NavigatingCommaArgCS__Group_2_1__0__Impl : ( ':' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22010:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:22011:1: ( ':' )
+            // InternalOCLinEcore.g:22012:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:22013:1: ( ':' )
             {
-            // InternalOCLinEcore.g:22011:1: ( ':' )
-            // InternalOCLinEcore.g:22012:1: ':'
+            // InternalOCLinEcore.g:22013:1: ( ':' )
+            // InternalOCLinEcore.g:22014:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_1_0());
@@ -65573,14 +65573,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__1"
-    // InternalOCLinEcore.g:22025:1: rule__NavigatingCommaArgCS__Group_2_1__1 : rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 ;
+    // InternalOCLinEcore.g:22027:1: rule__NavigatingCommaArgCS__Group_2_1__1 : rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22029:1: ( rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 )
-            // InternalOCLinEcore.g:22030:2: rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2
+            // InternalOCLinEcore.g:22031:1: ( rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 )
+            // InternalOCLinEcore.g:22032:2: rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2
             {
             pushFollow(FollowSets000.FOLLOW_113);
             rule__NavigatingCommaArgCS__Group_2_1__1__Impl();
@@ -65611,23 +65611,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__1__Impl"
-    // InternalOCLinEcore.g:22037:1: rule__NavigatingCommaArgCS__Group_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) ;
+    // InternalOCLinEcore.g:22039:1: rule__NavigatingCommaArgCS__Group_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22041:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) )
-            // InternalOCLinEcore.g:22042:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
+            // InternalOCLinEcore.g:22043:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) )
+            // InternalOCLinEcore.g:22044:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
             {
-            // InternalOCLinEcore.g:22042:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
-            // InternalOCLinEcore.g:22043:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
+            // InternalOCLinEcore.g:22044:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
+            // InternalOCLinEcore.g:22045:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_1_1());
             }
-            // InternalOCLinEcore.g:22044:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
-            // InternalOCLinEcore.g:22044:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1
+            // InternalOCLinEcore.g:22046:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
+            // InternalOCLinEcore.g:22046:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1();
@@ -65662,14 +65662,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__2"
-    // InternalOCLinEcore.g:22054:1: rule__NavigatingCommaArgCS__Group_2_1__2 : rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 ;
+    // InternalOCLinEcore.g:22056:1: rule__NavigatingCommaArgCS__Group_2_1__2 : rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22058:1: ( rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 )
-            // InternalOCLinEcore.g:22059:2: rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3
+            // InternalOCLinEcore.g:22060:1: ( rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 )
+            // InternalOCLinEcore.g:22061:2: rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3
             {
             pushFollow(FollowSets000.FOLLOW_113);
             rule__NavigatingCommaArgCS__Group_2_1__2__Impl();
@@ -65700,22 +65700,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__2__Impl"
-    // InternalOCLinEcore.g:22066:1: rule__NavigatingCommaArgCS__Group_2_1__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) ;
+    // InternalOCLinEcore.g:22068:1: rule__NavigatingCommaArgCS__Group_2_1__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22070:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) )
-            // InternalOCLinEcore.g:22071:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
+            // InternalOCLinEcore.g:22072:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) )
+            // InternalOCLinEcore.g:22073:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
             {
-            // InternalOCLinEcore.g:22071:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
-            // InternalOCLinEcore.g:22072:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
+            // InternalOCLinEcore.g:22073:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
+            // InternalOCLinEcore.g:22074:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1_2());
             }
-            // InternalOCLinEcore.g:22073:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
+            // InternalOCLinEcore.g:22075:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
             int alt223=2;
             int LA223_0 = input.LA(1);
 
@@ -65724,7 +65724,7 @@
             }
             switch (alt223) {
                 case 1 :
-                    // InternalOCLinEcore.g:22073:2: rule__NavigatingCommaArgCS__Group_2_1_2__0
+                    // InternalOCLinEcore.g:22075:2: rule__NavigatingCommaArgCS__Group_2_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_1_2__0();
@@ -65762,14 +65762,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__3"
-    // InternalOCLinEcore.g:22083:1: rule__NavigatingCommaArgCS__Group_2_1__3 : rule__NavigatingCommaArgCS__Group_2_1__3__Impl ;
+    // InternalOCLinEcore.g:22085:1: rule__NavigatingCommaArgCS__Group_2_1__3 : rule__NavigatingCommaArgCS__Group_2_1__3__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22087:1: ( rule__NavigatingCommaArgCS__Group_2_1__3__Impl )
-            // InternalOCLinEcore.g:22088:2: rule__NavigatingCommaArgCS__Group_2_1__3__Impl
+            // InternalOCLinEcore.g:22089:1: ( rule__NavigatingCommaArgCS__Group_2_1__3__Impl )
+            // InternalOCLinEcore.g:22090:2: rule__NavigatingCommaArgCS__Group_2_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_1__3__Impl();
@@ -65795,22 +65795,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__3__Impl"
-    // InternalOCLinEcore.g:22094:1: rule__NavigatingCommaArgCS__Group_2_1__3__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) ;
+    // InternalOCLinEcore.g:22096:1: rule__NavigatingCommaArgCS__Group_2_1__3__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22098:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) )
-            // InternalOCLinEcore.g:22099:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
+            // InternalOCLinEcore.g:22100:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) )
+            // InternalOCLinEcore.g:22101:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
             {
-            // InternalOCLinEcore.g:22099:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
-            // InternalOCLinEcore.g:22100:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
+            // InternalOCLinEcore.g:22101:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
+            // InternalOCLinEcore.g:22102:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1_3());
             }
-            // InternalOCLinEcore.g:22101:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
+            // InternalOCLinEcore.g:22103:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
             int alt224=2;
             int LA224_0 = input.LA(1);
 
@@ -65819,7 +65819,7 @@
             }
             switch (alt224) {
                 case 1 :
-                    // InternalOCLinEcore.g:22101:2: rule__NavigatingCommaArgCS__Group_2_1_3__0
+                    // InternalOCLinEcore.g:22103:2: rule__NavigatingCommaArgCS__Group_2_1_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_1_3__0();
@@ -65857,14 +65857,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__0"
-    // InternalOCLinEcore.g:22119:1: rule__NavigatingCommaArgCS__Group_2_1_2__0 : rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 ;
+    // InternalOCLinEcore.g:22121:1: rule__NavigatingCommaArgCS__Group_2_1_2__0 : rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22123:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 )
-            // InternalOCLinEcore.g:22124:2: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1
+            // InternalOCLinEcore.g:22125:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 )
+            // InternalOCLinEcore.g:22126:2: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl();
@@ -65895,17 +65895,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl"
-    // InternalOCLinEcore.g:22131:1: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl : ( '<-' ) ;
+    // InternalOCLinEcore.g:22133:1: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22135:1: ( ( '<-' ) )
-            // InternalOCLinEcore.g:22136:1: ( '<-' )
+            // InternalOCLinEcore.g:22137:1: ( ( '<-' ) )
+            // InternalOCLinEcore.g:22138:1: ( '<-' )
             {
-            // InternalOCLinEcore.g:22136:1: ( '<-' )
-            // InternalOCLinEcore.g:22137:1: '<-'
+            // InternalOCLinEcore.g:22138:1: ( '<-' )
+            // InternalOCLinEcore.g:22139:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_1_2_0());
@@ -65936,14 +65936,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__1"
-    // InternalOCLinEcore.g:22150:1: rule__NavigatingCommaArgCS__Group_2_1_2__1 : rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl ;
+    // InternalOCLinEcore.g:22152:1: rule__NavigatingCommaArgCS__Group_2_1_2__1 : rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22154:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl )
-            // InternalOCLinEcore.g:22155:2: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl
+            // InternalOCLinEcore.g:22156:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl )
+            // InternalOCLinEcore.g:22157:2: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl();
@@ -65969,23 +65969,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl"
-    // InternalOCLinEcore.g:22161:1: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) ;
+    // InternalOCLinEcore.g:22163:1: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22165:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) )
-            // InternalOCLinEcore.g:22166:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
+            // InternalOCLinEcore.g:22167:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) )
+            // InternalOCLinEcore.g:22168:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
             {
-            // InternalOCLinEcore.g:22166:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
-            // InternalOCLinEcore.g:22167:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
+            // InternalOCLinEcore.g:22168:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
+            // InternalOCLinEcore.g:22169:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorAssignment_2_1_2_1());
             }
-            // InternalOCLinEcore.g:22168:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
-            // InternalOCLinEcore.g:22168:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1
+            // InternalOCLinEcore.g:22170:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
+            // InternalOCLinEcore.g:22170:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1();
@@ -66020,14 +66020,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__0"
-    // InternalOCLinEcore.g:22182:1: rule__NavigatingCommaArgCS__Group_2_1_3__0 : rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 ;
+    // InternalOCLinEcore.g:22184:1: rule__NavigatingCommaArgCS__Group_2_1_3__0 : rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22186:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 )
-            // InternalOCLinEcore.g:22187:2: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1
+            // InternalOCLinEcore.g:22188:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 )
+            // InternalOCLinEcore.g:22189:2: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl();
@@ -66058,17 +66058,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl"
-    // InternalOCLinEcore.g:22194:1: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:22196:1: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl : ( '=' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22198:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:22199:1: ( '=' )
+            // InternalOCLinEcore.g:22200:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:22201:1: ( '=' )
             {
-            // InternalOCLinEcore.g:22199:1: ( '=' )
-            // InternalOCLinEcore.g:22200:1: '='
+            // InternalOCLinEcore.g:22201:1: ( '=' )
+            // InternalOCLinEcore.g:22202:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_1_3_0());
@@ -66099,14 +66099,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__1"
-    // InternalOCLinEcore.g:22213:1: rule__NavigatingCommaArgCS__Group_2_1_3__1 : rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl ;
+    // InternalOCLinEcore.g:22215:1: rule__NavigatingCommaArgCS__Group_2_1_3__1 : rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22217:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl )
-            // InternalOCLinEcore.g:22218:2: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl
+            // InternalOCLinEcore.g:22219:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl )
+            // InternalOCLinEcore.g:22220:2: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl();
@@ -66132,23 +66132,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl"
-    // InternalOCLinEcore.g:22224:1: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) ;
+    // InternalOCLinEcore.g:22226:1: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22228:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) )
-            // InternalOCLinEcore.g:22229:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
+            // InternalOCLinEcore.g:22230:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) )
+            // InternalOCLinEcore.g:22231:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
             {
-            // InternalOCLinEcore.g:22229:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
-            // InternalOCLinEcore.g:22230:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
+            // InternalOCLinEcore.g:22231:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
+            // InternalOCLinEcore.g:22232:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_3_1());
             }
-            // InternalOCLinEcore.g:22231:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
-            // InternalOCLinEcore.g:22231:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1
+            // InternalOCLinEcore.g:22233:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
+            // InternalOCLinEcore.g:22233:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1();
@@ -66183,14 +66183,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__0"
-    // InternalOCLinEcore.g:22245:1: rule__NavigatingCommaArgCS__Group_2_2__0 : rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 ;
+    // InternalOCLinEcore.g:22247:1: rule__NavigatingCommaArgCS__Group_2_2__0 : rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22249:1: ( rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 )
-            // InternalOCLinEcore.g:22250:2: rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1
+            // InternalOCLinEcore.g:22251:1: ( rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 )
+            // InternalOCLinEcore.g:22252:2: rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_112);
             rule__NavigatingCommaArgCS__Group_2_2__0__Impl();
@@ -66221,22 +66221,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__0__Impl"
-    // InternalOCLinEcore.g:22257:1: rule__NavigatingCommaArgCS__Group_2_2__0__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) ;
+    // InternalOCLinEcore.g:22259:1: rule__NavigatingCommaArgCS__Group_2_2__0__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22261:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) )
-            // InternalOCLinEcore.g:22262:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
+            // InternalOCLinEcore.g:22263:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) )
+            // InternalOCLinEcore.g:22264:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
             {
-            // InternalOCLinEcore.g:22262:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
-            // InternalOCLinEcore.g:22263:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
+            // InternalOCLinEcore.g:22264:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
+            // InternalOCLinEcore.g:22265:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_2_0());
             }
-            // InternalOCLinEcore.g:22264:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
+            // InternalOCLinEcore.g:22266:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
             int alt225=2;
             int LA225_0 = input.LA(1);
 
@@ -66245,7 +66245,7 @@
             }
             switch (alt225) {
                 case 1 :
-                    // InternalOCLinEcore.g:22264:2: rule__NavigatingCommaArgCS__Group_2_2_0__0
+                    // InternalOCLinEcore.g:22266:2: rule__NavigatingCommaArgCS__Group_2_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_2_0__0();
@@ -66283,14 +66283,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__1"
-    // InternalOCLinEcore.g:22274:1: rule__NavigatingCommaArgCS__Group_2_2__1 : rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 ;
+    // InternalOCLinEcore.g:22276:1: rule__NavigatingCommaArgCS__Group_2_2__1 : rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22278:1: ( rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 )
-            // InternalOCLinEcore.g:22279:2: rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2
+            // InternalOCLinEcore.g:22280:1: ( rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 )
+            // InternalOCLinEcore.g:22281:2: rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2
             {
             pushFollow(FollowSets000.FOLLOW_112);
             rule__NavigatingCommaArgCS__Group_2_2__1__Impl();
@@ -66321,22 +66321,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__1__Impl"
-    // InternalOCLinEcore.g:22286:1: rule__NavigatingCommaArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) ;
+    // InternalOCLinEcore.g:22288:1: rule__NavigatingCommaArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22290:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) )
-            // InternalOCLinEcore.g:22291:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
+            // InternalOCLinEcore.g:22292:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) )
+            // InternalOCLinEcore.g:22293:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
             {
-            // InternalOCLinEcore.g:22291:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
-            // InternalOCLinEcore.g:22292:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
+            // InternalOCLinEcore.g:22293:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
+            // InternalOCLinEcore.g:22294:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_2_1());
             }
-            // InternalOCLinEcore.g:22293:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
+            // InternalOCLinEcore.g:22295:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
             int alt226=2;
             int LA226_0 = input.LA(1);
 
@@ -66345,7 +66345,7 @@
             }
             switch (alt226) {
                 case 1 :
-                    // InternalOCLinEcore.g:22293:2: rule__NavigatingCommaArgCS__Group_2_2_1__0
+                    // InternalOCLinEcore.g:22295:2: rule__NavigatingCommaArgCS__Group_2_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_2_1__0();
@@ -66383,14 +66383,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__2"
-    // InternalOCLinEcore.g:22303:1: rule__NavigatingCommaArgCS__Group_2_2__2 : rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 ;
+    // InternalOCLinEcore.g:22305:1: rule__NavigatingCommaArgCS__Group_2_2__2 : rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22307:1: ( rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 )
-            // InternalOCLinEcore.g:22308:2: rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3
+            // InternalOCLinEcore.g:22309:1: ( rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 )
+            // InternalOCLinEcore.g:22310:2: rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__NavigatingCommaArgCS__Group_2_2__2__Impl();
@@ -66421,17 +66421,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__2__Impl"
-    // InternalOCLinEcore.g:22315:1: rule__NavigatingCommaArgCS__Group_2_2__2__Impl : ( 'in' ) ;
+    // InternalOCLinEcore.g:22317:1: rule__NavigatingCommaArgCS__Group_2_2__2__Impl : ( 'in' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22319:1: ( ( 'in' ) )
-            // InternalOCLinEcore.g:22320:1: ( 'in' )
+            // InternalOCLinEcore.g:22321:1: ( ( 'in' ) )
+            // InternalOCLinEcore.g:22322:1: ( 'in' )
             {
-            // InternalOCLinEcore.g:22320:1: ( 'in' )
-            // InternalOCLinEcore.g:22321:1: 'in'
+            // InternalOCLinEcore.g:22322:1: ( 'in' )
+            // InternalOCLinEcore.g:22323:1: 'in'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_2_2());
@@ -66462,14 +66462,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__3"
-    // InternalOCLinEcore.g:22334:1: rule__NavigatingCommaArgCS__Group_2_2__3 : rule__NavigatingCommaArgCS__Group_2_2__3__Impl ;
+    // InternalOCLinEcore.g:22336:1: rule__NavigatingCommaArgCS__Group_2_2__3 : rule__NavigatingCommaArgCS__Group_2_2__3__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22338:1: ( rule__NavigatingCommaArgCS__Group_2_2__3__Impl )
-            // InternalOCLinEcore.g:22339:2: rule__NavigatingCommaArgCS__Group_2_2__3__Impl
+            // InternalOCLinEcore.g:22340:1: ( rule__NavigatingCommaArgCS__Group_2_2__3__Impl )
+            // InternalOCLinEcore.g:22341:2: rule__NavigatingCommaArgCS__Group_2_2__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_2__3__Impl();
@@ -66495,23 +66495,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__3__Impl"
-    // InternalOCLinEcore.g:22345:1: rule__NavigatingCommaArgCS__Group_2_2__3__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) ;
+    // InternalOCLinEcore.g:22347:1: rule__NavigatingCommaArgCS__Group_2_2__3__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22349:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) )
-            // InternalOCLinEcore.g:22350:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
+            // InternalOCLinEcore.g:22351:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) )
+            // InternalOCLinEcore.g:22352:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
             {
-            // InternalOCLinEcore.g:22350:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
-            // InternalOCLinEcore.g:22351:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
+            // InternalOCLinEcore.g:22352:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
+            // InternalOCLinEcore.g:22353:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_2_3());
             }
-            // InternalOCLinEcore.g:22352:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
-            // InternalOCLinEcore.g:22352:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3
+            // InternalOCLinEcore.g:22354:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
+            // InternalOCLinEcore.g:22354:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3();
@@ -66546,14 +66546,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__0"
-    // InternalOCLinEcore.g:22370:1: rule__NavigatingCommaArgCS__Group_2_2_0__0 : rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 ;
+    // InternalOCLinEcore.g:22372:1: rule__NavigatingCommaArgCS__Group_2_2_0__0 : rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22374:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 )
-            // InternalOCLinEcore.g:22375:2: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1
+            // InternalOCLinEcore.g:22376:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 )
+            // InternalOCLinEcore.g:22377:2: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl();
@@ -66584,17 +66584,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl"
-    // InternalOCLinEcore.g:22382:1: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:22384:1: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl : ( ':' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22386:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:22387:1: ( ':' )
+            // InternalOCLinEcore.g:22388:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:22389:1: ( ':' )
             {
-            // InternalOCLinEcore.g:22387:1: ( ':' )
-            // InternalOCLinEcore.g:22388:1: ':'
+            // InternalOCLinEcore.g:22389:1: ( ':' )
+            // InternalOCLinEcore.g:22390:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_2_0_0());
@@ -66625,14 +66625,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__1"
-    // InternalOCLinEcore.g:22401:1: rule__NavigatingCommaArgCS__Group_2_2_0__1 : rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl ;
+    // InternalOCLinEcore.g:22403:1: rule__NavigatingCommaArgCS__Group_2_2_0__1 : rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22405:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl )
-            // InternalOCLinEcore.g:22406:2: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl
+            // InternalOCLinEcore.g:22407:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl )
+            // InternalOCLinEcore.g:22408:2: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl();
@@ -66658,23 +66658,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl"
-    // InternalOCLinEcore.g:22412:1: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) ;
+    // InternalOCLinEcore.g:22414:1: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22416:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) )
-            // InternalOCLinEcore.g:22417:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
+            // InternalOCLinEcore.g:22418:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) )
+            // InternalOCLinEcore.g:22419:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
             {
-            // InternalOCLinEcore.g:22417:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
-            // InternalOCLinEcore.g:22418:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
+            // InternalOCLinEcore.g:22419:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
+            // InternalOCLinEcore.g:22420:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_2_0_1());
             }
-            // InternalOCLinEcore.g:22419:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
-            // InternalOCLinEcore.g:22419:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1
+            // InternalOCLinEcore.g:22421:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
+            // InternalOCLinEcore.g:22421:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1();
@@ -66709,14 +66709,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__0"
-    // InternalOCLinEcore.g:22433:1: rule__NavigatingCommaArgCS__Group_2_2_1__0 : rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 ;
+    // InternalOCLinEcore.g:22435:1: rule__NavigatingCommaArgCS__Group_2_2_1__0 : rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22437:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 )
-            // InternalOCLinEcore.g:22438:2: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1
+            // InternalOCLinEcore.g:22439:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 )
+            // InternalOCLinEcore.g:22440:2: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl();
@@ -66747,17 +66747,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl"
-    // InternalOCLinEcore.g:22445:1: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl : ( '<-' ) ;
+    // InternalOCLinEcore.g:22447:1: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22449:1: ( ( '<-' ) )
-            // InternalOCLinEcore.g:22450:1: ( '<-' )
+            // InternalOCLinEcore.g:22451:1: ( ( '<-' ) )
+            // InternalOCLinEcore.g:22452:1: ( '<-' )
             {
-            // InternalOCLinEcore.g:22450:1: ( '<-' )
-            // InternalOCLinEcore.g:22451:1: '<-'
+            // InternalOCLinEcore.g:22452:1: ( '<-' )
+            // InternalOCLinEcore.g:22453:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_2_1_0());
@@ -66788,14 +66788,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__1"
-    // InternalOCLinEcore.g:22464:1: rule__NavigatingCommaArgCS__Group_2_2_1__1 : rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl ;
+    // InternalOCLinEcore.g:22466:1: rule__NavigatingCommaArgCS__Group_2_2_1__1 : rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22468:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl )
-            // InternalOCLinEcore.g:22469:2: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl
+            // InternalOCLinEcore.g:22470:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl )
+            // InternalOCLinEcore.g:22471:2: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl();
@@ -66821,23 +66821,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl"
-    // InternalOCLinEcore.g:22475:1: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) ;
+    // InternalOCLinEcore.g:22477:1: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22479:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) )
-            // InternalOCLinEcore.g:22480:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
+            // InternalOCLinEcore.g:22481:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) )
+            // InternalOCLinEcore.g:22482:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
             {
-            // InternalOCLinEcore.g:22480:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
-            // InternalOCLinEcore.g:22481:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
+            // InternalOCLinEcore.g:22482:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
+            // InternalOCLinEcore.g:22483:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorAssignment_2_2_1_1());
             }
-            // InternalOCLinEcore.g:22482:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
-            // InternalOCLinEcore.g:22482:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1
+            // InternalOCLinEcore.g:22484:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
+            // InternalOCLinEcore.g:22484:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1();
@@ -66872,14 +66872,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__0"
-    // InternalOCLinEcore.g:22496:1: rule__NavigatingSemiArgCS__Group__0 : rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 ;
+    // InternalOCLinEcore.g:22498:1: rule__NavigatingSemiArgCS__Group__0 : rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 ;
     public final void rule__NavigatingSemiArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22500:1: ( rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 )
-            // InternalOCLinEcore.g:22501:2: rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1
+            // InternalOCLinEcore.g:22502:1: ( rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 )
+            // InternalOCLinEcore.g:22503:2: rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__NavigatingSemiArgCS__Group__0__Impl();
@@ -66910,23 +66910,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__0__Impl"
-    // InternalOCLinEcore.g:22508:1: rule__NavigatingSemiArgCS__Group__0__Impl : ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:22510:1: rule__NavigatingSemiArgCS__Group__0__Impl : ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22512:1: ( ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) )
-            // InternalOCLinEcore.g:22513:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
+            // InternalOCLinEcore.g:22514:1: ( ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) )
+            // InternalOCLinEcore.g:22515:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:22513:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
-            // InternalOCLinEcore.g:22514:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
+            // InternalOCLinEcore.g:22515:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
+            // InternalOCLinEcore.g:22516:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0());
             }
-            // InternalOCLinEcore.g:22515:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
-            // InternalOCLinEcore.g:22515:2: rule__NavigatingSemiArgCS__PrefixAssignment_0
+            // InternalOCLinEcore.g:22517:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
+            // InternalOCLinEcore.g:22517:2: rule__NavigatingSemiArgCS__PrefixAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__PrefixAssignment_0();
@@ -66961,14 +66961,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__1"
-    // InternalOCLinEcore.g:22525:1: rule__NavigatingSemiArgCS__Group__1 : rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 ;
+    // InternalOCLinEcore.g:22527:1: rule__NavigatingSemiArgCS__Group__1 : rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 ;
     public final void rule__NavigatingSemiArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22529:1: ( rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 )
-            // InternalOCLinEcore.g:22530:2: rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2
+            // InternalOCLinEcore.g:22531:1: ( rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 )
+            // InternalOCLinEcore.g:22532:2: rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_51);
             rule__NavigatingSemiArgCS__Group__1__Impl();
@@ -66999,23 +66999,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__1__Impl"
-    // InternalOCLinEcore.g:22537:1: rule__NavigatingSemiArgCS__Group__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:22539:1: rule__NavigatingSemiArgCS__Group__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22541:1: ( ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) )
-            // InternalOCLinEcore.g:22542:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalOCLinEcore.g:22543:1: ( ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) )
+            // InternalOCLinEcore.g:22544:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:22542:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
-            // InternalOCLinEcore.g:22543:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalOCLinEcore.g:22544:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalOCLinEcore.g:22545:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
-            // InternalOCLinEcore.g:22544:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
-            // InternalOCLinEcore.g:22544:2: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1
+            // InternalOCLinEcore.g:22546:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalOCLinEcore.g:22546:2: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1();
@@ -67050,14 +67050,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__2"
-    // InternalOCLinEcore.g:22554:1: rule__NavigatingSemiArgCS__Group__2 : rule__NavigatingSemiArgCS__Group__2__Impl ;
+    // InternalOCLinEcore.g:22556:1: rule__NavigatingSemiArgCS__Group__2 : rule__NavigatingSemiArgCS__Group__2__Impl ;
     public final void rule__NavigatingSemiArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22558:1: ( rule__NavigatingSemiArgCS__Group__2__Impl )
-            // InternalOCLinEcore.g:22559:2: rule__NavigatingSemiArgCS__Group__2__Impl
+            // InternalOCLinEcore.g:22560:1: ( rule__NavigatingSemiArgCS__Group__2__Impl )
+            // InternalOCLinEcore.g:22561:2: rule__NavigatingSemiArgCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__Group__2__Impl();
@@ -67083,22 +67083,22 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__2__Impl"
-    // InternalOCLinEcore.g:22565:1: rule__NavigatingSemiArgCS__Group__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:22567:1: rule__NavigatingSemiArgCS__Group__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) ;
     public final void rule__NavigatingSemiArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22569:1: ( ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:22570:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:22571:1: ( ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:22572:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:22570:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:22571:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
+            // InternalOCLinEcore.g:22572:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:22573:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:22572:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
+            // InternalOCLinEcore.g:22574:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             int alt227=2;
             int LA227_0 = input.LA(1);
 
@@ -67107,7 +67107,7 @@
             }
             switch (alt227) {
                 case 1 :
-                    // InternalOCLinEcore.g:22572:2: rule__NavigatingSemiArgCS__Group_2__0
+                    // InternalOCLinEcore.g:22574:2: rule__NavigatingSemiArgCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingSemiArgCS__Group_2__0();
@@ -67145,14 +67145,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__0"
-    // InternalOCLinEcore.g:22588:1: rule__NavigatingSemiArgCS__Group_2__0 : rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 ;
+    // InternalOCLinEcore.g:22590:1: rule__NavigatingSemiArgCS__Group_2__0 : rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 ;
     public final void rule__NavigatingSemiArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22592:1: ( rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 )
-            // InternalOCLinEcore.g:22593:2: rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1
+            // InternalOCLinEcore.g:22594:1: ( rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 )
+            // InternalOCLinEcore.g:22595:2: rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__NavigatingSemiArgCS__Group_2__0__Impl();
@@ -67183,17 +67183,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:22600:1: rule__NavigatingSemiArgCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:22602:1: rule__NavigatingSemiArgCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__NavigatingSemiArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22604:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:22605:1: ( ':' )
+            // InternalOCLinEcore.g:22606:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:22607:1: ( ':' )
             {
-            // InternalOCLinEcore.g:22605:1: ( ':' )
-            // InternalOCLinEcore.g:22606:1: ':'
+            // InternalOCLinEcore.g:22607:1: ( ':' )
+            // InternalOCLinEcore.g:22608:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
@@ -67224,14 +67224,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__1"
-    // InternalOCLinEcore.g:22619:1: rule__NavigatingSemiArgCS__Group_2__1 : rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 ;
+    // InternalOCLinEcore.g:22621:1: rule__NavigatingSemiArgCS__Group_2__1 : rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 ;
     public final void rule__NavigatingSemiArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22623:1: ( rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 )
-            // InternalOCLinEcore.g:22624:2: rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2
+            // InternalOCLinEcore.g:22625:1: ( rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 )
+            // InternalOCLinEcore.g:22626:2: rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__NavigatingSemiArgCS__Group_2__1__Impl();
@@ -67262,23 +67262,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:22631:1: rule__NavigatingSemiArgCS__Group_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) ;
+    // InternalOCLinEcore.g:22633:1: rule__NavigatingSemiArgCS__Group_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22635:1: ( ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) )
-            // InternalOCLinEcore.g:22636:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalOCLinEcore.g:22637:1: ( ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) )
+            // InternalOCLinEcore.g:22638:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
             {
-            // InternalOCLinEcore.g:22636:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
-            // InternalOCLinEcore.g:22637:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
+            // InternalOCLinEcore.g:22638:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalOCLinEcore.g:22639:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1());
             }
-            // InternalOCLinEcore.g:22638:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
-            // InternalOCLinEcore.g:22638:2: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1
+            // InternalOCLinEcore.g:22640:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
+            // InternalOCLinEcore.g:22640:2: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1();
@@ -67313,14 +67313,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__2"
-    // InternalOCLinEcore.g:22648:1: rule__NavigatingSemiArgCS__Group_2__2 : rule__NavigatingSemiArgCS__Group_2__2__Impl ;
+    // InternalOCLinEcore.g:22650:1: rule__NavigatingSemiArgCS__Group_2__2 : rule__NavigatingSemiArgCS__Group_2__2__Impl ;
     public final void rule__NavigatingSemiArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22652:1: ( rule__NavigatingSemiArgCS__Group_2__2__Impl )
-            // InternalOCLinEcore.g:22653:2: rule__NavigatingSemiArgCS__Group_2__2__Impl
+            // InternalOCLinEcore.g:22654:1: ( rule__NavigatingSemiArgCS__Group_2__2__Impl )
+            // InternalOCLinEcore.g:22655:2: rule__NavigatingSemiArgCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__Group_2__2__Impl();
@@ -67346,22 +67346,22 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__2__Impl"
-    // InternalOCLinEcore.g:22659:1: rule__NavigatingSemiArgCS__Group_2__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) ;
+    // InternalOCLinEcore.g:22661:1: rule__NavigatingSemiArgCS__Group_2__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) ;
     public final void rule__NavigatingSemiArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22663:1: ( ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) )
-            // InternalOCLinEcore.g:22664:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
+            // InternalOCLinEcore.g:22665:1: ( ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) )
+            // InternalOCLinEcore.g:22666:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
             {
-            // InternalOCLinEcore.g:22664:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
-            // InternalOCLinEcore.g:22665:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
+            // InternalOCLinEcore.g:22666:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
+            // InternalOCLinEcore.g:22667:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2());
             }
-            // InternalOCLinEcore.g:22666:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
+            // InternalOCLinEcore.g:22668:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             int alt228=2;
             int LA228_0 = input.LA(1);
 
@@ -67370,7 +67370,7 @@
             }
             switch (alt228) {
                 case 1 :
-                    // InternalOCLinEcore.g:22666:2: rule__NavigatingSemiArgCS__Group_2_2__0
+                    // InternalOCLinEcore.g:22668:2: rule__NavigatingSemiArgCS__Group_2_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingSemiArgCS__Group_2_2__0();
@@ -67408,14 +67408,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__0"
-    // InternalOCLinEcore.g:22682:1: rule__NavigatingSemiArgCS__Group_2_2__0 : rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 ;
+    // InternalOCLinEcore.g:22684:1: rule__NavigatingSemiArgCS__Group_2_2__0 : rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22686:1: ( rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 )
-            // InternalOCLinEcore.g:22687:2: rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1
+            // InternalOCLinEcore.g:22688:1: ( rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 )
+            // InternalOCLinEcore.g:22689:2: rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__NavigatingSemiArgCS__Group_2_2__0__Impl();
@@ -67446,17 +67446,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__0__Impl"
-    // InternalOCLinEcore.g:22694:1: rule__NavigatingSemiArgCS__Group_2_2__0__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:22696:1: rule__NavigatingSemiArgCS__Group_2_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22698:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:22699:1: ( '=' )
+            // InternalOCLinEcore.g:22700:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:22701:1: ( '=' )
             {
-            // InternalOCLinEcore.g:22699:1: ( '=' )
-            // InternalOCLinEcore.g:22700:1: '='
+            // InternalOCLinEcore.g:22701:1: ( '=' )
+            // InternalOCLinEcore.g:22702:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
@@ -67487,14 +67487,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__1"
-    // InternalOCLinEcore.g:22713:1: rule__NavigatingSemiArgCS__Group_2_2__1 : rule__NavigatingSemiArgCS__Group_2_2__1__Impl ;
+    // InternalOCLinEcore.g:22715:1: rule__NavigatingSemiArgCS__Group_2_2__1 : rule__NavigatingSemiArgCS__Group_2_2__1__Impl ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22717:1: ( rule__NavigatingSemiArgCS__Group_2_2__1__Impl )
-            // InternalOCLinEcore.g:22718:2: rule__NavigatingSemiArgCS__Group_2_2__1__Impl
+            // InternalOCLinEcore.g:22719:1: ( rule__NavigatingSemiArgCS__Group_2_2__1__Impl )
+            // InternalOCLinEcore.g:22720:2: rule__NavigatingSemiArgCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__Group_2_2__1__Impl();
@@ -67520,23 +67520,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__1__Impl"
-    // InternalOCLinEcore.g:22724:1: rule__NavigatingSemiArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
+    // InternalOCLinEcore.g:22726:1: rule__NavigatingSemiArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22728:1: ( ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
-            // InternalOCLinEcore.g:22729:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalOCLinEcore.g:22730:1: ( ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
+            // InternalOCLinEcore.g:22731:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
             {
-            // InternalOCLinEcore.g:22729:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
-            // InternalOCLinEcore.g:22730:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalOCLinEcore.g:22731:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalOCLinEcore.g:22732:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
-            // InternalOCLinEcore.g:22731:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
-            // InternalOCLinEcore.g:22731:2: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1
+            // InternalOCLinEcore.g:22733:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalOCLinEcore.g:22733:2: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1();
@@ -67571,14 +67571,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__0"
-    // InternalOCLinEcore.g:22745:1: rule__CoIteratorVariableCS__Group__0 : rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 ;
+    // InternalOCLinEcore.g:22747:1: rule__CoIteratorVariableCS__Group__0 : rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 ;
     public final void rule__CoIteratorVariableCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22749:1: ( rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 )
-            // InternalOCLinEcore.g:22750:2: rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1
+            // InternalOCLinEcore.g:22751:1: ( rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 )
+            // InternalOCLinEcore.g:22752:2: rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_51);
             rule__CoIteratorVariableCS__Group__0__Impl();
@@ -67609,23 +67609,23 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__0__Impl"
-    // InternalOCLinEcore.g:22757:1: rule__CoIteratorVariableCS__Group__0__Impl : ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:22759:1: rule__CoIteratorVariableCS__Group__0__Impl : ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) ;
     public final void rule__CoIteratorVariableCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22761:1: ( ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:22762:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:22763:1: ( ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:22764:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:22762:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
-            // InternalOCLinEcore.g:22763:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:22764:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:22765:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getNameAssignment_0());
             }
-            // InternalOCLinEcore.g:22764:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
-            // InternalOCLinEcore.g:22764:2: rule__CoIteratorVariableCS__NameAssignment_0
+            // InternalOCLinEcore.g:22766:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:22766:2: rule__CoIteratorVariableCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__NameAssignment_0();
@@ -67660,14 +67660,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__1"
-    // InternalOCLinEcore.g:22774:1: rule__CoIteratorVariableCS__Group__1 : rule__CoIteratorVariableCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:22776:1: rule__CoIteratorVariableCS__Group__1 : rule__CoIteratorVariableCS__Group__1__Impl ;
     public final void rule__CoIteratorVariableCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22778:1: ( rule__CoIteratorVariableCS__Group__1__Impl )
-            // InternalOCLinEcore.g:22779:2: rule__CoIteratorVariableCS__Group__1__Impl
+            // InternalOCLinEcore.g:22780:1: ( rule__CoIteratorVariableCS__Group__1__Impl )
+            // InternalOCLinEcore.g:22781:2: rule__CoIteratorVariableCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__Group__1__Impl();
@@ -67693,22 +67693,22 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__1__Impl"
-    // InternalOCLinEcore.g:22785:1: rule__CoIteratorVariableCS__Group__1__Impl : ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:22787:1: rule__CoIteratorVariableCS__Group__1__Impl : ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) ;
     public final void rule__CoIteratorVariableCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22789:1: ( ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:22790:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:22791:1: ( ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:22792:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:22790:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:22791:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
+            // InternalOCLinEcore.g:22792:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:22793:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:22792:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
+            // InternalOCLinEcore.g:22794:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
             int alt229=2;
             int LA229_0 = input.LA(1);
 
@@ -67717,7 +67717,7 @@
             }
             switch (alt229) {
                 case 1 :
-                    // InternalOCLinEcore.g:22792:2: rule__CoIteratorVariableCS__Group_1__0
+                    // InternalOCLinEcore.g:22794:2: rule__CoIteratorVariableCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CoIteratorVariableCS__Group_1__0();
@@ -67755,14 +67755,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__0"
-    // InternalOCLinEcore.g:22806:1: rule__CoIteratorVariableCS__Group_1__0 : rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 ;
+    // InternalOCLinEcore.g:22808:1: rule__CoIteratorVariableCS__Group_1__0 : rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 ;
     public final void rule__CoIteratorVariableCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22810:1: ( rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 )
-            // InternalOCLinEcore.g:22811:2: rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1
+            // InternalOCLinEcore.g:22812:1: ( rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 )
+            // InternalOCLinEcore.g:22813:2: rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__CoIteratorVariableCS__Group_1__0__Impl();
@@ -67793,17 +67793,17 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:22818:1: rule__CoIteratorVariableCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:22820:1: rule__CoIteratorVariableCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__CoIteratorVariableCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22822:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:22823:1: ( ':' )
+            // InternalOCLinEcore.g:22824:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:22825:1: ( ':' )
             {
-            // InternalOCLinEcore.g:22823:1: ( ':' )
-            // InternalOCLinEcore.g:22824:1: ':'
+            // InternalOCLinEcore.g:22825:1: ( ':' )
+            // InternalOCLinEcore.g:22826:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getColonKeyword_1_0());
@@ -67834,14 +67834,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__1"
-    // InternalOCLinEcore.g:22837:1: rule__CoIteratorVariableCS__Group_1__1 : rule__CoIteratorVariableCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:22839:1: rule__CoIteratorVariableCS__Group_1__1 : rule__CoIteratorVariableCS__Group_1__1__Impl ;
     public final void rule__CoIteratorVariableCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22841:1: ( rule__CoIteratorVariableCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:22842:2: rule__CoIteratorVariableCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:22843:1: ( rule__CoIteratorVariableCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:22844:2: rule__CoIteratorVariableCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__Group_1__1__Impl();
@@ -67867,23 +67867,23 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:22848:1: rule__CoIteratorVariableCS__Group_1__1__Impl : ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:22850:1: rule__CoIteratorVariableCS__Group_1__1__Impl : ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__CoIteratorVariableCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22852:1: ( ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:22853:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLinEcore.g:22854:1: ( ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:22855:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:22853:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
-            // InternalOCLinEcore.g:22854:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLinEcore.g:22855:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLinEcore.g:22856:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalOCLinEcore.g:22855:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
-            // InternalOCLinEcore.g:22855:2: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1
+            // InternalOCLinEcore.g:22857:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLinEcore.g:22857:2: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1();
@@ -67918,14 +67918,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__0"
-    // InternalOCLinEcore.g:22869:1: rule__IfExpCS__Group__0 : rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 ;
+    // InternalOCLinEcore.g:22871:1: rule__IfExpCS__Group__0 : rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 ;
     public final void rule__IfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22873:1: ( rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 )
-            // InternalOCLinEcore.g:22874:2: rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1
+            // InternalOCLinEcore.g:22875:1: ( rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 )
+            // InternalOCLinEcore.g:22876:2: rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_91);
             rule__IfExpCS__Group__0__Impl();
@@ -67956,17 +67956,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:22881:1: rule__IfExpCS__Group__0__Impl : ( 'if' ) ;
+    // InternalOCLinEcore.g:22883:1: rule__IfExpCS__Group__0__Impl : ( 'if' ) ;
     public final void rule__IfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22885:1: ( ( 'if' ) )
-            // InternalOCLinEcore.g:22886:1: ( 'if' )
+            // InternalOCLinEcore.g:22887:1: ( ( 'if' ) )
+            // InternalOCLinEcore.g:22888:1: ( 'if' )
             {
-            // InternalOCLinEcore.g:22886:1: ( 'if' )
-            // InternalOCLinEcore.g:22887:1: 'if'
+            // InternalOCLinEcore.g:22888:1: ( 'if' )
+            // InternalOCLinEcore.g:22889:1: 'if'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getIfKeyword_0());
@@ -67997,14 +67997,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__1"
-    // InternalOCLinEcore.g:22900:1: rule__IfExpCS__Group__1 : rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 ;
+    // InternalOCLinEcore.g:22902:1: rule__IfExpCS__Group__1 : rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 ;
     public final void rule__IfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22904:1: ( rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 )
-            // InternalOCLinEcore.g:22905:2: rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2
+            // InternalOCLinEcore.g:22906:1: ( rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 )
+            // InternalOCLinEcore.g:22907:2: rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_114);
             rule__IfExpCS__Group__1__Impl();
@@ -68035,23 +68035,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:22912:1: rule__IfExpCS__Group__1__Impl : ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:22914:1: rule__IfExpCS__Group__1__Impl : ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) ;
     public final void rule__IfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22916:1: ( ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) )
-            // InternalOCLinEcore.g:22917:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
+            // InternalOCLinEcore.g:22918:1: ( ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) )
+            // InternalOCLinEcore.g:22919:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:22917:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
-            // InternalOCLinEcore.g:22918:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
+            // InternalOCLinEcore.g:22919:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
+            // InternalOCLinEcore.g:22920:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1());
             }
-            // InternalOCLinEcore.g:22919:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
-            // InternalOCLinEcore.g:22919:2: rule__IfExpCS__OwnedConditionAssignment_1
+            // InternalOCLinEcore.g:22921:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
+            // InternalOCLinEcore.g:22921:2: rule__IfExpCS__OwnedConditionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedConditionAssignment_1();
@@ -68086,14 +68086,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__2"
-    // InternalOCLinEcore.g:22929:1: rule__IfExpCS__Group__2 : rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 ;
+    // InternalOCLinEcore.g:22931:1: rule__IfExpCS__Group__2 : rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 ;
     public final void rule__IfExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22933:1: ( rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 )
-            // InternalOCLinEcore.g:22934:2: rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3
+            // InternalOCLinEcore.g:22935:1: ( rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 )
+            // InternalOCLinEcore.g:22936:2: rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__IfExpCS__Group__2__Impl();
@@ -68124,17 +68124,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__2__Impl"
-    // InternalOCLinEcore.g:22941:1: rule__IfExpCS__Group__2__Impl : ( 'then' ) ;
+    // InternalOCLinEcore.g:22943:1: rule__IfExpCS__Group__2__Impl : ( 'then' ) ;
     public final void rule__IfExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22945:1: ( ( 'then' ) )
-            // InternalOCLinEcore.g:22946:1: ( 'then' )
+            // InternalOCLinEcore.g:22947:1: ( ( 'then' ) )
+            // InternalOCLinEcore.g:22948:1: ( 'then' )
             {
-            // InternalOCLinEcore.g:22946:1: ( 'then' )
-            // InternalOCLinEcore.g:22947:1: 'then'
+            // InternalOCLinEcore.g:22948:1: ( 'then' )
+            // InternalOCLinEcore.g:22949:1: 'then'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getThenKeyword_2());
@@ -68165,14 +68165,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__3"
-    // InternalOCLinEcore.g:22960:1: rule__IfExpCS__Group__3 : rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 ;
+    // InternalOCLinEcore.g:22962:1: rule__IfExpCS__Group__3 : rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 ;
     public final void rule__IfExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22964:1: ( rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 )
-            // InternalOCLinEcore.g:22965:2: rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4
+            // InternalOCLinEcore.g:22966:1: ( rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 )
+            // InternalOCLinEcore.g:22967:2: rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_115);
             rule__IfExpCS__Group__3__Impl();
@@ -68203,23 +68203,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__3__Impl"
-    // InternalOCLinEcore.g:22972:1: rule__IfExpCS__Group__3__Impl : ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) ;
+    // InternalOCLinEcore.g:22974:1: rule__IfExpCS__Group__3__Impl : ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) ;
     public final void rule__IfExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22976:1: ( ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) )
-            // InternalOCLinEcore.g:22977:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalOCLinEcore.g:22978:1: ( ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) )
+            // InternalOCLinEcore.g:22979:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
             {
-            // InternalOCLinEcore.g:22977:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
-            // InternalOCLinEcore.g:22978:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalOCLinEcore.g:22979:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalOCLinEcore.g:22980:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
-            // InternalOCLinEcore.g:22979:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
-            // InternalOCLinEcore.g:22979:2: rule__IfExpCS__OwnedThenExpressionAssignment_3
+            // InternalOCLinEcore.g:22981:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalOCLinEcore.g:22981:2: rule__IfExpCS__OwnedThenExpressionAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedThenExpressionAssignment_3();
@@ -68254,14 +68254,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__4"
-    // InternalOCLinEcore.g:22989:1: rule__IfExpCS__Group__4 : rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 ;
+    // InternalOCLinEcore.g:22991:1: rule__IfExpCS__Group__4 : rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 ;
     public final void rule__IfExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:22993:1: ( rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 )
-            // InternalOCLinEcore.g:22994:2: rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5
+            // InternalOCLinEcore.g:22995:1: ( rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 )
+            // InternalOCLinEcore.g:22996:2: rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_115);
             rule__IfExpCS__Group__4__Impl();
@@ -68292,22 +68292,22 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__4__Impl"
-    // InternalOCLinEcore.g:23001:1: rule__IfExpCS__Group__4__Impl : ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) ;
+    // InternalOCLinEcore.g:23003:1: rule__IfExpCS__Group__4__Impl : ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) ;
     public final void rule__IfExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23005:1: ( ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) )
-            // InternalOCLinEcore.g:23006:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
+            // InternalOCLinEcore.g:23007:1: ( ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) )
+            // InternalOCLinEcore.g:23008:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
             {
-            // InternalOCLinEcore.g:23006:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
-            // InternalOCLinEcore.g:23007:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
+            // InternalOCLinEcore.g:23008:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
+            // InternalOCLinEcore.g:23009:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4());
             }
-            // InternalOCLinEcore.g:23008:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
+            // InternalOCLinEcore.g:23010:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             loop230:
             do {
                 int alt230=2;
@@ -68320,7 +68320,7 @@
 
                 switch (alt230) {
             	case 1 :
-            	    // InternalOCLinEcore.g:23008:2: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4
+            	    // InternalOCLinEcore.g:23010:2: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4
             	    {
             	    pushFollow(FollowSets000.FOLLOW_116);
             	    rule__IfExpCS__OwnedIfThenExpressionsAssignment_4();
@@ -68361,14 +68361,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__5"
-    // InternalOCLinEcore.g:23018:1: rule__IfExpCS__Group__5 : rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 ;
+    // InternalOCLinEcore.g:23020:1: rule__IfExpCS__Group__5 : rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 ;
     public final void rule__IfExpCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23022:1: ( rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 )
-            // InternalOCLinEcore.g:23023:2: rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6
+            // InternalOCLinEcore.g:23024:1: ( rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 )
+            // InternalOCLinEcore.g:23025:2: rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__IfExpCS__Group__5__Impl();
@@ -68399,17 +68399,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__5__Impl"
-    // InternalOCLinEcore.g:23030:1: rule__IfExpCS__Group__5__Impl : ( 'else' ) ;
+    // InternalOCLinEcore.g:23032:1: rule__IfExpCS__Group__5__Impl : ( 'else' ) ;
     public final void rule__IfExpCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23034:1: ( ( 'else' ) )
-            // InternalOCLinEcore.g:23035:1: ( 'else' )
+            // InternalOCLinEcore.g:23036:1: ( ( 'else' ) )
+            // InternalOCLinEcore.g:23037:1: ( 'else' )
             {
-            // InternalOCLinEcore.g:23035:1: ( 'else' )
-            // InternalOCLinEcore.g:23036:1: 'else'
+            // InternalOCLinEcore.g:23037:1: ( 'else' )
+            // InternalOCLinEcore.g:23038:1: 'else'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getElseKeyword_5());
@@ -68440,14 +68440,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__6"
-    // InternalOCLinEcore.g:23049:1: rule__IfExpCS__Group__6 : rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 ;
+    // InternalOCLinEcore.g:23051:1: rule__IfExpCS__Group__6 : rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 ;
     public final void rule__IfExpCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23053:1: ( rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 )
-            // InternalOCLinEcore.g:23054:2: rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7
+            // InternalOCLinEcore.g:23055:1: ( rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 )
+            // InternalOCLinEcore.g:23056:2: rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7
             {
             pushFollow(FollowSets000.FOLLOW_117);
             rule__IfExpCS__Group__6__Impl();
@@ -68478,23 +68478,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__6__Impl"
-    // InternalOCLinEcore.g:23061:1: rule__IfExpCS__Group__6__Impl : ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) ;
+    // InternalOCLinEcore.g:23063:1: rule__IfExpCS__Group__6__Impl : ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) ;
     public final void rule__IfExpCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23065:1: ( ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) )
-            // InternalOCLinEcore.g:23066:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
+            // InternalOCLinEcore.g:23067:1: ( ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) )
+            // InternalOCLinEcore.g:23068:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
             {
-            // InternalOCLinEcore.g:23066:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
-            // InternalOCLinEcore.g:23067:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
+            // InternalOCLinEcore.g:23068:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
+            // InternalOCLinEcore.g:23069:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6());
             }
-            // InternalOCLinEcore.g:23068:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
-            // InternalOCLinEcore.g:23068:2: rule__IfExpCS__OwnedElseExpressionAssignment_6
+            // InternalOCLinEcore.g:23070:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
+            // InternalOCLinEcore.g:23070:2: rule__IfExpCS__OwnedElseExpressionAssignment_6
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedElseExpressionAssignment_6();
@@ -68529,14 +68529,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__7"
-    // InternalOCLinEcore.g:23078:1: rule__IfExpCS__Group__7 : rule__IfExpCS__Group__7__Impl ;
+    // InternalOCLinEcore.g:23080:1: rule__IfExpCS__Group__7 : rule__IfExpCS__Group__7__Impl ;
     public final void rule__IfExpCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23082:1: ( rule__IfExpCS__Group__7__Impl )
-            // InternalOCLinEcore.g:23083:2: rule__IfExpCS__Group__7__Impl
+            // InternalOCLinEcore.g:23084:1: ( rule__IfExpCS__Group__7__Impl )
+            // InternalOCLinEcore.g:23085:2: rule__IfExpCS__Group__7__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__Group__7__Impl();
@@ -68562,17 +68562,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__7__Impl"
-    // InternalOCLinEcore.g:23089:1: rule__IfExpCS__Group__7__Impl : ( 'endif' ) ;
+    // InternalOCLinEcore.g:23091:1: rule__IfExpCS__Group__7__Impl : ( 'endif' ) ;
     public final void rule__IfExpCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23093:1: ( ( 'endif' ) )
-            // InternalOCLinEcore.g:23094:1: ( 'endif' )
+            // InternalOCLinEcore.g:23095:1: ( ( 'endif' ) )
+            // InternalOCLinEcore.g:23096:1: ( 'endif' )
             {
-            // InternalOCLinEcore.g:23094:1: ( 'endif' )
-            // InternalOCLinEcore.g:23095:1: 'endif'
+            // InternalOCLinEcore.g:23096:1: ( 'endif' )
+            // InternalOCLinEcore.g:23097:1: 'endif'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
@@ -68603,14 +68603,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__0"
-    // InternalOCLinEcore.g:23124:1: rule__ElseIfThenExpCS__Group__0 : rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 ;
+    // InternalOCLinEcore.g:23126:1: rule__ElseIfThenExpCS__Group__0 : rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 ;
     public final void rule__ElseIfThenExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23128:1: ( rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 )
-            // InternalOCLinEcore.g:23129:2: rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1
+            // InternalOCLinEcore.g:23130:1: ( rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 )
+            // InternalOCLinEcore.g:23131:2: rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__ElseIfThenExpCS__Group__0__Impl();
@@ -68641,17 +68641,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:23136:1: rule__ElseIfThenExpCS__Group__0__Impl : ( 'elseif' ) ;
+    // InternalOCLinEcore.g:23138:1: rule__ElseIfThenExpCS__Group__0__Impl : ( 'elseif' ) ;
     public final void rule__ElseIfThenExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23140:1: ( ( 'elseif' ) )
-            // InternalOCLinEcore.g:23141:1: ( 'elseif' )
+            // InternalOCLinEcore.g:23142:1: ( ( 'elseif' ) )
+            // InternalOCLinEcore.g:23143:1: ( 'elseif' )
             {
-            // InternalOCLinEcore.g:23141:1: ( 'elseif' )
-            // InternalOCLinEcore.g:23142:1: 'elseif'
+            // InternalOCLinEcore.g:23143:1: ( 'elseif' )
+            // InternalOCLinEcore.g:23144:1: 'elseif'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
@@ -68682,14 +68682,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__1"
-    // InternalOCLinEcore.g:23155:1: rule__ElseIfThenExpCS__Group__1 : rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 ;
+    // InternalOCLinEcore.g:23157:1: rule__ElseIfThenExpCS__Group__1 : rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 ;
     public final void rule__ElseIfThenExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23159:1: ( rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 )
-            // InternalOCLinEcore.g:23160:2: rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2
+            // InternalOCLinEcore.g:23161:1: ( rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 )
+            // InternalOCLinEcore.g:23162:2: rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_114);
             rule__ElseIfThenExpCS__Group__1__Impl();
@@ -68720,23 +68720,23 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:23167:1: rule__ElseIfThenExpCS__Group__1__Impl : ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:23169:1: rule__ElseIfThenExpCS__Group__1__Impl : ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) ;
     public final void rule__ElseIfThenExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23171:1: ( ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) )
-            // InternalOCLinEcore.g:23172:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
+            // InternalOCLinEcore.g:23173:1: ( ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) )
+            // InternalOCLinEcore.g:23174:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:23172:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
-            // InternalOCLinEcore.g:23173:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
+            // InternalOCLinEcore.g:23174:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
+            // InternalOCLinEcore.g:23175:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1());
             }
-            // InternalOCLinEcore.g:23174:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
-            // InternalOCLinEcore.g:23174:2: rule__ElseIfThenExpCS__OwnedConditionAssignment_1
+            // InternalOCLinEcore.g:23176:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
+            // InternalOCLinEcore.g:23176:2: rule__ElseIfThenExpCS__OwnedConditionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ElseIfThenExpCS__OwnedConditionAssignment_1();
@@ -68771,14 +68771,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__2"
-    // InternalOCLinEcore.g:23184:1: rule__ElseIfThenExpCS__Group__2 : rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 ;
+    // InternalOCLinEcore.g:23186:1: rule__ElseIfThenExpCS__Group__2 : rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 ;
     public final void rule__ElseIfThenExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23188:1: ( rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 )
-            // InternalOCLinEcore.g:23189:2: rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3
+            // InternalOCLinEcore.g:23190:1: ( rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 )
+            // InternalOCLinEcore.g:23191:2: rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__ElseIfThenExpCS__Group__2__Impl();
@@ -68809,17 +68809,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__2__Impl"
-    // InternalOCLinEcore.g:23196:1: rule__ElseIfThenExpCS__Group__2__Impl : ( 'then' ) ;
+    // InternalOCLinEcore.g:23198:1: rule__ElseIfThenExpCS__Group__2__Impl : ( 'then' ) ;
     public final void rule__ElseIfThenExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23200:1: ( ( 'then' ) )
-            // InternalOCLinEcore.g:23201:1: ( 'then' )
+            // InternalOCLinEcore.g:23202:1: ( ( 'then' ) )
+            // InternalOCLinEcore.g:23203:1: ( 'then' )
             {
-            // InternalOCLinEcore.g:23201:1: ( 'then' )
-            // InternalOCLinEcore.g:23202:1: 'then'
+            // InternalOCLinEcore.g:23203:1: ( 'then' )
+            // InternalOCLinEcore.g:23204:1: 'then'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
@@ -68850,14 +68850,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__3"
-    // InternalOCLinEcore.g:23215:1: rule__ElseIfThenExpCS__Group__3 : rule__ElseIfThenExpCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:23217:1: rule__ElseIfThenExpCS__Group__3 : rule__ElseIfThenExpCS__Group__3__Impl ;
     public final void rule__ElseIfThenExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23219:1: ( rule__ElseIfThenExpCS__Group__3__Impl )
-            // InternalOCLinEcore.g:23220:2: rule__ElseIfThenExpCS__Group__3__Impl
+            // InternalOCLinEcore.g:23221:1: ( rule__ElseIfThenExpCS__Group__3__Impl )
+            // InternalOCLinEcore.g:23222:2: rule__ElseIfThenExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ElseIfThenExpCS__Group__3__Impl();
@@ -68883,23 +68883,23 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__3__Impl"
-    // InternalOCLinEcore.g:23226:1: rule__ElseIfThenExpCS__Group__3__Impl : ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) ;
+    // InternalOCLinEcore.g:23228:1: rule__ElseIfThenExpCS__Group__3__Impl : ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) ;
     public final void rule__ElseIfThenExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23230:1: ( ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) )
-            // InternalOCLinEcore.g:23231:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalOCLinEcore.g:23232:1: ( ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) )
+            // InternalOCLinEcore.g:23233:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
             {
-            // InternalOCLinEcore.g:23231:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
-            // InternalOCLinEcore.g:23232:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalOCLinEcore.g:23233:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalOCLinEcore.g:23234:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
-            // InternalOCLinEcore.g:23233:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
-            // InternalOCLinEcore.g:23233:2: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3
+            // InternalOCLinEcore.g:23235:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalOCLinEcore.g:23235:2: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3();
@@ -68934,14 +68934,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__0"
-    // InternalOCLinEcore.g:23251:1: rule__LetExpCS__Group__0 : rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 ;
+    // InternalOCLinEcore.g:23253:1: rule__LetExpCS__Group__0 : rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 ;
     public final void rule__LetExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23255:1: ( rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 )
-            // InternalOCLinEcore.g:23256:2: rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1
+            // InternalOCLinEcore.g:23257:1: ( rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 )
+            // InternalOCLinEcore.g:23258:2: rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__LetExpCS__Group__0__Impl();
@@ -68972,17 +68972,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:23263:1: rule__LetExpCS__Group__0__Impl : ( 'let' ) ;
+    // InternalOCLinEcore.g:23265:1: rule__LetExpCS__Group__0__Impl : ( 'let' ) ;
     public final void rule__LetExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23267:1: ( ( 'let' ) )
-            // InternalOCLinEcore.g:23268:1: ( 'let' )
+            // InternalOCLinEcore.g:23269:1: ( ( 'let' ) )
+            // InternalOCLinEcore.g:23270:1: ( 'let' )
             {
-            // InternalOCLinEcore.g:23268:1: ( 'let' )
-            // InternalOCLinEcore.g:23269:1: 'let'
+            // InternalOCLinEcore.g:23270:1: ( 'let' )
+            // InternalOCLinEcore.g:23271:1: 'let'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getLetKeyword_0());
@@ -69013,14 +69013,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__1"
-    // InternalOCLinEcore.g:23282:1: rule__LetExpCS__Group__1 : rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 ;
+    // InternalOCLinEcore.g:23284:1: rule__LetExpCS__Group__1 : rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 ;
     public final void rule__LetExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23286:1: ( rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 )
-            // InternalOCLinEcore.g:23287:2: rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2
+            // InternalOCLinEcore.g:23288:1: ( rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 )
+            // InternalOCLinEcore.g:23289:2: rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_118);
             rule__LetExpCS__Group__1__Impl();
@@ -69051,23 +69051,23 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:23294:1: rule__LetExpCS__Group__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:23296:1: rule__LetExpCS__Group__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) ;
     public final void rule__LetExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23298:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) )
-            // InternalOCLinEcore.g:23299:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
+            // InternalOCLinEcore.g:23300:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) )
+            // InternalOCLinEcore.g:23301:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:23299:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
-            // InternalOCLinEcore.g:23300:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
+            // InternalOCLinEcore.g:23301:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
+            // InternalOCLinEcore.g:23302:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1());
             }
-            // InternalOCLinEcore.g:23301:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
-            // InternalOCLinEcore.g:23301:2: rule__LetExpCS__OwnedVariablesAssignment_1
+            // InternalOCLinEcore.g:23303:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
+            // InternalOCLinEcore.g:23303:2: rule__LetExpCS__OwnedVariablesAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__OwnedVariablesAssignment_1();
@@ -69102,14 +69102,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__2"
-    // InternalOCLinEcore.g:23311:1: rule__LetExpCS__Group__2 : rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 ;
+    // InternalOCLinEcore.g:23313:1: rule__LetExpCS__Group__2 : rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 ;
     public final void rule__LetExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23315:1: ( rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 )
-            // InternalOCLinEcore.g:23316:2: rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3
+            // InternalOCLinEcore.g:23317:1: ( rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 )
+            // InternalOCLinEcore.g:23318:2: rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_118);
             rule__LetExpCS__Group__2__Impl();
@@ -69140,22 +69140,22 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__2__Impl"
-    // InternalOCLinEcore.g:23323:1: rule__LetExpCS__Group__2__Impl : ( ( rule__LetExpCS__Group_2__0 )* ) ;
+    // InternalOCLinEcore.g:23325:1: rule__LetExpCS__Group__2__Impl : ( ( rule__LetExpCS__Group_2__0 )* ) ;
     public final void rule__LetExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23327:1: ( ( ( rule__LetExpCS__Group_2__0 )* ) )
-            // InternalOCLinEcore.g:23328:1: ( ( rule__LetExpCS__Group_2__0 )* )
+            // InternalOCLinEcore.g:23329:1: ( ( ( rule__LetExpCS__Group_2__0 )* ) )
+            // InternalOCLinEcore.g:23330:1: ( ( rule__LetExpCS__Group_2__0 )* )
             {
-            // InternalOCLinEcore.g:23328:1: ( ( rule__LetExpCS__Group_2__0 )* )
-            // InternalOCLinEcore.g:23329:1: ( rule__LetExpCS__Group_2__0 )*
+            // InternalOCLinEcore.g:23330:1: ( ( rule__LetExpCS__Group_2__0 )* )
+            // InternalOCLinEcore.g:23331:1: ( rule__LetExpCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:23330:1: ( rule__LetExpCS__Group_2__0 )*
+            // InternalOCLinEcore.g:23332:1: ( rule__LetExpCS__Group_2__0 )*
             loop231:
             do {
                 int alt231=2;
@@ -69168,7 +69168,7 @@
 
                 switch (alt231) {
             	case 1 :
-            	    // InternalOCLinEcore.g:23330:2: rule__LetExpCS__Group_2__0
+            	    // InternalOCLinEcore.g:23332:2: rule__LetExpCS__Group_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__LetExpCS__Group_2__0();
@@ -69209,14 +69209,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__3"
-    // InternalOCLinEcore.g:23340:1: rule__LetExpCS__Group__3 : rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 ;
+    // InternalOCLinEcore.g:23342:1: rule__LetExpCS__Group__3 : rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 ;
     public final void rule__LetExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23344:1: ( rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 )
-            // InternalOCLinEcore.g:23345:2: rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4
+            // InternalOCLinEcore.g:23346:1: ( rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 )
+            // InternalOCLinEcore.g:23347:2: rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__LetExpCS__Group__3__Impl();
@@ -69247,17 +69247,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__3__Impl"
-    // InternalOCLinEcore.g:23352:1: rule__LetExpCS__Group__3__Impl : ( 'in' ) ;
+    // InternalOCLinEcore.g:23354:1: rule__LetExpCS__Group__3__Impl : ( 'in' ) ;
     public final void rule__LetExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23356:1: ( ( 'in' ) )
-            // InternalOCLinEcore.g:23357:1: ( 'in' )
+            // InternalOCLinEcore.g:23358:1: ( ( 'in' ) )
+            // InternalOCLinEcore.g:23359:1: ( 'in' )
             {
-            // InternalOCLinEcore.g:23357:1: ( 'in' )
-            // InternalOCLinEcore.g:23358:1: 'in'
+            // InternalOCLinEcore.g:23359:1: ( 'in' )
+            // InternalOCLinEcore.g:23360:1: 'in'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getInKeyword_3());
@@ -69288,14 +69288,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__4"
-    // InternalOCLinEcore.g:23371:1: rule__LetExpCS__Group__4 : rule__LetExpCS__Group__4__Impl ;
+    // InternalOCLinEcore.g:23373:1: rule__LetExpCS__Group__4 : rule__LetExpCS__Group__4__Impl ;
     public final void rule__LetExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23375:1: ( rule__LetExpCS__Group__4__Impl )
-            // InternalOCLinEcore.g:23376:2: rule__LetExpCS__Group__4__Impl
+            // InternalOCLinEcore.g:23377:1: ( rule__LetExpCS__Group__4__Impl )
+            // InternalOCLinEcore.g:23378:2: rule__LetExpCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__Group__4__Impl();
@@ -69321,23 +69321,23 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__4__Impl"
-    // InternalOCLinEcore.g:23382:1: rule__LetExpCS__Group__4__Impl : ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) ;
+    // InternalOCLinEcore.g:23384:1: rule__LetExpCS__Group__4__Impl : ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) ;
     public final void rule__LetExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23386:1: ( ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) )
-            // InternalOCLinEcore.g:23387:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
+            // InternalOCLinEcore.g:23388:1: ( ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) )
+            // InternalOCLinEcore.g:23389:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
             {
-            // InternalOCLinEcore.g:23387:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
-            // InternalOCLinEcore.g:23388:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
+            // InternalOCLinEcore.g:23389:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
+            // InternalOCLinEcore.g:23390:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4());
             }
-            // InternalOCLinEcore.g:23389:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
-            // InternalOCLinEcore.g:23389:2: rule__LetExpCS__OwnedInExpressionAssignment_4
+            // InternalOCLinEcore.g:23391:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
+            // InternalOCLinEcore.g:23391:2: rule__LetExpCS__OwnedInExpressionAssignment_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__OwnedInExpressionAssignment_4();
@@ -69372,14 +69372,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__0"
-    // InternalOCLinEcore.g:23409:1: rule__LetExpCS__Group_2__0 : rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 ;
+    // InternalOCLinEcore.g:23411:1: rule__LetExpCS__Group_2__0 : rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 ;
     public final void rule__LetExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23413:1: ( rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 )
-            // InternalOCLinEcore.g:23414:2: rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1
+            // InternalOCLinEcore.g:23415:1: ( rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 )
+            // InternalOCLinEcore.g:23416:2: rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__LetExpCS__Group_2__0__Impl();
@@ -69410,17 +69410,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:23421:1: rule__LetExpCS__Group_2__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:23423:1: rule__LetExpCS__Group_2__0__Impl : ( ',' ) ;
     public final void rule__LetExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23425:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:23426:1: ( ',' )
+            // InternalOCLinEcore.g:23427:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:23428:1: ( ',' )
             {
-            // InternalOCLinEcore.g:23426:1: ( ',' )
-            // InternalOCLinEcore.g:23427:1: ','
+            // InternalOCLinEcore.g:23428:1: ( ',' )
+            // InternalOCLinEcore.g:23429:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
@@ -69451,14 +69451,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__1"
-    // InternalOCLinEcore.g:23440:1: rule__LetExpCS__Group_2__1 : rule__LetExpCS__Group_2__1__Impl ;
+    // InternalOCLinEcore.g:23442:1: rule__LetExpCS__Group_2__1 : rule__LetExpCS__Group_2__1__Impl ;
     public final void rule__LetExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23444:1: ( rule__LetExpCS__Group_2__1__Impl )
-            // InternalOCLinEcore.g:23445:2: rule__LetExpCS__Group_2__1__Impl
+            // InternalOCLinEcore.g:23446:1: ( rule__LetExpCS__Group_2__1__Impl )
+            // InternalOCLinEcore.g:23447:2: rule__LetExpCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__Group_2__1__Impl();
@@ -69484,23 +69484,23 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:23451:1: rule__LetExpCS__Group_2__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) ;
+    // InternalOCLinEcore.g:23453:1: rule__LetExpCS__Group_2__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) ;
     public final void rule__LetExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23455:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) )
-            // InternalOCLinEcore.g:23456:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
+            // InternalOCLinEcore.g:23457:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) )
+            // InternalOCLinEcore.g:23458:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
             {
-            // InternalOCLinEcore.g:23456:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
-            // InternalOCLinEcore.g:23457:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
+            // InternalOCLinEcore.g:23458:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
+            // InternalOCLinEcore.g:23459:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1());
             }
-            // InternalOCLinEcore.g:23458:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
-            // InternalOCLinEcore.g:23458:2: rule__LetExpCS__OwnedVariablesAssignment_2_1
+            // InternalOCLinEcore.g:23460:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
+            // InternalOCLinEcore.g:23460:2: rule__LetExpCS__OwnedVariablesAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__OwnedVariablesAssignment_2_1();
@@ -69535,14 +69535,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__0"
-    // InternalOCLinEcore.g:23472:1: rule__LetVariableCS__Group__0 : rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 ;
+    // InternalOCLinEcore.g:23474:1: rule__LetVariableCS__Group__0 : rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 ;
     public final void rule__LetVariableCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23476:1: ( rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 )
-            // InternalOCLinEcore.g:23477:2: rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1
+            // InternalOCLinEcore.g:23478:1: ( rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 )
+            // InternalOCLinEcore.g:23479:2: rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_119);
             rule__LetVariableCS__Group__0__Impl();
@@ -69573,23 +69573,23 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__0__Impl"
-    // InternalOCLinEcore.g:23484:1: rule__LetVariableCS__Group__0__Impl : ( ( rule__LetVariableCS__NameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:23486:1: rule__LetVariableCS__Group__0__Impl : ( ( rule__LetVariableCS__NameAssignment_0 ) ) ;
     public final void rule__LetVariableCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23488:1: ( ( ( rule__LetVariableCS__NameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:23489:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:23490:1: ( ( ( rule__LetVariableCS__NameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:23491:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:23489:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
-            // InternalOCLinEcore.g:23490:1: ( rule__LetVariableCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:23491:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:23492:1: ( rule__LetVariableCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getNameAssignment_0());
             }
-            // InternalOCLinEcore.g:23491:1: ( rule__LetVariableCS__NameAssignment_0 )
-            // InternalOCLinEcore.g:23491:2: rule__LetVariableCS__NameAssignment_0
+            // InternalOCLinEcore.g:23493:1: ( rule__LetVariableCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:23493:2: rule__LetVariableCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__NameAssignment_0();
@@ -69624,14 +69624,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__1"
-    // InternalOCLinEcore.g:23501:1: rule__LetVariableCS__Group__1 : rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 ;
+    // InternalOCLinEcore.g:23503:1: rule__LetVariableCS__Group__1 : rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 ;
     public final void rule__LetVariableCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23505:1: ( rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 )
-            // InternalOCLinEcore.g:23506:2: rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2
+            // InternalOCLinEcore.g:23507:1: ( rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 )
+            // InternalOCLinEcore.g:23508:2: rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_119);
             rule__LetVariableCS__Group__1__Impl();
@@ -69662,22 +69662,22 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__1__Impl"
-    // InternalOCLinEcore.g:23513:1: rule__LetVariableCS__Group__1__Impl : ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) ;
+    // InternalOCLinEcore.g:23515:1: rule__LetVariableCS__Group__1__Impl : ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) ;
     public final void rule__LetVariableCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23517:1: ( ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) )
-            // InternalOCLinEcore.g:23518:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
+            // InternalOCLinEcore.g:23519:1: ( ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) )
+            // InternalOCLinEcore.g:23520:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
             {
-            // InternalOCLinEcore.g:23518:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
-            // InternalOCLinEcore.g:23519:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
+            // InternalOCLinEcore.g:23520:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
+            // InternalOCLinEcore.g:23521:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1());
             }
-            // InternalOCLinEcore.g:23520:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
+            // InternalOCLinEcore.g:23522:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             int alt232=2;
             int LA232_0 = input.LA(1);
 
@@ -69686,7 +69686,7 @@
             }
             switch (alt232) {
                 case 1 :
-                    // InternalOCLinEcore.g:23520:2: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1
+                    // InternalOCLinEcore.g:23522:2: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1();
@@ -69724,14 +69724,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__2"
-    // InternalOCLinEcore.g:23530:1: rule__LetVariableCS__Group__2 : rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 ;
+    // InternalOCLinEcore.g:23532:1: rule__LetVariableCS__Group__2 : rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 ;
     public final void rule__LetVariableCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23534:1: ( rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 )
-            // InternalOCLinEcore.g:23535:2: rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3
+            // InternalOCLinEcore.g:23536:1: ( rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 )
+            // InternalOCLinEcore.g:23537:2: rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_119);
             rule__LetVariableCS__Group__2__Impl();
@@ -69762,22 +69762,22 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__2__Impl"
-    // InternalOCLinEcore.g:23542:1: rule__LetVariableCS__Group__2__Impl : ( ( rule__LetVariableCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:23544:1: rule__LetVariableCS__Group__2__Impl : ( ( rule__LetVariableCS__Group_2__0 )? ) ;
     public final void rule__LetVariableCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23546:1: ( ( ( rule__LetVariableCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:23547:1: ( ( rule__LetVariableCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:23548:1: ( ( ( rule__LetVariableCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:23549:1: ( ( rule__LetVariableCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:23547:1: ( ( rule__LetVariableCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:23548:1: ( rule__LetVariableCS__Group_2__0 )?
+            // InternalOCLinEcore.g:23549:1: ( ( rule__LetVariableCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:23550:1: ( rule__LetVariableCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:23549:1: ( rule__LetVariableCS__Group_2__0 )?
+            // InternalOCLinEcore.g:23551:1: ( rule__LetVariableCS__Group_2__0 )?
             int alt233=2;
             int LA233_0 = input.LA(1);
 
@@ -69786,7 +69786,7 @@
             }
             switch (alt233) {
                 case 1 :
-                    // InternalOCLinEcore.g:23549:2: rule__LetVariableCS__Group_2__0
+                    // InternalOCLinEcore.g:23551:2: rule__LetVariableCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LetVariableCS__Group_2__0();
@@ -69824,14 +69824,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__3"
-    // InternalOCLinEcore.g:23559:1: rule__LetVariableCS__Group__3 : rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 ;
+    // InternalOCLinEcore.g:23561:1: rule__LetVariableCS__Group__3 : rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 ;
     public final void rule__LetVariableCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23563:1: ( rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 )
-            // InternalOCLinEcore.g:23564:2: rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4
+            // InternalOCLinEcore.g:23565:1: ( rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 )
+            // InternalOCLinEcore.g:23566:2: rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__LetVariableCS__Group__3__Impl();
@@ -69862,17 +69862,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__3__Impl"
-    // InternalOCLinEcore.g:23571:1: rule__LetVariableCS__Group__3__Impl : ( '=' ) ;
+    // InternalOCLinEcore.g:23573:1: rule__LetVariableCS__Group__3__Impl : ( '=' ) ;
     public final void rule__LetVariableCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23575:1: ( ( '=' ) )
-            // InternalOCLinEcore.g:23576:1: ( '=' )
+            // InternalOCLinEcore.g:23577:1: ( ( '=' ) )
+            // InternalOCLinEcore.g:23578:1: ( '=' )
             {
-            // InternalOCLinEcore.g:23576:1: ( '=' )
-            // InternalOCLinEcore.g:23577:1: '='
+            // InternalOCLinEcore.g:23578:1: ( '=' )
+            // InternalOCLinEcore.g:23579:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
@@ -69903,14 +69903,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__4"
-    // InternalOCLinEcore.g:23590:1: rule__LetVariableCS__Group__4 : rule__LetVariableCS__Group__4__Impl ;
+    // InternalOCLinEcore.g:23592:1: rule__LetVariableCS__Group__4 : rule__LetVariableCS__Group__4__Impl ;
     public final void rule__LetVariableCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23594:1: ( rule__LetVariableCS__Group__4__Impl )
-            // InternalOCLinEcore.g:23595:2: rule__LetVariableCS__Group__4__Impl
+            // InternalOCLinEcore.g:23596:1: ( rule__LetVariableCS__Group__4__Impl )
+            // InternalOCLinEcore.g:23597:2: rule__LetVariableCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__Group__4__Impl();
@@ -69936,23 +69936,23 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__4__Impl"
-    // InternalOCLinEcore.g:23601:1: rule__LetVariableCS__Group__4__Impl : ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) ;
+    // InternalOCLinEcore.g:23603:1: rule__LetVariableCS__Group__4__Impl : ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) ;
     public final void rule__LetVariableCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23605:1: ( ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) )
-            // InternalOCLinEcore.g:23606:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
+            // InternalOCLinEcore.g:23607:1: ( ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) )
+            // InternalOCLinEcore.g:23608:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
             {
-            // InternalOCLinEcore.g:23606:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
-            // InternalOCLinEcore.g:23607:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
+            // InternalOCLinEcore.g:23608:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
+            // InternalOCLinEcore.g:23609:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4());
             }
-            // InternalOCLinEcore.g:23608:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
-            // InternalOCLinEcore.g:23608:2: rule__LetVariableCS__OwnedInitExpressionAssignment_4
+            // InternalOCLinEcore.g:23610:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
+            // InternalOCLinEcore.g:23610:2: rule__LetVariableCS__OwnedInitExpressionAssignment_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__OwnedInitExpressionAssignment_4();
@@ -69987,14 +69987,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__0"
-    // InternalOCLinEcore.g:23628:1: rule__LetVariableCS__Group_2__0 : rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 ;
+    // InternalOCLinEcore.g:23630:1: rule__LetVariableCS__Group_2__0 : rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 ;
     public final void rule__LetVariableCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23632:1: ( rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 )
-            // InternalOCLinEcore.g:23633:2: rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1
+            // InternalOCLinEcore.g:23634:1: ( rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 )
+            // InternalOCLinEcore.g:23635:2: rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__LetVariableCS__Group_2__0__Impl();
@@ -70025,17 +70025,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:23640:1: rule__LetVariableCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalOCLinEcore.g:23642:1: rule__LetVariableCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__LetVariableCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23644:1: ( ( ':' ) )
-            // InternalOCLinEcore.g:23645:1: ( ':' )
+            // InternalOCLinEcore.g:23646:1: ( ( ':' ) )
+            // InternalOCLinEcore.g:23647:1: ( ':' )
             {
-            // InternalOCLinEcore.g:23645:1: ( ':' )
-            // InternalOCLinEcore.g:23646:1: ':'
+            // InternalOCLinEcore.g:23647:1: ( ':' )
+            // InternalOCLinEcore.g:23648:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
@@ -70066,14 +70066,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__1"
-    // InternalOCLinEcore.g:23659:1: rule__LetVariableCS__Group_2__1 : rule__LetVariableCS__Group_2__1__Impl ;
+    // InternalOCLinEcore.g:23661:1: rule__LetVariableCS__Group_2__1 : rule__LetVariableCS__Group_2__1__Impl ;
     public final void rule__LetVariableCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23663:1: ( rule__LetVariableCS__Group_2__1__Impl )
-            // InternalOCLinEcore.g:23664:2: rule__LetVariableCS__Group_2__1__Impl
+            // InternalOCLinEcore.g:23665:1: ( rule__LetVariableCS__Group_2__1__Impl )
+            // InternalOCLinEcore.g:23666:2: rule__LetVariableCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__Group_2__1__Impl();
@@ -70099,23 +70099,23 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:23670:1: rule__LetVariableCS__Group_2__1__Impl : ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) ;
+    // InternalOCLinEcore.g:23672:1: rule__LetVariableCS__Group_2__1__Impl : ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) ;
     public final void rule__LetVariableCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23674:1: ( ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) )
-            // InternalOCLinEcore.g:23675:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
+            // InternalOCLinEcore.g:23676:1: ( ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) )
+            // InternalOCLinEcore.g:23677:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
             {
-            // InternalOCLinEcore.g:23675:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
-            // InternalOCLinEcore.g:23676:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
+            // InternalOCLinEcore.g:23677:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
+            // InternalOCLinEcore.g:23678:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1());
             }
-            // InternalOCLinEcore.g:23677:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
-            // InternalOCLinEcore.g:23677:2: rule__LetVariableCS__OwnedTypeAssignment_2_1
+            // InternalOCLinEcore.g:23679:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
+            // InternalOCLinEcore.g:23679:2: rule__LetVariableCS__OwnedTypeAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__OwnedTypeAssignment_2_1();
@@ -70150,14 +70150,14 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__0"
-    // InternalOCLinEcore.g:23691:1: rule__NestedExpCS__Group__0 : rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 ;
+    // InternalOCLinEcore.g:23693:1: rule__NestedExpCS__Group__0 : rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 ;
     public final void rule__NestedExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23695:1: ( rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 )
-            // InternalOCLinEcore.g:23696:2: rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1
+            // InternalOCLinEcore.g:23697:1: ( rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 )
+            // InternalOCLinEcore.g:23698:2: rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__NestedExpCS__Group__0__Impl();
@@ -70188,17 +70188,17 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:23703:1: rule__NestedExpCS__Group__0__Impl : ( '(' ) ;
+    // InternalOCLinEcore.g:23705:1: rule__NestedExpCS__Group__0__Impl : ( '(' ) ;
     public final void rule__NestedExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23707:1: ( ( '(' ) )
-            // InternalOCLinEcore.g:23708:1: ( '(' )
+            // InternalOCLinEcore.g:23709:1: ( ( '(' ) )
+            // InternalOCLinEcore.g:23710:1: ( '(' )
             {
-            // InternalOCLinEcore.g:23708:1: ( '(' )
-            // InternalOCLinEcore.g:23709:1: '('
+            // InternalOCLinEcore.g:23710:1: ( '(' )
+            // InternalOCLinEcore.g:23711:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
@@ -70229,14 +70229,14 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__1"
-    // InternalOCLinEcore.g:23722:1: rule__NestedExpCS__Group__1 : rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 ;
+    // InternalOCLinEcore.g:23724:1: rule__NestedExpCS__Group__1 : rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 ;
     public final void rule__NestedExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23726:1: ( rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 )
-            // InternalOCLinEcore.g:23727:2: rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2
+            // InternalOCLinEcore.g:23728:1: ( rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 )
+            // InternalOCLinEcore.g:23729:2: rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__NestedExpCS__Group__1__Impl();
@@ -70267,23 +70267,23 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:23734:1: rule__NestedExpCS__Group__1__Impl : ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) ;
+    // InternalOCLinEcore.g:23736:1: rule__NestedExpCS__Group__1__Impl : ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) ;
     public final void rule__NestedExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23738:1: ( ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) )
-            // InternalOCLinEcore.g:23739:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
+            // InternalOCLinEcore.g:23740:1: ( ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) )
+            // InternalOCLinEcore.g:23741:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
             {
-            // InternalOCLinEcore.g:23739:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
-            // InternalOCLinEcore.g:23740:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
+            // InternalOCLinEcore.g:23741:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
+            // InternalOCLinEcore.g:23742:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1());
             }
-            // InternalOCLinEcore.g:23741:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
-            // InternalOCLinEcore.g:23741:2: rule__NestedExpCS__OwnedExpressionAssignment_1
+            // InternalOCLinEcore.g:23743:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
+            // InternalOCLinEcore.g:23743:2: rule__NestedExpCS__OwnedExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NestedExpCS__OwnedExpressionAssignment_1();
@@ -70318,14 +70318,14 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__2"
-    // InternalOCLinEcore.g:23751:1: rule__NestedExpCS__Group__2 : rule__NestedExpCS__Group__2__Impl ;
+    // InternalOCLinEcore.g:23753:1: rule__NestedExpCS__Group__2 : rule__NestedExpCS__Group__2__Impl ;
     public final void rule__NestedExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23755:1: ( rule__NestedExpCS__Group__2__Impl )
-            // InternalOCLinEcore.g:23756:2: rule__NestedExpCS__Group__2__Impl
+            // InternalOCLinEcore.g:23757:1: ( rule__NestedExpCS__Group__2__Impl )
+            // InternalOCLinEcore.g:23758:2: rule__NestedExpCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NestedExpCS__Group__2__Impl();
@@ -70351,17 +70351,17 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__2__Impl"
-    // InternalOCLinEcore.g:23762:1: rule__NestedExpCS__Group__2__Impl : ( ')' ) ;
+    // InternalOCLinEcore.g:23764:1: rule__NestedExpCS__Group__2__Impl : ( ')' ) ;
     public final void rule__NestedExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23766:1: ( ( ')' ) )
-            // InternalOCLinEcore.g:23767:1: ( ')' )
+            // InternalOCLinEcore.g:23768:1: ( ( ')' ) )
+            // InternalOCLinEcore.g:23769:1: ( ')' )
             {
-            // InternalOCLinEcore.g:23767:1: ( ')' )
-            // InternalOCLinEcore.g:23768:1: ')'
+            // InternalOCLinEcore.g:23769:1: ( ')' )
+            // InternalOCLinEcore.g:23770:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
@@ -70392,14 +70392,14 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__0"
-    // InternalOCLinEcore.g:23787:1: rule__SelfExpCS__Group__0 : rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 ;
+    // InternalOCLinEcore.g:23789:1: rule__SelfExpCS__Group__0 : rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 ;
     public final void rule__SelfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23791:1: ( rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 )
-            // InternalOCLinEcore.g:23792:2: rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1
+            // InternalOCLinEcore.g:23793:1: ( rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 )
+            // InternalOCLinEcore.g:23794:2: rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_120);
             rule__SelfExpCS__Group__0__Impl();
@@ -70430,23 +70430,23 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__0__Impl"
-    // InternalOCLinEcore.g:23799:1: rule__SelfExpCS__Group__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:23801:1: rule__SelfExpCS__Group__0__Impl : ( () ) ;
     public final void rule__SelfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23803:1: ( ( () ) )
-            // InternalOCLinEcore.g:23804:1: ( () )
+            // InternalOCLinEcore.g:23805:1: ( ( () ) )
+            // InternalOCLinEcore.g:23806:1: ( () )
             {
-            // InternalOCLinEcore.g:23804:1: ( () )
-            // InternalOCLinEcore.g:23805:1: ()
+            // InternalOCLinEcore.g:23806:1: ( () )
+            // InternalOCLinEcore.g:23807:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0());
             }
-            // InternalOCLinEcore.g:23806:1: ()
-            // InternalOCLinEcore.g:23808:1:
+            // InternalOCLinEcore.g:23808:1: ()
+            // InternalOCLinEcore.g:23810:1:
             {
             }
 
@@ -70471,14 +70471,14 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__1"
-    // InternalOCLinEcore.g:23818:1: rule__SelfExpCS__Group__1 : rule__SelfExpCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:23820:1: rule__SelfExpCS__Group__1 : rule__SelfExpCS__Group__1__Impl ;
     public final void rule__SelfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23822:1: ( rule__SelfExpCS__Group__1__Impl )
-            // InternalOCLinEcore.g:23823:2: rule__SelfExpCS__Group__1__Impl
+            // InternalOCLinEcore.g:23824:1: ( rule__SelfExpCS__Group__1__Impl )
+            // InternalOCLinEcore.g:23825:2: rule__SelfExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SelfExpCS__Group__1__Impl();
@@ -70504,17 +70504,17 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__1__Impl"
-    // InternalOCLinEcore.g:23829:1: rule__SelfExpCS__Group__1__Impl : ( 'self' ) ;
+    // InternalOCLinEcore.g:23831:1: rule__SelfExpCS__Group__1__Impl : ( 'self' ) ;
     public final void rule__SelfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23833:1: ( ( 'self' ) )
-            // InternalOCLinEcore.g:23834:1: ( 'self' )
+            // InternalOCLinEcore.g:23835:1: ( ( 'self' ) )
+            // InternalOCLinEcore.g:23836:1: ( 'self' )
             {
-            // InternalOCLinEcore.g:23834:1: ( 'self' )
-            // InternalOCLinEcore.g:23835:1: 'self'
+            // InternalOCLinEcore.g:23836:1: ( 'self' )
+            // InternalOCLinEcore.g:23837:1: 'self'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
@@ -70545,14 +70545,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__0"
-    // InternalOCLinEcore.g:23852:1: rule__MultiplicityBoundsCS__Group__0 : rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 ;
+    // InternalOCLinEcore.g:23854:1: rule__MultiplicityBoundsCS__Group__0 : rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 ;
     public final void rule__MultiplicityBoundsCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23856:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
-            // InternalOCLinEcore.g:23857:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
+            // InternalOCLinEcore.g:23858:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
+            // InternalOCLinEcore.g:23859:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_92);
             rule__MultiplicityBoundsCS__Group__0__Impl();
@@ -70583,23 +70583,23 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__0__Impl"
-    // InternalOCLinEcore.g:23864:1: rule__MultiplicityBoundsCS__Group__0__Impl : ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:23866:1: rule__MultiplicityBoundsCS__Group__0__Impl : ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) ;
     public final void rule__MultiplicityBoundsCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23868:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
-            // InternalOCLinEcore.g:23869:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
+            // InternalOCLinEcore.g:23870:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
+            // InternalOCLinEcore.g:23871:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:23869:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
-            // InternalOCLinEcore.g:23870:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
+            // InternalOCLinEcore.g:23871:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
+            // InternalOCLinEcore.g:23872:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
-            // InternalOCLinEcore.g:23871:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
-            // InternalOCLinEcore.g:23871:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
+            // InternalOCLinEcore.g:23873:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
+            // InternalOCLinEcore.g:23873:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__LowerBoundAssignment_0();
@@ -70634,14 +70634,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__1"
-    // InternalOCLinEcore.g:23881:1: rule__MultiplicityBoundsCS__Group__1 : rule__MultiplicityBoundsCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:23883:1: rule__MultiplicityBoundsCS__Group__1 : rule__MultiplicityBoundsCS__Group__1__Impl ;
     public final void rule__MultiplicityBoundsCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23885:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
-            // InternalOCLinEcore.g:23886:2: rule__MultiplicityBoundsCS__Group__1__Impl
+            // InternalOCLinEcore.g:23887:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
+            // InternalOCLinEcore.g:23888:2: rule__MultiplicityBoundsCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__Group__1__Impl();
@@ -70667,22 +70667,22 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__1__Impl"
-    // InternalOCLinEcore.g:23892:1: rule__MultiplicityBoundsCS__Group__1__Impl : ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:23894:1: rule__MultiplicityBoundsCS__Group__1__Impl : ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) ;
     public final void rule__MultiplicityBoundsCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23896:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:23897:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:23898:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:23899:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:23897:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:23898:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
+            // InternalOCLinEcore.g:23899:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:23900:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:23899:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
+            // InternalOCLinEcore.g:23901:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             int alt234=2;
             int LA234_0 = input.LA(1);
 
@@ -70691,7 +70691,7 @@
             }
             switch (alt234) {
                 case 1 :
-                    // InternalOCLinEcore.g:23899:2: rule__MultiplicityBoundsCS__Group_1__0
+                    // InternalOCLinEcore.g:23901:2: rule__MultiplicityBoundsCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityBoundsCS__Group_1__0();
@@ -70729,14 +70729,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__0"
-    // InternalOCLinEcore.g:23913:1: rule__MultiplicityBoundsCS__Group_1__0 : rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 ;
+    // InternalOCLinEcore.g:23915:1: rule__MultiplicityBoundsCS__Group_1__0 : rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 ;
     public final void rule__MultiplicityBoundsCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23917:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
-            // InternalOCLinEcore.g:23918:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
+            // InternalOCLinEcore.g:23919:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
+            // InternalOCLinEcore.g:23920:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_121);
             rule__MultiplicityBoundsCS__Group_1__0__Impl();
@@ -70767,17 +70767,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:23925:1: rule__MultiplicityBoundsCS__Group_1__0__Impl : ( '..' ) ;
+    // InternalOCLinEcore.g:23927:1: rule__MultiplicityBoundsCS__Group_1__0__Impl : ( '..' ) ;
     public final void rule__MultiplicityBoundsCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23929:1: ( ( '..' ) )
-            // InternalOCLinEcore.g:23930:1: ( '..' )
+            // InternalOCLinEcore.g:23931:1: ( ( '..' ) )
+            // InternalOCLinEcore.g:23932:1: ( '..' )
             {
-            // InternalOCLinEcore.g:23930:1: ( '..' )
-            // InternalOCLinEcore.g:23931:1: '..'
+            // InternalOCLinEcore.g:23932:1: ( '..' )
+            // InternalOCLinEcore.g:23933:1: '..'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
@@ -70808,14 +70808,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__1"
-    // InternalOCLinEcore.g:23944:1: rule__MultiplicityBoundsCS__Group_1__1 : rule__MultiplicityBoundsCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:23946:1: rule__MultiplicityBoundsCS__Group_1__1 : rule__MultiplicityBoundsCS__Group_1__1__Impl ;
     public final void rule__MultiplicityBoundsCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23948:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:23949:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:23950:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:23951:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__Group_1__1__Impl();
@@ -70841,23 +70841,23 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:23955:1: rule__MultiplicityBoundsCS__Group_1__1__Impl : ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:23957:1: rule__MultiplicityBoundsCS__Group_1__1__Impl : ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) ;
     public final void rule__MultiplicityBoundsCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23959:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:23960:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
+            // InternalOCLinEcore.g:23961:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:23962:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:23960:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
-            // InternalOCLinEcore.g:23961:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
+            // InternalOCLinEcore.g:23962:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
+            // InternalOCLinEcore.g:23963:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
-            // InternalOCLinEcore.g:23962:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
-            // InternalOCLinEcore.g:23962:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
+            // InternalOCLinEcore.g:23964:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
+            // InternalOCLinEcore.g:23964:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1();
@@ -70892,14 +70892,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__0"
-    // InternalOCLinEcore.g:23976:1: rule__MultiplicityCS__Group__0 : rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 ;
+    // InternalOCLinEcore.g:23978:1: rule__MultiplicityCS__Group__0 : rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 ;
     public final void rule__MultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23980:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
-            // InternalOCLinEcore.g:23981:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
+            // InternalOCLinEcore.g:23982:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
+            // InternalOCLinEcore.g:23983:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_122);
             rule__MultiplicityCS__Group__0__Impl();
@@ -70930,17 +70930,17 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__0__Impl"
-    // InternalOCLinEcore.g:23988:1: rule__MultiplicityCS__Group__0__Impl : ( '[' ) ;
+    // InternalOCLinEcore.g:23990:1: rule__MultiplicityCS__Group__0__Impl : ( '[' ) ;
     public final void rule__MultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:23992:1: ( ( '[' ) )
-            // InternalOCLinEcore.g:23993:1: ( '[' )
+            // InternalOCLinEcore.g:23994:1: ( ( '[' ) )
+            // InternalOCLinEcore.g:23995:1: ( '[' )
             {
-            // InternalOCLinEcore.g:23993:1: ( '[' )
-            // InternalOCLinEcore.g:23994:1: '['
+            // InternalOCLinEcore.g:23995:1: ( '[' )
+            // InternalOCLinEcore.g:23996:1: '['
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
@@ -70971,14 +70971,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__1"
-    // InternalOCLinEcore.g:24007:1: rule__MultiplicityCS__Group__1 : rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 ;
+    // InternalOCLinEcore.g:24009:1: rule__MultiplicityCS__Group__1 : rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 ;
     public final void rule__MultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24011:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
-            // InternalOCLinEcore.g:24012:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
+            // InternalOCLinEcore.g:24013:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
+            // InternalOCLinEcore.g:24014:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_123);
             rule__MultiplicityCS__Group__1__Impl();
@@ -71009,23 +71009,23 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__1__Impl"
-    // InternalOCLinEcore.g:24019:1: rule__MultiplicityCS__Group__1__Impl : ( ( rule__MultiplicityCS__Alternatives_1 ) ) ;
+    // InternalOCLinEcore.g:24021:1: rule__MultiplicityCS__Group__1__Impl : ( ( rule__MultiplicityCS__Alternatives_1 ) ) ;
     public final void rule__MultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24023:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
-            // InternalOCLinEcore.g:24024:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
+            // InternalOCLinEcore.g:24025:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
+            // InternalOCLinEcore.g:24026:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
             {
-            // InternalOCLinEcore.g:24024:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
-            // InternalOCLinEcore.g:24025:1: ( rule__MultiplicityCS__Alternatives_1 )
+            // InternalOCLinEcore.g:24026:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
+            // InternalOCLinEcore.g:24027:1: ( rule__MultiplicityCS__Alternatives_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
-            // InternalOCLinEcore.g:24026:1: ( rule__MultiplicityCS__Alternatives_1 )
-            // InternalOCLinEcore.g:24026:2: rule__MultiplicityCS__Alternatives_1
+            // InternalOCLinEcore.g:24028:1: ( rule__MultiplicityCS__Alternatives_1 )
+            // InternalOCLinEcore.g:24028:2: rule__MultiplicityCS__Alternatives_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityCS__Alternatives_1();
@@ -71060,14 +71060,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__2"
-    // InternalOCLinEcore.g:24036:1: rule__MultiplicityCS__Group__2 : rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 ;
+    // InternalOCLinEcore.g:24038:1: rule__MultiplicityCS__Group__2 : rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 ;
     public final void rule__MultiplicityCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24040:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
-            // InternalOCLinEcore.g:24041:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
+            // InternalOCLinEcore.g:24042:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
+            // InternalOCLinEcore.g:24043:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_123);
             rule__MultiplicityCS__Group__2__Impl();
@@ -71098,22 +71098,22 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__2__Impl"
-    // InternalOCLinEcore.g:24048:1: rule__MultiplicityCS__Group__2__Impl : ( ( rule__MultiplicityCS__Alternatives_2 )? ) ;
+    // InternalOCLinEcore.g:24050:1: rule__MultiplicityCS__Group__2__Impl : ( ( rule__MultiplicityCS__Alternatives_2 )? ) ;
     public final void rule__MultiplicityCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24052:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
-            // InternalOCLinEcore.g:24053:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
+            // InternalOCLinEcore.g:24054:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
+            // InternalOCLinEcore.g:24055:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
             {
-            // InternalOCLinEcore.g:24053:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
-            // InternalOCLinEcore.g:24054:1: ( rule__MultiplicityCS__Alternatives_2 )?
+            // InternalOCLinEcore.g:24055:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
+            // InternalOCLinEcore.g:24056:1: ( rule__MultiplicityCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
-            // InternalOCLinEcore.g:24055:1: ( rule__MultiplicityCS__Alternatives_2 )?
+            // InternalOCLinEcore.g:24057:1: ( rule__MultiplicityCS__Alternatives_2 )?
             int alt235=2;
             int LA235_0 = input.LA(1);
 
@@ -71122,7 +71122,7 @@
             }
             switch (alt235) {
                 case 1 :
-                    // InternalOCLinEcore.g:24055:2: rule__MultiplicityCS__Alternatives_2
+                    // InternalOCLinEcore.g:24057:2: rule__MultiplicityCS__Alternatives_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityCS__Alternatives_2();
@@ -71160,14 +71160,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__3"
-    // InternalOCLinEcore.g:24065:1: rule__MultiplicityCS__Group__3 : rule__MultiplicityCS__Group__3__Impl ;
+    // InternalOCLinEcore.g:24067:1: rule__MultiplicityCS__Group__3 : rule__MultiplicityCS__Group__3__Impl ;
     public final void rule__MultiplicityCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24069:1: ( rule__MultiplicityCS__Group__3__Impl )
-            // InternalOCLinEcore.g:24070:2: rule__MultiplicityCS__Group__3__Impl
+            // InternalOCLinEcore.g:24071:1: ( rule__MultiplicityCS__Group__3__Impl )
+            // InternalOCLinEcore.g:24072:2: rule__MultiplicityCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityCS__Group__3__Impl();
@@ -71193,17 +71193,17 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__3__Impl"
-    // InternalOCLinEcore.g:24076:1: rule__MultiplicityCS__Group__3__Impl : ( ']' ) ;
+    // InternalOCLinEcore.g:24078:1: rule__MultiplicityCS__Group__3__Impl : ( ']' ) ;
     public final void rule__MultiplicityCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24080:1: ( ( ']' ) )
-            // InternalOCLinEcore.g:24081:1: ( ']' )
+            // InternalOCLinEcore.g:24082:1: ( ( ']' ) )
+            // InternalOCLinEcore.g:24083:1: ( ']' )
             {
-            // InternalOCLinEcore.g:24081:1: ( ']' )
-            // InternalOCLinEcore.g:24082:1: ']'
+            // InternalOCLinEcore.g:24083:1: ( ']' )
+            // InternalOCLinEcore.g:24084:1: ']'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
@@ -71234,14 +71234,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__0"
-    // InternalOCLinEcore.g:24103:1: rule__PathNameCS__Group__0 : rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 ;
+    // InternalOCLinEcore.g:24105:1: rule__PathNameCS__Group__0 : rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 ;
     public final void rule__PathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24107:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
-            // InternalOCLinEcore.g:24108:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
+            // InternalOCLinEcore.g:24109:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
+            // InternalOCLinEcore.g:24110:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_86);
             rule__PathNameCS__Group__0__Impl();
@@ -71272,23 +71272,23 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__0__Impl"
-    // InternalOCLinEcore.g:24115:1: rule__PathNameCS__Group__0__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:24117:1: rule__PathNameCS__Group__0__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) ;
     public final void rule__PathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24119:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
-            // InternalOCLinEcore.g:24120:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalOCLinEcore.g:24121:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
+            // InternalOCLinEcore.g:24122:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:24120:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
-            // InternalOCLinEcore.g:24121:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalOCLinEcore.g:24122:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalOCLinEcore.g:24123:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
-            // InternalOCLinEcore.g:24122:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
-            // InternalOCLinEcore.g:24122:2: rule__PathNameCS__OwnedPathElementsAssignment_0
+            // InternalOCLinEcore.g:24124:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalOCLinEcore.g:24124:2: rule__PathNameCS__OwnedPathElementsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__OwnedPathElementsAssignment_0();
@@ -71323,14 +71323,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__1"
-    // InternalOCLinEcore.g:24132:1: rule__PathNameCS__Group__1 : rule__PathNameCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:24134:1: rule__PathNameCS__Group__1 : rule__PathNameCS__Group__1__Impl ;
     public final void rule__PathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24136:1: ( rule__PathNameCS__Group__1__Impl )
-            // InternalOCLinEcore.g:24137:2: rule__PathNameCS__Group__1__Impl
+            // InternalOCLinEcore.g:24138:1: ( rule__PathNameCS__Group__1__Impl )
+            // InternalOCLinEcore.g:24139:2: rule__PathNameCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__Group__1__Impl();
@@ -71356,22 +71356,22 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__1__Impl"
-    // InternalOCLinEcore.g:24143:1: rule__PathNameCS__Group__1__Impl : ( ( rule__PathNameCS__Group_1__0 )* ) ;
+    // InternalOCLinEcore.g:24145:1: rule__PathNameCS__Group__1__Impl : ( ( rule__PathNameCS__Group_1__0 )* ) ;
     public final void rule__PathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24147:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
-            // InternalOCLinEcore.g:24148:1: ( ( rule__PathNameCS__Group_1__0 )* )
+            // InternalOCLinEcore.g:24149:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
+            // InternalOCLinEcore.g:24150:1: ( ( rule__PathNameCS__Group_1__0 )* )
             {
-            // InternalOCLinEcore.g:24148:1: ( ( rule__PathNameCS__Group_1__0 )* )
-            // InternalOCLinEcore.g:24149:1: ( rule__PathNameCS__Group_1__0 )*
+            // InternalOCLinEcore.g:24150:1: ( ( rule__PathNameCS__Group_1__0 )* )
+            // InternalOCLinEcore.g:24151:1: ( rule__PathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:24150:1: ( rule__PathNameCS__Group_1__0 )*
+            // InternalOCLinEcore.g:24152:1: ( rule__PathNameCS__Group_1__0 )*
             loop236:
             do {
                 int alt236=2;
@@ -71384,7 +71384,7 @@
 
                 switch (alt236) {
             	case 1 :
-            	    // InternalOCLinEcore.g:24150:2: rule__PathNameCS__Group_1__0
+            	    // InternalOCLinEcore.g:24152:2: rule__PathNameCS__Group_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_87);
             	    rule__PathNameCS__Group_1__0();
@@ -71425,14 +71425,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__0"
-    // InternalOCLinEcore.g:24164:1: rule__PathNameCS__Group_1__0 : rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 ;
+    // InternalOCLinEcore.g:24166:1: rule__PathNameCS__Group_1__0 : rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 ;
     public final void rule__PathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24168:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
-            // InternalOCLinEcore.g:24169:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
+            // InternalOCLinEcore.g:24170:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
+            // InternalOCLinEcore.g:24171:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_88);
             rule__PathNameCS__Group_1__0__Impl();
@@ -71463,17 +71463,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:24176:1: rule__PathNameCS__Group_1__0__Impl : ( '::' ) ;
+    // InternalOCLinEcore.g:24178:1: rule__PathNameCS__Group_1__0__Impl : ( '::' ) ;
     public final void rule__PathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24180:1: ( ( '::' ) )
-            // InternalOCLinEcore.g:24181:1: ( '::' )
+            // InternalOCLinEcore.g:24182:1: ( ( '::' ) )
+            // InternalOCLinEcore.g:24183:1: ( '::' )
             {
-            // InternalOCLinEcore.g:24181:1: ( '::' )
-            // InternalOCLinEcore.g:24182:1: '::'
+            // InternalOCLinEcore.g:24183:1: ( '::' )
+            // InternalOCLinEcore.g:24184:1: '::'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
@@ -71504,14 +71504,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__1"
-    // InternalOCLinEcore.g:24195:1: rule__PathNameCS__Group_1__1 : rule__PathNameCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:24197:1: rule__PathNameCS__Group_1__1 : rule__PathNameCS__Group_1__1__Impl ;
     public final void rule__PathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24199:1: ( rule__PathNameCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:24200:2: rule__PathNameCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:24201:1: ( rule__PathNameCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:24202:2: rule__PathNameCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__Group_1__1__Impl();
@@ -71537,23 +71537,23 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:24206:1: rule__PathNameCS__Group_1__1__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:24208:1: rule__PathNameCS__Group_1__1__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
     public final void rule__PathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24210:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:24211:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalOCLinEcore.g:24212:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:24213:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:24211:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
-            // InternalOCLinEcore.g:24212:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalOCLinEcore.g:24213:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalOCLinEcore.g:24214:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
-            // InternalOCLinEcore.g:24213:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
-            // InternalOCLinEcore.g:24213:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
+            // InternalOCLinEcore.g:24215:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalOCLinEcore.g:24215:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__OwnedPathElementsAssignment_1_1();
@@ -71588,14 +71588,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__0"
-    // InternalOCLinEcore.g:24227:1: rule__TemplateBindingCS__Group__0 : rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 ;
+    // InternalOCLinEcore.g:24231:1: rule__TemplateBindingCS__Group__0 : rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 ;
     public final void rule__TemplateBindingCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24231:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
-            // InternalOCLinEcore.g:24232:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
+            // InternalOCLinEcore.g:24235:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
+            // InternalOCLinEcore.g:24236:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_124);
             rule__TemplateBindingCS__Group__0__Impl();
@@ -71626,23 +71626,23 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__0__Impl"
-    // InternalOCLinEcore.g:24239:1: rule__TemplateBindingCS__Group__0__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:24243:1: rule__TemplateBindingCS__Group__0__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) ;
     public final void rule__TemplateBindingCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24243:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
-            // InternalOCLinEcore.g:24244:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
+            // InternalOCLinEcore.g:24247:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
+            // InternalOCLinEcore.g:24248:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:24244:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
-            // InternalOCLinEcore.g:24245:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
+            // InternalOCLinEcore.g:24248:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
+            // InternalOCLinEcore.g:24249:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
-            // InternalOCLinEcore.g:24246:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
-            // InternalOCLinEcore.g:24246:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
+            // InternalOCLinEcore.g:24250:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
+            // InternalOCLinEcore.g:24250:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0();
@@ -71677,14 +71677,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__1"
-    // InternalOCLinEcore.g:24256:1: rule__TemplateBindingCS__Group__1 : rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 ;
+    // InternalOCLinEcore.g:24260:1: rule__TemplateBindingCS__Group__1 : rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 ;
     public final void rule__TemplateBindingCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24260:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
-            // InternalOCLinEcore.g:24261:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
+            // InternalOCLinEcore.g:24264:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
+            // InternalOCLinEcore.g:24265:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_124);
             rule__TemplateBindingCS__Group__1__Impl();
@@ -71715,22 +71715,22 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__1__Impl"
-    // InternalOCLinEcore.g:24268:1: rule__TemplateBindingCS__Group__1__Impl : ( ( rule__TemplateBindingCS__Group_1__0 )* ) ;
+    // InternalOCLinEcore.g:24272:1: rule__TemplateBindingCS__Group__1__Impl : ( ( rule__TemplateBindingCS__Group_1__0 )* ) ;
     public final void rule__TemplateBindingCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24272:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
-            // InternalOCLinEcore.g:24273:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
+            // InternalOCLinEcore.g:24276:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
+            // InternalOCLinEcore.g:24277:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
             {
-            // InternalOCLinEcore.g:24273:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
-            // InternalOCLinEcore.g:24274:1: ( rule__TemplateBindingCS__Group_1__0 )*
+            // InternalOCLinEcore.g:24277:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
+            // InternalOCLinEcore.g:24278:1: ( rule__TemplateBindingCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:24275:1: ( rule__TemplateBindingCS__Group_1__0 )*
+            // InternalOCLinEcore.g:24279:1: ( rule__TemplateBindingCS__Group_1__0 )*
             loop237:
             do {
                 int alt237=2;
@@ -71743,7 +71743,7 @@
 
                 switch (alt237) {
             	case 1 :
-            	    // InternalOCLinEcore.g:24275:2: rule__TemplateBindingCS__Group_1__0
+            	    // InternalOCLinEcore.g:24279:2: rule__TemplateBindingCS__Group_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_20);
             	    rule__TemplateBindingCS__Group_1__0();
@@ -71784,14 +71784,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__2"
-    // InternalOCLinEcore.g:24285:1: rule__TemplateBindingCS__Group__2 : rule__TemplateBindingCS__Group__2__Impl ;
+    // InternalOCLinEcore.g:24289:1: rule__TemplateBindingCS__Group__2 : rule__TemplateBindingCS__Group__2__Impl ;
     public final void rule__TemplateBindingCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24289:1: ( rule__TemplateBindingCS__Group__2__Impl )
-            // InternalOCLinEcore.g:24290:2: rule__TemplateBindingCS__Group__2__Impl
+            // InternalOCLinEcore.g:24293:1: ( rule__TemplateBindingCS__Group__2__Impl )
+            // InternalOCLinEcore.g:24294:2: rule__TemplateBindingCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group__2__Impl();
@@ -71817,22 +71817,22 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__2__Impl"
-    // InternalOCLinEcore.g:24296:1: rule__TemplateBindingCS__Group__2__Impl : ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) ;
+    // InternalOCLinEcore.g:24300:1: rule__TemplateBindingCS__Group__2__Impl : ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) ;
     public final void rule__TemplateBindingCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24300:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
-            // InternalOCLinEcore.g:24301:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
+            // InternalOCLinEcore.g:24304:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
+            // InternalOCLinEcore.g:24305:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
             {
-            // InternalOCLinEcore.g:24301:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
-            // InternalOCLinEcore.g:24302:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
+            // InternalOCLinEcore.g:24305:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
+            // InternalOCLinEcore.g:24306:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
-            // InternalOCLinEcore.g:24303:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
+            // InternalOCLinEcore.g:24307:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             int alt238=2;
             int LA238_0 = input.LA(1);
 
@@ -71841,7 +71841,7 @@
             }
             switch (alt238) {
                 case 1 :
-                    // InternalOCLinEcore.g:24303:2: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2
+                    // InternalOCLinEcore.g:24307:2: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TemplateBindingCS__OwnedMultiplicityAssignment_2();
@@ -71879,14 +71879,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__0"
-    // InternalOCLinEcore.g:24319:1: rule__TemplateBindingCS__Group_1__0 : rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 ;
+    // InternalOCLinEcore.g:24323:1: rule__TemplateBindingCS__Group_1__0 : rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 ;
     public final void rule__TemplateBindingCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24323:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
-            // InternalOCLinEcore.g:24324:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
+            // InternalOCLinEcore.g:24327:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
+            // InternalOCLinEcore.g:24328:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_84);
             rule__TemplateBindingCS__Group_1__0__Impl();
@@ -71917,17 +71917,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:24331:1: rule__TemplateBindingCS__Group_1__0__Impl : ( ',' ) ;
+    // InternalOCLinEcore.g:24335:1: rule__TemplateBindingCS__Group_1__0__Impl : ( ',' ) ;
     public final void rule__TemplateBindingCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24335:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:24336:1: ( ',' )
+            // InternalOCLinEcore.g:24339:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:24340:1: ( ',' )
             {
-            // InternalOCLinEcore.g:24336:1: ( ',' )
-            // InternalOCLinEcore.g:24337:1: ','
+            // InternalOCLinEcore.g:24340:1: ( ',' )
+            // InternalOCLinEcore.g:24341:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
@@ -71958,14 +71958,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__1"
-    // InternalOCLinEcore.g:24350:1: rule__TemplateBindingCS__Group_1__1 : rule__TemplateBindingCS__Group_1__1__Impl ;
+    // InternalOCLinEcore.g:24354:1: rule__TemplateBindingCS__Group_1__1 : rule__TemplateBindingCS__Group_1__1__Impl ;
     public final void rule__TemplateBindingCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24354:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
-            // InternalOCLinEcore.g:24355:2: rule__TemplateBindingCS__Group_1__1__Impl
+            // InternalOCLinEcore.g:24358:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
+            // InternalOCLinEcore.g:24359:2: rule__TemplateBindingCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group_1__1__Impl();
@@ -71991,23 +71991,23 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:24361:1: rule__TemplateBindingCS__Group_1__1__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:24365:1: rule__TemplateBindingCS__Group_1__1__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) ;
     public final void rule__TemplateBindingCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24365:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:24366:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
+            // InternalOCLinEcore.g:24369:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:24370:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:24366:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
-            // InternalOCLinEcore.g:24367:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
+            // InternalOCLinEcore.g:24370:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
+            // InternalOCLinEcore.g:24371:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
-            // InternalOCLinEcore.g:24368:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
-            // InternalOCLinEcore.g:24368:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
+            // InternalOCLinEcore.g:24372:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
+            // InternalOCLinEcore.g:24372:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1();
@@ -72042,14 +72042,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__0"
-    // InternalOCLinEcore.g:24382:1: rule__TypeParameterCS__Group__0 : rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 ;
+    // InternalOCLinEcore.g:24386:1: rule__TypeParameterCS__Group__0 : rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 ;
     public final void rule__TypeParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24386:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
-            // InternalOCLinEcore.g:24387:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
+            // InternalOCLinEcore.g:24390:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
+            // InternalOCLinEcore.g:24391:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_125);
             rule__TypeParameterCS__Group__0__Impl();
@@ -72080,23 +72080,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__0__Impl"
-    // InternalOCLinEcore.g:24394:1: rule__TypeParameterCS__Group__0__Impl : ( ( rule__TypeParameterCS__NameAssignment_0 ) ) ;
+    // InternalOCLinEcore.g:24398:1: rule__TypeParameterCS__Group__0__Impl : ( ( rule__TypeParameterCS__NameAssignment_0 ) ) ;
     public final void rule__TypeParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24398:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
-            // InternalOCLinEcore.g:24399:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:24402:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
+            // InternalOCLinEcore.g:24403:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
             {
-            // InternalOCLinEcore.g:24399:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
-            // InternalOCLinEcore.g:24400:1: ( rule__TypeParameterCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:24403:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
+            // InternalOCLinEcore.g:24404:1: ( rule__TypeParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
-            // InternalOCLinEcore.g:24401:1: ( rule__TypeParameterCS__NameAssignment_0 )
-            // InternalOCLinEcore.g:24401:2: rule__TypeParameterCS__NameAssignment_0
+            // InternalOCLinEcore.g:24405:1: ( rule__TypeParameterCS__NameAssignment_0 )
+            // InternalOCLinEcore.g:24405:2: rule__TypeParameterCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__NameAssignment_0();
@@ -72131,14 +72131,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__1"
-    // InternalOCLinEcore.g:24411:1: rule__TypeParameterCS__Group__1 : rule__TypeParameterCS__Group__1__Impl ;
+    // InternalOCLinEcore.g:24415:1: rule__TypeParameterCS__Group__1 : rule__TypeParameterCS__Group__1__Impl ;
     public final void rule__TypeParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24415:1: ( rule__TypeParameterCS__Group__1__Impl )
-            // InternalOCLinEcore.g:24416:2: rule__TypeParameterCS__Group__1__Impl
+            // InternalOCLinEcore.g:24419:1: ( rule__TypeParameterCS__Group__1__Impl )
+            // InternalOCLinEcore.g:24420:2: rule__TypeParameterCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group__1__Impl();
@@ -72164,22 +72164,22 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__1__Impl"
-    // InternalOCLinEcore.g:24422:1: rule__TypeParameterCS__Group__1__Impl : ( ( rule__TypeParameterCS__Group_1__0 )? ) ;
+    // InternalOCLinEcore.g:24426:1: rule__TypeParameterCS__Group__1__Impl : ( ( rule__TypeParameterCS__Group_1__0 )? ) ;
     public final void rule__TypeParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24426:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
-            // InternalOCLinEcore.g:24427:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:24430:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
+            // InternalOCLinEcore.g:24431:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
             {
-            // InternalOCLinEcore.g:24427:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
-            // InternalOCLinEcore.g:24428:1: ( rule__TypeParameterCS__Group_1__0 )?
+            // InternalOCLinEcore.g:24431:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
+            // InternalOCLinEcore.g:24432:1: ( rule__TypeParameterCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
-            // InternalOCLinEcore.g:24429:1: ( rule__TypeParameterCS__Group_1__0 )?
+            // InternalOCLinEcore.g:24433:1: ( rule__TypeParameterCS__Group_1__0 )?
             int alt239=2;
             int LA239_0 = input.LA(1);
 
@@ -72188,7 +72188,7 @@
             }
             switch (alt239) {
                 case 1 :
-                    // InternalOCLinEcore.g:24429:2: rule__TypeParameterCS__Group_1__0
+                    // InternalOCLinEcore.g:24433:2: rule__TypeParameterCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeParameterCS__Group_1__0();
@@ -72226,14 +72226,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__0"
-    // InternalOCLinEcore.g:24443:1: rule__TypeParameterCS__Group_1__0 : rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 ;
+    // InternalOCLinEcore.g:24447:1: rule__TypeParameterCS__Group_1__0 : rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 ;
     public final void rule__TypeParameterCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24447:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
-            // InternalOCLinEcore.g:24448:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
+            // InternalOCLinEcore.g:24451:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
+            // InternalOCLinEcore.g:24452:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__TypeParameterCS__Group_1__0__Impl();
@@ -72264,17 +72264,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__0__Impl"
-    // InternalOCLinEcore.g:24455:1: rule__TypeParameterCS__Group_1__0__Impl : ( 'extends' ) ;
+    // InternalOCLinEcore.g:24459:1: rule__TypeParameterCS__Group_1__0__Impl : ( 'extends' ) ;
     public final void rule__TypeParameterCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24459:1: ( ( 'extends' ) )
-            // InternalOCLinEcore.g:24460:1: ( 'extends' )
+            // InternalOCLinEcore.g:24463:1: ( ( 'extends' ) )
+            // InternalOCLinEcore.g:24464:1: ( 'extends' )
             {
-            // InternalOCLinEcore.g:24460:1: ( 'extends' )
-            // InternalOCLinEcore.g:24461:1: 'extends'
+            // InternalOCLinEcore.g:24464:1: ( 'extends' )
+            // InternalOCLinEcore.g:24465:1: 'extends'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
@@ -72305,14 +72305,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__1"
-    // InternalOCLinEcore.g:24474:1: rule__TypeParameterCS__Group_1__1 : rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 ;
+    // InternalOCLinEcore.g:24478:1: rule__TypeParameterCS__Group_1__1 : rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 ;
     public final void rule__TypeParameterCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24478:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
-            // InternalOCLinEcore.g:24479:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
+            // InternalOCLinEcore.g:24482:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
+            // InternalOCLinEcore.g:24483:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_126);
             rule__TypeParameterCS__Group_1__1__Impl();
@@ -72343,23 +72343,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__1__Impl"
-    // InternalOCLinEcore.g:24486:1: rule__TypeParameterCS__Group_1__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) ;
+    // InternalOCLinEcore.g:24490:1: rule__TypeParameterCS__Group_1__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) ;
     public final void rule__TypeParameterCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24490:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
-            // InternalOCLinEcore.g:24491:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
+            // InternalOCLinEcore.g:24494:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
+            // InternalOCLinEcore.g:24495:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
             {
-            // InternalOCLinEcore.g:24491:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
-            // InternalOCLinEcore.g:24492:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
+            // InternalOCLinEcore.g:24495:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
+            // InternalOCLinEcore.g:24496:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
-            // InternalOCLinEcore.g:24493:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
-            // InternalOCLinEcore.g:24493:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
+            // InternalOCLinEcore.g:24497:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
+            // InternalOCLinEcore.g:24497:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__OwnedExtendsAssignment_1_1();
@@ -72394,14 +72394,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__2"
-    // InternalOCLinEcore.g:24503:1: rule__TypeParameterCS__Group_1__2 : rule__TypeParameterCS__Group_1__2__Impl ;
+    // InternalOCLinEcore.g:24507:1: rule__TypeParameterCS__Group_1__2 : rule__TypeParameterCS__Group_1__2__Impl ;
     public final void rule__TypeParameterCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24507:1: ( rule__TypeParameterCS__Group_1__2__Impl )
-            // InternalOCLinEcore.g:24508:2: rule__TypeParameterCS__Group_1__2__Impl
+            // InternalOCLinEcore.g:24511:1: ( rule__TypeParameterCS__Group_1__2__Impl )
+            // InternalOCLinEcore.g:24512:2: rule__TypeParameterCS__Group_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group_1__2__Impl();
@@ -72427,22 +72427,22 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__2__Impl"
-    // InternalOCLinEcore.g:24514:1: rule__TypeParameterCS__Group_1__2__Impl : ( ( rule__TypeParameterCS__Group_1_2__0 )* ) ;
+    // InternalOCLinEcore.g:24518:1: rule__TypeParameterCS__Group_1__2__Impl : ( ( rule__TypeParameterCS__Group_1_2__0 )* ) ;
     public final void rule__TypeParameterCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24518:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
-            // InternalOCLinEcore.g:24519:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
+            // InternalOCLinEcore.g:24522:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
+            // InternalOCLinEcore.g:24523:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
             {
-            // InternalOCLinEcore.g:24519:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
-            // InternalOCLinEcore.g:24520:1: ( rule__TypeParameterCS__Group_1_2__0 )*
+            // InternalOCLinEcore.g:24523:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
+            // InternalOCLinEcore.g:24524:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
-            // InternalOCLinEcore.g:24521:1: ( rule__TypeParameterCS__Group_1_2__0 )*
+            // InternalOCLinEcore.g:24525:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             loop240:
             do {
                 int alt240=2;
@@ -72455,7 +72455,7 @@
 
                 switch (alt240) {
             	case 1 :
-            	    // InternalOCLinEcore.g:24521:2: rule__TypeParameterCS__Group_1_2__0
+            	    // InternalOCLinEcore.g:24525:2: rule__TypeParameterCS__Group_1_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_127);
             	    rule__TypeParameterCS__Group_1_2__0();
@@ -72496,14 +72496,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__0"
-    // InternalOCLinEcore.g:24537:1: rule__TypeParameterCS__Group_1_2__0 : rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 ;
+    // InternalOCLinEcore.g:24541:1: rule__TypeParameterCS__Group_1_2__0 : rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 ;
     public final void rule__TypeParameterCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24541:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
-            // InternalOCLinEcore.g:24542:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
+            // InternalOCLinEcore.g:24545:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
+            // InternalOCLinEcore.g:24546:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__TypeParameterCS__Group_1_2__0__Impl();
@@ -72534,17 +72534,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__0__Impl"
-    // InternalOCLinEcore.g:24549:1: rule__TypeParameterCS__Group_1_2__0__Impl : ( '&&' ) ;
+    // InternalOCLinEcore.g:24553:1: rule__TypeParameterCS__Group_1_2__0__Impl : ( '&&' ) ;
     public final void rule__TypeParameterCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24553:1: ( ( '&&' ) )
-            // InternalOCLinEcore.g:24554:1: ( '&&' )
+            // InternalOCLinEcore.g:24557:1: ( ( '&&' ) )
+            // InternalOCLinEcore.g:24558:1: ( '&&' )
             {
-            // InternalOCLinEcore.g:24554:1: ( '&&' )
-            // InternalOCLinEcore.g:24555:1: '&&'
+            // InternalOCLinEcore.g:24558:1: ( '&&' )
+            // InternalOCLinEcore.g:24559:1: '&&'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
@@ -72575,14 +72575,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__1"
-    // InternalOCLinEcore.g:24568:1: rule__TypeParameterCS__Group_1_2__1 : rule__TypeParameterCS__Group_1_2__1__Impl ;
+    // InternalOCLinEcore.g:24572:1: rule__TypeParameterCS__Group_1_2__1 : rule__TypeParameterCS__Group_1_2__1__Impl ;
     public final void rule__TypeParameterCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24572:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
-            // InternalOCLinEcore.g:24573:2: rule__TypeParameterCS__Group_1_2__1__Impl
+            // InternalOCLinEcore.g:24576:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
+            // InternalOCLinEcore.g:24577:2: rule__TypeParameterCS__Group_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group_1_2__1__Impl();
@@ -72608,23 +72608,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__1__Impl"
-    // InternalOCLinEcore.g:24579:1: rule__TypeParameterCS__Group_1_2__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) ;
+    // InternalOCLinEcore.g:24583:1: rule__TypeParameterCS__Group_1_2__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) ;
     public final void rule__TypeParameterCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24583:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
-            // InternalOCLinEcore.g:24584:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
+            // InternalOCLinEcore.g:24587:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
+            // InternalOCLinEcore.g:24588:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
             {
-            // InternalOCLinEcore.g:24584:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
-            // InternalOCLinEcore.g:24585:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
+            // InternalOCLinEcore.g:24588:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
+            // InternalOCLinEcore.g:24589:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
-            // InternalOCLinEcore.g:24586:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
-            // InternalOCLinEcore.g:24586:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
+            // InternalOCLinEcore.g:24590:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
+            // InternalOCLinEcore.g:24590:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1();
@@ -72659,14 +72659,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__0"
-    // InternalOCLinEcore.g:24600:1: rule__WildcardTypeRefCS__Group__0 : rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 ;
+    // InternalOCLinEcore.g:24604:1: rule__WildcardTypeRefCS__Group__0 : rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 ;
     public final void rule__WildcardTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24604:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
-            // InternalOCLinEcore.g:24605:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
+            // InternalOCLinEcore.g:24608:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
+            // InternalOCLinEcore.g:24609:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_84);
             rule__WildcardTypeRefCS__Group__0__Impl();
@@ -72697,23 +72697,23 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__0__Impl"
-    // InternalOCLinEcore.g:24612:1: rule__WildcardTypeRefCS__Group__0__Impl : ( () ) ;
+    // InternalOCLinEcore.g:24616:1: rule__WildcardTypeRefCS__Group__0__Impl : ( () ) ;
     public final void rule__WildcardTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24616:1: ( ( () ) )
-            // InternalOCLinEcore.g:24617:1: ( () )
+            // InternalOCLinEcore.g:24620:1: ( ( () ) )
+            // InternalOCLinEcore.g:24621:1: ( () )
             {
-            // InternalOCLinEcore.g:24617:1: ( () )
-            // InternalOCLinEcore.g:24618:1: ()
+            // InternalOCLinEcore.g:24621:1: ( () )
+            // InternalOCLinEcore.g:24622:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
-            // InternalOCLinEcore.g:24619:1: ()
-            // InternalOCLinEcore.g:24621:1:
+            // InternalOCLinEcore.g:24623:1: ()
+            // InternalOCLinEcore.g:24625:1:
             {
             }
 
@@ -72738,14 +72738,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__1"
-    // InternalOCLinEcore.g:24631:1: rule__WildcardTypeRefCS__Group__1 : rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 ;
+    // InternalOCLinEcore.g:24635:1: rule__WildcardTypeRefCS__Group__1 : rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 ;
     public final void rule__WildcardTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24635:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
-            // InternalOCLinEcore.g:24636:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
+            // InternalOCLinEcore.g:24639:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
+            // InternalOCLinEcore.g:24640:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_125);
             rule__WildcardTypeRefCS__Group__1__Impl();
@@ -72776,17 +72776,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__1__Impl"
-    // InternalOCLinEcore.g:24643:1: rule__WildcardTypeRefCS__Group__1__Impl : ( '?' ) ;
+    // InternalOCLinEcore.g:24647:1: rule__WildcardTypeRefCS__Group__1__Impl : ( '?' ) ;
     public final void rule__WildcardTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24647:1: ( ( '?' ) )
-            // InternalOCLinEcore.g:24648:1: ( '?' )
+            // InternalOCLinEcore.g:24651:1: ( ( '?' ) )
+            // InternalOCLinEcore.g:24652:1: ( '?' )
             {
-            // InternalOCLinEcore.g:24648:1: ( '?' )
-            // InternalOCLinEcore.g:24649:1: '?'
+            // InternalOCLinEcore.g:24652:1: ( '?' )
+            // InternalOCLinEcore.g:24653:1: '?'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
@@ -72817,14 +72817,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__2"
-    // InternalOCLinEcore.g:24662:1: rule__WildcardTypeRefCS__Group__2 : rule__WildcardTypeRefCS__Group__2__Impl ;
+    // InternalOCLinEcore.g:24666:1: rule__WildcardTypeRefCS__Group__2 : rule__WildcardTypeRefCS__Group__2__Impl ;
     public final void rule__WildcardTypeRefCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24666:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
-            // InternalOCLinEcore.g:24667:2: rule__WildcardTypeRefCS__Group__2__Impl
+            // InternalOCLinEcore.g:24670:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
+            // InternalOCLinEcore.g:24671:2: rule__WildcardTypeRefCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group__2__Impl();
@@ -72850,22 +72850,22 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__2__Impl"
-    // InternalOCLinEcore.g:24673:1: rule__WildcardTypeRefCS__Group__2__Impl : ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) ;
+    // InternalOCLinEcore.g:24677:1: rule__WildcardTypeRefCS__Group__2__Impl : ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) ;
     public final void rule__WildcardTypeRefCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24677:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
-            // InternalOCLinEcore.g:24678:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:24681:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
+            // InternalOCLinEcore.g:24682:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
             {
-            // InternalOCLinEcore.g:24678:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
-            // InternalOCLinEcore.g:24679:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
+            // InternalOCLinEcore.g:24682:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
+            // InternalOCLinEcore.g:24683:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
-            // InternalOCLinEcore.g:24680:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
+            // InternalOCLinEcore.g:24684:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             int alt241=2;
             int LA241_0 = input.LA(1);
 
@@ -72874,7 +72874,7 @@
             }
             switch (alt241) {
                 case 1 :
-                    // InternalOCLinEcore.g:24680:2: rule__WildcardTypeRefCS__Group_2__0
+                    // InternalOCLinEcore.g:24684:2: rule__WildcardTypeRefCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__WildcardTypeRefCS__Group_2__0();
@@ -72912,14 +72912,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__0"
-    // InternalOCLinEcore.g:24696:1: rule__WildcardTypeRefCS__Group_2__0 : rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 ;
+    // InternalOCLinEcore.g:24700:1: rule__WildcardTypeRefCS__Group_2__0 : rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 ;
     public final void rule__WildcardTypeRefCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24700:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
-            // InternalOCLinEcore.g:24701:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
+            // InternalOCLinEcore.g:24704:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
+            // InternalOCLinEcore.g:24705:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_28);
             rule__WildcardTypeRefCS__Group_2__0__Impl();
@@ -72950,17 +72950,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__0__Impl"
-    // InternalOCLinEcore.g:24708:1: rule__WildcardTypeRefCS__Group_2__0__Impl : ( 'extends' ) ;
+    // InternalOCLinEcore.g:24712:1: rule__WildcardTypeRefCS__Group_2__0__Impl : ( 'extends' ) ;
     public final void rule__WildcardTypeRefCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24712:1: ( ( 'extends' ) )
-            // InternalOCLinEcore.g:24713:1: ( 'extends' )
+            // InternalOCLinEcore.g:24716:1: ( ( 'extends' ) )
+            // InternalOCLinEcore.g:24717:1: ( 'extends' )
             {
-            // InternalOCLinEcore.g:24713:1: ( 'extends' )
-            // InternalOCLinEcore.g:24714:1: 'extends'
+            // InternalOCLinEcore.g:24717:1: ( 'extends' )
+            // InternalOCLinEcore.g:24718:1: 'extends'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
@@ -72991,14 +72991,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__1"
-    // InternalOCLinEcore.g:24727:1: rule__WildcardTypeRefCS__Group_2__1 : rule__WildcardTypeRefCS__Group_2__1__Impl ;
+    // InternalOCLinEcore.g:24731:1: rule__WildcardTypeRefCS__Group_2__1 : rule__WildcardTypeRefCS__Group_2__1__Impl ;
     public final void rule__WildcardTypeRefCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24731:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
-            // InternalOCLinEcore.g:24732:2: rule__WildcardTypeRefCS__Group_2__1__Impl
+            // InternalOCLinEcore.g:24735:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
+            // InternalOCLinEcore.g:24736:2: rule__WildcardTypeRefCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group_2__1__Impl();
@@ -73024,23 +73024,23 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__1__Impl"
-    // InternalOCLinEcore.g:24738:1: rule__WildcardTypeRefCS__Group_2__1__Impl : ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) ;
+    // InternalOCLinEcore.g:24742:1: rule__WildcardTypeRefCS__Group_2__1__Impl : ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) ;
     public final void rule__WildcardTypeRefCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24742:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
-            // InternalOCLinEcore.g:24743:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
+            // InternalOCLinEcore.g:24746:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
+            // InternalOCLinEcore.g:24747:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
             {
-            // InternalOCLinEcore.g:24743:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
-            // InternalOCLinEcore.g:24744:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
+            // InternalOCLinEcore.g:24747:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
+            // InternalOCLinEcore.g:24748:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
-            // InternalOCLinEcore.g:24745:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
-            // InternalOCLinEcore.g:24745:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
+            // InternalOCLinEcore.g:24749:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
+            // InternalOCLinEcore.g:24749:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1();
@@ -73075,17 +73075,17 @@
 
 
     // $ANTLR start "rule__TopLevelCS__OwnedImportsAssignment_2"
-    // InternalOCLinEcore.g:24760:1: rule__TopLevelCS__OwnedImportsAssignment_2 : ( ruleImportCS ) ;
+    // InternalOCLinEcore.g:24764:1: rule__TopLevelCS__OwnedImportsAssignment_2 : ( ruleImportCS ) ;
     public final void rule__TopLevelCS__OwnedImportsAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24764:1: ( ( ruleImportCS ) )
-            // InternalOCLinEcore.g:24765:1: ( ruleImportCS )
+            // InternalOCLinEcore.g:24768:1: ( ( ruleImportCS ) )
+            // InternalOCLinEcore.g:24769:1: ( ruleImportCS )
             {
-            // InternalOCLinEcore.g:24765:1: ( ruleImportCS )
-            // InternalOCLinEcore.g:24766:1: ruleImportCS
+            // InternalOCLinEcore.g:24769:1: ( ruleImportCS )
+            // InternalOCLinEcore.g:24770:1: ruleImportCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTopLevelCSAccess().getOwnedImportsImportCSParserRuleCall_2_0());
@@ -73120,17 +73120,17 @@
 
 
     // $ANTLR start "rule__TopLevelCS__OwnedPackagesAssignment_3"
-    // InternalOCLinEcore.g:24775:1: rule__TopLevelCS__OwnedPackagesAssignment_3 : ( rulePackageCS ) ;
+    // InternalOCLinEcore.g:24779:1: rule__TopLevelCS__OwnedPackagesAssignment_3 : ( rulePackageCS ) ;
     public final void rule__TopLevelCS__OwnedPackagesAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24779:1: ( ( rulePackageCS ) )
-            // InternalOCLinEcore.g:24780:1: ( rulePackageCS )
+            // InternalOCLinEcore.g:24783:1: ( ( rulePackageCS ) )
+            // InternalOCLinEcore.g:24784:1: ( rulePackageCS )
             {
-            // InternalOCLinEcore.g:24780:1: ( rulePackageCS )
-            // InternalOCLinEcore.g:24781:1: rulePackageCS
+            // InternalOCLinEcore.g:24784:1: ( rulePackageCS )
+            // InternalOCLinEcore.g:24785:1: rulePackageCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTopLevelCSAccess().getOwnedPackagesPackageCSParserRuleCall_3_0());
@@ -73165,23 +73165,23 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__IsCallableAssignment_0"
-    // InternalOCLinEcore.g:24790:1: rule__InvariantConstraintCS__IsCallableAssignment_0 : ( ( 'callable' ) ) ;
+    // InternalOCLinEcore.g:24794:1: rule__InvariantConstraintCS__IsCallableAssignment_0 : ( ( 'callable' ) ) ;
     public final void rule__InvariantConstraintCS__IsCallableAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24794:1: ( ( ( 'callable' ) ) )
-            // InternalOCLinEcore.g:24795:1: ( ( 'callable' ) )
+            // InternalOCLinEcore.g:24798:1: ( ( ( 'callable' ) ) )
+            // InternalOCLinEcore.g:24799:1: ( ( 'callable' ) )
             {
-            // InternalOCLinEcore.g:24795:1: ( ( 'callable' ) )
-            // InternalOCLinEcore.g:24796:1: ( 'callable' )
+            // InternalOCLinEcore.g:24799:1: ( ( 'callable' ) )
+            // InternalOCLinEcore.g:24800:1: ( 'callable' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0());
             }
-            // InternalOCLinEcore.g:24797:1: ( 'callable' )
-            // InternalOCLinEcore.g:24798:1: 'callable'
+            // InternalOCLinEcore.g:24801:1: ( 'callable' )
+            // InternalOCLinEcore.g:24802:1: 'callable'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0());
@@ -73218,23 +73218,23 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__StereotypeAssignment_1"
-    // InternalOCLinEcore.g:24813:1: rule__InvariantConstraintCS__StereotypeAssignment_1 : ( ( 'invariant' ) ) ;
+    // InternalOCLinEcore.g:24817:1: rule__InvariantConstraintCS__StereotypeAssignment_1 : ( ( 'invariant' ) ) ;
     public final void rule__InvariantConstraintCS__StereotypeAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24817:1: ( ( ( 'invariant' ) ) )
-            // InternalOCLinEcore.g:24818:1: ( ( 'invariant' ) )
+            // InternalOCLinEcore.g:24821:1: ( ( ( 'invariant' ) ) )
+            // InternalOCLinEcore.g:24822:1: ( ( 'invariant' ) )
             {
-            // InternalOCLinEcore.g:24818:1: ( ( 'invariant' ) )
-            // InternalOCLinEcore.g:24819:1: ( 'invariant' )
+            // InternalOCLinEcore.g:24822:1: ( ( 'invariant' ) )
+            // InternalOCLinEcore.g:24823:1: ( 'invariant' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0());
             }
-            // InternalOCLinEcore.g:24820:1: ( 'invariant' )
-            // InternalOCLinEcore.g:24821:1: 'invariant'
+            // InternalOCLinEcore.g:24824:1: ( 'invariant' )
+            // InternalOCLinEcore.g:24825:1: 'invariant'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0());
@@ -73271,17 +73271,17 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__NameAssignment_2_0"
-    // InternalOCLinEcore.g:24836:1: rule__InvariantConstraintCS__NameAssignment_2_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:24840:1: rule__InvariantConstraintCS__NameAssignment_2_0 : ( ruleUnrestrictedName ) ;
     public final void rule__InvariantConstraintCS__NameAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24840:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:24841:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:24844:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:24845:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:24841:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:24842:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:24845:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:24846:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0());
@@ -73316,17 +73316,17 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1"
-    // InternalOCLinEcore.g:24851:1: rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 : ( ruleSpecificationCS ) ;
+    // InternalOCLinEcore.g:24855:1: rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 : ( ruleSpecificationCS ) ;
     public final void rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24855:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLinEcore.g:24856:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:24859:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLinEcore.g:24860:1: ( ruleSpecificationCS )
             {
-            // InternalOCLinEcore.g:24856:1: ( ruleSpecificationCS )
-            // InternalOCLinEcore.g:24857:1: ruleSpecificationCS
+            // InternalOCLinEcore.g:24860:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:24861:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_2_1_1_0());
@@ -73361,17 +73361,17 @@
 
 
     // $ANTLR start "rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1"
-    // InternalOCLinEcore.g:24866:1: rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 : ( ruleSpecificationCS ) ;
+    // InternalOCLinEcore.g:24870:1: rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 : ( ruleSpecificationCS ) ;
     public final void rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24870:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLinEcore.g:24871:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:24874:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLinEcore.g:24875:1: ( ruleSpecificationCS )
             {
-            // InternalOCLinEcore.g:24871:1: ( ruleSpecificationCS )
-            // InternalOCLinEcore.g:24872:1: ruleSpecificationCS
+            // InternalOCLinEcore.g:24875:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:24876:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0_1_0());
@@ -73406,23 +73406,23 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__StereotypeAssignment_0"
-    // InternalOCLinEcore.g:24881:1: rule__PostconditionConstraintCS__StereotypeAssignment_0 : ( ( 'postcondition' ) ) ;
+    // InternalOCLinEcore.g:24885:1: rule__PostconditionConstraintCS__StereotypeAssignment_0 : ( ( 'postcondition' ) ) ;
     public final void rule__PostconditionConstraintCS__StereotypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24885:1: ( ( ( 'postcondition' ) ) )
-            // InternalOCLinEcore.g:24886:1: ( ( 'postcondition' ) )
+            // InternalOCLinEcore.g:24889:1: ( ( ( 'postcondition' ) ) )
+            // InternalOCLinEcore.g:24890:1: ( ( 'postcondition' ) )
             {
-            // InternalOCLinEcore.g:24886:1: ( ( 'postcondition' ) )
-            // InternalOCLinEcore.g:24887:1: ( 'postcondition' )
+            // InternalOCLinEcore.g:24890:1: ( ( 'postcondition' ) )
+            // InternalOCLinEcore.g:24891:1: ( 'postcondition' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0());
             }
-            // InternalOCLinEcore.g:24888:1: ( 'postcondition' )
-            // InternalOCLinEcore.g:24889:1: 'postcondition'
+            // InternalOCLinEcore.g:24892:1: ( 'postcondition' )
+            // InternalOCLinEcore.g:24893:1: 'postcondition'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0());
@@ -73459,17 +73459,17 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__NameAssignment_1_0"
-    // InternalOCLinEcore.g:24904:1: rule__PostconditionConstraintCS__NameAssignment_1_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:24908:1: rule__PostconditionConstraintCS__NameAssignment_1_0 : ( ruleUnrestrictedName ) ;
     public final void rule__PostconditionConstraintCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24908:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:24909:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:24912:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:24913:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:24909:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:24910:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:24913:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:24914:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
@@ -73504,17 +73504,17 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1"
-    // InternalOCLinEcore.g:24919:1: rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 : ( ruleSpecificationCS ) ;
+    // InternalOCLinEcore.g:24923:1: rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 : ( ruleSpecificationCS ) ;
     public final void rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24923:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLinEcore.g:24924:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:24927:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLinEcore.g:24928:1: ( ruleSpecificationCS )
             {
-            // InternalOCLinEcore.g:24924:1: ( ruleSpecificationCS )
-            // InternalOCLinEcore.g:24925:1: ruleSpecificationCS
+            // InternalOCLinEcore.g:24928:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:24929:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
@@ -73549,17 +73549,17 @@
 
 
     // $ANTLR start "rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3"
-    // InternalOCLinEcore.g:24934:1: rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 : ( ruleSpecificationCS ) ;
+    // InternalOCLinEcore.g:24938:1: rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 : ( ruleSpecificationCS ) ;
     public final void rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24938:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLinEcore.g:24939:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:24942:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLinEcore.g:24943:1: ( ruleSpecificationCS )
             {
-            // InternalOCLinEcore.g:24939:1: ( ruleSpecificationCS )
-            // InternalOCLinEcore.g:24940:1: ruleSpecificationCS
+            // InternalOCLinEcore.g:24943:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:24944:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
@@ -73594,23 +73594,23 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__StereotypeAssignment_0"
-    // InternalOCLinEcore.g:24949:1: rule__PreconditionConstraintCS__StereotypeAssignment_0 : ( ( 'precondition' ) ) ;
+    // InternalOCLinEcore.g:24953:1: rule__PreconditionConstraintCS__StereotypeAssignment_0 : ( ( 'precondition' ) ) ;
     public final void rule__PreconditionConstraintCS__StereotypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24953:1: ( ( ( 'precondition' ) ) )
-            // InternalOCLinEcore.g:24954:1: ( ( 'precondition' ) )
+            // InternalOCLinEcore.g:24957:1: ( ( ( 'precondition' ) ) )
+            // InternalOCLinEcore.g:24958:1: ( ( 'precondition' ) )
             {
-            // InternalOCLinEcore.g:24954:1: ( ( 'precondition' ) )
-            // InternalOCLinEcore.g:24955:1: ( 'precondition' )
+            // InternalOCLinEcore.g:24958:1: ( ( 'precondition' ) )
+            // InternalOCLinEcore.g:24959:1: ( 'precondition' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0());
             }
-            // InternalOCLinEcore.g:24956:1: ( 'precondition' )
-            // InternalOCLinEcore.g:24957:1: 'precondition'
+            // InternalOCLinEcore.g:24960:1: ( 'precondition' )
+            // InternalOCLinEcore.g:24961:1: 'precondition'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0());
@@ -73647,17 +73647,17 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__NameAssignment_1_0"
-    // InternalOCLinEcore.g:24972:1: rule__PreconditionConstraintCS__NameAssignment_1_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:24976:1: rule__PreconditionConstraintCS__NameAssignment_1_0 : ( ruleUnrestrictedName ) ;
     public final void rule__PreconditionConstraintCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24976:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:24977:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:24980:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:24981:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:24977:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:24978:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:24981:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:24982:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
@@ -73692,17 +73692,17 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1"
-    // InternalOCLinEcore.g:24987:1: rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 : ( ruleSpecificationCS ) ;
+    // InternalOCLinEcore.g:24991:1: rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 : ( ruleSpecificationCS ) ;
     public final void rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:24991:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLinEcore.g:24992:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:24995:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLinEcore.g:24996:1: ( ruleSpecificationCS )
             {
-            // InternalOCLinEcore.g:24992:1: ( ruleSpecificationCS )
-            // InternalOCLinEcore.g:24993:1: ruleSpecificationCS
+            // InternalOCLinEcore.g:24996:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:24997:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
@@ -73737,17 +73737,17 @@
 
 
     // $ANTLR start "rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3"
-    // InternalOCLinEcore.g:25002:1: rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 : ( ruleSpecificationCS ) ;
+    // InternalOCLinEcore.g:25006:1: rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 : ( ruleSpecificationCS ) ;
     public final void rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25006:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLinEcore.g:25007:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:25010:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLinEcore.g:25011:1: ( ruleSpecificationCS )
             {
-            // InternalOCLinEcore.g:25007:1: ( ruleSpecificationCS )
-            // InternalOCLinEcore.g:25008:1: ruleSpecificationCS
+            // InternalOCLinEcore.g:25011:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:25012:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
@@ -73782,23 +73782,23 @@
 
 
     // $ANTLR start "rule__AnnotationCS__NameAssignment_2"
-    // InternalOCLinEcore.g:25017:1: rule__AnnotationCS__NameAssignment_2 : ( ( rule__AnnotationCS__NameAlternatives_2_0 ) ) ;
+    // InternalOCLinEcore.g:25021:1: rule__AnnotationCS__NameAssignment_2 : ( ( rule__AnnotationCS__NameAlternatives_2_0 ) ) ;
     public final void rule__AnnotationCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25021:1: ( ( ( rule__AnnotationCS__NameAlternatives_2_0 ) ) )
-            // InternalOCLinEcore.g:25022:1: ( ( rule__AnnotationCS__NameAlternatives_2_0 ) )
+            // InternalOCLinEcore.g:25025:1: ( ( ( rule__AnnotationCS__NameAlternatives_2_0 ) ) )
+            // InternalOCLinEcore.g:25026:1: ( ( rule__AnnotationCS__NameAlternatives_2_0 ) )
             {
-            // InternalOCLinEcore.g:25022:1: ( ( rule__AnnotationCS__NameAlternatives_2_0 ) )
-            // InternalOCLinEcore.g:25023:1: ( rule__AnnotationCS__NameAlternatives_2_0 )
+            // InternalOCLinEcore.g:25026:1: ( ( rule__AnnotationCS__NameAlternatives_2_0 ) )
+            // InternalOCLinEcore.g:25027:1: ( rule__AnnotationCS__NameAlternatives_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getNameAlternatives_2_0());
             }
-            // InternalOCLinEcore.g:25024:1: ( rule__AnnotationCS__NameAlternatives_2_0 )
-            // InternalOCLinEcore.g:25024:2: rule__AnnotationCS__NameAlternatives_2_0
+            // InternalOCLinEcore.g:25028:1: ( rule__AnnotationCS__NameAlternatives_2_0 )
+            // InternalOCLinEcore.g:25028:2: rule__AnnotationCS__NameAlternatives_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__NameAlternatives_2_0();
@@ -73833,17 +73833,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__OwnedDetailsAssignment_3_1"
-    // InternalOCLinEcore.g:25033:1: rule__AnnotationCS__OwnedDetailsAssignment_3_1 : ( ruleDetailCS ) ;
+    // InternalOCLinEcore.g:25037:1: rule__AnnotationCS__OwnedDetailsAssignment_3_1 : ( ruleDetailCS ) ;
     public final void rule__AnnotationCS__OwnedDetailsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25037:1: ( ( ruleDetailCS ) )
-            // InternalOCLinEcore.g:25038:1: ( ruleDetailCS )
+            // InternalOCLinEcore.g:25041:1: ( ( ruleDetailCS ) )
+            // InternalOCLinEcore.g:25042:1: ( ruleDetailCS )
             {
-            // InternalOCLinEcore.g:25038:1: ( ruleDetailCS )
-            // InternalOCLinEcore.g:25039:1: ruleDetailCS
+            // InternalOCLinEcore.g:25042:1: ( ruleDetailCS )
+            // InternalOCLinEcore.g:25043:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
@@ -73878,17 +73878,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__OwnedDetailsAssignment_3_2_1"
-    // InternalOCLinEcore.g:25048:1: rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 : ( ruleDetailCS ) ;
+    // InternalOCLinEcore.g:25052:1: rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 : ( ruleDetailCS ) ;
     public final void rule__AnnotationCS__OwnedDetailsAssignment_3_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25052:1: ( ( ruleDetailCS ) )
-            // InternalOCLinEcore.g:25053:1: ( ruleDetailCS )
+            // InternalOCLinEcore.g:25056:1: ( ( ruleDetailCS ) )
+            // InternalOCLinEcore.g:25057:1: ( ruleDetailCS )
             {
-            // InternalOCLinEcore.g:25053:1: ( ruleDetailCS )
-            // InternalOCLinEcore.g:25054:1: ruleDetailCS
+            // InternalOCLinEcore.g:25057:1: ( ruleDetailCS )
+            // InternalOCLinEcore.g:25058:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
@@ -73923,17 +73923,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0"
-    // InternalOCLinEcore.g:25063:1: rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLinEcore.g:25067:1: rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 : ( ruleAnnotationElementCS ) ;
     public final void rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25067:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLinEcore.g:25068:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:25071:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLinEcore.g:25072:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLinEcore.g:25068:1: ( ruleAnnotationElementCS )
-            // InternalOCLinEcore.g:25069:1: ruleAnnotationElementCS
+            // InternalOCLinEcore.g:25072:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:25073:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0());
@@ -73968,17 +73968,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1"
-    // InternalOCLinEcore.g:25078:1: rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 : ( ruleModelElementCS ) ;
+    // InternalOCLinEcore.g:25082:1: rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 : ( ruleModelElementCS ) ;
     public final void rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25082:1: ( ( ruleModelElementCS ) )
-            // InternalOCLinEcore.g:25083:1: ( ruleModelElementCS )
+            // InternalOCLinEcore.g:25086:1: ( ( ruleModelElementCS ) )
+            // InternalOCLinEcore.g:25087:1: ( ruleModelElementCS )
             {
-            // InternalOCLinEcore.g:25083:1: ( ruleModelElementCS )
-            // InternalOCLinEcore.g:25084:1: ruleModelElementCS
+            // InternalOCLinEcore.g:25087:1: ( ruleModelElementCS )
+            // InternalOCLinEcore.g:25088:1: ruleModelElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedContentsModelElementCSParserRuleCall_4_0_1_1_0());
@@ -74013,17 +74013,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2"
-    // InternalOCLinEcore.g:25093:1: rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 : ( ruleModelElementRefCS ) ;
+    // InternalOCLinEcore.g:25097:1: rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 : ( ruleModelElementRefCS ) ;
     public final void rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25097:1: ( ( ruleModelElementRefCS ) )
-            // InternalOCLinEcore.g:25098:1: ( ruleModelElementRefCS )
+            // InternalOCLinEcore.g:25101:1: ( ( ruleModelElementRefCS ) )
+            // InternalOCLinEcore.g:25102:1: ( ruleModelElementRefCS )
             {
-            // InternalOCLinEcore.g:25098:1: ( ruleModelElementRefCS )
-            // InternalOCLinEcore.g:25099:1: ruleModelElementRefCS
+            // InternalOCLinEcore.g:25102:1: ( ruleModelElementRefCS )
+            // InternalOCLinEcore.g:25103:1: ruleModelElementRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedReferencesModelElementRefCSParserRuleCall_4_0_1_2_0());
@@ -74058,23 +74058,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_0_0_0"
-    // InternalOCLinEcore.g:25108:1: rule__AttributeCS__QualifiersAssignment_0_0_0 : ( ( 'static' ) ) ;
+    // InternalOCLinEcore.g:25112:1: rule__AttributeCS__QualifiersAssignment_0_0_0 : ( ( 'static' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_0_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25112:1: ( ( ( 'static' ) ) )
-            // InternalOCLinEcore.g:25113:1: ( ( 'static' ) )
+            // InternalOCLinEcore.g:25116:1: ( ( ( 'static' ) ) )
+            // InternalOCLinEcore.g:25117:1: ( ( 'static' ) )
             {
-            // InternalOCLinEcore.g:25113:1: ( ( 'static' ) )
-            // InternalOCLinEcore.g:25114:1: ( 'static' )
+            // InternalOCLinEcore.g:25117:1: ( ( 'static' ) )
+            // InternalOCLinEcore.g:25118:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
-            // InternalOCLinEcore.g:25115:1: ( 'static' )
-            // InternalOCLinEcore.g:25116:1: 'static'
+            // InternalOCLinEcore.g:25119:1: ( 'static' )
+            // InternalOCLinEcore.g:25120:1: 'static'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0());
@@ -74111,23 +74111,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_0_0_1"
-    // InternalOCLinEcore.g:25131:1: rule__AttributeCS__QualifiersAssignment_0_0_1 : ( ( 'definition' ) ) ;
+    // InternalOCLinEcore.g:25135:1: rule__AttributeCS__QualifiersAssignment_0_0_1 : ( ( 'definition' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_0_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25135:1: ( ( ( 'definition' ) ) )
-            // InternalOCLinEcore.g:25136:1: ( ( 'definition' ) )
+            // InternalOCLinEcore.g:25139:1: ( ( ( 'definition' ) ) )
+            // InternalOCLinEcore.g:25140:1: ( ( 'definition' ) )
             {
-            // InternalOCLinEcore.g:25136:1: ( ( 'definition' ) )
-            // InternalOCLinEcore.g:25137:1: ( 'definition' )
+            // InternalOCLinEcore.g:25140:1: ( ( 'definition' ) )
+            // InternalOCLinEcore.g:25141:1: ( 'definition' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
-            // InternalOCLinEcore.g:25138:1: ( 'definition' )
-            // InternalOCLinEcore.g:25139:1: 'definition'
+            // InternalOCLinEcore.g:25142:1: ( 'definition' )
+            // InternalOCLinEcore.g:25143:1: 'definition'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
@@ -74164,23 +74164,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_0_1_0"
-    // InternalOCLinEcore.g:25154:1: rule__AttributeCS__QualifiersAssignment_0_1_0 : ( ( 'definition' ) ) ;
+    // InternalOCLinEcore.g:25158:1: rule__AttributeCS__QualifiersAssignment_0_1_0 : ( ( 'definition' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25158:1: ( ( ( 'definition' ) ) )
-            // InternalOCLinEcore.g:25159:1: ( ( 'definition' ) )
+            // InternalOCLinEcore.g:25162:1: ( ( ( 'definition' ) ) )
+            // InternalOCLinEcore.g:25163:1: ( ( 'definition' ) )
             {
-            // InternalOCLinEcore.g:25159:1: ( ( 'definition' ) )
-            // InternalOCLinEcore.g:25160:1: ( 'definition' )
+            // InternalOCLinEcore.g:25163:1: ( ( 'definition' ) )
+            // InternalOCLinEcore.g:25164:1: ( 'definition' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
-            // InternalOCLinEcore.g:25161:1: ( 'definition' )
-            // InternalOCLinEcore.g:25162:1: 'definition'
+            // InternalOCLinEcore.g:25165:1: ( 'definition' )
+            // InternalOCLinEcore.g:25166:1: 'definition'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
@@ -74217,23 +74217,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_0_1_1"
-    // InternalOCLinEcore.g:25177:1: rule__AttributeCS__QualifiersAssignment_0_1_1 : ( ( 'static' ) ) ;
+    // InternalOCLinEcore.g:25181:1: rule__AttributeCS__QualifiersAssignment_0_1_1 : ( ( 'static' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25181:1: ( ( ( 'static' ) ) )
-            // InternalOCLinEcore.g:25182:1: ( ( 'static' ) )
+            // InternalOCLinEcore.g:25185:1: ( ( ( 'static' ) ) )
+            // InternalOCLinEcore.g:25186:1: ( ( 'static' ) )
             {
-            // InternalOCLinEcore.g:25182:1: ( ( 'static' ) )
-            // InternalOCLinEcore.g:25183:1: ( 'static' )
+            // InternalOCLinEcore.g:25186:1: ( ( 'static' ) )
+            // InternalOCLinEcore.g:25187:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
-            // InternalOCLinEcore.g:25184:1: ( 'static' )
-            // InternalOCLinEcore.g:25185:1: 'static'
+            // InternalOCLinEcore.g:25188:1: ( 'static' )
+            // InternalOCLinEcore.g:25189:1: 'static'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0());
@@ -74270,17 +74270,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__NameAssignment_2"
-    // InternalOCLinEcore.g:25200:1: rule__AttributeCS__NameAssignment_2 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:25204:1: rule__AttributeCS__NameAssignment_2 : ( ruleUnrestrictedName ) ;
     public final void rule__AttributeCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25204:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:25205:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:25208:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:25209:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:25205:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:25206:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:25209:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:25210:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
@@ -74315,17 +74315,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__OwnedTypeAssignment_3_1"
-    // InternalOCLinEcore.g:25215:1: rule__AttributeCS__OwnedTypeAssignment_3_1 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLinEcore.g:25219:1: rule__AttributeCS__OwnedTypeAssignment_3_1 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__AttributeCS__OwnedTypeAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25219:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLinEcore.g:25220:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLinEcore.g:25223:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLinEcore.g:25224:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLinEcore.g:25220:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLinEcore.g:25221:1: ruleTypedMultiplicityRefCS
+            // InternalOCLinEcore.g:25224:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLinEcore.g:25225:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_1_0());
@@ -74360,17 +74360,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__DefaultAssignment_4_1"
-    // InternalOCLinEcore.g:25230:1: rule__AttributeCS__DefaultAssignment_4_1 : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalOCLinEcore.g:25234:1: rule__AttributeCS__DefaultAssignment_4_1 : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void rule__AttributeCS__DefaultAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25234:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLinEcore.g:25235:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:25238:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLinEcore.g:25239:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalOCLinEcore.g:25235:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:25236:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:25239:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:25240:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0());
@@ -74401,23 +74401,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_0"
-    // InternalOCLinEcore.g:25245:1: rule__AttributeCS__QualifiersAssignment_5_1_0_0 : ( ( 'derived' ) ) ;
+    // InternalOCLinEcore.g:25249:1: rule__AttributeCS__QualifiersAssignment_5_1_0_0 : ( ( 'derived' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25249:1: ( ( ( 'derived' ) ) )
-            // InternalOCLinEcore.g:25250:1: ( ( 'derived' ) )
+            // InternalOCLinEcore.g:25253:1: ( ( ( 'derived' ) ) )
+            // InternalOCLinEcore.g:25254:1: ( ( 'derived' ) )
             {
-            // InternalOCLinEcore.g:25250:1: ( ( 'derived' ) )
-            // InternalOCLinEcore.g:25251:1: ( 'derived' )
+            // InternalOCLinEcore.g:25254:1: ( ( 'derived' ) )
+            // InternalOCLinEcore.g:25255:1: ( 'derived' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0());
             }
-            // InternalOCLinEcore.g:25252:1: ( 'derived' )
-            // InternalOCLinEcore.g:25253:1: 'derived'
+            // InternalOCLinEcore.g:25256:1: ( 'derived' )
+            // InternalOCLinEcore.g:25257:1: 'derived'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0());
@@ -74454,23 +74454,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_1"
-    // InternalOCLinEcore.g:25268:1: rule__AttributeCS__QualifiersAssignment_5_1_0_1 : ( ( '!derived' ) ) ;
+    // InternalOCLinEcore.g:25272:1: rule__AttributeCS__QualifiersAssignment_5_1_0_1 : ( ( '!derived' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25272:1: ( ( ( '!derived' ) ) )
-            // InternalOCLinEcore.g:25273:1: ( ( '!derived' ) )
+            // InternalOCLinEcore.g:25276:1: ( ( ( '!derived' ) ) )
+            // InternalOCLinEcore.g:25277:1: ( ( '!derived' ) )
             {
-            // InternalOCLinEcore.g:25273:1: ( ( '!derived' ) )
-            // InternalOCLinEcore.g:25274:1: ( '!derived' )
+            // InternalOCLinEcore.g:25277:1: ( ( '!derived' ) )
+            // InternalOCLinEcore.g:25278:1: ( '!derived' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0());
             }
-            // InternalOCLinEcore.g:25275:1: ( '!derived' )
-            // InternalOCLinEcore.g:25276:1: '!derived'
+            // InternalOCLinEcore.g:25279:1: ( '!derived' )
+            // InternalOCLinEcore.g:25280:1: '!derived'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0());
@@ -74507,23 +74507,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_2"
-    // InternalOCLinEcore.g:25291:1: rule__AttributeCS__QualifiersAssignment_5_1_0_2 : ( ( 'id' ) ) ;
+    // InternalOCLinEcore.g:25295:1: rule__AttributeCS__QualifiersAssignment_5_1_0_2 : ( ( 'id' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25295:1: ( ( ( 'id' ) ) )
-            // InternalOCLinEcore.g:25296:1: ( ( 'id' ) )
+            // InternalOCLinEcore.g:25299:1: ( ( ( 'id' ) ) )
+            // InternalOCLinEcore.g:25300:1: ( ( 'id' ) )
             {
-            // InternalOCLinEcore.g:25296:1: ( ( 'id' ) )
-            // InternalOCLinEcore.g:25297:1: ( 'id' )
+            // InternalOCLinEcore.g:25300:1: ( ( 'id' ) )
+            // InternalOCLinEcore.g:25301:1: ( 'id' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0());
             }
-            // InternalOCLinEcore.g:25298:1: ( 'id' )
-            // InternalOCLinEcore.g:25299:1: 'id'
+            // InternalOCLinEcore.g:25302:1: ( 'id' )
+            // InternalOCLinEcore.g:25303:1: 'id'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0());
@@ -74560,23 +74560,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_3"
-    // InternalOCLinEcore.g:25314:1: rule__AttributeCS__QualifiersAssignment_5_1_0_3 : ( ( '!id' ) ) ;
+    // InternalOCLinEcore.g:25318:1: rule__AttributeCS__QualifiersAssignment_5_1_0_3 : ( ( '!id' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25318:1: ( ( ( '!id' ) ) )
-            // InternalOCLinEcore.g:25319:1: ( ( '!id' ) )
+            // InternalOCLinEcore.g:25322:1: ( ( ( '!id' ) ) )
+            // InternalOCLinEcore.g:25323:1: ( ( '!id' ) )
             {
-            // InternalOCLinEcore.g:25319:1: ( ( '!id' ) )
-            // InternalOCLinEcore.g:25320:1: ( '!id' )
+            // InternalOCLinEcore.g:25323:1: ( ( '!id' ) )
+            // InternalOCLinEcore.g:25324:1: ( '!id' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0());
             }
-            // InternalOCLinEcore.g:25321:1: ( '!id' )
-            // InternalOCLinEcore.g:25322:1: '!id'
+            // InternalOCLinEcore.g:25325:1: ( '!id' )
+            // InternalOCLinEcore.g:25326:1: '!id'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0());
@@ -74613,23 +74613,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_4"
-    // InternalOCLinEcore.g:25337:1: rule__AttributeCS__QualifiersAssignment_5_1_0_4 : ( ( 'ordered' ) ) ;
+    // InternalOCLinEcore.g:25341:1: rule__AttributeCS__QualifiersAssignment_5_1_0_4 : ( ( 'ordered' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25341:1: ( ( ( 'ordered' ) ) )
-            // InternalOCLinEcore.g:25342:1: ( ( 'ordered' ) )
+            // InternalOCLinEcore.g:25345:1: ( ( ( 'ordered' ) ) )
+            // InternalOCLinEcore.g:25346:1: ( ( 'ordered' ) )
             {
-            // InternalOCLinEcore.g:25342:1: ( ( 'ordered' ) )
-            // InternalOCLinEcore.g:25343:1: ( 'ordered' )
+            // InternalOCLinEcore.g:25346:1: ( ( 'ordered' ) )
+            // InternalOCLinEcore.g:25347:1: ( 'ordered' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0());
             }
-            // InternalOCLinEcore.g:25344:1: ( 'ordered' )
-            // InternalOCLinEcore.g:25345:1: 'ordered'
+            // InternalOCLinEcore.g:25348:1: ( 'ordered' )
+            // InternalOCLinEcore.g:25349:1: 'ordered'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0());
@@ -74666,23 +74666,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_5"
-    // InternalOCLinEcore.g:25360:1: rule__AttributeCS__QualifiersAssignment_5_1_0_5 : ( ( '!ordered' ) ) ;
+    // InternalOCLinEcore.g:25364:1: rule__AttributeCS__QualifiersAssignment_5_1_0_5 : ( ( '!ordered' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25364:1: ( ( ( '!ordered' ) ) )
-            // InternalOCLinEcore.g:25365:1: ( ( '!ordered' ) )
+            // InternalOCLinEcore.g:25368:1: ( ( ( '!ordered' ) ) )
+            // InternalOCLinEcore.g:25369:1: ( ( '!ordered' ) )
             {
-            // InternalOCLinEcore.g:25365:1: ( ( '!ordered' ) )
-            // InternalOCLinEcore.g:25366:1: ( '!ordered' )
+            // InternalOCLinEcore.g:25369:1: ( ( '!ordered' ) )
+            // InternalOCLinEcore.g:25370:1: ( '!ordered' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0());
             }
-            // InternalOCLinEcore.g:25367:1: ( '!ordered' )
-            // InternalOCLinEcore.g:25368:1: '!ordered'
+            // InternalOCLinEcore.g:25371:1: ( '!ordered' )
+            // InternalOCLinEcore.g:25372:1: '!ordered'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0());
@@ -74719,23 +74719,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_6"
-    // InternalOCLinEcore.g:25383:1: rule__AttributeCS__QualifiersAssignment_5_1_0_6 : ( ( 'readonly' ) ) ;
+    // InternalOCLinEcore.g:25387:1: rule__AttributeCS__QualifiersAssignment_5_1_0_6 : ( ( 'readonly' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25387:1: ( ( ( 'readonly' ) ) )
-            // InternalOCLinEcore.g:25388:1: ( ( 'readonly' ) )
+            // InternalOCLinEcore.g:25391:1: ( ( ( 'readonly' ) ) )
+            // InternalOCLinEcore.g:25392:1: ( ( 'readonly' ) )
             {
-            // InternalOCLinEcore.g:25388:1: ( ( 'readonly' ) )
-            // InternalOCLinEcore.g:25389:1: ( 'readonly' )
+            // InternalOCLinEcore.g:25392:1: ( ( 'readonly' ) )
+            // InternalOCLinEcore.g:25393:1: ( 'readonly' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0());
             }
-            // InternalOCLinEcore.g:25390:1: ( 'readonly' )
-            // InternalOCLinEcore.g:25391:1: 'readonly'
+            // InternalOCLinEcore.g:25394:1: ( 'readonly' )
+            // InternalOCLinEcore.g:25395:1: 'readonly'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0());
@@ -74772,23 +74772,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_7"
-    // InternalOCLinEcore.g:25406:1: rule__AttributeCS__QualifiersAssignment_5_1_0_7 : ( ( '!readonly' ) ) ;
+    // InternalOCLinEcore.g:25410:1: rule__AttributeCS__QualifiersAssignment_5_1_0_7 : ( ( '!readonly' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25410:1: ( ( ( '!readonly' ) ) )
-            // InternalOCLinEcore.g:25411:1: ( ( '!readonly' ) )
+            // InternalOCLinEcore.g:25414:1: ( ( ( '!readonly' ) ) )
+            // InternalOCLinEcore.g:25415:1: ( ( '!readonly' ) )
             {
-            // InternalOCLinEcore.g:25411:1: ( ( '!readonly' ) )
-            // InternalOCLinEcore.g:25412:1: ( '!readonly' )
+            // InternalOCLinEcore.g:25415:1: ( ( '!readonly' ) )
+            // InternalOCLinEcore.g:25416:1: ( '!readonly' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0());
             }
-            // InternalOCLinEcore.g:25413:1: ( '!readonly' )
-            // InternalOCLinEcore.g:25414:1: '!readonly'
+            // InternalOCLinEcore.g:25417:1: ( '!readonly' )
+            // InternalOCLinEcore.g:25418:1: '!readonly'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0());
@@ -74825,23 +74825,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_8"
-    // InternalOCLinEcore.g:25429:1: rule__AttributeCS__QualifiersAssignment_5_1_0_8 : ( ( 'transient' ) ) ;
+    // InternalOCLinEcore.g:25433:1: rule__AttributeCS__QualifiersAssignment_5_1_0_8 : ( ( 'transient' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25433:1: ( ( ( 'transient' ) ) )
-            // InternalOCLinEcore.g:25434:1: ( ( 'transient' ) )
+            // InternalOCLinEcore.g:25437:1: ( ( ( 'transient' ) ) )
+            // InternalOCLinEcore.g:25438:1: ( ( 'transient' ) )
             {
-            // InternalOCLinEcore.g:25434:1: ( ( 'transient' ) )
-            // InternalOCLinEcore.g:25435:1: ( 'transient' )
+            // InternalOCLinEcore.g:25438:1: ( ( 'transient' ) )
+            // InternalOCLinEcore.g:25439:1: ( 'transient' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0());
             }
-            // InternalOCLinEcore.g:25436:1: ( 'transient' )
-            // InternalOCLinEcore.g:25437:1: 'transient'
+            // InternalOCLinEcore.g:25440:1: ( 'transient' )
+            // InternalOCLinEcore.g:25441:1: 'transient'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0());
@@ -74878,23 +74878,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_9"
-    // InternalOCLinEcore.g:25452:1: rule__AttributeCS__QualifiersAssignment_5_1_0_9 : ( ( '!transient' ) ) ;
+    // InternalOCLinEcore.g:25456:1: rule__AttributeCS__QualifiersAssignment_5_1_0_9 : ( ( '!transient' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25456:1: ( ( ( '!transient' ) ) )
-            // InternalOCLinEcore.g:25457:1: ( ( '!transient' ) )
+            // InternalOCLinEcore.g:25460:1: ( ( ( '!transient' ) ) )
+            // InternalOCLinEcore.g:25461:1: ( ( '!transient' ) )
             {
-            // InternalOCLinEcore.g:25457:1: ( ( '!transient' ) )
-            // InternalOCLinEcore.g:25458:1: ( '!transient' )
+            // InternalOCLinEcore.g:25461:1: ( ( '!transient' ) )
+            // InternalOCLinEcore.g:25462:1: ( '!transient' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0());
             }
-            // InternalOCLinEcore.g:25459:1: ( '!transient' )
-            // InternalOCLinEcore.g:25460:1: '!transient'
+            // InternalOCLinEcore.g:25463:1: ( '!transient' )
+            // InternalOCLinEcore.g:25464:1: '!transient'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0());
@@ -74931,23 +74931,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_10"
-    // InternalOCLinEcore.g:25475:1: rule__AttributeCS__QualifiersAssignment_5_1_0_10 : ( ( 'unique' ) ) ;
+    // InternalOCLinEcore.g:25479:1: rule__AttributeCS__QualifiersAssignment_5_1_0_10 : ( ( 'unique' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25479:1: ( ( ( 'unique' ) ) )
-            // InternalOCLinEcore.g:25480:1: ( ( 'unique' ) )
+            // InternalOCLinEcore.g:25483:1: ( ( ( 'unique' ) ) )
+            // InternalOCLinEcore.g:25484:1: ( ( 'unique' ) )
             {
-            // InternalOCLinEcore.g:25480:1: ( ( 'unique' ) )
-            // InternalOCLinEcore.g:25481:1: ( 'unique' )
+            // InternalOCLinEcore.g:25484:1: ( ( 'unique' ) )
+            // InternalOCLinEcore.g:25485:1: ( 'unique' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0());
             }
-            // InternalOCLinEcore.g:25482:1: ( 'unique' )
-            // InternalOCLinEcore.g:25483:1: 'unique'
+            // InternalOCLinEcore.g:25486:1: ( 'unique' )
+            // InternalOCLinEcore.g:25487:1: 'unique'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0());
@@ -74984,23 +74984,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_11"
-    // InternalOCLinEcore.g:25498:1: rule__AttributeCS__QualifiersAssignment_5_1_0_11 : ( ( '!unique' ) ) ;
+    // InternalOCLinEcore.g:25502:1: rule__AttributeCS__QualifiersAssignment_5_1_0_11 : ( ( '!unique' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25502:1: ( ( ( '!unique' ) ) )
-            // InternalOCLinEcore.g:25503:1: ( ( '!unique' ) )
+            // InternalOCLinEcore.g:25506:1: ( ( ( '!unique' ) ) )
+            // InternalOCLinEcore.g:25507:1: ( ( '!unique' ) )
             {
-            // InternalOCLinEcore.g:25503:1: ( ( '!unique' ) )
-            // InternalOCLinEcore.g:25504:1: ( '!unique' )
+            // InternalOCLinEcore.g:25507:1: ( ( '!unique' ) )
+            // InternalOCLinEcore.g:25508:1: ( '!unique' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0());
             }
-            // InternalOCLinEcore.g:25505:1: ( '!unique' )
-            // InternalOCLinEcore.g:25506:1: '!unique'
+            // InternalOCLinEcore.g:25509:1: ( '!unique' )
+            // InternalOCLinEcore.g:25510:1: '!unique'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0());
@@ -75037,23 +75037,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_12"
-    // InternalOCLinEcore.g:25521:1: rule__AttributeCS__QualifiersAssignment_5_1_0_12 : ( ( 'unsettable' ) ) ;
+    // InternalOCLinEcore.g:25525:1: rule__AttributeCS__QualifiersAssignment_5_1_0_12 : ( ( 'unsettable' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25525:1: ( ( ( 'unsettable' ) ) )
-            // InternalOCLinEcore.g:25526:1: ( ( 'unsettable' ) )
+            // InternalOCLinEcore.g:25529:1: ( ( ( 'unsettable' ) ) )
+            // InternalOCLinEcore.g:25530:1: ( ( 'unsettable' ) )
             {
-            // InternalOCLinEcore.g:25526:1: ( ( 'unsettable' ) )
-            // InternalOCLinEcore.g:25527:1: ( 'unsettable' )
+            // InternalOCLinEcore.g:25530:1: ( ( 'unsettable' ) )
+            // InternalOCLinEcore.g:25531:1: ( 'unsettable' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0());
             }
-            // InternalOCLinEcore.g:25528:1: ( 'unsettable' )
-            // InternalOCLinEcore.g:25529:1: 'unsettable'
+            // InternalOCLinEcore.g:25532:1: ( 'unsettable' )
+            // InternalOCLinEcore.g:25533:1: 'unsettable'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0());
@@ -75090,23 +75090,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_13"
-    // InternalOCLinEcore.g:25544:1: rule__AttributeCS__QualifiersAssignment_5_1_0_13 : ( ( '!unsettable' ) ) ;
+    // InternalOCLinEcore.g:25548:1: rule__AttributeCS__QualifiersAssignment_5_1_0_13 : ( ( '!unsettable' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_13() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25548:1: ( ( ( '!unsettable' ) ) )
-            // InternalOCLinEcore.g:25549:1: ( ( '!unsettable' ) )
+            // InternalOCLinEcore.g:25552:1: ( ( ( '!unsettable' ) ) )
+            // InternalOCLinEcore.g:25553:1: ( ( '!unsettable' ) )
             {
-            // InternalOCLinEcore.g:25549:1: ( ( '!unsettable' ) )
-            // InternalOCLinEcore.g:25550:1: ( '!unsettable' )
+            // InternalOCLinEcore.g:25553:1: ( ( '!unsettable' ) )
+            // InternalOCLinEcore.g:25554:1: ( '!unsettable' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0());
             }
-            // InternalOCLinEcore.g:25551:1: ( '!unsettable' )
-            // InternalOCLinEcore.g:25552:1: '!unsettable'
+            // InternalOCLinEcore.g:25555:1: ( '!unsettable' )
+            // InternalOCLinEcore.g:25556:1: '!unsettable'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0());
@@ -75143,23 +75143,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_14"
-    // InternalOCLinEcore.g:25567:1: rule__AttributeCS__QualifiersAssignment_5_1_0_14 : ( ( 'volatile' ) ) ;
+    // InternalOCLinEcore.g:25571:1: rule__AttributeCS__QualifiersAssignment_5_1_0_14 : ( ( 'volatile' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_14() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25571:1: ( ( ( 'volatile' ) ) )
-            // InternalOCLinEcore.g:25572:1: ( ( 'volatile' ) )
+            // InternalOCLinEcore.g:25575:1: ( ( ( 'volatile' ) ) )
+            // InternalOCLinEcore.g:25576:1: ( ( 'volatile' ) )
             {
-            // InternalOCLinEcore.g:25572:1: ( ( 'volatile' ) )
-            // InternalOCLinEcore.g:25573:1: ( 'volatile' )
+            // InternalOCLinEcore.g:25576:1: ( ( 'volatile' ) )
+            // InternalOCLinEcore.g:25577:1: ( 'volatile' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0());
             }
-            // InternalOCLinEcore.g:25574:1: ( 'volatile' )
-            // InternalOCLinEcore.g:25575:1: 'volatile'
+            // InternalOCLinEcore.g:25578:1: ( 'volatile' )
+            // InternalOCLinEcore.g:25579:1: 'volatile'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0());
@@ -75196,23 +75196,23 @@
 
 
     // $ANTLR start "rule__AttributeCS__QualifiersAssignment_5_1_0_15"
-    // InternalOCLinEcore.g:25590:1: rule__AttributeCS__QualifiersAssignment_5_1_0_15 : ( ( '!volatile' ) ) ;
+    // InternalOCLinEcore.g:25594:1: rule__AttributeCS__QualifiersAssignment_5_1_0_15 : ( ( '!volatile' ) ) ;
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_15() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25594:1: ( ( ( '!volatile' ) ) )
-            // InternalOCLinEcore.g:25595:1: ( ( '!volatile' ) )
+            // InternalOCLinEcore.g:25598:1: ( ( ( '!volatile' ) ) )
+            // InternalOCLinEcore.g:25599:1: ( ( '!volatile' ) )
             {
-            // InternalOCLinEcore.g:25595:1: ( ( '!volatile' ) )
-            // InternalOCLinEcore.g:25596:1: ( '!volatile' )
+            // InternalOCLinEcore.g:25599:1: ( ( '!volatile' ) )
+            // InternalOCLinEcore.g:25600:1: ( '!volatile' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0());
             }
-            // InternalOCLinEcore.g:25597:1: ( '!volatile' )
-            // InternalOCLinEcore.g:25598:1: '!volatile'
+            // InternalOCLinEcore.g:25601:1: ( '!volatile' )
+            // InternalOCLinEcore.g:25602:1: '!volatile'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0());
@@ -75249,17 +75249,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0"
-    // InternalOCLinEcore.g:25613:1: rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLinEcore.g:25617:1: rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 : ( ruleAnnotationElementCS ) ;
     public final void rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25617:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLinEcore.g:25618:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:25621:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLinEcore.g:25622:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLinEcore.g:25618:1: ( ruleAnnotationElementCS )
-            // InternalOCLinEcore.g:25619:1: ruleAnnotationElementCS
+            // InternalOCLinEcore.g:25622:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:25623:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0());
@@ -75294,17 +75294,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3"
-    // InternalOCLinEcore.g:25628:1: rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 : ( ruleSpecificationCS ) ;
+    // InternalOCLinEcore.g:25632:1: rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 : ( ruleSpecificationCS ) ;
     public final void rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25632:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLinEcore.g:25633:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:25636:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLinEcore.g:25637:1: ( ruleSpecificationCS )
             {
-            // InternalOCLinEcore.g:25633:1: ( ruleSpecificationCS )
-            // InternalOCLinEcore.g:25634:1: ruleSpecificationCS
+            // InternalOCLinEcore.g:25637:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:25638:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_1_3_0());
@@ -75339,17 +75339,17 @@
 
 
     // $ANTLR start "rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3"
-    // InternalOCLinEcore.g:25643:1: rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 : ( ruleSpecificationCS ) ;
+    // InternalOCLinEcore.g:25647:1: rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 : ( ruleSpecificationCS ) ;
     public final void rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25647:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLinEcore.g:25648:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:25651:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLinEcore.g:25652:1: ( ruleSpecificationCS )
             {
-            // InternalOCLinEcore.g:25648:1: ( ruleSpecificationCS )
-            // InternalOCLinEcore.g:25649:1: ruleSpecificationCS
+            // InternalOCLinEcore.g:25652:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:25653:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_2_3_0());
@@ -75384,23 +75384,23 @@
 
 
     // $ANTLR start "rule__DataTypeCS__IsPrimitiveAssignment_0"
-    // InternalOCLinEcore.g:25658:1: rule__DataTypeCS__IsPrimitiveAssignment_0 : ( ( 'primitive' ) ) ;
+    // InternalOCLinEcore.g:25662:1: rule__DataTypeCS__IsPrimitiveAssignment_0 : ( ( 'primitive' ) ) ;
     public final void rule__DataTypeCS__IsPrimitiveAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25662:1: ( ( ( 'primitive' ) ) )
-            // InternalOCLinEcore.g:25663:1: ( ( 'primitive' ) )
+            // InternalOCLinEcore.g:25666:1: ( ( ( 'primitive' ) ) )
+            // InternalOCLinEcore.g:25667:1: ( ( 'primitive' ) )
             {
-            // InternalOCLinEcore.g:25663:1: ( ( 'primitive' ) )
-            // InternalOCLinEcore.g:25664:1: ( 'primitive' )
+            // InternalOCLinEcore.g:25667:1: ( ( 'primitive' ) )
+            // InternalOCLinEcore.g:25668:1: ( 'primitive' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0());
             }
-            // InternalOCLinEcore.g:25665:1: ( 'primitive' )
-            // InternalOCLinEcore.g:25666:1: 'primitive'
+            // InternalOCLinEcore.g:25669:1: ( 'primitive' )
+            // InternalOCLinEcore.g:25670:1: 'primitive'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0());
@@ -75437,17 +75437,17 @@
 
 
     // $ANTLR start "rule__DataTypeCS__NameAssignment_2"
-    // InternalOCLinEcore.g:25681:1: rule__DataTypeCS__NameAssignment_2 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:25685:1: rule__DataTypeCS__NameAssignment_2 : ( ruleUnrestrictedName ) ;
     public final void rule__DataTypeCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25685:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:25686:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:25689:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:25690:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:25686:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:25687:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:25690:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:25691:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
@@ -75482,17 +75482,17 @@
 
 
     // $ANTLR start "rule__DataTypeCS__OwnedSignatureAssignment_3"
-    // InternalOCLinEcore.g:25696:1: rule__DataTypeCS__OwnedSignatureAssignment_3 : ( ruleTemplateSignatureCS ) ;
+    // InternalOCLinEcore.g:25700:1: rule__DataTypeCS__OwnedSignatureAssignment_3 : ( ruleTemplateSignatureCS ) ;
     public final void rule__DataTypeCS__OwnedSignatureAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25700:1: ( ( ruleTemplateSignatureCS ) )
-            // InternalOCLinEcore.g:25701:1: ( ruleTemplateSignatureCS )
+            // InternalOCLinEcore.g:25704:1: ( ( ruleTemplateSignatureCS ) )
+            // InternalOCLinEcore.g:25705:1: ( ruleTemplateSignatureCS )
             {
-            // InternalOCLinEcore.g:25701:1: ( ruleTemplateSignatureCS )
-            // InternalOCLinEcore.g:25702:1: ruleTemplateSignatureCS
+            // InternalOCLinEcore.g:25705:1: ( ruleTemplateSignatureCS )
+            // InternalOCLinEcore.g:25706:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
@@ -75527,17 +75527,17 @@
 
 
     // $ANTLR start "rule__DataTypeCS__InstanceClassNameAssignment_4_1"
-    // InternalOCLinEcore.g:25711:1: rule__DataTypeCS__InstanceClassNameAssignment_4_1 : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalOCLinEcore.g:25715:1: rule__DataTypeCS__InstanceClassNameAssignment_4_1 : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void rule__DataTypeCS__InstanceClassNameAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25715:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLinEcore.g:25716:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:25719:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLinEcore.g:25720:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalOCLinEcore.g:25716:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:25717:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:25720:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:25721:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0());
@@ -75568,23 +75568,23 @@
 
 
     // $ANTLR start "rule__DataTypeCS__IsSerializableAssignment_5_1_0"
-    // InternalOCLinEcore.g:25726:1: rule__DataTypeCS__IsSerializableAssignment_5_1_0 : ( ( 'serializable' ) ) ;
+    // InternalOCLinEcore.g:25730:1: rule__DataTypeCS__IsSerializableAssignment_5_1_0 : ( ( 'serializable' ) ) ;
     public final void rule__DataTypeCS__IsSerializableAssignment_5_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25730:1: ( ( ( 'serializable' ) ) )
-            // InternalOCLinEcore.g:25731:1: ( ( 'serializable' ) )
+            // InternalOCLinEcore.g:25734:1: ( ( ( 'serializable' ) ) )
+            // InternalOCLinEcore.g:25735:1: ( ( 'serializable' ) )
             {
-            // InternalOCLinEcore.g:25731:1: ( ( 'serializable' ) )
-            // InternalOCLinEcore.g:25732:1: ( 'serializable' )
+            // InternalOCLinEcore.g:25735:1: ( ( 'serializable' ) )
+            // InternalOCLinEcore.g:25736:1: ( 'serializable' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0());
             }
-            // InternalOCLinEcore.g:25733:1: ( 'serializable' )
-            // InternalOCLinEcore.g:25734:1: 'serializable'
+            // InternalOCLinEcore.g:25737:1: ( 'serializable' )
+            // InternalOCLinEcore.g:25738:1: 'serializable'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0());
@@ -75621,17 +75621,17 @@
 
 
     // $ANTLR start "rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0"
-    // InternalOCLinEcore.g:25749:1: rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLinEcore.g:25753:1: rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 : ( ruleAnnotationElementCS ) ;
     public final void rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25753:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLinEcore.g:25754:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:25757:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLinEcore.g:25758:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLinEcore.g:25754:1: ( ruleAnnotationElementCS )
-            // InternalOCLinEcore.g:25755:1: ruleAnnotationElementCS
+            // InternalOCLinEcore.g:25758:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:25759:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0());
@@ -75666,17 +75666,17 @@
 
 
     // $ANTLR start "rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1"
-    // InternalOCLinEcore.g:25764:1: rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 : ( ruleInvariantConstraintCS ) ;
+    // InternalOCLinEcore.g:25768:1: rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 : ( ruleInvariantConstraintCS ) ;
     public final void rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25768:1: ( ( ruleInvariantConstraintCS ) )
-            // InternalOCLinEcore.g:25769:1: ( ruleInvariantConstraintCS )
+            // InternalOCLinEcore.g:25772:1: ( ( ruleInvariantConstraintCS ) )
+            // InternalOCLinEcore.g:25773:1: ( ruleInvariantConstraintCS )
             {
-            // InternalOCLinEcore.g:25769:1: ( ruleInvariantConstraintCS )
-            // InternalOCLinEcore.g:25770:1: ruleInvariantConstraintCS
+            // InternalOCLinEcore.g:25773:1: ( ruleInvariantConstraintCS )
+            // InternalOCLinEcore.g:25774:1: ruleInvariantConstraintCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_6_0_1_1_0());
@@ -75711,23 +75711,23 @@
 
 
     // $ANTLR start "rule__DetailCS__NameAssignment_0"
-    // InternalOCLinEcore.g:25779:1: rule__DetailCS__NameAssignment_0 : ( ( rule__DetailCS__NameAlternatives_0_0 ) ) ;
+    // InternalOCLinEcore.g:25783:1: rule__DetailCS__NameAssignment_0 : ( ( rule__DetailCS__NameAlternatives_0_0 ) ) ;
     public final void rule__DetailCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25783:1: ( ( ( rule__DetailCS__NameAlternatives_0_0 ) ) )
-            // InternalOCLinEcore.g:25784:1: ( ( rule__DetailCS__NameAlternatives_0_0 ) )
+            // InternalOCLinEcore.g:25787:1: ( ( ( rule__DetailCS__NameAlternatives_0_0 ) ) )
+            // InternalOCLinEcore.g:25788:1: ( ( rule__DetailCS__NameAlternatives_0_0 ) )
             {
-            // InternalOCLinEcore.g:25784:1: ( ( rule__DetailCS__NameAlternatives_0_0 ) )
-            // InternalOCLinEcore.g:25785:1: ( rule__DetailCS__NameAlternatives_0_0 )
+            // InternalOCLinEcore.g:25788:1: ( ( rule__DetailCS__NameAlternatives_0_0 ) )
+            // InternalOCLinEcore.g:25789:1: ( rule__DetailCS__NameAlternatives_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDetailCSAccess().getNameAlternatives_0_0());
             }
-            // InternalOCLinEcore.g:25786:1: ( rule__DetailCS__NameAlternatives_0_0 )
-            // InternalOCLinEcore.g:25786:2: rule__DetailCS__NameAlternatives_0_0
+            // InternalOCLinEcore.g:25790:1: ( rule__DetailCS__NameAlternatives_0_0 )
+            // InternalOCLinEcore.g:25790:2: rule__DetailCS__NameAlternatives_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DetailCS__NameAlternatives_0_0();
@@ -75762,23 +75762,23 @@
 
 
     // $ANTLR start "rule__DetailCS__ValuesAssignment_2"
-    // InternalOCLinEcore.g:25795:1: rule__DetailCS__ValuesAssignment_2 : ( ( rule__DetailCS__ValuesAlternatives_2_0 ) ) ;
+    // InternalOCLinEcore.g:25799:1: rule__DetailCS__ValuesAssignment_2 : ( ( rule__DetailCS__ValuesAlternatives_2_0 ) ) ;
     public final void rule__DetailCS__ValuesAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25799:1: ( ( ( rule__DetailCS__ValuesAlternatives_2_0 ) ) )
-            // InternalOCLinEcore.g:25800:1: ( ( rule__DetailCS__ValuesAlternatives_2_0 ) )
+            // InternalOCLinEcore.g:25803:1: ( ( ( rule__DetailCS__ValuesAlternatives_2_0 ) ) )
+            // InternalOCLinEcore.g:25804:1: ( ( rule__DetailCS__ValuesAlternatives_2_0 ) )
             {
-            // InternalOCLinEcore.g:25800:1: ( ( rule__DetailCS__ValuesAlternatives_2_0 ) )
-            // InternalOCLinEcore.g:25801:1: ( rule__DetailCS__ValuesAlternatives_2_0 )
+            // InternalOCLinEcore.g:25804:1: ( ( rule__DetailCS__ValuesAlternatives_2_0 ) )
+            // InternalOCLinEcore.g:25805:1: ( rule__DetailCS__ValuesAlternatives_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDetailCSAccess().getValuesAlternatives_2_0());
             }
-            // InternalOCLinEcore.g:25802:1: ( rule__DetailCS__ValuesAlternatives_2_0 )
-            // InternalOCLinEcore.g:25802:2: rule__DetailCS__ValuesAlternatives_2_0
+            // InternalOCLinEcore.g:25806:1: ( rule__DetailCS__ValuesAlternatives_2_0 )
+            // InternalOCLinEcore.g:25806:2: rule__DetailCS__ValuesAlternatives_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DetailCS__ValuesAlternatives_2_0();
@@ -75813,17 +75813,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__ValueAssignment_2"
-    // InternalOCLinEcore.g:25811:1: rule__DocumentationCS__ValueAssignment_2 : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalOCLinEcore.g:25815:1: rule__DocumentationCS__ValueAssignment_2 : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void rule__DocumentationCS__ValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25815:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLinEcore.g:25816:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:25819:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLinEcore.g:25820:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalOCLinEcore.g:25816:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:25817:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:25820:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:25821:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0());
@@ -75854,17 +75854,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__OwnedDetailsAssignment_3_1"
-    // InternalOCLinEcore.g:25826:1: rule__DocumentationCS__OwnedDetailsAssignment_3_1 : ( ruleDetailCS ) ;
+    // InternalOCLinEcore.g:25830:1: rule__DocumentationCS__OwnedDetailsAssignment_3_1 : ( ruleDetailCS ) ;
     public final void rule__DocumentationCS__OwnedDetailsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25830:1: ( ( ruleDetailCS ) )
-            // InternalOCLinEcore.g:25831:1: ( ruleDetailCS )
+            // InternalOCLinEcore.g:25834:1: ( ( ruleDetailCS ) )
+            // InternalOCLinEcore.g:25835:1: ( ruleDetailCS )
             {
-            // InternalOCLinEcore.g:25831:1: ( ruleDetailCS )
-            // InternalOCLinEcore.g:25832:1: ruleDetailCS
+            // InternalOCLinEcore.g:25835:1: ( ruleDetailCS )
+            // InternalOCLinEcore.g:25836:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
@@ -75899,17 +75899,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__OwnedDetailsAssignment_3_2_1"
-    // InternalOCLinEcore.g:25841:1: rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 : ( ruleDetailCS ) ;
+    // InternalOCLinEcore.g:25845:1: rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 : ( ruleDetailCS ) ;
     public final void rule__DocumentationCS__OwnedDetailsAssignment_3_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25845:1: ( ( ruleDetailCS ) )
-            // InternalOCLinEcore.g:25846:1: ( ruleDetailCS )
+            // InternalOCLinEcore.g:25849:1: ( ( ruleDetailCS ) )
+            // InternalOCLinEcore.g:25850:1: ( ruleDetailCS )
             {
-            // InternalOCLinEcore.g:25846:1: ( ruleDetailCS )
-            // InternalOCLinEcore.g:25847:1: ruleDetailCS
+            // InternalOCLinEcore.g:25850:1: ( ruleDetailCS )
+            // InternalOCLinEcore.g:25851:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
@@ -75944,17 +75944,17 @@
 
 
     // $ANTLR start "rule__EnumerationCS__NameAssignment_1"
-    // InternalOCLinEcore.g:25856:1: rule__EnumerationCS__NameAssignment_1 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:25860:1: rule__EnumerationCS__NameAssignment_1 : ( ruleUnrestrictedName ) ;
     public final void rule__EnumerationCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25860:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:25861:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:25864:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:25865:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:25861:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:25862:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:25865:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:25866:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getNameUnrestrictedNameParserRuleCall_1_0());
@@ -75989,17 +75989,17 @@
 
 
     // $ANTLR start "rule__EnumerationCS__OwnedSignatureAssignment_2"
-    // InternalOCLinEcore.g:25871:1: rule__EnumerationCS__OwnedSignatureAssignment_2 : ( ruleTemplateSignatureCS ) ;
+    // InternalOCLinEcore.g:25875:1: rule__EnumerationCS__OwnedSignatureAssignment_2 : ( ruleTemplateSignatureCS ) ;
     public final void rule__EnumerationCS__OwnedSignatureAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25875:1: ( ( ruleTemplateSignatureCS ) )
-            // InternalOCLinEcore.g:25876:1: ( ruleTemplateSignatureCS )
+            // InternalOCLinEcore.g:25879:1: ( ( ruleTemplateSignatureCS ) )
+            // InternalOCLinEcore.g:25880:1: ( ruleTemplateSignatureCS )
             {
-            // InternalOCLinEcore.g:25876:1: ( ruleTemplateSignatureCS )
-            // InternalOCLinEcore.g:25877:1: ruleTemplateSignatureCS
+            // InternalOCLinEcore.g:25880:1: ( ruleTemplateSignatureCS )
+            // InternalOCLinEcore.g:25881:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
@@ -76034,17 +76034,17 @@
 
 
     // $ANTLR start "rule__EnumerationCS__InstanceClassNameAssignment_3_1"
-    // InternalOCLinEcore.g:25886:1: rule__EnumerationCS__InstanceClassNameAssignment_3_1 : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalOCLinEcore.g:25890:1: rule__EnumerationCS__InstanceClassNameAssignment_3_1 : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void rule__EnumerationCS__InstanceClassNameAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25890:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLinEcore.g:25891:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:25894:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLinEcore.g:25895:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalOCLinEcore.g:25891:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:25892:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:25895:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:25896:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_3_1_0());
@@ -76075,23 +76075,23 @@
 
 
     // $ANTLR start "rule__EnumerationCS__IsSerializableAssignment_4_1_0"
-    // InternalOCLinEcore.g:25901:1: rule__EnumerationCS__IsSerializableAssignment_4_1_0 : ( ( 'serializable' ) ) ;
+    // InternalOCLinEcore.g:25905:1: rule__EnumerationCS__IsSerializableAssignment_4_1_0 : ( ( 'serializable' ) ) ;
     public final void rule__EnumerationCS__IsSerializableAssignment_4_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25905:1: ( ( ( 'serializable' ) ) )
-            // InternalOCLinEcore.g:25906:1: ( ( 'serializable' ) )
+            // InternalOCLinEcore.g:25909:1: ( ( ( 'serializable' ) ) )
+            // InternalOCLinEcore.g:25910:1: ( ( 'serializable' ) )
             {
-            // InternalOCLinEcore.g:25906:1: ( ( 'serializable' ) )
-            // InternalOCLinEcore.g:25907:1: ( 'serializable' )
+            // InternalOCLinEcore.g:25910:1: ( ( 'serializable' ) )
+            // InternalOCLinEcore.g:25911:1: ( 'serializable' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0());
             }
-            // InternalOCLinEcore.g:25908:1: ( 'serializable' )
-            // InternalOCLinEcore.g:25909:1: 'serializable'
+            // InternalOCLinEcore.g:25912:1: ( 'serializable' )
+            // InternalOCLinEcore.g:25913:1: 'serializable'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0());
@@ -76128,17 +76128,17 @@
 
 
     // $ANTLR start "rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0"
-    // InternalOCLinEcore.g:25924:1: rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLinEcore.g:25928:1: rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 : ( ruleAnnotationElementCS ) ;
     public final void rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25928:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLinEcore.g:25929:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:25932:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLinEcore.g:25933:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLinEcore.g:25929:1: ( ruleAnnotationElementCS )
-            // InternalOCLinEcore.g:25930:1: ruleAnnotationElementCS
+            // InternalOCLinEcore.g:25933:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:25934:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_5_0_1_0_0());
@@ -76173,17 +76173,17 @@
 
 
     // $ANTLR start "rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1"
-    // InternalOCLinEcore.g:25939:1: rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 : ( ruleEnumerationLiteralCS ) ;
+    // InternalOCLinEcore.g:25943:1: rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 : ( ruleEnumerationLiteralCS ) ;
     public final void rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25943:1: ( ( ruleEnumerationLiteralCS ) )
-            // InternalOCLinEcore.g:25944:1: ( ruleEnumerationLiteralCS )
+            // InternalOCLinEcore.g:25947:1: ( ( ruleEnumerationLiteralCS ) )
+            // InternalOCLinEcore.g:25948:1: ( ruleEnumerationLiteralCS )
             {
-            // InternalOCLinEcore.g:25944:1: ( ruleEnumerationLiteralCS )
-            // InternalOCLinEcore.g:25945:1: ruleEnumerationLiteralCS
+            // InternalOCLinEcore.g:25948:1: ( ruleEnumerationLiteralCS )
+            // InternalOCLinEcore.g:25949:1: ruleEnumerationLiteralCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsEnumerationLiteralCSParserRuleCall_5_0_1_1_0());
@@ -76218,17 +76218,17 @@
 
 
     // $ANTLR start "rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2"
-    // InternalOCLinEcore.g:25954:1: rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 : ( ruleInvariantConstraintCS ) ;
+    // InternalOCLinEcore.g:25958:1: rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 : ( ruleInvariantConstraintCS ) ;
     public final void rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25958:1: ( ( ruleInvariantConstraintCS ) )
-            // InternalOCLinEcore.g:25959:1: ( ruleInvariantConstraintCS )
+            // InternalOCLinEcore.g:25962:1: ( ( ruleInvariantConstraintCS ) )
+            // InternalOCLinEcore.g:25963:1: ( ruleInvariantConstraintCS )
             {
-            // InternalOCLinEcore.g:25959:1: ( ruleInvariantConstraintCS )
-            // InternalOCLinEcore.g:25960:1: ruleInvariantConstraintCS
+            // InternalOCLinEcore.g:25963:1: ( ruleInvariantConstraintCS )
+            // InternalOCLinEcore.g:25964:1: ruleInvariantConstraintCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_5_0_1_2_0());
@@ -76263,17 +76263,17 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__NameAssignment_0_0_1"
-    // InternalOCLinEcore.g:25969:1: rule__EnumerationLiteralCS__NameAssignment_0_0_1 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:25973:1: rule__EnumerationLiteralCS__NameAssignment_0_0_1 : ( ruleUnrestrictedName ) ;
     public final void rule__EnumerationLiteralCS__NameAssignment_0_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25973:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:25974:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:25977:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:25978:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:25974:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:25975:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:25978:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:25979:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_1_0());
@@ -76308,17 +76308,17 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__NameAssignment_0_1"
-    // InternalOCLinEcore.g:25984:1: rule__EnumerationLiteralCS__NameAssignment_0_1 : ( ruleEnumerationLiteralName ) ;
+    // InternalOCLinEcore.g:25988:1: rule__EnumerationLiteralCS__NameAssignment_0_1 : ( ruleEnumerationLiteralName ) ;
     public final void rule__EnumerationLiteralCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:25988:1: ( ( ruleEnumerationLiteralName ) )
-            // InternalOCLinEcore.g:25989:1: ( ruleEnumerationLiteralName )
+            // InternalOCLinEcore.g:25992:1: ( ( ruleEnumerationLiteralName ) )
+            // InternalOCLinEcore.g:25993:1: ( ruleEnumerationLiteralName )
             {
-            // InternalOCLinEcore.g:25989:1: ( ruleEnumerationLiteralName )
-            // InternalOCLinEcore.g:25990:1: ruleEnumerationLiteralName
+            // InternalOCLinEcore.g:25993:1: ( ruleEnumerationLiteralName )
+            // InternalOCLinEcore.g:25994:1: ruleEnumerationLiteralName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getNameEnumerationLiteralNameParserRuleCall_0_1_0());
@@ -76353,17 +76353,17 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__LiteralAssignment_1_1"
-    // InternalOCLinEcore.g:25999:1: rule__EnumerationLiteralCS__LiteralAssignment_1_1 : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalOCLinEcore.g:26003:1: rule__EnumerationLiteralCS__LiteralAssignment_1_1 : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void rule__EnumerationLiteralCS__LiteralAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26003:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLinEcore.g:26004:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:26007:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLinEcore.g:26008:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalOCLinEcore.g:26004:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:26005:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:26008:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:26009:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getLiteralSINGLE_QUOTED_STRINGTerminalRuleCall_1_1_0());
@@ -76394,17 +76394,17 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__ValueAssignment_2_1"
-    // InternalOCLinEcore.g:26014:1: rule__EnumerationLiteralCS__ValueAssignment_2_1 : ( ruleSIGNED ) ;
+    // InternalOCLinEcore.g:26018:1: rule__EnumerationLiteralCS__ValueAssignment_2_1 : ( ruleSIGNED ) ;
     public final void rule__EnumerationLiteralCS__ValueAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26018:1: ( ( ruleSIGNED ) )
-            // InternalOCLinEcore.g:26019:1: ( ruleSIGNED )
+            // InternalOCLinEcore.g:26022:1: ( ( ruleSIGNED ) )
+            // InternalOCLinEcore.g:26023:1: ( ruleSIGNED )
             {
-            // InternalOCLinEcore.g:26019:1: ( ruleSIGNED )
-            // InternalOCLinEcore.g:26020:1: ruleSIGNED
+            // InternalOCLinEcore.g:26023:1: ( ruleSIGNED )
+            // InternalOCLinEcore.g:26024:1: ruleSIGNED
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getValueSIGNEDParserRuleCall_2_1_0());
@@ -76439,17 +76439,17 @@
 
 
     // $ANTLR start "rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1"
-    // InternalOCLinEcore.g:26029:1: rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLinEcore.g:26033:1: rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1 : ( ruleAnnotationElementCS ) ;
     public final void rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_3_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26033:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLinEcore.g:26034:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:26037:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLinEcore.g:26038:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLinEcore.g:26034:1: ( ruleAnnotationElementCS )
-            // InternalOCLinEcore.g:26035:1: ruleAnnotationElementCS
+            // InternalOCLinEcore.g:26038:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:26039:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_0_1_0());
@@ -76484,17 +76484,17 @@
 
 
     // $ANTLR start "rule__ImportCS__NameAssignment_1_0"
-    // InternalOCLinEcore.g:26044:1: rule__ImportCS__NameAssignment_1_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:26048:1: rule__ImportCS__NameAssignment_1_0 : ( ruleUnrestrictedName ) ;
     public final void rule__ImportCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26048:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:26049:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:26052:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:26053:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:26049:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:26050:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:26053:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:26054:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
@@ -76529,17 +76529,17 @@
 
 
     // $ANTLR start "rule__ImportCS__OwnedPathNameAssignment_2"
-    // InternalOCLinEcore.g:26059:1: rule__ImportCS__OwnedPathNameAssignment_2 : ( ruleURIPathNameCS ) ;
+    // InternalOCLinEcore.g:26063:1: rule__ImportCS__OwnedPathNameAssignment_2 : ( ruleURIPathNameCS ) ;
     public final void rule__ImportCS__OwnedPathNameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26063:1: ( ( ruleURIPathNameCS ) )
-            // InternalOCLinEcore.g:26064:1: ( ruleURIPathNameCS )
+            // InternalOCLinEcore.g:26067:1: ( ( ruleURIPathNameCS ) )
+            // InternalOCLinEcore.g:26068:1: ( ruleURIPathNameCS )
             {
-            // InternalOCLinEcore.g:26064:1: ( ruleURIPathNameCS )
-            // InternalOCLinEcore.g:26065:1: ruleURIPathNameCS
+            // InternalOCLinEcore.g:26068:1: ( ruleURIPathNameCS )
+            // InternalOCLinEcore.g:26069:1: ruleURIPathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
@@ -76574,23 +76574,23 @@
 
 
     // $ANTLR start "rule__ImportCS__IsAllAssignment_3"
-    // InternalOCLinEcore.g:26074:1: rule__ImportCS__IsAllAssignment_3 : ( ( '::*' ) ) ;
+    // InternalOCLinEcore.g:26078:1: rule__ImportCS__IsAllAssignment_3 : ( ( '::*' ) ) ;
     public final void rule__ImportCS__IsAllAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26078:1: ( ( ( '::*' ) ) )
-            // InternalOCLinEcore.g:26079:1: ( ( '::*' ) )
+            // InternalOCLinEcore.g:26082:1: ( ( ( '::*' ) ) )
+            // InternalOCLinEcore.g:26083:1: ( ( '::*' ) )
             {
-            // InternalOCLinEcore.g:26079:1: ( ( '::*' ) )
-            // InternalOCLinEcore.g:26080:1: ( '::*' )
+            // InternalOCLinEcore.g:26083:1: ( ( '::*' ) )
+            // InternalOCLinEcore.g:26084:1: ( '::*' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
-            // InternalOCLinEcore.g:26081:1: ( '::*' )
-            // InternalOCLinEcore.g:26082:1: '::*'
+            // InternalOCLinEcore.g:26085:1: ( '::*' )
+            // InternalOCLinEcore.g:26086:1: '::*'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
@@ -76627,17 +76627,17 @@
 
 
     // $ANTLR start "rule__ModelElementRefCS__OwnedPathNameAssignment_1"
-    // InternalOCLinEcore.g:26097:1: rule__ModelElementRefCS__OwnedPathNameAssignment_1 : ( rulePathNameCS ) ;
+    // InternalOCLinEcore.g:26101:1: rule__ModelElementRefCS__OwnedPathNameAssignment_1 : ( rulePathNameCS ) ;
     public final void rule__ModelElementRefCS__OwnedPathNameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26101:1: ( ( rulePathNameCS ) )
-            // InternalOCLinEcore.g:26102:1: ( rulePathNameCS )
+            // InternalOCLinEcore.g:26105:1: ( ( rulePathNameCS ) )
+            // InternalOCLinEcore.g:26106:1: ( rulePathNameCS )
             {
-            // InternalOCLinEcore.g:26102:1: ( rulePathNameCS )
-            // InternalOCLinEcore.g:26103:1: rulePathNameCS
+            // InternalOCLinEcore.g:26106:1: ( rulePathNameCS )
+            // InternalOCLinEcore.g:26107:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getModelElementRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
@@ -76672,23 +76672,23 @@
 
 
     // $ANTLR start "rule__OperationCS__QualifiersAssignment_0_0_0"
-    // InternalOCLinEcore.g:26112:1: rule__OperationCS__QualifiersAssignment_0_0_0 : ( ( 'static' ) ) ;
+    // InternalOCLinEcore.g:26116:1: rule__OperationCS__QualifiersAssignment_0_0_0 : ( ( 'static' ) ) ;
     public final void rule__OperationCS__QualifiersAssignment_0_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26116:1: ( ( ( 'static' ) ) )
-            // InternalOCLinEcore.g:26117:1: ( ( 'static' ) )
+            // InternalOCLinEcore.g:26120:1: ( ( ( 'static' ) ) )
+            // InternalOCLinEcore.g:26121:1: ( ( 'static' ) )
             {
-            // InternalOCLinEcore.g:26117:1: ( ( 'static' ) )
-            // InternalOCLinEcore.g:26118:1: ( 'static' )
+            // InternalOCLinEcore.g:26121:1: ( ( 'static' ) )
+            // InternalOCLinEcore.g:26122:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
-            // InternalOCLinEcore.g:26119:1: ( 'static' )
-            // InternalOCLinEcore.g:26120:1: 'static'
+            // InternalOCLinEcore.g:26123:1: ( 'static' )
+            // InternalOCLinEcore.g:26124:1: 'static'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0());
@@ -76725,23 +76725,23 @@
 
 
     // $ANTLR start "rule__OperationCS__QualifiersAssignment_0_0_1"
-    // InternalOCLinEcore.g:26135:1: rule__OperationCS__QualifiersAssignment_0_0_1 : ( ( 'definition' ) ) ;
+    // InternalOCLinEcore.g:26139:1: rule__OperationCS__QualifiersAssignment_0_0_1 : ( ( 'definition' ) ) ;
     public final void rule__OperationCS__QualifiersAssignment_0_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26139:1: ( ( ( 'definition' ) ) )
-            // InternalOCLinEcore.g:26140:1: ( ( 'definition' ) )
+            // InternalOCLinEcore.g:26143:1: ( ( ( 'definition' ) ) )
+            // InternalOCLinEcore.g:26144:1: ( ( 'definition' ) )
             {
-            // InternalOCLinEcore.g:26140:1: ( ( 'definition' ) )
-            // InternalOCLinEcore.g:26141:1: ( 'definition' )
+            // InternalOCLinEcore.g:26144:1: ( ( 'definition' ) )
+            // InternalOCLinEcore.g:26145:1: ( 'definition' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
-            // InternalOCLinEcore.g:26142:1: ( 'definition' )
-            // InternalOCLinEcore.g:26143:1: 'definition'
+            // InternalOCLinEcore.g:26146:1: ( 'definition' )
+            // InternalOCLinEcore.g:26147:1: 'definition'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
@@ -76778,23 +76778,23 @@
 
 
     // $ANTLR start "rule__OperationCS__QualifiersAssignment_0_1_0"
-    // InternalOCLinEcore.g:26158:1: rule__OperationCS__QualifiersAssignment_0_1_0 : ( ( 'definition' ) ) ;
+    // InternalOCLinEcore.g:26162:1: rule__OperationCS__QualifiersAssignment_0_1_0 : ( ( 'definition' ) ) ;
     public final void rule__OperationCS__QualifiersAssignment_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26162:1: ( ( ( 'definition' ) ) )
-            // InternalOCLinEcore.g:26163:1: ( ( 'definition' ) )
+            // InternalOCLinEcore.g:26166:1: ( ( ( 'definition' ) ) )
+            // InternalOCLinEcore.g:26167:1: ( ( 'definition' ) )
             {
-            // InternalOCLinEcore.g:26163:1: ( ( 'definition' ) )
-            // InternalOCLinEcore.g:26164:1: ( 'definition' )
+            // InternalOCLinEcore.g:26167:1: ( ( 'definition' ) )
+            // InternalOCLinEcore.g:26168:1: ( 'definition' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
-            // InternalOCLinEcore.g:26165:1: ( 'definition' )
-            // InternalOCLinEcore.g:26166:1: 'definition'
+            // InternalOCLinEcore.g:26169:1: ( 'definition' )
+            // InternalOCLinEcore.g:26170:1: 'definition'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
@@ -76831,23 +76831,23 @@
 
 
     // $ANTLR start "rule__OperationCS__QualifiersAssignment_0_1_1"
-    // InternalOCLinEcore.g:26181:1: rule__OperationCS__QualifiersAssignment_0_1_1 : ( ( 'static' ) ) ;
+    // InternalOCLinEcore.g:26185:1: rule__OperationCS__QualifiersAssignment_0_1_1 : ( ( 'static' ) ) ;
     public final void rule__OperationCS__QualifiersAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26185:1: ( ( ( 'static' ) ) )
-            // InternalOCLinEcore.g:26186:1: ( ( 'static' ) )
+            // InternalOCLinEcore.g:26189:1: ( ( ( 'static' ) ) )
+            // InternalOCLinEcore.g:26190:1: ( ( 'static' ) )
             {
-            // InternalOCLinEcore.g:26186:1: ( ( 'static' ) )
-            // InternalOCLinEcore.g:26187:1: ( 'static' )
+            // InternalOCLinEcore.g:26190:1: ( ( 'static' ) )
+            // InternalOCLinEcore.g:26191:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
-            // InternalOCLinEcore.g:26188:1: ( 'static' )
-            // InternalOCLinEcore.g:26189:1: 'static'
+            // InternalOCLinEcore.g:26192:1: ( 'static' )
+            // InternalOCLinEcore.g:26193:1: 'static'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0());
@@ -76884,17 +76884,17 @@
 
 
     // $ANTLR start "rule__OperationCS__OwnedSignatureAssignment_2"
-    // InternalOCLinEcore.g:26204:1: rule__OperationCS__OwnedSignatureAssignment_2 : ( ruleTemplateSignatureCS ) ;
+    // InternalOCLinEcore.g:26208:1: rule__OperationCS__OwnedSignatureAssignment_2 : ( ruleTemplateSignatureCS ) ;
     public final void rule__OperationCS__OwnedSignatureAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26208:1: ( ( ruleTemplateSignatureCS ) )
-            // InternalOCLinEcore.g:26209:1: ( ruleTemplateSignatureCS )
+            // InternalOCLinEcore.g:26212:1: ( ( ruleTemplateSignatureCS ) )
+            // InternalOCLinEcore.g:26213:1: ( ruleTemplateSignatureCS )
             {
-            // InternalOCLinEcore.g:26209:1: ( ruleTemplateSignatureCS )
-            // InternalOCLinEcore.g:26210:1: ruleTemplateSignatureCS
+            // InternalOCLinEcore.g:26213:1: ( ruleTemplateSignatureCS )
+            // InternalOCLinEcore.g:26214:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
@@ -76929,17 +76929,17 @@
 
 
     // $ANTLR start "rule__OperationCS__NameAssignment_3"
-    // InternalOCLinEcore.g:26219:1: rule__OperationCS__NameAssignment_3 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:26223:1: rule__OperationCS__NameAssignment_3 : ( ruleUnrestrictedName ) ;
     public final void rule__OperationCS__NameAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26223:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:26224:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:26227:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:26228:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:26224:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:26225:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:26228:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:26229:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getNameUnrestrictedNameParserRuleCall_3_0());
@@ -76974,17 +76974,17 @@
 
 
     // $ANTLR start "rule__OperationCS__OwnedParametersAssignment_5_0"
-    // InternalOCLinEcore.g:26234:1: rule__OperationCS__OwnedParametersAssignment_5_0 : ( ruleParameterCS ) ;
+    // InternalOCLinEcore.g:26238:1: rule__OperationCS__OwnedParametersAssignment_5_0 : ( ruleParameterCS ) ;
     public final void rule__OperationCS__OwnedParametersAssignment_5_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26238:1: ( ( ruleParameterCS ) )
-            // InternalOCLinEcore.g:26239:1: ( ruleParameterCS )
+            // InternalOCLinEcore.g:26242:1: ( ( ruleParameterCS ) )
+            // InternalOCLinEcore.g:26243:1: ( ruleParameterCS )
             {
-            // InternalOCLinEcore.g:26239:1: ( ruleParameterCS )
-            // InternalOCLinEcore.g:26240:1: ruleParameterCS
+            // InternalOCLinEcore.g:26243:1: ( ruleParameterCS )
+            // InternalOCLinEcore.g:26244:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0());
@@ -77019,17 +77019,17 @@
 
 
     // $ANTLR start "rule__OperationCS__OwnedParametersAssignment_5_1_1"
-    // InternalOCLinEcore.g:26249:1: rule__OperationCS__OwnedParametersAssignment_5_1_1 : ( ruleParameterCS ) ;
+    // InternalOCLinEcore.g:26253:1: rule__OperationCS__OwnedParametersAssignment_5_1_1 : ( ruleParameterCS ) ;
     public final void rule__OperationCS__OwnedParametersAssignment_5_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26253:1: ( ( ruleParameterCS ) )
-            // InternalOCLinEcore.g:26254:1: ( ruleParameterCS )
+            // InternalOCLinEcore.g:26257:1: ( ( ruleParameterCS ) )
+            // InternalOCLinEcore.g:26258:1: ( ruleParameterCS )
             {
-            // InternalOCLinEcore.g:26254:1: ( ruleParameterCS )
-            // InternalOCLinEcore.g:26255:1: ruleParameterCS
+            // InternalOCLinEcore.g:26258:1: ( ruleParameterCS )
+            // InternalOCLinEcore.g:26259:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0());
@@ -77064,17 +77064,17 @@
 
 
     // $ANTLR start "rule__OperationCS__OwnedTypeAssignment_7_1"
-    // InternalOCLinEcore.g:26264:1: rule__OperationCS__OwnedTypeAssignment_7_1 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLinEcore.g:26268:1: rule__OperationCS__OwnedTypeAssignment_7_1 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__OperationCS__OwnedTypeAssignment_7_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26268:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLinEcore.g:26269:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLinEcore.g:26272:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLinEcore.g:26273:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLinEcore.g:26269:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLinEcore.g:26270:1: ruleTypedMultiplicityRefCS
+            // InternalOCLinEcore.g:26273:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLinEcore.g:26274:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_7_1_0());
@@ -77109,17 +77109,17 @@
 
 
     // $ANTLR start "rule__OperationCS__OwnedExceptionsAssignment_8_1"
-    // InternalOCLinEcore.g:26279:1: rule__OperationCS__OwnedExceptionsAssignment_8_1 : ( ruleTypedRefCS ) ;
+    // InternalOCLinEcore.g:26283:1: rule__OperationCS__OwnedExceptionsAssignment_8_1 : ( ruleTypedRefCS ) ;
     public final void rule__OperationCS__OwnedExceptionsAssignment_8_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26283:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLinEcore.g:26284:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:26287:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLinEcore.g:26288:1: ( ruleTypedRefCS )
             {
-            // InternalOCLinEcore.g:26284:1: ( ruleTypedRefCS )
-            // InternalOCLinEcore.g:26285:1: ruleTypedRefCS
+            // InternalOCLinEcore.g:26288:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:26289:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_1_0());
@@ -77154,17 +77154,17 @@
 
 
     // $ANTLR start "rule__OperationCS__OwnedExceptionsAssignment_8_2_1"
-    // InternalOCLinEcore.g:26294:1: rule__OperationCS__OwnedExceptionsAssignment_8_2_1 : ( ruleTypedRefCS ) ;
+    // InternalOCLinEcore.g:26298:1: rule__OperationCS__OwnedExceptionsAssignment_8_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__OperationCS__OwnedExceptionsAssignment_8_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26298:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLinEcore.g:26299:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:26302:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLinEcore.g:26303:1: ( ruleTypedRefCS )
             {
-            // InternalOCLinEcore.g:26299:1: ( ruleTypedRefCS )
-            // InternalOCLinEcore.g:26300:1: ruleTypedRefCS
+            // InternalOCLinEcore.g:26303:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:26304:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_2_1_0());
@@ -77199,23 +77199,23 @@
 
 
     // $ANTLR start "rule__OperationCS__QualifiersAssignment_9_1_0_0"
-    // InternalOCLinEcore.g:26309:1: rule__OperationCS__QualifiersAssignment_9_1_0_0 : ( ( 'derived' ) ) ;
+    // InternalOCLinEcore.g:26313:1: rule__OperationCS__QualifiersAssignment_9_1_0_0 : ( ( 'derived' ) ) ;
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26313:1: ( ( ( 'derived' ) ) )
-            // InternalOCLinEcore.g:26314:1: ( ( 'derived' ) )
+            // InternalOCLinEcore.g:26317:1: ( ( ( 'derived' ) ) )
+            // InternalOCLinEcore.g:26318:1: ( ( 'derived' ) )
             {
-            // InternalOCLinEcore.g:26314:1: ( ( 'derived' ) )
-            // InternalOCLinEcore.g:26315:1: ( 'derived' )
+            // InternalOCLinEcore.g:26318:1: ( ( 'derived' ) )
+            // InternalOCLinEcore.g:26319:1: ( 'derived' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0());
             }
-            // InternalOCLinEcore.g:26316:1: ( 'derived' )
-            // InternalOCLinEcore.g:26317:1: 'derived'
+            // InternalOCLinEcore.g:26320:1: ( 'derived' )
+            // InternalOCLinEcore.g:26321:1: 'derived'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0());
@@ -77252,23 +77252,23 @@
 
 
     // $ANTLR start "rule__OperationCS__QualifiersAssignment_9_1_0_1"
-    // InternalOCLinEcore.g:26332:1: rule__OperationCS__QualifiersAssignment_9_1_0_1 : ( ( '!derived' ) ) ;
+    // InternalOCLinEcore.g:26336:1: rule__OperationCS__QualifiersAssignment_9_1_0_1 : ( ( '!derived' ) ) ;
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26336:1: ( ( ( '!derived' ) ) )
-            // InternalOCLinEcore.g:26337:1: ( ( '!derived' ) )
+            // InternalOCLinEcore.g:26340:1: ( ( ( '!derived' ) ) )
+            // InternalOCLinEcore.g:26341:1: ( ( '!derived' ) )
             {
-            // InternalOCLinEcore.g:26337:1: ( ( '!derived' ) )
-            // InternalOCLinEcore.g:26338:1: ( '!derived' )
+            // InternalOCLinEcore.g:26341:1: ( ( '!derived' ) )
+            // InternalOCLinEcore.g:26342:1: ( '!derived' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0());
             }
-            // InternalOCLinEcore.g:26339:1: ( '!derived' )
-            // InternalOCLinEcore.g:26340:1: '!derived'
+            // InternalOCLinEcore.g:26343:1: ( '!derived' )
+            // InternalOCLinEcore.g:26344:1: '!derived'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0());
@@ -77305,23 +77305,23 @@
 
 
     // $ANTLR start "rule__OperationCS__QualifiersAssignment_9_1_0_2"
-    // InternalOCLinEcore.g:26355:1: rule__OperationCS__QualifiersAssignment_9_1_0_2 : ( ( 'ordered' ) ) ;
+    // InternalOCLinEcore.g:26359:1: rule__OperationCS__QualifiersAssignment_9_1_0_2 : ( ( 'ordered' ) ) ;
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26359:1: ( ( ( 'ordered' ) ) )
-            // InternalOCLinEcore.g:26360:1: ( ( 'ordered' ) )
+            // InternalOCLinEcore.g:26363:1: ( ( ( 'ordered' ) ) )
+            // InternalOCLinEcore.g:26364:1: ( ( 'ordered' ) )
             {
-            // InternalOCLinEcore.g:26360:1: ( ( 'ordered' ) )
-            // InternalOCLinEcore.g:26361:1: ( 'ordered' )
+            // InternalOCLinEcore.g:26364:1: ( ( 'ordered' ) )
+            // InternalOCLinEcore.g:26365:1: ( 'ordered' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0());
             }
-            // InternalOCLinEcore.g:26362:1: ( 'ordered' )
-            // InternalOCLinEcore.g:26363:1: 'ordered'
+            // InternalOCLinEcore.g:26366:1: ( 'ordered' )
+            // InternalOCLinEcore.g:26367:1: 'ordered'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0());
@@ -77358,23 +77358,23 @@
 
 
     // $ANTLR start "rule__OperationCS__QualifiersAssignment_9_1_0_3"
-    // InternalOCLinEcore.g:26378:1: rule__OperationCS__QualifiersAssignment_9_1_0_3 : ( ( '!ordered' ) ) ;
+    // InternalOCLinEcore.g:26382:1: rule__OperationCS__QualifiersAssignment_9_1_0_3 : ( ( '!ordered' ) ) ;
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26382:1: ( ( ( '!ordered' ) ) )
-            // InternalOCLinEcore.g:26383:1: ( ( '!ordered' ) )
+            // InternalOCLinEcore.g:26386:1: ( ( ( '!ordered' ) ) )
+            // InternalOCLinEcore.g:26387:1: ( ( '!ordered' ) )
             {
-            // InternalOCLinEcore.g:26383:1: ( ( '!ordered' ) )
-            // InternalOCLinEcore.g:26384:1: ( '!ordered' )
+            // InternalOCLinEcore.g:26387:1: ( ( '!ordered' ) )
+            // InternalOCLinEcore.g:26388:1: ( '!ordered' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0());
             }
-            // InternalOCLinEcore.g:26385:1: ( '!ordered' )
-            // InternalOCLinEcore.g:26386:1: '!ordered'
+            // InternalOCLinEcore.g:26389:1: ( '!ordered' )
+            // InternalOCLinEcore.g:26390:1: '!ordered'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0());
@@ -77411,23 +77411,23 @@
 
 
     // $ANTLR start "rule__OperationCS__QualifiersAssignment_9_1_0_4"
-    // InternalOCLinEcore.g:26401:1: rule__OperationCS__QualifiersAssignment_9_1_0_4 : ( ( 'transient' ) ) ;
+    // InternalOCLinEcore.g:26405:1: rule__OperationCS__QualifiersAssignment_9_1_0_4 : ( ( 'transient' ) ) ;
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26405:1: ( ( ( 'transient' ) ) )
-            // InternalOCLinEcore.g:26406:1: ( ( 'transient' ) )
+            // InternalOCLinEcore.g:26409:1: ( ( ( 'transient' ) ) )
+            // InternalOCLinEcore.g:26410:1: ( ( 'transient' ) )
             {
-            // InternalOCLinEcore.g:26406:1: ( ( 'transient' ) )
-            // InternalOCLinEcore.g:26407:1: ( 'transient' )
+            // InternalOCLinEcore.g:26410:1: ( ( 'transient' ) )
+            // InternalOCLinEcore.g:26411:1: ( 'transient' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0());
             }
-            // InternalOCLinEcore.g:26408:1: ( 'transient' )
-            // InternalOCLinEcore.g:26409:1: 'transient'
+            // InternalOCLinEcore.g:26412:1: ( 'transient' )
+            // InternalOCLinEcore.g:26413:1: 'transient'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0());
@@ -77464,23 +77464,23 @@
 
 
     // $ANTLR start "rule__OperationCS__QualifiersAssignment_9_1_0_5"
-    // InternalOCLinEcore.g:26424:1: rule__OperationCS__QualifiersAssignment_9_1_0_5 : ( ( '!transient' ) ) ;
+    // InternalOCLinEcore.g:26428:1: rule__OperationCS__QualifiersAssignment_9_1_0_5 : ( ( '!transient' ) ) ;
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26428:1: ( ( ( '!transient' ) ) )
-            // InternalOCLinEcore.g:26429:1: ( ( '!transient' ) )
+            // InternalOCLinEcore.g:26432:1: ( ( ( '!transient' ) ) )
+            // InternalOCLinEcore.g:26433:1: ( ( '!transient' ) )
             {
-            // InternalOCLinEcore.g:26429:1: ( ( '!transient' ) )
-            // InternalOCLinEcore.g:26430:1: ( '!transient' )
+            // InternalOCLinEcore.g:26433:1: ( ( '!transient' ) )
+            // InternalOCLinEcore.g:26434:1: ( '!transient' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0());
             }
-            // InternalOCLinEcore.g:26431:1: ( '!transient' )
-            // InternalOCLinEcore.g:26432:1: '!transient'
+            // InternalOCLinEcore.g:26435:1: ( '!transient' )
+            // InternalOCLinEcore.g:26436:1: '!transient'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0());
@@ -77517,23 +77517,23 @@
 
 
     // $ANTLR start "rule__OperationCS__QualifiersAssignment_9_1_0_6"
-    // InternalOCLinEcore.g:26447:1: rule__OperationCS__QualifiersAssignment_9_1_0_6 : ( ( 'unique' ) ) ;
+    // InternalOCLinEcore.g:26451:1: rule__OperationCS__QualifiersAssignment_9_1_0_6 : ( ( 'unique' ) ) ;
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26451:1: ( ( ( 'unique' ) ) )
-            // InternalOCLinEcore.g:26452:1: ( ( 'unique' ) )
+            // InternalOCLinEcore.g:26455:1: ( ( ( 'unique' ) ) )
+            // InternalOCLinEcore.g:26456:1: ( ( 'unique' ) )
             {
-            // InternalOCLinEcore.g:26452:1: ( ( 'unique' ) )
-            // InternalOCLinEcore.g:26453:1: ( 'unique' )
+            // InternalOCLinEcore.g:26456:1: ( ( 'unique' ) )
+            // InternalOCLinEcore.g:26457:1: ( 'unique' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0());
             }
-            // InternalOCLinEcore.g:26454:1: ( 'unique' )
-            // InternalOCLinEcore.g:26455:1: 'unique'
+            // InternalOCLinEcore.g:26458:1: ( 'unique' )
+            // InternalOCLinEcore.g:26459:1: 'unique'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0());
@@ -77570,23 +77570,23 @@
 
 
     // $ANTLR start "rule__OperationCS__QualifiersAssignment_9_1_0_7"
-    // InternalOCLinEcore.g:26470:1: rule__OperationCS__QualifiersAssignment_9_1_0_7 : ( ( '!unique' ) ) ;
+    // InternalOCLinEcore.g:26474:1: rule__OperationCS__QualifiersAssignment_9_1_0_7 : ( ( '!unique' ) ) ;
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26474:1: ( ( ( '!unique' ) ) )
-            // InternalOCLinEcore.g:26475:1: ( ( '!unique' ) )
+            // InternalOCLinEcore.g:26478:1: ( ( ( '!unique' ) ) )
+            // InternalOCLinEcore.g:26479:1: ( ( '!unique' ) )
             {
-            // InternalOCLinEcore.g:26475:1: ( ( '!unique' ) )
-            // InternalOCLinEcore.g:26476:1: ( '!unique' )
+            // InternalOCLinEcore.g:26479:1: ( ( '!unique' ) )
+            // InternalOCLinEcore.g:26480:1: ( '!unique' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0());
             }
-            // InternalOCLinEcore.g:26477:1: ( '!unique' )
-            // InternalOCLinEcore.g:26478:1: '!unique'
+            // InternalOCLinEcore.g:26481:1: ( '!unique' )
+            // InternalOCLinEcore.g:26482:1: '!unique'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0());
@@ -77623,17 +77623,17 @@
 
 
     // $ANTLR start "rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0"
-    // InternalOCLinEcore.g:26493:1: rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLinEcore.g:26497:1: rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 : ( ruleAnnotationElementCS ) ;
     public final void rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26497:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLinEcore.g:26498:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:26501:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLinEcore.g:26502:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLinEcore.g:26498:1: ( ruleAnnotationElementCS )
-            // InternalOCLinEcore.g:26499:1: ruleAnnotationElementCS
+            // InternalOCLinEcore.g:26502:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:26503:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_10_0_1_0_0());
@@ -77668,17 +77668,17 @@
 
 
     // $ANTLR start "rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1"
-    // InternalOCLinEcore.g:26508:1: rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 : ( rulePreconditionConstraintCS ) ;
+    // InternalOCLinEcore.g:26512:1: rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 : ( rulePreconditionConstraintCS ) ;
     public final void rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26512:1: ( ( rulePreconditionConstraintCS ) )
-            // InternalOCLinEcore.g:26513:1: ( rulePreconditionConstraintCS )
+            // InternalOCLinEcore.g:26516:1: ( ( rulePreconditionConstraintCS ) )
+            // InternalOCLinEcore.g:26517:1: ( rulePreconditionConstraintCS )
             {
-            // InternalOCLinEcore.g:26513:1: ( rulePreconditionConstraintCS )
-            // InternalOCLinEcore.g:26514:1: rulePreconditionConstraintCS
+            // InternalOCLinEcore.g:26517:1: ( rulePreconditionConstraintCS )
+            // InternalOCLinEcore.g:26518:1: rulePreconditionConstraintCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedPreconditionsPreconditionConstraintCSParserRuleCall_10_0_1_1_0());
@@ -77713,17 +77713,17 @@
 
 
     // $ANTLR start "rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3"
-    // InternalOCLinEcore.g:26523:1: rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 : ( ruleSpecificationCS ) ;
+    // InternalOCLinEcore.g:26527:1: rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 : ( ruleSpecificationCS ) ;
     public final void rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26527:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLinEcore.g:26528:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:26531:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLinEcore.g:26532:1: ( ruleSpecificationCS )
             {
-            // InternalOCLinEcore.g:26528:1: ( ruleSpecificationCS )
-            // InternalOCLinEcore.g:26529:1: ruleSpecificationCS
+            // InternalOCLinEcore.g:26532:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:26533:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_10_0_1_2_3_0());
@@ -77758,17 +77758,17 @@
 
 
     // $ANTLR start "rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3"
-    // InternalOCLinEcore.g:26538:1: rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 : ( rulePostconditionConstraintCS ) ;
+    // InternalOCLinEcore.g:26542:1: rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 : ( rulePostconditionConstraintCS ) ;
     public final void rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26542:1: ( ( rulePostconditionConstraintCS ) )
-            // InternalOCLinEcore.g:26543:1: ( rulePostconditionConstraintCS )
+            // InternalOCLinEcore.g:26546:1: ( ( rulePostconditionConstraintCS ) )
+            // InternalOCLinEcore.g:26547:1: ( rulePostconditionConstraintCS )
             {
-            // InternalOCLinEcore.g:26543:1: ( rulePostconditionConstraintCS )
-            // InternalOCLinEcore.g:26544:1: rulePostconditionConstraintCS
+            // InternalOCLinEcore.g:26547:1: ( rulePostconditionConstraintCS )
+            // InternalOCLinEcore.g:26548:1: rulePostconditionConstraintCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getOperationCSAccess().getOwnedPostconditionsPostconditionConstraintCSParserRuleCall_10_0_1_3_0());
@@ -77803,17 +77803,17 @@
 
 
     // $ANTLR start "rule__PackageCS__NameAssignment_1"
-    // InternalOCLinEcore.g:26553:1: rule__PackageCS__NameAssignment_1 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:26557:1: rule__PackageCS__NameAssignment_1 : ( ruleUnrestrictedName ) ;
     public final void rule__PackageCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26557:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:26558:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:26561:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:26562:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:26558:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:26559:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:26562:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:26563:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getNameUnrestrictedNameParserRuleCall_1_0());
@@ -77848,17 +77848,17 @@
 
 
     // $ANTLR start "rule__PackageCS__NsPrefixAssignment_2_1"
-    // InternalOCLinEcore.g:26568:1: rule__PackageCS__NsPrefixAssignment_2_1 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:26572:1: rule__PackageCS__NsPrefixAssignment_2_1 : ( ruleUnrestrictedName ) ;
     public final void rule__PackageCS__NsPrefixAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26572:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:26573:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:26576:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:26577:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:26573:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:26574:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:26577:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:26578:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getNsPrefixUnrestrictedNameParserRuleCall_2_1_0());
@@ -77893,17 +77893,17 @@
 
 
     // $ANTLR start "rule__PackageCS__NsURIAssignment_3_1"
-    // InternalOCLinEcore.g:26583:1: rule__PackageCS__NsURIAssignment_3_1 : ( ruleURI ) ;
+    // InternalOCLinEcore.g:26587:1: rule__PackageCS__NsURIAssignment_3_1 : ( ruleURI ) ;
     public final void rule__PackageCS__NsURIAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26587:1: ( ( ruleURI ) )
-            // InternalOCLinEcore.g:26588:1: ( ruleURI )
+            // InternalOCLinEcore.g:26591:1: ( ( ruleURI ) )
+            // InternalOCLinEcore.g:26592:1: ( ruleURI )
             {
-            // InternalOCLinEcore.g:26588:1: ( ruleURI )
-            // InternalOCLinEcore.g:26589:1: ruleURI
+            // InternalOCLinEcore.g:26592:1: ( ruleURI )
+            // InternalOCLinEcore.g:26593:1: ruleURI
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_3_1_0());
@@ -77938,17 +77938,17 @@
 
 
     // $ANTLR start "rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0"
-    // InternalOCLinEcore.g:26598:1: rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLinEcore.g:26602:1: rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 : ( ruleAnnotationElementCS ) ;
     public final void rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26602:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLinEcore.g:26603:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:26606:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLinEcore.g:26607:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLinEcore.g:26603:1: ( ruleAnnotationElementCS )
-            // InternalOCLinEcore.g:26604:1: ruleAnnotationElementCS
+            // InternalOCLinEcore.g:26607:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:26608:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0());
@@ -77983,17 +77983,17 @@
 
 
     // $ANTLR start "rule__PackageCS__OwnedPackagesAssignment_4_0_1_1"
-    // InternalOCLinEcore.g:26613:1: rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 : ( rulePackageCS ) ;
+    // InternalOCLinEcore.g:26617:1: rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 : ( rulePackageCS ) ;
     public final void rule__PackageCS__OwnedPackagesAssignment_4_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26617:1: ( ( rulePackageCS ) )
-            // InternalOCLinEcore.g:26618:1: ( rulePackageCS )
+            // InternalOCLinEcore.g:26621:1: ( ( rulePackageCS ) )
+            // InternalOCLinEcore.g:26622:1: ( rulePackageCS )
             {
-            // InternalOCLinEcore.g:26618:1: ( rulePackageCS )
-            // InternalOCLinEcore.g:26619:1: rulePackageCS
+            // InternalOCLinEcore.g:26622:1: ( rulePackageCS )
+            // InternalOCLinEcore.g:26623:1: rulePackageCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_1_1_0());
@@ -78028,17 +78028,17 @@
 
 
     // $ANTLR start "rule__PackageCS__OwnedClassesAssignment_4_0_1_2"
-    // InternalOCLinEcore.g:26628:1: rule__PackageCS__OwnedClassesAssignment_4_0_1_2 : ( ruleClassCS ) ;
+    // InternalOCLinEcore.g:26632:1: rule__PackageCS__OwnedClassesAssignment_4_0_1_2 : ( ruleClassCS ) ;
     public final void rule__PackageCS__OwnedClassesAssignment_4_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26632:1: ( ( ruleClassCS ) )
-            // InternalOCLinEcore.g:26633:1: ( ruleClassCS )
+            // InternalOCLinEcore.g:26636:1: ( ( ruleClassCS ) )
+            // InternalOCLinEcore.g:26637:1: ( ruleClassCS )
             {
-            // InternalOCLinEcore.g:26633:1: ( ruleClassCS )
-            // InternalOCLinEcore.g:26634:1: ruleClassCS
+            // InternalOCLinEcore.g:26637:1: ( ruleClassCS )
+            // InternalOCLinEcore.g:26638:1: ruleClassCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_0_1_2_0());
@@ -78073,17 +78073,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__NameAssignment_0"
-    // InternalOCLinEcore.g:26643:1: rule__ParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:26647:1: rule__ParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__ParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26647:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:26648:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:26651:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:26652:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:26648:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:26649:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:26652:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:26653:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -78118,17 +78118,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__OwnedTypeAssignment_1_1"
-    // InternalOCLinEcore.g:26658:1: rule__ParameterCS__OwnedTypeAssignment_1_1 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLinEcore.g:26662:1: rule__ParameterCS__OwnedTypeAssignment_1_1 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__ParameterCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26662:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLinEcore.g:26663:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLinEcore.g:26666:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLinEcore.g:26667:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLinEcore.g:26663:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLinEcore.g:26664:1: ruleTypedMultiplicityRefCS
+            // InternalOCLinEcore.g:26667:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLinEcore.g:26668:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_1_1_0());
@@ -78163,23 +78163,23 @@
 
 
     // $ANTLR start "rule__ParameterCS__QualifiersAssignment_2_1_0_0"
-    // InternalOCLinEcore.g:26673:1: rule__ParameterCS__QualifiersAssignment_2_1_0_0 : ( ( 'ordered' ) ) ;
+    // InternalOCLinEcore.g:26677:1: rule__ParameterCS__QualifiersAssignment_2_1_0_0 : ( ( 'ordered' ) ) ;
     public final void rule__ParameterCS__QualifiersAssignment_2_1_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26677:1: ( ( ( 'ordered' ) ) )
-            // InternalOCLinEcore.g:26678:1: ( ( 'ordered' ) )
+            // InternalOCLinEcore.g:26681:1: ( ( ( 'ordered' ) ) )
+            // InternalOCLinEcore.g:26682:1: ( ( 'ordered' ) )
             {
-            // InternalOCLinEcore.g:26678:1: ( ( 'ordered' ) )
-            // InternalOCLinEcore.g:26679:1: ( 'ordered' )
+            // InternalOCLinEcore.g:26682:1: ( ( 'ordered' ) )
+            // InternalOCLinEcore.g:26683:1: ( 'ordered' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0());
             }
-            // InternalOCLinEcore.g:26680:1: ( 'ordered' )
-            // InternalOCLinEcore.g:26681:1: 'ordered'
+            // InternalOCLinEcore.g:26684:1: ( 'ordered' )
+            // InternalOCLinEcore.g:26685:1: 'ordered'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0());
@@ -78216,23 +78216,23 @@
 
 
     // $ANTLR start "rule__ParameterCS__QualifiersAssignment_2_1_0_1"
-    // InternalOCLinEcore.g:26696:1: rule__ParameterCS__QualifiersAssignment_2_1_0_1 : ( ( '!ordered' ) ) ;
+    // InternalOCLinEcore.g:26700:1: rule__ParameterCS__QualifiersAssignment_2_1_0_1 : ( ( '!ordered' ) ) ;
     public final void rule__ParameterCS__QualifiersAssignment_2_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26700:1: ( ( ( '!ordered' ) ) )
-            // InternalOCLinEcore.g:26701:1: ( ( '!ordered' ) )
+            // InternalOCLinEcore.g:26704:1: ( ( ( '!ordered' ) ) )
+            // InternalOCLinEcore.g:26705:1: ( ( '!ordered' ) )
             {
-            // InternalOCLinEcore.g:26701:1: ( ( '!ordered' ) )
-            // InternalOCLinEcore.g:26702:1: ( '!ordered' )
+            // InternalOCLinEcore.g:26705:1: ( ( '!ordered' ) )
+            // InternalOCLinEcore.g:26706:1: ( '!ordered' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0());
             }
-            // InternalOCLinEcore.g:26703:1: ( '!ordered' )
-            // InternalOCLinEcore.g:26704:1: '!ordered'
+            // InternalOCLinEcore.g:26707:1: ( '!ordered' )
+            // InternalOCLinEcore.g:26708:1: '!ordered'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0());
@@ -78269,23 +78269,23 @@
 
 
     // $ANTLR start "rule__ParameterCS__QualifiersAssignment_2_1_0_2"
-    // InternalOCLinEcore.g:26719:1: rule__ParameterCS__QualifiersAssignment_2_1_0_2 : ( ( 'unique' ) ) ;
+    // InternalOCLinEcore.g:26723:1: rule__ParameterCS__QualifiersAssignment_2_1_0_2 : ( ( 'unique' ) ) ;
     public final void rule__ParameterCS__QualifiersAssignment_2_1_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26723:1: ( ( ( 'unique' ) ) )
-            // InternalOCLinEcore.g:26724:1: ( ( 'unique' ) )
+            // InternalOCLinEcore.g:26727:1: ( ( ( 'unique' ) ) )
+            // InternalOCLinEcore.g:26728:1: ( ( 'unique' ) )
             {
-            // InternalOCLinEcore.g:26724:1: ( ( 'unique' ) )
-            // InternalOCLinEcore.g:26725:1: ( 'unique' )
+            // InternalOCLinEcore.g:26728:1: ( ( 'unique' ) )
+            // InternalOCLinEcore.g:26729:1: ( 'unique' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0());
             }
-            // InternalOCLinEcore.g:26726:1: ( 'unique' )
-            // InternalOCLinEcore.g:26727:1: 'unique'
+            // InternalOCLinEcore.g:26730:1: ( 'unique' )
+            // InternalOCLinEcore.g:26731:1: 'unique'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0());
@@ -78322,23 +78322,23 @@
 
 
     // $ANTLR start "rule__ParameterCS__QualifiersAssignment_2_1_0_3"
-    // InternalOCLinEcore.g:26742:1: rule__ParameterCS__QualifiersAssignment_2_1_0_3 : ( ( '!unique' ) ) ;
+    // InternalOCLinEcore.g:26746:1: rule__ParameterCS__QualifiersAssignment_2_1_0_3 : ( ( '!unique' ) ) ;
     public final void rule__ParameterCS__QualifiersAssignment_2_1_0_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26746:1: ( ( ( '!unique' ) ) )
-            // InternalOCLinEcore.g:26747:1: ( ( '!unique' ) )
+            // InternalOCLinEcore.g:26750:1: ( ( ( '!unique' ) ) )
+            // InternalOCLinEcore.g:26751:1: ( ( '!unique' ) )
             {
-            // InternalOCLinEcore.g:26747:1: ( ( '!unique' ) )
-            // InternalOCLinEcore.g:26748:1: ( '!unique' )
+            // InternalOCLinEcore.g:26751:1: ( ( '!unique' ) )
+            // InternalOCLinEcore.g:26752:1: ( '!unique' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0());
             }
-            // InternalOCLinEcore.g:26749:1: ( '!unique' )
-            // InternalOCLinEcore.g:26750:1: '!unique'
+            // InternalOCLinEcore.g:26753:1: ( '!unique' )
+            // InternalOCLinEcore.g:26754:1: '!unique'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0());
@@ -78375,17 +78375,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__OwnedAnnotationsAssignment_3_1"
-    // InternalOCLinEcore.g:26765:1: rule__ParameterCS__OwnedAnnotationsAssignment_3_1 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLinEcore.g:26769:1: rule__ParameterCS__OwnedAnnotationsAssignment_3_1 : ( ruleAnnotationElementCS ) ;
     public final void rule__ParameterCS__OwnedAnnotationsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26769:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLinEcore.g:26770:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:26773:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLinEcore.g:26774:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLinEcore.g:26770:1: ( ruleAnnotationElementCS )
-            // InternalOCLinEcore.g:26771:1: ruleAnnotationElementCS
+            // InternalOCLinEcore.g:26774:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:26775:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_1_0());
@@ -78420,17 +78420,17 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__NameAssignment_1"
-    // InternalOCLinEcore.g:26780:1: rule__ImplicitOppositeCS__NameAssignment_1 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:26784:1: rule__ImplicitOppositeCS__NameAssignment_1 : ( ruleUnrestrictedName ) ;
     public final void rule__ImplicitOppositeCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26784:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:26785:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:26788:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:26789:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:26785:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:26786:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:26789:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:26790:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getNameUnrestrictedNameParserRuleCall_1_0());
@@ -78465,17 +78465,17 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__OwnedTypeAssignment_3"
-    // InternalOCLinEcore.g:26795:1: rule__ImplicitOppositeCS__OwnedTypeAssignment_3 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLinEcore.g:26799:1: rule__ImplicitOppositeCS__OwnedTypeAssignment_3 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__ImplicitOppositeCS__OwnedTypeAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26799:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLinEcore.g:26800:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLinEcore.g:26803:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLinEcore.g:26804:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLinEcore.g:26800:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLinEcore.g:26801:1: ruleTypedMultiplicityRefCS
+            // InternalOCLinEcore.g:26804:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLinEcore.g:26805:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_0());
@@ -78510,23 +78510,23 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0"
-    // InternalOCLinEcore.g:26810:1: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 : ( ( 'ordered' ) ) ;
+    // InternalOCLinEcore.g:26814:1: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0 : ( ( 'ordered' ) ) ;
     public final void rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26814:1: ( ( ( 'ordered' ) ) )
-            // InternalOCLinEcore.g:26815:1: ( ( 'ordered' ) )
+            // InternalOCLinEcore.g:26818:1: ( ( ( 'ordered' ) ) )
+            // InternalOCLinEcore.g:26819:1: ( ( 'ordered' ) )
             {
-            // InternalOCLinEcore.g:26815:1: ( ( 'ordered' ) )
-            // InternalOCLinEcore.g:26816:1: ( 'ordered' )
+            // InternalOCLinEcore.g:26819:1: ( ( 'ordered' ) )
+            // InternalOCLinEcore.g:26820:1: ( 'ordered' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getQualifiersOrderedKeyword_4_1_0_0_0());
             }
-            // InternalOCLinEcore.g:26817:1: ( 'ordered' )
-            // InternalOCLinEcore.g:26818:1: 'ordered'
+            // InternalOCLinEcore.g:26821:1: ( 'ordered' )
+            // InternalOCLinEcore.g:26822:1: 'ordered'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getQualifiersOrderedKeyword_4_1_0_0_0());
@@ -78563,23 +78563,23 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1"
-    // InternalOCLinEcore.g:26833:1: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 : ( ( '!ordered' ) ) ;
+    // InternalOCLinEcore.g:26837:1: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1 : ( ( '!ordered' ) ) ;
     public final void rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26837:1: ( ( ( '!ordered' ) ) )
-            // InternalOCLinEcore.g:26838:1: ( ( '!ordered' ) )
+            // InternalOCLinEcore.g:26841:1: ( ( ( '!ordered' ) ) )
+            // InternalOCLinEcore.g:26842:1: ( ( '!ordered' ) )
             {
-            // InternalOCLinEcore.g:26838:1: ( ( '!ordered' ) )
-            // InternalOCLinEcore.g:26839:1: ( '!ordered' )
+            // InternalOCLinEcore.g:26842:1: ( ( '!ordered' ) )
+            // InternalOCLinEcore.g:26843:1: ( '!ordered' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getQualifiersOrderedKeyword_4_1_0_1_0());
             }
-            // InternalOCLinEcore.g:26840:1: ( '!ordered' )
-            // InternalOCLinEcore.g:26841:1: '!ordered'
+            // InternalOCLinEcore.g:26844:1: ( '!ordered' )
+            // InternalOCLinEcore.g:26845:1: '!ordered'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getQualifiersOrderedKeyword_4_1_0_1_0());
@@ -78616,23 +78616,23 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2"
-    // InternalOCLinEcore.g:26856:1: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 : ( ( 'unique' ) ) ;
+    // InternalOCLinEcore.g:26860:1: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2 : ( ( 'unique' ) ) ;
     public final void rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26860:1: ( ( ( 'unique' ) ) )
-            // InternalOCLinEcore.g:26861:1: ( ( 'unique' ) )
+            // InternalOCLinEcore.g:26864:1: ( ( ( 'unique' ) ) )
+            // InternalOCLinEcore.g:26865:1: ( ( 'unique' ) )
             {
-            // InternalOCLinEcore.g:26861:1: ( ( 'unique' ) )
-            // InternalOCLinEcore.g:26862:1: ( 'unique' )
+            // InternalOCLinEcore.g:26865:1: ( ( 'unique' ) )
+            // InternalOCLinEcore.g:26866:1: ( 'unique' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getQualifiersUniqueKeyword_4_1_0_2_0());
             }
-            // InternalOCLinEcore.g:26863:1: ( 'unique' )
-            // InternalOCLinEcore.g:26864:1: 'unique'
+            // InternalOCLinEcore.g:26867:1: ( 'unique' )
+            // InternalOCLinEcore.g:26868:1: 'unique'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getQualifiersUniqueKeyword_4_1_0_2_0());
@@ -78669,23 +78669,23 @@
 
 
     // $ANTLR start "rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3"
-    // InternalOCLinEcore.g:26879:1: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 : ( ( '!unique' ) ) ;
+    // InternalOCLinEcore.g:26883:1: rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3 : ( ( '!unique' ) ) ;
     public final void rule__ImplicitOppositeCS__QualifiersAssignment_4_1_0_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26883:1: ( ( ( '!unique' ) ) )
-            // InternalOCLinEcore.g:26884:1: ( ( '!unique' ) )
+            // InternalOCLinEcore.g:26887:1: ( ( ( '!unique' ) ) )
+            // InternalOCLinEcore.g:26888:1: ( ( '!unique' ) )
             {
-            // InternalOCLinEcore.g:26884:1: ( ( '!unique' ) )
-            // InternalOCLinEcore.g:26885:1: ( '!unique' )
+            // InternalOCLinEcore.g:26888:1: ( ( '!unique' ) )
+            // InternalOCLinEcore.g:26889:1: ( '!unique' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getQualifiersUniqueKeyword_4_1_0_3_0());
             }
-            // InternalOCLinEcore.g:26886:1: ( '!unique' )
-            // InternalOCLinEcore.g:26887:1: '!unique'
+            // InternalOCLinEcore.g:26890:1: ( '!unique' )
+            // InternalOCLinEcore.g:26891:1: '!unique'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImplicitOppositeCSAccess().getQualifiersUniqueKeyword_4_1_0_3_0());
@@ -78722,23 +78722,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_0_0_0"
-    // InternalOCLinEcore.g:26902:1: rule__ReferenceCS__QualifiersAssignment_0_0_0 : ( ( 'static' ) ) ;
+    // InternalOCLinEcore.g:26906:1: rule__ReferenceCS__QualifiersAssignment_0_0_0 : ( ( 'static' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_0_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26906:1: ( ( ( 'static' ) ) )
-            // InternalOCLinEcore.g:26907:1: ( ( 'static' ) )
+            // InternalOCLinEcore.g:26910:1: ( ( ( 'static' ) ) )
+            // InternalOCLinEcore.g:26911:1: ( ( 'static' ) )
             {
-            // InternalOCLinEcore.g:26907:1: ( ( 'static' ) )
-            // InternalOCLinEcore.g:26908:1: ( 'static' )
+            // InternalOCLinEcore.g:26911:1: ( ( 'static' ) )
+            // InternalOCLinEcore.g:26912:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
-            // InternalOCLinEcore.g:26909:1: ( 'static' )
-            // InternalOCLinEcore.g:26910:1: 'static'
+            // InternalOCLinEcore.g:26913:1: ( 'static' )
+            // InternalOCLinEcore.g:26914:1: 'static'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0());
@@ -78775,23 +78775,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_0_0_1"
-    // InternalOCLinEcore.g:26925:1: rule__ReferenceCS__QualifiersAssignment_0_0_1 : ( ( 'definition' ) ) ;
+    // InternalOCLinEcore.g:26929:1: rule__ReferenceCS__QualifiersAssignment_0_0_1 : ( ( 'definition' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_0_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26929:1: ( ( ( 'definition' ) ) )
-            // InternalOCLinEcore.g:26930:1: ( ( 'definition' ) )
+            // InternalOCLinEcore.g:26933:1: ( ( ( 'definition' ) ) )
+            // InternalOCLinEcore.g:26934:1: ( ( 'definition' ) )
             {
-            // InternalOCLinEcore.g:26930:1: ( ( 'definition' ) )
-            // InternalOCLinEcore.g:26931:1: ( 'definition' )
+            // InternalOCLinEcore.g:26934:1: ( ( 'definition' ) )
+            // InternalOCLinEcore.g:26935:1: ( 'definition' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
-            // InternalOCLinEcore.g:26932:1: ( 'definition' )
-            // InternalOCLinEcore.g:26933:1: 'definition'
+            // InternalOCLinEcore.g:26936:1: ( 'definition' )
+            // InternalOCLinEcore.g:26937:1: 'definition'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
@@ -78828,23 +78828,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_0_1_0"
-    // InternalOCLinEcore.g:26948:1: rule__ReferenceCS__QualifiersAssignment_0_1_0 : ( ( 'definition' ) ) ;
+    // InternalOCLinEcore.g:26952:1: rule__ReferenceCS__QualifiersAssignment_0_1_0 : ( ( 'definition' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26952:1: ( ( ( 'definition' ) ) )
-            // InternalOCLinEcore.g:26953:1: ( ( 'definition' ) )
+            // InternalOCLinEcore.g:26956:1: ( ( ( 'definition' ) ) )
+            // InternalOCLinEcore.g:26957:1: ( ( 'definition' ) )
             {
-            // InternalOCLinEcore.g:26953:1: ( ( 'definition' ) )
-            // InternalOCLinEcore.g:26954:1: ( 'definition' )
+            // InternalOCLinEcore.g:26957:1: ( ( 'definition' ) )
+            // InternalOCLinEcore.g:26958:1: ( 'definition' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
-            // InternalOCLinEcore.g:26955:1: ( 'definition' )
-            // InternalOCLinEcore.g:26956:1: 'definition'
+            // InternalOCLinEcore.g:26959:1: ( 'definition' )
+            // InternalOCLinEcore.g:26960:1: 'definition'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
@@ -78881,23 +78881,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_0_1_1"
-    // InternalOCLinEcore.g:26971:1: rule__ReferenceCS__QualifiersAssignment_0_1_1 : ( ( 'static' ) ) ;
+    // InternalOCLinEcore.g:26975:1: rule__ReferenceCS__QualifiersAssignment_0_1_1 : ( ( 'static' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26975:1: ( ( ( 'static' ) ) )
-            // InternalOCLinEcore.g:26976:1: ( ( 'static' ) )
+            // InternalOCLinEcore.g:26979:1: ( ( ( 'static' ) ) )
+            // InternalOCLinEcore.g:26980:1: ( ( 'static' ) )
             {
-            // InternalOCLinEcore.g:26976:1: ( ( 'static' ) )
-            // InternalOCLinEcore.g:26977:1: ( 'static' )
+            // InternalOCLinEcore.g:26980:1: ( ( 'static' ) )
+            // InternalOCLinEcore.g:26981:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
-            // InternalOCLinEcore.g:26978:1: ( 'static' )
-            // InternalOCLinEcore.g:26979:1: 'static'
+            // InternalOCLinEcore.g:26982:1: ( 'static' )
+            // InternalOCLinEcore.g:26983:1: 'static'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0());
@@ -78934,17 +78934,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__NameAssignment_2"
-    // InternalOCLinEcore.g:26994:1: rule__ReferenceCS__NameAssignment_2 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:26998:1: rule__ReferenceCS__NameAssignment_2 : ( ruleUnrestrictedName ) ;
     public final void rule__ReferenceCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:26998:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:26999:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:27002:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:27003:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:26999:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:27000:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:27003:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:27004:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
@@ -78979,23 +78979,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__ReferredOppositeAssignment_3_1"
-    // InternalOCLinEcore.g:27009:1: rule__ReferenceCS__ReferredOppositeAssignment_3_1 : ( ( ruleUnrestrictedName ) ) ;
+    // InternalOCLinEcore.g:27013:1: rule__ReferenceCS__ReferredOppositeAssignment_3_1 : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__ReferenceCS__ReferredOppositeAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27013:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalOCLinEcore.g:27014:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:27017:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalOCLinEcore.g:27018:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalOCLinEcore.g:27014:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:27015:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:27018:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:27019:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyCrossReference_3_1_0());
             }
-            // InternalOCLinEcore.g:27016:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:27017:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:27020:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:27021:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyUnrestrictedNameParserRuleCall_3_1_0_1());
@@ -79036,17 +79036,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__OwnedTypeAssignment_4_1"
-    // InternalOCLinEcore.g:27028:1: rule__ReferenceCS__OwnedTypeAssignment_4_1 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLinEcore.g:27032:1: rule__ReferenceCS__OwnedTypeAssignment_4_1 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__ReferenceCS__OwnedTypeAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27032:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLinEcore.g:27033:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLinEcore.g:27036:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLinEcore.g:27037:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLinEcore.g:27033:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLinEcore.g:27034:1: ruleTypedMultiplicityRefCS
+            // InternalOCLinEcore.g:27037:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLinEcore.g:27038:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_1_0());
@@ -79081,17 +79081,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__DefaultAssignment_5_1"
-    // InternalOCLinEcore.g:27043:1: rule__ReferenceCS__DefaultAssignment_5_1 : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalOCLinEcore.g:27047:1: rule__ReferenceCS__DefaultAssignment_5_1 : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void rule__ReferenceCS__DefaultAssignment_5_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27047:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLinEcore.g:27048:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:27051:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLinEcore.g:27052:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalOCLinEcore.g:27048:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:27049:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:27052:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:27053:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0());
@@ -79122,23 +79122,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_0"
-    // InternalOCLinEcore.g:27058:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_0 : ( ( 'composes' ) ) ;
+    // InternalOCLinEcore.g:27062:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_0 : ( ( 'composes' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27062:1: ( ( ( 'composes' ) ) )
-            // InternalOCLinEcore.g:27063:1: ( ( 'composes' ) )
+            // InternalOCLinEcore.g:27066:1: ( ( ( 'composes' ) ) )
+            // InternalOCLinEcore.g:27067:1: ( ( 'composes' ) )
             {
-            // InternalOCLinEcore.g:27063:1: ( ( 'composes' ) )
-            // InternalOCLinEcore.g:27064:1: ( 'composes' )
+            // InternalOCLinEcore.g:27067:1: ( ( 'composes' ) )
+            // InternalOCLinEcore.g:27068:1: ( 'composes' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0());
             }
-            // InternalOCLinEcore.g:27065:1: ( 'composes' )
-            // InternalOCLinEcore.g:27066:1: 'composes'
+            // InternalOCLinEcore.g:27069:1: ( 'composes' )
+            // InternalOCLinEcore.g:27070:1: 'composes'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0());
@@ -79175,23 +79175,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_1"
-    // InternalOCLinEcore.g:27081:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_1 : ( ( '!composes' ) ) ;
+    // InternalOCLinEcore.g:27085:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_1 : ( ( '!composes' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27085:1: ( ( ( '!composes' ) ) )
-            // InternalOCLinEcore.g:27086:1: ( ( '!composes' ) )
+            // InternalOCLinEcore.g:27089:1: ( ( ( '!composes' ) ) )
+            // InternalOCLinEcore.g:27090:1: ( ( '!composes' ) )
             {
-            // InternalOCLinEcore.g:27086:1: ( ( '!composes' ) )
-            // InternalOCLinEcore.g:27087:1: ( '!composes' )
+            // InternalOCLinEcore.g:27090:1: ( ( '!composes' ) )
+            // InternalOCLinEcore.g:27091:1: ( '!composes' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0());
             }
-            // InternalOCLinEcore.g:27088:1: ( '!composes' )
-            // InternalOCLinEcore.g:27089:1: '!composes'
+            // InternalOCLinEcore.g:27092:1: ( '!composes' )
+            // InternalOCLinEcore.g:27093:1: '!composes'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0());
@@ -79228,23 +79228,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_2"
-    // InternalOCLinEcore.g:27104:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_2 : ( ( 'derived' ) ) ;
+    // InternalOCLinEcore.g:27108:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_2 : ( ( 'derived' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27108:1: ( ( ( 'derived' ) ) )
-            // InternalOCLinEcore.g:27109:1: ( ( 'derived' ) )
+            // InternalOCLinEcore.g:27112:1: ( ( ( 'derived' ) ) )
+            // InternalOCLinEcore.g:27113:1: ( ( 'derived' ) )
             {
-            // InternalOCLinEcore.g:27109:1: ( ( 'derived' ) )
-            // InternalOCLinEcore.g:27110:1: ( 'derived' )
+            // InternalOCLinEcore.g:27113:1: ( ( 'derived' ) )
+            // InternalOCLinEcore.g:27114:1: ( 'derived' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0());
             }
-            // InternalOCLinEcore.g:27111:1: ( 'derived' )
-            // InternalOCLinEcore.g:27112:1: 'derived'
+            // InternalOCLinEcore.g:27115:1: ( 'derived' )
+            // InternalOCLinEcore.g:27116:1: 'derived'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0());
@@ -79281,23 +79281,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_3"
-    // InternalOCLinEcore.g:27127:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_3 : ( ( '!derived' ) ) ;
+    // InternalOCLinEcore.g:27131:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_3 : ( ( '!derived' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27131:1: ( ( ( '!derived' ) ) )
-            // InternalOCLinEcore.g:27132:1: ( ( '!derived' ) )
+            // InternalOCLinEcore.g:27135:1: ( ( ( '!derived' ) ) )
+            // InternalOCLinEcore.g:27136:1: ( ( '!derived' ) )
             {
-            // InternalOCLinEcore.g:27132:1: ( ( '!derived' ) )
-            // InternalOCLinEcore.g:27133:1: ( '!derived' )
+            // InternalOCLinEcore.g:27136:1: ( ( '!derived' ) )
+            // InternalOCLinEcore.g:27137:1: ( '!derived' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0());
             }
-            // InternalOCLinEcore.g:27134:1: ( '!derived' )
-            // InternalOCLinEcore.g:27135:1: '!derived'
+            // InternalOCLinEcore.g:27138:1: ( '!derived' )
+            // InternalOCLinEcore.g:27139:1: '!derived'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0());
@@ -79334,23 +79334,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_4"
-    // InternalOCLinEcore.g:27150:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_4 : ( ( 'ordered' ) ) ;
+    // InternalOCLinEcore.g:27154:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_4 : ( ( 'ordered' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27154:1: ( ( ( 'ordered' ) ) )
-            // InternalOCLinEcore.g:27155:1: ( ( 'ordered' ) )
+            // InternalOCLinEcore.g:27158:1: ( ( ( 'ordered' ) ) )
+            // InternalOCLinEcore.g:27159:1: ( ( 'ordered' ) )
             {
-            // InternalOCLinEcore.g:27155:1: ( ( 'ordered' ) )
-            // InternalOCLinEcore.g:27156:1: ( 'ordered' )
+            // InternalOCLinEcore.g:27159:1: ( ( 'ordered' ) )
+            // InternalOCLinEcore.g:27160:1: ( 'ordered' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0());
             }
-            // InternalOCLinEcore.g:27157:1: ( 'ordered' )
-            // InternalOCLinEcore.g:27158:1: 'ordered'
+            // InternalOCLinEcore.g:27161:1: ( 'ordered' )
+            // InternalOCLinEcore.g:27162:1: 'ordered'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0());
@@ -79387,23 +79387,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_5"
-    // InternalOCLinEcore.g:27173:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_5 : ( ( '!ordered' ) ) ;
+    // InternalOCLinEcore.g:27177:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_5 : ( ( '!ordered' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27177:1: ( ( ( '!ordered' ) ) )
-            // InternalOCLinEcore.g:27178:1: ( ( '!ordered' ) )
+            // InternalOCLinEcore.g:27181:1: ( ( ( '!ordered' ) ) )
+            // InternalOCLinEcore.g:27182:1: ( ( '!ordered' ) )
             {
-            // InternalOCLinEcore.g:27178:1: ( ( '!ordered' ) )
-            // InternalOCLinEcore.g:27179:1: ( '!ordered' )
+            // InternalOCLinEcore.g:27182:1: ( ( '!ordered' ) )
+            // InternalOCLinEcore.g:27183:1: ( '!ordered' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0());
             }
-            // InternalOCLinEcore.g:27180:1: ( '!ordered' )
-            // InternalOCLinEcore.g:27181:1: '!ordered'
+            // InternalOCLinEcore.g:27184:1: ( '!ordered' )
+            // InternalOCLinEcore.g:27185:1: '!ordered'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0());
@@ -79440,23 +79440,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_6"
-    // InternalOCLinEcore.g:27196:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_6 : ( ( 'readonly' ) ) ;
+    // InternalOCLinEcore.g:27200:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_6 : ( ( 'readonly' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27200:1: ( ( ( 'readonly' ) ) )
-            // InternalOCLinEcore.g:27201:1: ( ( 'readonly' ) )
+            // InternalOCLinEcore.g:27204:1: ( ( ( 'readonly' ) ) )
+            // InternalOCLinEcore.g:27205:1: ( ( 'readonly' ) )
             {
-            // InternalOCLinEcore.g:27201:1: ( ( 'readonly' ) )
-            // InternalOCLinEcore.g:27202:1: ( 'readonly' )
+            // InternalOCLinEcore.g:27205:1: ( ( 'readonly' ) )
+            // InternalOCLinEcore.g:27206:1: ( 'readonly' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0());
             }
-            // InternalOCLinEcore.g:27203:1: ( 'readonly' )
-            // InternalOCLinEcore.g:27204:1: 'readonly'
+            // InternalOCLinEcore.g:27207:1: ( 'readonly' )
+            // InternalOCLinEcore.g:27208:1: 'readonly'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0());
@@ -79493,23 +79493,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_7"
-    // InternalOCLinEcore.g:27219:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_7 : ( ( '!readonly' ) ) ;
+    // InternalOCLinEcore.g:27223:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_7 : ( ( '!readonly' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27223:1: ( ( ( '!readonly' ) ) )
-            // InternalOCLinEcore.g:27224:1: ( ( '!readonly' ) )
+            // InternalOCLinEcore.g:27227:1: ( ( ( '!readonly' ) ) )
+            // InternalOCLinEcore.g:27228:1: ( ( '!readonly' ) )
             {
-            // InternalOCLinEcore.g:27224:1: ( ( '!readonly' ) )
-            // InternalOCLinEcore.g:27225:1: ( '!readonly' )
+            // InternalOCLinEcore.g:27228:1: ( ( '!readonly' ) )
+            // InternalOCLinEcore.g:27229:1: ( '!readonly' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0());
             }
-            // InternalOCLinEcore.g:27226:1: ( '!readonly' )
-            // InternalOCLinEcore.g:27227:1: '!readonly'
+            // InternalOCLinEcore.g:27230:1: ( '!readonly' )
+            // InternalOCLinEcore.g:27231:1: '!readonly'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0());
@@ -79546,23 +79546,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_8"
-    // InternalOCLinEcore.g:27242:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_8 : ( ( 'resolve' ) ) ;
+    // InternalOCLinEcore.g:27246:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_8 : ( ( 'resolve' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27246:1: ( ( ( 'resolve' ) ) )
-            // InternalOCLinEcore.g:27247:1: ( ( 'resolve' ) )
+            // InternalOCLinEcore.g:27250:1: ( ( ( 'resolve' ) ) )
+            // InternalOCLinEcore.g:27251:1: ( ( 'resolve' ) )
             {
-            // InternalOCLinEcore.g:27247:1: ( ( 'resolve' ) )
-            // InternalOCLinEcore.g:27248:1: ( 'resolve' )
+            // InternalOCLinEcore.g:27251:1: ( ( 'resolve' ) )
+            // InternalOCLinEcore.g:27252:1: ( 'resolve' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0());
             }
-            // InternalOCLinEcore.g:27249:1: ( 'resolve' )
-            // InternalOCLinEcore.g:27250:1: 'resolve'
+            // InternalOCLinEcore.g:27253:1: ( 'resolve' )
+            // InternalOCLinEcore.g:27254:1: 'resolve'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0());
@@ -79599,23 +79599,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_9"
-    // InternalOCLinEcore.g:27265:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_9 : ( ( '!resolve' ) ) ;
+    // InternalOCLinEcore.g:27269:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_9 : ( ( '!resolve' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27269:1: ( ( ( '!resolve' ) ) )
-            // InternalOCLinEcore.g:27270:1: ( ( '!resolve' ) )
+            // InternalOCLinEcore.g:27273:1: ( ( ( '!resolve' ) ) )
+            // InternalOCLinEcore.g:27274:1: ( ( '!resolve' ) )
             {
-            // InternalOCLinEcore.g:27270:1: ( ( '!resolve' ) )
-            // InternalOCLinEcore.g:27271:1: ( '!resolve' )
+            // InternalOCLinEcore.g:27274:1: ( ( '!resolve' ) )
+            // InternalOCLinEcore.g:27275:1: ( '!resolve' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0());
             }
-            // InternalOCLinEcore.g:27272:1: ( '!resolve' )
-            // InternalOCLinEcore.g:27273:1: '!resolve'
+            // InternalOCLinEcore.g:27276:1: ( '!resolve' )
+            // InternalOCLinEcore.g:27277:1: '!resolve'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0());
@@ -79652,23 +79652,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_10"
-    // InternalOCLinEcore.g:27288:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_10 : ( ( 'transient' ) ) ;
+    // InternalOCLinEcore.g:27292:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_10 : ( ( 'transient' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27292:1: ( ( ( 'transient' ) ) )
-            // InternalOCLinEcore.g:27293:1: ( ( 'transient' ) )
+            // InternalOCLinEcore.g:27296:1: ( ( ( 'transient' ) ) )
+            // InternalOCLinEcore.g:27297:1: ( ( 'transient' ) )
             {
-            // InternalOCLinEcore.g:27293:1: ( ( 'transient' ) )
-            // InternalOCLinEcore.g:27294:1: ( 'transient' )
+            // InternalOCLinEcore.g:27297:1: ( ( 'transient' ) )
+            // InternalOCLinEcore.g:27298:1: ( 'transient' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0());
             }
-            // InternalOCLinEcore.g:27295:1: ( 'transient' )
-            // InternalOCLinEcore.g:27296:1: 'transient'
+            // InternalOCLinEcore.g:27299:1: ( 'transient' )
+            // InternalOCLinEcore.g:27300:1: 'transient'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0());
@@ -79705,23 +79705,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_11"
-    // InternalOCLinEcore.g:27311:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_11 : ( ( '!transient' ) ) ;
+    // InternalOCLinEcore.g:27315:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_11 : ( ( '!transient' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27315:1: ( ( ( '!transient' ) ) )
-            // InternalOCLinEcore.g:27316:1: ( ( '!transient' ) )
+            // InternalOCLinEcore.g:27319:1: ( ( ( '!transient' ) ) )
+            // InternalOCLinEcore.g:27320:1: ( ( '!transient' ) )
             {
-            // InternalOCLinEcore.g:27316:1: ( ( '!transient' ) )
-            // InternalOCLinEcore.g:27317:1: ( '!transient' )
+            // InternalOCLinEcore.g:27320:1: ( ( '!transient' ) )
+            // InternalOCLinEcore.g:27321:1: ( '!transient' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0());
             }
-            // InternalOCLinEcore.g:27318:1: ( '!transient' )
-            // InternalOCLinEcore.g:27319:1: '!transient'
+            // InternalOCLinEcore.g:27322:1: ( '!transient' )
+            // InternalOCLinEcore.g:27323:1: '!transient'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0());
@@ -79758,23 +79758,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_12"
-    // InternalOCLinEcore.g:27334:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_12 : ( ( 'unique' ) ) ;
+    // InternalOCLinEcore.g:27338:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_12 : ( ( 'unique' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27338:1: ( ( ( 'unique' ) ) )
-            // InternalOCLinEcore.g:27339:1: ( ( 'unique' ) )
+            // InternalOCLinEcore.g:27342:1: ( ( ( 'unique' ) ) )
+            // InternalOCLinEcore.g:27343:1: ( ( 'unique' ) )
             {
-            // InternalOCLinEcore.g:27339:1: ( ( 'unique' ) )
-            // InternalOCLinEcore.g:27340:1: ( 'unique' )
+            // InternalOCLinEcore.g:27343:1: ( ( 'unique' ) )
+            // InternalOCLinEcore.g:27344:1: ( 'unique' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0());
             }
-            // InternalOCLinEcore.g:27341:1: ( 'unique' )
-            // InternalOCLinEcore.g:27342:1: 'unique'
+            // InternalOCLinEcore.g:27345:1: ( 'unique' )
+            // InternalOCLinEcore.g:27346:1: 'unique'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0());
@@ -79811,23 +79811,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_13"
-    // InternalOCLinEcore.g:27357:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_13 : ( ( '!unique' ) ) ;
+    // InternalOCLinEcore.g:27361:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_13 : ( ( '!unique' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_13() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27361:1: ( ( ( '!unique' ) ) )
-            // InternalOCLinEcore.g:27362:1: ( ( '!unique' ) )
+            // InternalOCLinEcore.g:27365:1: ( ( ( '!unique' ) ) )
+            // InternalOCLinEcore.g:27366:1: ( ( '!unique' ) )
             {
-            // InternalOCLinEcore.g:27362:1: ( ( '!unique' ) )
-            // InternalOCLinEcore.g:27363:1: ( '!unique' )
+            // InternalOCLinEcore.g:27366:1: ( ( '!unique' ) )
+            // InternalOCLinEcore.g:27367:1: ( '!unique' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0());
             }
-            // InternalOCLinEcore.g:27364:1: ( '!unique' )
-            // InternalOCLinEcore.g:27365:1: '!unique'
+            // InternalOCLinEcore.g:27368:1: ( '!unique' )
+            // InternalOCLinEcore.g:27369:1: '!unique'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0());
@@ -79864,23 +79864,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_14"
-    // InternalOCLinEcore.g:27380:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_14 : ( ( 'unsettable' ) ) ;
+    // InternalOCLinEcore.g:27384:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_14 : ( ( 'unsettable' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_14() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27384:1: ( ( ( 'unsettable' ) ) )
-            // InternalOCLinEcore.g:27385:1: ( ( 'unsettable' ) )
+            // InternalOCLinEcore.g:27388:1: ( ( ( 'unsettable' ) ) )
+            // InternalOCLinEcore.g:27389:1: ( ( 'unsettable' ) )
             {
-            // InternalOCLinEcore.g:27385:1: ( ( 'unsettable' ) )
-            // InternalOCLinEcore.g:27386:1: ( 'unsettable' )
+            // InternalOCLinEcore.g:27389:1: ( ( 'unsettable' ) )
+            // InternalOCLinEcore.g:27390:1: ( 'unsettable' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0());
             }
-            // InternalOCLinEcore.g:27387:1: ( 'unsettable' )
-            // InternalOCLinEcore.g:27388:1: 'unsettable'
+            // InternalOCLinEcore.g:27391:1: ( 'unsettable' )
+            // InternalOCLinEcore.g:27392:1: 'unsettable'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0());
@@ -79917,23 +79917,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_15"
-    // InternalOCLinEcore.g:27403:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_15 : ( ( '!unsettable' ) ) ;
+    // InternalOCLinEcore.g:27407:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_15 : ( ( '!unsettable' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_15() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27407:1: ( ( ( '!unsettable' ) ) )
-            // InternalOCLinEcore.g:27408:1: ( ( '!unsettable' ) )
+            // InternalOCLinEcore.g:27411:1: ( ( ( '!unsettable' ) ) )
+            // InternalOCLinEcore.g:27412:1: ( ( '!unsettable' ) )
             {
-            // InternalOCLinEcore.g:27408:1: ( ( '!unsettable' ) )
-            // InternalOCLinEcore.g:27409:1: ( '!unsettable' )
+            // InternalOCLinEcore.g:27412:1: ( ( '!unsettable' ) )
+            // InternalOCLinEcore.g:27413:1: ( '!unsettable' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0());
             }
-            // InternalOCLinEcore.g:27410:1: ( '!unsettable' )
-            // InternalOCLinEcore.g:27411:1: '!unsettable'
+            // InternalOCLinEcore.g:27414:1: ( '!unsettable' )
+            // InternalOCLinEcore.g:27415:1: '!unsettable'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0());
@@ -79970,23 +79970,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_16"
-    // InternalOCLinEcore.g:27426:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_16 : ( ( 'volatile' ) ) ;
+    // InternalOCLinEcore.g:27430:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_16 : ( ( 'volatile' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_16() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27430:1: ( ( ( 'volatile' ) ) )
-            // InternalOCLinEcore.g:27431:1: ( ( 'volatile' ) )
+            // InternalOCLinEcore.g:27434:1: ( ( ( 'volatile' ) ) )
+            // InternalOCLinEcore.g:27435:1: ( ( 'volatile' ) )
             {
-            // InternalOCLinEcore.g:27431:1: ( ( 'volatile' ) )
-            // InternalOCLinEcore.g:27432:1: ( 'volatile' )
+            // InternalOCLinEcore.g:27435:1: ( ( 'volatile' ) )
+            // InternalOCLinEcore.g:27436:1: ( 'volatile' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0());
             }
-            // InternalOCLinEcore.g:27433:1: ( 'volatile' )
-            // InternalOCLinEcore.g:27434:1: 'volatile'
+            // InternalOCLinEcore.g:27437:1: ( 'volatile' )
+            // InternalOCLinEcore.g:27438:1: 'volatile'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0());
@@ -80023,23 +80023,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__QualifiersAssignment_6_1_0_17"
-    // InternalOCLinEcore.g:27449:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_17 : ( ( '!volatile' ) ) ;
+    // InternalOCLinEcore.g:27453:1: rule__ReferenceCS__QualifiersAssignment_6_1_0_17 : ( ( '!volatile' ) ) ;
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_17() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27453:1: ( ( ( '!volatile' ) ) )
-            // InternalOCLinEcore.g:27454:1: ( ( '!volatile' ) )
+            // InternalOCLinEcore.g:27457:1: ( ( ( '!volatile' ) ) )
+            // InternalOCLinEcore.g:27458:1: ( ( '!volatile' ) )
             {
-            // InternalOCLinEcore.g:27454:1: ( ( '!volatile' ) )
-            // InternalOCLinEcore.g:27455:1: ( '!volatile' )
+            // InternalOCLinEcore.g:27458:1: ( ( '!volatile' ) )
+            // InternalOCLinEcore.g:27459:1: ( '!volatile' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0());
             }
-            // InternalOCLinEcore.g:27456:1: ( '!volatile' )
-            // InternalOCLinEcore.g:27457:1: '!volatile'
+            // InternalOCLinEcore.g:27460:1: ( '!volatile' )
+            // InternalOCLinEcore.g:27461:1: '!volatile'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0());
@@ -80076,17 +80076,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0"
-    // InternalOCLinEcore.g:27472:1: rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLinEcore.g:27476:1: rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 : ( ruleAnnotationElementCS ) ;
     public final void rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27476:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLinEcore.g:27477:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:27480:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLinEcore.g:27481:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLinEcore.g:27477:1: ( ruleAnnotationElementCS )
-            // InternalOCLinEcore.g:27478:1: ruleAnnotationElementCS
+            // InternalOCLinEcore.g:27481:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:27482:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
@@ -80121,23 +80121,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1"
-    // InternalOCLinEcore.g:27487:1: rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 : ( ( ruleUnrestrictedName ) ) ;
+    // InternalOCLinEcore.g:27491:1: rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27491:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalOCLinEcore.g:27492:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:27495:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalOCLinEcore.g:27496:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalOCLinEcore.g:27492:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:27493:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:27496:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:27497:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_1_0());
             }
-            // InternalOCLinEcore.g:27494:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:27495:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:27498:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:27499:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyUnrestrictedNameParserRuleCall_7_0_1_1_1_0_1());
@@ -80178,23 +80178,23 @@
 
 
     // $ANTLR start "rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1"
-    // InternalOCLinEcore.g:27506:1: rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 : ( ( ruleUnrestrictedName ) ) ;
+    // InternalOCLinEcore.g:27510:1: rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27510:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalOCLinEcore.g:27511:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:27514:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalOCLinEcore.g:27515:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalOCLinEcore.g:27511:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:27512:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:27515:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:27516:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_2_1_0());
             }
-            // InternalOCLinEcore.g:27513:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:27514:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:27517:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:27518:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyUnrestrictedNameParserRuleCall_7_0_1_1_2_1_0_1());
@@ -80235,17 +80235,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3"
-    // InternalOCLinEcore.g:27525:1: rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 : ( ruleSpecificationCS ) ;
+    // InternalOCLinEcore.g:27529:1: rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 : ( ruleSpecificationCS ) ;
     public final void rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27529:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLinEcore.g:27530:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:27533:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLinEcore.g:27534:1: ( ruleSpecificationCS )
             {
-            // InternalOCLinEcore.g:27530:1: ( ruleSpecificationCS )
-            // InternalOCLinEcore.g:27531:1: ruleSpecificationCS
+            // InternalOCLinEcore.g:27534:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:27535:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_2_3_0());
@@ -80280,17 +80280,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3"
-    // InternalOCLinEcore.g:27540:1: rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 : ( ruleSpecificationCS ) ;
+    // InternalOCLinEcore.g:27544:1: rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 : ( ruleSpecificationCS ) ;
     public final void rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27544:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLinEcore.g:27545:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:27548:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLinEcore.g:27549:1: ( ruleSpecificationCS )
             {
-            // InternalOCLinEcore.g:27545:1: ( ruleSpecificationCS )
-            // InternalOCLinEcore.g:27546:1: ruleSpecificationCS
+            // InternalOCLinEcore.g:27549:1: ( ruleSpecificationCS )
+            // InternalOCLinEcore.g:27550:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_3_3_0());
@@ -80325,17 +80325,17 @@
 
 
     // $ANTLR start "rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0"
-    // InternalOCLinEcore.g:27555:1: rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 : ( ruleImplicitOppositeCS ) ;
+    // InternalOCLinEcore.g:27559:1: rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0 : ( ruleImplicitOppositeCS ) ;
     public final void rule__ReferenceCS__OwnedImplicitOppositesAssignment_7_0_1_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27559:1: ( ( ruleImplicitOppositeCS ) )
-            // InternalOCLinEcore.g:27560:1: ( ruleImplicitOppositeCS )
+            // InternalOCLinEcore.g:27563:1: ( ( ruleImplicitOppositeCS ) )
+            // InternalOCLinEcore.g:27564:1: ( ruleImplicitOppositeCS )
             {
-            // InternalOCLinEcore.g:27560:1: ( ruleImplicitOppositeCS )
-            // InternalOCLinEcore.g:27561:1: ruleImplicitOppositeCS
+            // InternalOCLinEcore.g:27564:1: ( ruleImplicitOppositeCS )
+            // InternalOCLinEcore.g:27565:1: ruleImplicitOppositeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getReferenceCSAccess().getOwnedImplicitOppositesImplicitOppositeCSParserRuleCall_7_0_1_4_0_0());
@@ -80370,17 +80370,17 @@
 
 
     // $ANTLR start "rule__SpecificationCS__OwnedExpressionAssignment_0"
-    // InternalOCLinEcore.g:27570:1: rule__SpecificationCS__OwnedExpressionAssignment_0 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:27574:1: rule__SpecificationCS__OwnedExpressionAssignment_0 : ( ruleExpCS ) ;
     public final void rule__SpecificationCS__OwnedExpressionAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27574:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:27575:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:27578:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:27579:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:27575:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:27576:1: ruleExpCS
+            // InternalOCLinEcore.g:27579:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:27580:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0());
@@ -80415,17 +80415,17 @@
 
 
     // $ANTLR start "rule__SpecificationCS__ExprStringAssignment_1"
-    // InternalOCLinEcore.g:27585:1: rule__SpecificationCS__ExprStringAssignment_1 : ( RULE_UNQUOTED_STRING ) ;
+    // InternalOCLinEcore.g:27589:1: rule__SpecificationCS__ExprStringAssignment_1 : ( RULE_UNQUOTED_STRING ) ;
     public final void rule__SpecificationCS__ExprStringAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27589:1: ( ( RULE_UNQUOTED_STRING ) )
-            // InternalOCLinEcore.g:27590:1: ( RULE_UNQUOTED_STRING )
+            // InternalOCLinEcore.g:27593:1: ( ( RULE_UNQUOTED_STRING ) )
+            // InternalOCLinEcore.g:27594:1: ( RULE_UNQUOTED_STRING )
             {
-            // InternalOCLinEcore.g:27590:1: ( RULE_UNQUOTED_STRING )
-            // InternalOCLinEcore.g:27591:1: RULE_UNQUOTED_STRING
+            // InternalOCLinEcore.g:27594:1: ( RULE_UNQUOTED_STRING )
+            // InternalOCLinEcore.g:27595:1: RULE_UNQUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0());
@@ -80456,23 +80456,23 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__IsAbstractAssignment_0"
-    // InternalOCLinEcore.g:27600:1: rule__StructuredClassCS__IsAbstractAssignment_0 : ( ( 'abstract' ) ) ;
+    // InternalOCLinEcore.g:27604:1: rule__StructuredClassCS__IsAbstractAssignment_0 : ( ( 'abstract' ) ) ;
     public final void rule__StructuredClassCS__IsAbstractAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27604:1: ( ( ( 'abstract' ) ) )
-            // InternalOCLinEcore.g:27605:1: ( ( 'abstract' ) )
+            // InternalOCLinEcore.g:27608:1: ( ( ( 'abstract' ) ) )
+            // InternalOCLinEcore.g:27609:1: ( ( 'abstract' ) )
             {
-            // InternalOCLinEcore.g:27605:1: ( ( 'abstract' ) )
-            // InternalOCLinEcore.g:27606:1: ( 'abstract' )
+            // InternalOCLinEcore.g:27609:1: ( ( 'abstract' ) )
+            // InternalOCLinEcore.g:27610:1: ( 'abstract' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0());
             }
-            // InternalOCLinEcore.g:27607:1: ( 'abstract' )
-            // InternalOCLinEcore.g:27608:1: 'abstract'
+            // InternalOCLinEcore.g:27611:1: ( 'abstract' )
+            // InternalOCLinEcore.g:27612:1: 'abstract'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0());
@@ -80509,17 +80509,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__NameAssignment_2"
-    // InternalOCLinEcore.g:27623:1: rule__StructuredClassCS__NameAssignment_2 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:27627:1: rule__StructuredClassCS__NameAssignment_2 : ( ruleUnrestrictedName ) ;
     public final void rule__StructuredClassCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27627:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:27628:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:27631:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:27632:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:27628:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:27629:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:27632:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:27633:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
@@ -80554,17 +80554,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__OwnedSignatureAssignment_3"
-    // InternalOCLinEcore.g:27638:1: rule__StructuredClassCS__OwnedSignatureAssignment_3 : ( ruleTemplateSignatureCS ) ;
+    // InternalOCLinEcore.g:27642:1: rule__StructuredClassCS__OwnedSignatureAssignment_3 : ( ruleTemplateSignatureCS ) ;
     public final void rule__StructuredClassCS__OwnedSignatureAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27642:1: ( ( ruleTemplateSignatureCS ) )
-            // InternalOCLinEcore.g:27643:1: ( ruleTemplateSignatureCS )
+            // InternalOCLinEcore.g:27646:1: ( ( ruleTemplateSignatureCS ) )
+            // InternalOCLinEcore.g:27647:1: ( ruleTemplateSignatureCS )
             {
-            // InternalOCLinEcore.g:27643:1: ( ruleTemplateSignatureCS )
-            // InternalOCLinEcore.g:27644:1: ruleTemplateSignatureCS
+            // InternalOCLinEcore.g:27647:1: ( ruleTemplateSignatureCS )
+            // InternalOCLinEcore.g:27648:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
@@ -80599,17 +80599,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1"
-    // InternalOCLinEcore.g:27653:1: rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 : ( ruleTypedRefCS ) ;
+    // InternalOCLinEcore.g:27657:1: rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 : ( ruleTypedRefCS ) ;
     public final void rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27657:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLinEcore.g:27658:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:27661:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLinEcore.g:27662:1: ( ruleTypedRefCS )
             {
-            // InternalOCLinEcore.g:27658:1: ( ruleTypedRefCS )
-            // InternalOCLinEcore.g:27659:1: ruleTypedRefCS
+            // InternalOCLinEcore.g:27662:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:27663:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_1_0());
@@ -80644,17 +80644,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1"
-    // InternalOCLinEcore.g:27668:1: rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 : ( ruleTypedRefCS ) ;
+    // InternalOCLinEcore.g:27672:1: rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27672:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLinEcore.g:27673:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:27676:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLinEcore.g:27677:1: ( ruleTypedRefCS )
             {
-            // InternalOCLinEcore.g:27673:1: ( ruleTypedRefCS )
-            // InternalOCLinEcore.g:27674:1: ruleTypedRefCS
+            // InternalOCLinEcore.g:27677:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:27678:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_2_1_0());
@@ -80689,17 +80689,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__InstanceClassNameAssignment_5_1"
-    // InternalOCLinEcore.g:27683:1: rule__StructuredClassCS__InstanceClassNameAssignment_5_1 : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalOCLinEcore.g:27687:1: rule__StructuredClassCS__InstanceClassNameAssignment_5_1 : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void rule__StructuredClassCS__InstanceClassNameAssignment_5_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27687:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLinEcore.g:27688:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:27691:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLinEcore.g:27692:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalOCLinEcore.g:27688:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:27689:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:27692:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:27693:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0());
@@ -80730,23 +80730,23 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__IsInterfaceAssignment_6_1"
-    // InternalOCLinEcore.g:27698:1: rule__StructuredClassCS__IsInterfaceAssignment_6_1 : ( ( 'interface' ) ) ;
+    // InternalOCLinEcore.g:27702:1: rule__StructuredClassCS__IsInterfaceAssignment_6_1 : ( ( 'interface' ) ) ;
     public final void rule__StructuredClassCS__IsInterfaceAssignment_6_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27702:1: ( ( ( 'interface' ) ) )
-            // InternalOCLinEcore.g:27703:1: ( ( 'interface' ) )
+            // InternalOCLinEcore.g:27706:1: ( ( ( 'interface' ) ) )
+            // InternalOCLinEcore.g:27707:1: ( ( 'interface' ) )
             {
-            // InternalOCLinEcore.g:27703:1: ( ( 'interface' ) )
-            // InternalOCLinEcore.g:27704:1: ( 'interface' )
+            // InternalOCLinEcore.g:27707:1: ( ( 'interface' ) )
+            // InternalOCLinEcore.g:27708:1: ( 'interface' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0());
             }
-            // InternalOCLinEcore.g:27705:1: ( 'interface' )
-            // InternalOCLinEcore.g:27706:1: 'interface'
+            // InternalOCLinEcore.g:27709:1: ( 'interface' )
+            // InternalOCLinEcore.g:27710:1: 'interface'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0());
@@ -80783,17 +80783,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0"
-    // InternalOCLinEcore.g:27721:1: rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLinEcore.g:27725:1: rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 : ( ruleAnnotationElementCS ) ;
     public final void rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27725:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLinEcore.g:27726:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:27729:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLinEcore.g:27730:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLinEcore.g:27726:1: ( ruleAnnotationElementCS )
-            // InternalOCLinEcore.g:27727:1: ruleAnnotationElementCS
+            // InternalOCLinEcore.g:27730:1: ( ruleAnnotationElementCS )
+            // InternalOCLinEcore.g:27731:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
@@ -80828,17 +80828,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1"
-    // InternalOCLinEcore.g:27736:1: rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 : ( ruleOperationCS ) ;
+    // InternalOCLinEcore.g:27740:1: rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 : ( ruleOperationCS ) ;
     public final void rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27740:1: ( ( ruleOperationCS ) )
-            // InternalOCLinEcore.g:27741:1: ( ruleOperationCS )
+            // InternalOCLinEcore.g:27744:1: ( ( ruleOperationCS ) )
+            // InternalOCLinEcore.g:27745:1: ( ruleOperationCS )
             {
-            // InternalOCLinEcore.g:27741:1: ( ruleOperationCS )
-            // InternalOCLinEcore.g:27742:1: ruleOperationCS
+            // InternalOCLinEcore.g:27745:1: ( ruleOperationCS )
+            // InternalOCLinEcore.g:27746:1: ruleOperationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_1_1_0());
@@ -80873,17 +80873,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2"
-    // InternalOCLinEcore.g:27751:1: rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 : ( ruleStructuralFeatureCS ) ;
+    // InternalOCLinEcore.g:27755:1: rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 : ( ruleStructuralFeatureCS ) ;
     public final void rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27755:1: ( ( ruleStructuralFeatureCS ) )
-            // InternalOCLinEcore.g:27756:1: ( ruleStructuralFeatureCS )
+            // InternalOCLinEcore.g:27759:1: ( ( ruleStructuralFeatureCS ) )
+            // InternalOCLinEcore.g:27760:1: ( ruleStructuralFeatureCS )
             {
-            // InternalOCLinEcore.g:27756:1: ( ruleStructuralFeatureCS )
-            // InternalOCLinEcore.g:27757:1: ruleStructuralFeatureCS
+            // InternalOCLinEcore.g:27760:1: ( ruleStructuralFeatureCS )
+            // InternalOCLinEcore.g:27761:1: ruleStructuralFeatureCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesStructuralFeatureCSParserRuleCall_7_0_1_2_0());
@@ -80918,17 +80918,17 @@
 
 
     // $ANTLR start "rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3"
-    // InternalOCLinEcore.g:27766:1: rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 : ( ruleInvariantConstraintCS ) ;
+    // InternalOCLinEcore.g:27770:1: rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 : ( ruleInvariantConstraintCS ) ;
     public final void rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27770:1: ( ( ruleInvariantConstraintCS ) )
-            // InternalOCLinEcore.g:27771:1: ( ruleInvariantConstraintCS )
+            // InternalOCLinEcore.g:27774:1: ( ( ruleInvariantConstraintCS ) )
+            // InternalOCLinEcore.g:27775:1: ( ruleInvariantConstraintCS )
             {
-            // InternalOCLinEcore.g:27771:1: ( ruleInvariantConstraintCS )
-            // InternalOCLinEcore.g:27772:1: ruleInvariantConstraintCS
+            // InternalOCLinEcore.g:27775:1: ( ruleInvariantConstraintCS )
+            // InternalOCLinEcore.g:27776:1: ruleInvariantConstraintCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_7_0_1_3_0());
@@ -80963,17 +80963,17 @@
 
 
     // $ANTLR start "rule__SysMLCS__OwnedDetailsAssignment_2_0_0"
-    // InternalOCLinEcore.g:27781:1: rule__SysMLCS__OwnedDetailsAssignment_2_0_0 : ( ruleDetailCS ) ;
+    // InternalOCLinEcore.g:27785:1: rule__SysMLCS__OwnedDetailsAssignment_2_0_0 : ( ruleDetailCS ) ;
     public final void rule__SysMLCS__OwnedDetailsAssignment_2_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27785:1: ( ( ruleDetailCS ) )
-            // InternalOCLinEcore.g:27786:1: ( ruleDetailCS )
+            // InternalOCLinEcore.g:27789:1: ( ( ruleDetailCS ) )
+            // InternalOCLinEcore.g:27790:1: ( ruleDetailCS )
             {
-            // InternalOCLinEcore.g:27786:1: ( ruleDetailCS )
-            // InternalOCLinEcore.g:27787:1: ruleDetailCS
+            // InternalOCLinEcore.g:27790:1: ( ruleDetailCS )
+            // InternalOCLinEcore.g:27791:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_0_0_0());
@@ -81008,17 +81008,17 @@
 
 
     // $ANTLR start "rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0"
-    // InternalOCLinEcore.g:27796:1: rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 : ( ruleDetailCS ) ;
+    // InternalOCLinEcore.g:27800:1: rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 : ( ruleDetailCS ) ;
     public final void rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27800:1: ( ( ruleDetailCS ) )
-            // InternalOCLinEcore.g:27801:1: ( ruleDetailCS )
+            // InternalOCLinEcore.g:27804:1: ( ( ruleDetailCS ) )
+            // InternalOCLinEcore.g:27805:1: ( ruleDetailCS )
             {
-            // InternalOCLinEcore.g:27801:1: ( ruleDetailCS )
-            // InternalOCLinEcore.g:27802:1: ruleDetailCS
+            // InternalOCLinEcore.g:27805:1: ( ruleDetailCS )
+            // InternalOCLinEcore.g:27806:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_1_0_0());
@@ -81053,17 +81053,17 @@
 
 
     // $ANTLR start "rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1"
-    // InternalOCLinEcore.g:27811:1: rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
+    // InternalOCLinEcore.g:27815:1: rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
     public final void rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27815:1: ( ( ruleMultiplicityCS ) )
-            // InternalOCLinEcore.g:27816:1: ( ruleMultiplicityCS )
+            // InternalOCLinEcore.g:27819:1: ( ( ruleMultiplicityCS ) )
+            // InternalOCLinEcore.g:27820:1: ( ruleMultiplicityCS )
             {
-            // InternalOCLinEcore.g:27816:1: ( ruleMultiplicityCS )
-            // InternalOCLinEcore.g:27817:1: ruleMultiplicityCS
+            // InternalOCLinEcore.g:27820:1: ( ruleMultiplicityCS )
+            // InternalOCLinEcore.g:27821:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
@@ -81098,17 +81098,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__OwnedParametersAssignment_0_1"
-    // InternalOCLinEcore.g:27826:1: rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 : ( ruleTypeParameterCS ) ;
+    // InternalOCLinEcore.g:27830:1: rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 : ( ruleTypeParameterCS ) ;
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27830:1: ( ( ruleTypeParameterCS ) )
-            // InternalOCLinEcore.g:27831:1: ( ruleTypeParameterCS )
+            // InternalOCLinEcore.g:27834:1: ( ( ruleTypeParameterCS ) )
+            // InternalOCLinEcore.g:27835:1: ( ruleTypeParameterCS )
             {
-            // InternalOCLinEcore.g:27831:1: ( ruleTypeParameterCS )
-            // InternalOCLinEcore.g:27832:1: ruleTypeParameterCS
+            // InternalOCLinEcore.g:27835:1: ( ruleTypeParameterCS )
+            // InternalOCLinEcore.g:27836:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0());
@@ -81143,17 +81143,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1"
-    // InternalOCLinEcore.g:27841:1: rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 : ( ruleTypeParameterCS ) ;
+    // InternalOCLinEcore.g:27845:1: rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 : ( ruleTypeParameterCS ) ;
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27845:1: ( ( ruleTypeParameterCS ) )
-            // InternalOCLinEcore.g:27846:1: ( ruleTypeParameterCS )
+            // InternalOCLinEcore.g:27849:1: ( ( ruleTypeParameterCS ) )
+            // InternalOCLinEcore.g:27850:1: ( ruleTypeParameterCS )
             {
-            // InternalOCLinEcore.g:27846:1: ( ruleTypeParameterCS )
-            // InternalOCLinEcore.g:27847:1: ruleTypeParameterCS
+            // InternalOCLinEcore.g:27850:1: ( ruleTypeParameterCS )
+            // InternalOCLinEcore.g:27851:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0());
@@ -81188,17 +81188,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__OwnedParametersAssignment_1_1"
-    // InternalOCLinEcore.g:27856:1: rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 : ( ruleTypeParameterCS ) ;
+    // InternalOCLinEcore.g:27860:1: rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 : ( ruleTypeParameterCS ) ;
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27860:1: ( ( ruleTypeParameterCS ) )
-            // InternalOCLinEcore.g:27861:1: ( ruleTypeParameterCS )
+            // InternalOCLinEcore.g:27864:1: ( ( ruleTypeParameterCS ) )
+            // InternalOCLinEcore.g:27865:1: ( ruleTypeParameterCS )
             {
-            // InternalOCLinEcore.g:27861:1: ( ruleTypeParameterCS )
-            // InternalOCLinEcore.g:27862:1: ruleTypeParameterCS
+            // InternalOCLinEcore.g:27865:1: ( ruleTypeParameterCS )
+            // InternalOCLinEcore.g:27866:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0());
@@ -81233,17 +81233,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1"
-    // InternalOCLinEcore.g:27871:1: rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 : ( ruleTypeParameterCS ) ;
+    // InternalOCLinEcore.g:27875:1: rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 : ( ruleTypeParameterCS ) ;
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27875:1: ( ( ruleTypeParameterCS ) )
-            // InternalOCLinEcore.g:27876:1: ( ruleTypeParameterCS )
+            // InternalOCLinEcore.g:27879:1: ( ( ruleTypeParameterCS ) )
+            // InternalOCLinEcore.g:27880:1: ( ruleTypeParameterCS )
             {
-            // InternalOCLinEcore.g:27876:1: ( ruleTypeParameterCS )
-            // InternalOCLinEcore.g:27877:1: ruleTypeParameterCS
+            // InternalOCLinEcore.g:27880:1: ( ruleTypeParameterCS )
+            // InternalOCLinEcore.g:27881:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0());
@@ -81278,17 +81278,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__OwnedPathNameAssignment_0"
-    // InternalOCLinEcore.g:27886:1: rule__TypedTypeRefCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
+    // InternalOCLinEcore.g:27890:1: rule__TypedTypeRefCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
     public final void rule__TypedTypeRefCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27890:1: ( ( rulePathNameCS ) )
-            // InternalOCLinEcore.g:27891:1: ( rulePathNameCS )
+            // InternalOCLinEcore.g:27894:1: ( ( rulePathNameCS ) )
+            // InternalOCLinEcore.g:27895:1: ( rulePathNameCS )
             {
-            // InternalOCLinEcore.g:27891:1: ( rulePathNameCS )
-            // InternalOCLinEcore.g:27892:1: rulePathNameCS
+            // InternalOCLinEcore.g:27895:1: ( rulePathNameCS )
+            // InternalOCLinEcore.g:27896:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
@@ -81323,17 +81323,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1"
-    // InternalOCLinEcore.g:27901:1: rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 : ( ruleTemplateBindingCS ) ;
+    // InternalOCLinEcore.g:27905:1: rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 : ( ruleTemplateBindingCS ) ;
     public final void rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27905:1: ( ( ruleTemplateBindingCS ) )
-            // InternalOCLinEcore.g:27906:1: ( ruleTemplateBindingCS )
+            // InternalOCLinEcore.g:27909:1: ( ( ruleTemplateBindingCS ) )
+            // InternalOCLinEcore.g:27910:1: ( ruleTemplateBindingCS )
             {
-            // InternalOCLinEcore.g:27906:1: ( ruleTemplateBindingCS )
-            // InternalOCLinEcore.g:27907:1: ruleTemplateBindingCS
+            // InternalOCLinEcore.g:27910:1: ( ruleTemplateBindingCS )
+            // InternalOCLinEcore.g:27911:1: ruleTemplateBindingCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_0_1_0());
@@ -81368,17 +81368,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1"
-    // InternalOCLinEcore.g:27916:1: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 : ( ruleTemplateBindingCS ) ;
+    // InternalOCLinEcore.g:27920:1: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 : ( ruleTemplateBindingCS ) ;
     public final void rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27920:1: ( ( ruleTemplateBindingCS ) )
-            // InternalOCLinEcore.g:27921:1: ( ruleTemplateBindingCS )
+            // InternalOCLinEcore.g:27924:1: ( ( ruleTemplateBindingCS ) )
+            // InternalOCLinEcore.g:27925:1: ( ruleTemplateBindingCS )
             {
-            // InternalOCLinEcore.g:27921:1: ( ruleTemplateBindingCS )
-            // InternalOCLinEcore.g:27922:1: ruleTemplateBindingCS
+            // InternalOCLinEcore.g:27925:1: ( ruleTemplateBindingCS )
+            // InternalOCLinEcore.g:27926:1: ruleTemplateBindingCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0());
@@ -81413,17 +81413,17 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__OwnedPathElementsAssignment_0"
-    // InternalOCLinEcore.g:27932:1: rule__URIPathNameCS__OwnedPathElementsAssignment_0 : ( ruleURIFirstPathElementCS ) ;
+    // InternalOCLinEcore.g:27936:1: rule__URIPathNameCS__OwnedPathElementsAssignment_0 : ( ruleURIFirstPathElementCS ) ;
     public final void rule__URIPathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27936:1: ( ( ruleURIFirstPathElementCS ) )
-            // InternalOCLinEcore.g:27937:1: ( ruleURIFirstPathElementCS )
+            // InternalOCLinEcore.g:27940:1: ( ( ruleURIFirstPathElementCS ) )
+            // InternalOCLinEcore.g:27941:1: ( ruleURIFirstPathElementCS )
             {
-            // InternalOCLinEcore.g:27937:1: ( ruleURIFirstPathElementCS )
-            // InternalOCLinEcore.g:27938:1: ruleURIFirstPathElementCS
+            // InternalOCLinEcore.g:27941:1: ( ruleURIFirstPathElementCS )
+            // InternalOCLinEcore.g:27942:1: ruleURIFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
@@ -81458,17 +81458,17 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__OwnedPathElementsAssignment_1_1"
-    // InternalOCLinEcore.g:27947:1: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
+    // InternalOCLinEcore.g:27951:1: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
     public final void rule__URIPathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27951:1: ( ( ruleNextPathElementCS ) )
-            // InternalOCLinEcore.g:27952:1: ( ruleNextPathElementCS )
+            // InternalOCLinEcore.g:27955:1: ( ( ruleNextPathElementCS ) )
+            // InternalOCLinEcore.g:27956:1: ( ruleNextPathElementCS )
             {
-            // InternalOCLinEcore.g:27952:1: ( ruleNextPathElementCS )
-            // InternalOCLinEcore.g:27953:1: ruleNextPathElementCS
+            // InternalOCLinEcore.g:27956:1: ( ruleNextPathElementCS )
+            // InternalOCLinEcore.g:27957:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
@@ -81503,23 +81503,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__ReferredElementAssignment_0"
-    // InternalOCLinEcore.g:27962:1: rule__URIFirstPathElementCS__ReferredElementAssignment_0 : ( ( ruleUnrestrictedName ) ) ;
+    // InternalOCLinEcore.g:27966:1: rule__URIFirstPathElementCS__ReferredElementAssignment_0 : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27966:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalOCLinEcore.g:27967:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:27970:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalOCLinEcore.g:27971:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalOCLinEcore.g:27967:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:27968:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:27971:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:27972:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
             }
-            // InternalOCLinEcore.g:27969:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:27970:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:27973:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:27974:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1());
@@ -81560,23 +81560,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__ReferredElementAssignment_1_1"
-    // InternalOCLinEcore.g:27981:1: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 : ( ( ruleURI ) ) ;
+    // InternalOCLinEcore.g:27985:1: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 : ( ( ruleURI ) ) ;
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:27985:1: ( ( ( ruleURI ) ) )
-            // InternalOCLinEcore.g:27986:1: ( ( ruleURI ) )
+            // InternalOCLinEcore.g:27989:1: ( ( ( ruleURI ) ) )
+            // InternalOCLinEcore.g:27990:1: ( ( ruleURI ) )
             {
-            // InternalOCLinEcore.g:27986:1: ( ( ruleURI ) )
-            // InternalOCLinEcore.g:27987:1: ( ruleURI )
+            // InternalOCLinEcore.g:27990:1: ( ( ruleURI ) )
+            // InternalOCLinEcore.g:27991:1: ( ruleURI )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
             }
-            // InternalOCLinEcore.g:27988:1: ( ruleURI )
-            // InternalOCLinEcore.g:27989:1: ruleURI
+            // InternalOCLinEcore.g:27992:1: ( ruleURI )
+            // InternalOCLinEcore.g:27993:1: ruleURI
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1());
@@ -81617,17 +81617,17 @@
 
 
     // $ANTLR start "rule__PrimitiveTypeCS__NameAssignment"
-    // InternalOCLinEcore.g:28001:1: rule__PrimitiveTypeCS__NameAssignment : ( rulePrimitiveTypeIdentifier ) ;
+    // InternalOCLinEcore.g:28005:1: rule__PrimitiveTypeCS__NameAssignment : ( rulePrimitiveTypeIdentifier ) ;
     public final void rule__PrimitiveTypeCS__NameAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28005:1: ( ( rulePrimitiveTypeIdentifier ) )
-            // InternalOCLinEcore.g:28006:1: ( rulePrimitiveTypeIdentifier )
+            // InternalOCLinEcore.g:28009:1: ( ( rulePrimitiveTypeIdentifier ) )
+            // InternalOCLinEcore.g:28010:1: ( rulePrimitiveTypeIdentifier )
             {
-            // InternalOCLinEcore.g:28006:1: ( rulePrimitiveTypeIdentifier )
-            // InternalOCLinEcore.g:28007:1: rulePrimitiveTypeIdentifier
+            // InternalOCLinEcore.g:28010:1: ( rulePrimitiveTypeIdentifier )
+            // InternalOCLinEcore.g:28011:1: rulePrimitiveTypeIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
@@ -81662,17 +81662,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__NameAssignment_0"
-    // InternalOCLinEcore.g:28016:1: rule__CollectionTypeCS__NameAssignment_0 : ( ruleCollectionTypeIdentifier ) ;
+    // InternalOCLinEcore.g:28020:1: rule__CollectionTypeCS__NameAssignment_0 : ( ruleCollectionTypeIdentifier ) ;
     public final void rule__CollectionTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28020:1: ( ( ruleCollectionTypeIdentifier ) )
-            // InternalOCLinEcore.g:28021:1: ( ruleCollectionTypeIdentifier )
+            // InternalOCLinEcore.g:28024:1: ( ( ruleCollectionTypeIdentifier ) )
+            // InternalOCLinEcore.g:28025:1: ( ruleCollectionTypeIdentifier )
             {
-            // InternalOCLinEcore.g:28021:1: ( ruleCollectionTypeIdentifier )
-            // InternalOCLinEcore.g:28022:1: ruleCollectionTypeIdentifier
+            // InternalOCLinEcore.g:28025:1: ( ruleCollectionTypeIdentifier )
+            // InternalOCLinEcore.g:28026:1: ruleCollectionTypeIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
@@ -81707,17 +81707,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__OwnedTypeAssignment_1_1"
-    // InternalOCLinEcore.g:28031:1: rule__CollectionTypeCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpWithoutMultiplicityCS ) ;
+    // InternalOCLinEcore.g:28035:1: rule__CollectionTypeCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpWithoutMultiplicityCS ) ;
     public final void rule__CollectionTypeCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28035:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
-            // InternalOCLinEcore.g:28036:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalOCLinEcore.g:28039:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
+            // InternalOCLinEcore.g:28040:1: ( ruleTypeExpWithoutMultiplicityCS )
             {
-            // InternalOCLinEcore.g:28036:1: ( ruleTypeExpWithoutMultiplicityCS )
-            // InternalOCLinEcore.g:28037:1: ruleTypeExpWithoutMultiplicityCS
+            // InternalOCLinEcore.g:28040:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalOCLinEcore.g:28041:1: ruleTypeExpWithoutMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpWithoutMultiplicityCSParserRuleCall_1_1_0());
@@ -81752,17 +81752,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2"
-    // InternalOCLinEcore.g:28046:1: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 : ( ruleMultiplicityCS ) ;
+    // InternalOCLinEcore.g:28050:1: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 : ( ruleMultiplicityCS ) ;
     public final void rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28050:1: ( ( ruleMultiplicityCS ) )
-            // InternalOCLinEcore.g:28051:1: ( ruleMultiplicityCS )
+            // InternalOCLinEcore.g:28054:1: ( ( ruleMultiplicityCS ) )
+            // InternalOCLinEcore.g:28055:1: ( ruleMultiplicityCS )
             {
-            // InternalOCLinEcore.g:28051:1: ( ruleMultiplicityCS )
-            // InternalOCLinEcore.g:28052:1: ruleMultiplicityCS
+            // InternalOCLinEcore.g:28055:1: ( ruleMultiplicityCS )
+            // InternalOCLinEcore.g:28056:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedCollectionMultiplicityMultiplicityCSParserRuleCall_1_2_0());
@@ -81797,23 +81797,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__NameAssignment_0"
-    // InternalOCLinEcore.g:28061:1: rule__MapTypeCS__NameAssignment_0 : ( ( 'Map' ) ) ;
+    // InternalOCLinEcore.g:28065:1: rule__MapTypeCS__NameAssignment_0 : ( ( 'Map' ) ) ;
     public final void rule__MapTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28065:1: ( ( ( 'Map' ) ) )
-            // InternalOCLinEcore.g:28066:1: ( ( 'Map' ) )
+            // InternalOCLinEcore.g:28069:1: ( ( ( 'Map' ) ) )
+            // InternalOCLinEcore.g:28070:1: ( ( 'Map' ) )
             {
-            // InternalOCLinEcore.g:28066:1: ( ( 'Map' ) )
-            // InternalOCLinEcore.g:28067:1: ( 'Map' )
+            // InternalOCLinEcore.g:28070:1: ( ( 'Map' ) )
+            // InternalOCLinEcore.g:28071:1: ( 'Map' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
-            // InternalOCLinEcore.g:28068:1: ( 'Map' )
-            // InternalOCLinEcore.g:28069:1: 'Map'
+            // InternalOCLinEcore.g:28072:1: ( 'Map' )
+            // InternalOCLinEcore.g:28073:1: 'Map'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
@@ -81850,17 +81850,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__OwnedKeyTypeAssignment_1_1"
-    // InternalOCLinEcore.g:28084:1: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:28088:1: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__MapTypeCS__OwnedKeyTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28088:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:28089:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:28092:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:28093:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:28089:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:28090:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:28093:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:28094:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
@@ -81895,17 +81895,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__OwnedValueTypeAssignment_1_3"
-    // InternalOCLinEcore.g:28099:1: rule__MapTypeCS__OwnedValueTypeAssignment_1_3 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:28103:1: rule__MapTypeCS__OwnedValueTypeAssignment_1_3 : ( ruleTypeExpCS ) ;
     public final void rule__MapTypeCS__OwnedValueTypeAssignment_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28103:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:28104:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:28107:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:28108:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:28104:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:28105:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:28108:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:28109:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
@@ -81940,23 +81940,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__NameAssignment_0"
-    // InternalOCLinEcore.g:28114:1: rule__TupleTypeCS__NameAssignment_0 : ( ( 'Tuple' ) ) ;
+    // InternalOCLinEcore.g:28118:1: rule__TupleTypeCS__NameAssignment_0 : ( ( 'Tuple' ) ) ;
     public final void rule__TupleTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28118:1: ( ( ( 'Tuple' ) ) )
-            // InternalOCLinEcore.g:28119:1: ( ( 'Tuple' ) )
+            // InternalOCLinEcore.g:28122:1: ( ( ( 'Tuple' ) ) )
+            // InternalOCLinEcore.g:28123:1: ( ( 'Tuple' ) )
             {
-            // InternalOCLinEcore.g:28119:1: ( ( 'Tuple' ) )
-            // InternalOCLinEcore.g:28120:1: ( 'Tuple' )
+            // InternalOCLinEcore.g:28123:1: ( ( 'Tuple' ) )
+            // InternalOCLinEcore.g:28124:1: ( 'Tuple' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
-            // InternalOCLinEcore.g:28121:1: ( 'Tuple' )
-            // InternalOCLinEcore.g:28122:1: 'Tuple'
+            // InternalOCLinEcore.g:28125:1: ( 'Tuple' )
+            // InternalOCLinEcore.g:28126:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
@@ -81993,17 +81993,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__OwnedPartsAssignment_1_1_0"
-    // InternalOCLinEcore.g:28137:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 : ( ruleTuplePartCS ) ;
+    // InternalOCLinEcore.g:28141:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 : ( ruleTuplePartCS ) ;
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28141:1: ( ( ruleTuplePartCS ) )
-            // InternalOCLinEcore.g:28142:1: ( ruleTuplePartCS )
+            // InternalOCLinEcore.g:28145:1: ( ( ruleTuplePartCS ) )
+            // InternalOCLinEcore.g:28146:1: ( ruleTuplePartCS )
             {
-            // InternalOCLinEcore.g:28142:1: ( ruleTuplePartCS )
-            // InternalOCLinEcore.g:28143:1: ruleTuplePartCS
+            // InternalOCLinEcore.g:28146:1: ( ruleTuplePartCS )
+            // InternalOCLinEcore.g:28147:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
@@ -82038,17 +82038,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1"
-    // InternalOCLinEcore.g:28152:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 : ( ruleTuplePartCS ) ;
+    // InternalOCLinEcore.g:28156:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 : ( ruleTuplePartCS ) ;
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28156:1: ( ( ruleTuplePartCS ) )
-            // InternalOCLinEcore.g:28157:1: ( ruleTuplePartCS )
+            // InternalOCLinEcore.g:28160:1: ( ( ruleTuplePartCS ) )
+            // InternalOCLinEcore.g:28161:1: ( ruleTuplePartCS )
             {
-            // InternalOCLinEcore.g:28157:1: ( ruleTuplePartCS )
-            // InternalOCLinEcore.g:28158:1: ruleTuplePartCS
+            // InternalOCLinEcore.g:28161:1: ( ruleTuplePartCS )
+            // InternalOCLinEcore.g:28162:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
@@ -82083,17 +82083,17 @@
 
 
     // $ANTLR start "rule__TuplePartCS__NameAssignment_0"
-    // InternalOCLinEcore.g:28167:1: rule__TuplePartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:28171:1: rule__TuplePartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__TuplePartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28171:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:28172:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:28175:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:28176:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:28172:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:28173:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:28176:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:28177:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -82128,17 +82128,17 @@
 
 
     // $ANTLR start "rule__TuplePartCS__OwnedTypeAssignment_2"
-    // InternalOCLinEcore.g:28182:1: rule__TuplePartCS__OwnedTypeAssignment_2 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:28186:1: rule__TuplePartCS__OwnedTypeAssignment_2 : ( ruleTypeExpCS ) ;
     public final void rule__TuplePartCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28186:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:28187:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:28190:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:28191:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:28187:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:28188:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:28191:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:28192:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
@@ -82173,17 +82173,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__OwnedTypeAssignment_0"
-    // InternalOCLinEcore.g:28197:1: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
+    // InternalOCLinEcore.g:28201:1: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
     public final void rule__CollectionLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28201:1: ( ( ruleCollectionTypeCS ) )
-            // InternalOCLinEcore.g:28202:1: ( ruleCollectionTypeCS )
+            // InternalOCLinEcore.g:28205:1: ( ( ruleCollectionTypeCS ) )
+            // InternalOCLinEcore.g:28206:1: ( ruleCollectionTypeCS )
             {
-            // InternalOCLinEcore.g:28202:1: ( ruleCollectionTypeCS )
-            // InternalOCLinEcore.g:28203:1: ruleCollectionTypeCS
+            // InternalOCLinEcore.g:28206:1: ( ruleCollectionTypeCS )
+            // InternalOCLinEcore.g:28207:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
@@ -82218,17 +82218,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0"
-    // InternalOCLinEcore.g:28212:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleCollectionLiteralPartCS ) ;
+    // InternalOCLinEcore.g:28216:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleCollectionLiteralPartCS ) ;
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28216:1: ( ( ruleCollectionLiteralPartCS ) )
-            // InternalOCLinEcore.g:28217:1: ( ruleCollectionLiteralPartCS )
+            // InternalOCLinEcore.g:28220:1: ( ( ruleCollectionLiteralPartCS ) )
+            // InternalOCLinEcore.g:28221:1: ( ruleCollectionLiteralPartCS )
             {
-            // InternalOCLinEcore.g:28217:1: ( ruleCollectionLiteralPartCS )
-            // InternalOCLinEcore.g:28218:1: ruleCollectionLiteralPartCS
+            // InternalOCLinEcore.g:28221:1: ( ruleCollectionLiteralPartCS )
+            // InternalOCLinEcore.g:28222:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
@@ -82263,17 +82263,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1"
-    // InternalOCLinEcore.g:28227:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleCollectionLiteralPartCS ) ;
+    // InternalOCLinEcore.g:28231:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleCollectionLiteralPartCS ) ;
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28231:1: ( ( ruleCollectionLiteralPartCS ) )
-            // InternalOCLinEcore.g:28232:1: ( ruleCollectionLiteralPartCS )
+            // InternalOCLinEcore.g:28235:1: ( ( ruleCollectionLiteralPartCS ) )
+            // InternalOCLinEcore.g:28236:1: ( ruleCollectionLiteralPartCS )
             {
-            // InternalOCLinEcore.g:28232:1: ( ruleCollectionLiteralPartCS )
-            // InternalOCLinEcore.g:28233:1: ruleCollectionLiteralPartCS
+            // InternalOCLinEcore.g:28236:1: ( ruleCollectionLiteralPartCS )
+            // InternalOCLinEcore.g:28237:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
@@ -82308,17 +82308,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0"
-    // InternalOCLinEcore.g:28242:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:28246:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 : ( ruleExpCS ) ;
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28246:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:28247:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28250:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:28251:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:28247:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:28248:1: ruleExpCS
+            // InternalOCLinEcore.g:28251:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28252:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
@@ -82353,17 +82353,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1"
-    // InternalOCLinEcore.g:28257:1: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:28261:1: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 : ( ruleExpCS ) ;
     public final void rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28261:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:28262:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28265:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:28266:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:28262:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:28263:1: ruleExpCS
+            // InternalOCLinEcore.g:28266:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28267:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
@@ -82398,17 +82398,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1"
-    // InternalOCLinEcore.g:28272:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 : ( rulePatternExpCS ) ;
+    // InternalOCLinEcore.g:28276:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 : ( rulePatternExpCS ) ;
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28276:1: ( ( rulePatternExpCS ) )
-            // InternalOCLinEcore.g:28277:1: ( rulePatternExpCS )
+            // InternalOCLinEcore.g:28280:1: ( ( rulePatternExpCS ) )
+            // InternalOCLinEcore.g:28281:1: ( rulePatternExpCS )
             {
-            // InternalOCLinEcore.g:28277:1: ( rulePatternExpCS )
-            // InternalOCLinEcore.g:28278:1: rulePatternExpCS
+            // InternalOCLinEcore.g:28281:1: ( rulePatternExpCS )
+            // InternalOCLinEcore.g:28282:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
@@ -82443,17 +82443,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__OwnedTypeAssignment_0"
-    // InternalOCLinEcore.g:28287:1: rule__CollectionPatternCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
+    // InternalOCLinEcore.g:28291:1: rule__CollectionPatternCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
     public final void rule__CollectionPatternCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28291:1: ( ( ruleCollectionTypeCS ) )
-            // InternalOCLinEcore.g:28292:1: ( ruleCollectionTypeCS )
+            // InternalOCLinEcore.g:28295:1: ( ( ruleCollectionTypeCS ) )
+            // InternalOCLinEcore.g:28296:1: ( ruleCollectionTypeCS )
             {
-            // InternalOCLinEcore.g:28292:1: ( ruleCollectionTypeCS )
-            // InternalOCLinEcore.g:28293:1: ruleCollectionTypeCS
+            // InternalOCLinEcore.g:28296:1: ( ruleCollectionTypeCS )
+            // InternalOCLinEcore.g:28297:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
@@ -82488,17 +82488,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__OwnedPartsAssignment_2_0"
-    // InternalOCLinEcore.g:28302:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_0 : ( rulePatternExpCS ) ;
+    // InternalOCLinEcore.g:28306:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_0 : ( rulePatternExpCS ) ;
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28306:1: ( ( rulePatternExpCS ) )
-            // InternalOCLinEcore.g:28307:1: ( rulePatternExpCS )
+            // InternalOCLinEcore.g:28310:1: ( ( rulePatternExpCS ) )
+            // InternalOCLinEcore.g:28311:1: ( rulePatternExpCS )
             {
-            // InternalOCLinEcore.g:28307:1: ( rulePatternExpCS )
-            // InternalOCLinEcore.g:28308:1: rulePatternExpCS
+            // InternalOCLinEcore.g:28311:1: ( rulePatternExpCS )
+            // InternalOCLinEcore.g:28312:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
@@ -82533,17 +82533,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1"
-    // InternalOCLinEcore.g:28317:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 : ( rulePatternExpCS ) ;
+    // InternalOCLinEcore.g:28321:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 : ( rulePatternExpCS ) ;
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28321:1: ( ( rulePatternExpCS ) )
-            // InternalOCLinEcore.g:28322:1: ( rulePatternExpCS )
+            // InternalOCLinEcore.g:28325:1: ( ( rulePatternExpCS ) )
+            // InternalOCLinEcore.g:28326:1: ( rulePatternExpCS )
             {
-            // InternalOCLinEcore.g:28322:1: ( rulePatternExpCS )
-            // InternalOCLinEcore.g:28323:1: rulePatternExpCS
+            // InternalOCLinEcore.g:28326:1: ( rulePatternExpCS )
+            // InternalOCLinEcore.g:28327:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
@@ -82578,17 +82578,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1"
-    // InternalOCLinEcore.g:28332:1: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 : ( ruleIdentifier ) ;
+    // InternalOCLinEcore.g:28336:1: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 : ( ruleIdentifier ) ;
     public final void rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28336:1: ( ( ruleIdentifier ) )
-            // InternalOCLinEcore.g:28337:1: ( ruleIdentifier )
+            // InternalOCLinEcore.g:28340:1: ( ( ruleIdentifier ) )
+            // InternalOCLinEcore.g:28341:1: ( ruleIdentifier )
             {
-            // InternalOCLinEcore.g:28337:1: ( ruleIdentifier )
-            // InternalOCLinEcore.g:28338:1: ruleIdentifier
+            // InternalOCLinEcore.g:28341:1: ( ruleIdentifier )
+            // InternalOCLinEcore.g:28342:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
@@ -82623,23 +82623,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__ReferredPropertyAssignment_0_0"
-    // InternalOCLinEcore.g:28347:1: rule__ShadowPartCS__ReferredPropertyAssignment_0_0 : ( ( ruleUnrestrictedName ) ) ;
+    // InternalOCLinEcore.g:28351:1: rule__ShadowPartCS__ReferredPropertyAssignment_0_0 : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__ShadowPartCS__ReferredPropertyAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28351:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalOCLinEcore.g:28352:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:28355:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalOCLinEcore.g:28356:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalOCLinEcore.g:28352:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:28353:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:28356:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:28357:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0_0());
             }
-            // InternalOCLinEcore.g:28354:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:28355:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:28358:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:28359:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_0_1());
@@ -82680,23 +82680,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2"
-    // InternalOCLinEcore.g:28366:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 : ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) ;
+    // InternalOCLinEcore.g:28370:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 : ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) ;
     public final void rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28370:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) )
-            // InternalOCLinEcore.g:28371:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
+            // InternalOCLinEcore.g:28374:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) )
+            // InternalOCLinEcore.g:28375:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
             {
-            // InternalOCLinEcore.g:28371:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
-            // InternalOCLinEcore.g:28372:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
+            // InternalOCLinEcore.g:28375:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
+            // InternalOCLinEcore.g:28376:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_0_2_0());
             }
-            // InternalOCLinEcore.g:28373:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
-            // InternalOCLinEcore.g:28373:2: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0
+            // InternalOCLinEcore.g:28377:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
+            // InternalOCLinEcore.g:28377:2: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0();
@@ -82731,17 +82731,17 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__OwnedInitExpressionAssignment_1"
-    // InternalOCLinEcore.g:28382:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_1 : ( ruleStringLiteralExpCS ) ;
+    // InternalOCLinEcore.g:28386:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_1 : ( ruleStringLiteralExpCS ) ;
     public final void rule__ShadowPartCS__OwnedInitExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28386:1: ( ( ruleStringLiteralExpCS ) )
-            // InternalOCLinEcore.g:28387:1: ( ruleStringLiteralExpCS )
+            // InternalOCLinEcore.g:28390:1: ( ( ruleStringLiteralExpCS ) )
+            // InternalOCLinEcore.g:28391:1: ( ruleStringLiteralExpCS )
             {
-            // InternalOCLinEcore.g:28387:1: ( ruleStringLiteralExpCS )
-            // InternalOCLinEcore.g:28388:1: ruleStringLiteralExpCS
+            // InternalOCLinEcore.g:28391:1: ( ruleStringLiteralExpCS )
+            // InternalOCLinEcore.g:28392:1: ruleStringLiteralExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionStringLiteralExpCSParserRuleCall_1_0());
@@ -82776,17 +82776,17 @@
 
 
     // $ANTLR start "rule__PatternExpCS__PatternVariableNameAssignment_0"
-    // InternalOCLinEcore.g:28397:1: rule__PatternExpCS__PatternVariableNameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:28401:1: rule__PatternExpCS__PatternVariableNameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__PatternExpCS__PatternVariableNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28401:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:28402:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:28405:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:28406:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:28402:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:28403:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:28406:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:28407:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
@@ -82821,17 +82821,17 @@
 
 
     // $ANTLR start "rule__PatternExpCS__OwnedPatternTypeAssignment_2"
-    // InternalOCLinEcore.g:28412:1: rule__PatternExpCS__OwnedPatternTypeAssignment_2 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:28416:1: rule__PatternExpCS__OwnedPatternTypeAssignment_2 : ( ruleTypeExpCS ) ;
     public final void rule__PatternExpCS__OwnedPatternTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28416:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:28417:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:28420:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:28421:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:28417:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:28418:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:28421:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:28422:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
@@ -82866,17 +82866,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2"
-    // InternalOCLinEcore.g:28427:1: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:28431:1: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 : ( ruleExpCS ) ;
     public final void rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28431:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:28432:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28435:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:28436:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:28432:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:28433:1: ruleExpCS
+            // InternalOCLinEcore.g:28436:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28437:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
@@ -82911,17 +82911,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__OwnedTypeAssignment_0"
-    // InternalOCLinEcore.g:28442:1: rule__MapLiteralExpCS__OwnedTypeAssignment_0 : ( ruleMapTypeCS ) ;
+    // InternalOCLinEcore.g:28446:1: rule__MapLiteralExpCS__OwnedTypeAssignment_0 : ( ruleMapTypeCS ) ;
     public final void rule__MapLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28446:1: ( ( ruleMapTypeCS ) )
-            // InternalOCLinEcore.g:28447:1: ( ruleMapTypeCS )
+            // InternalOCLinEcore.g:28450:1: ( ( ruleMapTypeCS ) )
+            // InternalOCLinEcore.g:28451:1: ( ruleMapTypeCS )
             {
-            // InternalOCLinEcore.g:28447:1: ( ruleMapTypeCS )
-            // InternalOCLinEcore.g:28448:1: ruleMapTypeCS
+            // InternalOCLinEcore.g:28451:1: ( ruleMapTypeCS )
+            // InternalOCLinEcore.g:28452:1: ruleMapTypeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
@@ -82956,17 +82956,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__OwnedPartsAssignment_2_0"
-    // InternalOCLinEcore.g:28457:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleMapLiteralPartCS ) ;
+    // InternalOCLinEcore.g:28461:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleMapLiteralPartCS ) ;
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28461:1: ( ( ruleMapLiteralPartCS ) )
-            // InternalOCLinEcore.g:28462:1: ( ruleMapLiteralPartCS )
+            // InternalOCLinEcore.g:28465:1: ( ( ruleMapLiteralPartCS ) )
+            // InternalOCLinEcore.g:28466:1: ( ruleMapLiteralPartCS )
             {
-            // InternalOCLinEcore.g:28462:1: ( ruleMapLiteralPartCS )
-            // InternalOCLinEcore.g:28463:1: ruleMapLiteralPartCS
+            // InternalOCLinEcore.g:28466:1: ( ruleMapLiteralPartCS )
+            // InternalOCLinEcore.g:28467:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
@@ -83001,17 +83001,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1"
-    // InternalOCLinEcore.g:28472:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleMapLiteralPartCS ) ;
+    // InternalOCLinEcore.g:28476:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleMapLiteralPartCS ) ;
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28476:1: ( ( ruleMapLiteralPartCS ) )
-            // InternalOCLinEcore.g:28477:1: ( ruleMapLiteralPartCS )
+            // InternalOCLinEcore.g:28480:1: ( ( ruleMapLiteralPartCS ) )
+            // InternalOCLinEcore.g:28481:1: ( ruleMapLiteralPartCS )
             {
-            // InternalOCLinEcore.g:28477:1: ( ruleMapLiteralPartCS )
-            // InternalOCLinEcore.g:28478:1: ruleMapLiteralPartCS
+            // InternalOCLinEcore.g:28481:1: ( ruleMapLiteralPartCS )
+            // InternalOCLinEcore.g:28482:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
@@ -83046,17 +83046,17 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__OwnedKeyAssignment_0"
-    // InternalOCLinEcore.g:28487:1: rule__MapLiteralPartCS__OwnedKeyAssignment_0 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:28491:1: rule__MapLiteralPartCS__OwnedKeyAssignment_0 : ( ruleExpCS ) ;
     public final void rule__MapLiteralPartCS__OwnedKeyAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28491:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:28492:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28495:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:28496:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:28492:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:28493:1: ruleExpCS
+            // InternalOCLinEcore.g:28496:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28497:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
@@ -83091,17 +83091,17 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__OwnedValueAssignment_2"
-    // InternalOCLinEcore.g:28502:1: rule__MapLiteralPartCS__OwnedValueAssignment_2 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:28506:1: rule__MapLiteralPartCS__OwnedValueAssignment_2 : ( ruleExpCS ) ;
     public final void rule__MapLiteralPartCS__OwnedValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28506:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:28507:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28510:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:28511:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:28507:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:28508:1: ruleExpCS
+            // InternalOCLinEcore.g:28511:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28512:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
@@ -83136,17 +83136,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__OwnedPartsAssignment_2"
-    // InternalOCLinEcore.g:28517:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_2 : ( ruleTupleLiteralPartCS ) ;
+    // InternalOCLinEcore.g:28521:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_2 : ( ruleTupleLiteralPartCS ) ;
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28521:1: ( ( ruleTupleLiteralPartCS ) )
-            // InternalOCLinEcore.g:28522:1: ( ruleTupleLiteralPartCS )
+            // InternalOCLinEcore.g:28525:1: ( ( ruleTupleLiteralPartCS ) )
+            // InternalOCLinEcore.g:28526:1: ( ruleTupleLiteralPartCS )
             {
-            // InternalOCLinEcore.g:28522:1: ( ruleTupleLiteralPartCS )
-            // InternalOCLinEcore.g:28523:1: ruleTupleLiteralPartCS
+            // InternalOCLinEcore.g:28526:1: ( ruleTupleLiteralPartCS )
+            // InternalOCLinEcore.g:28527:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
@@ -83181,17 +83181,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1"
-    // InternalOCLinEcore.g:28532:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 : ( ruleTupleLiteralPartCS ) ;
+    // InternalOCLinEcore.g:28536:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 : ( ruleTupleLiteralPartCS ) ;
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28536:1: ( ( ruleTupleLiteralPartCS ) )
-            // InternalOCLinEcore.g:28537:1: ( ruleTupleLiteralPartCS )
+            // InternalOCLinEcore.g:28540:1: ( ( ruleTupleLiteralPartCS ) )
+            // InternalOCLinEcore.g:28541:1: ( ruleTupleLiteralPartCS )
             {
-            // InternalOCLinEcore.g:28537:1: ( ruleTupleLiteralPartCS )
-            // InternalOCLinEcore.g:28538:1: ruleTupleLiteralPartCS
+            // InternalOCLinEcore.g:28541:1: ( ruleTupleLiteralPartCS )
+            // InternalOCLinEcore.g:28542:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
@@ -83226,17 +83226,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__NameAssignment_0"
-    // InternalOCLinEcore.g:28547:1: rule__TupleLiteralPartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:28551:1: rule__TupleLiteralPartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__TupleLiteralPartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28551:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:28552:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:28555:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:28556:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:28552:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:28553:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:28556:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:28557:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -83271,17 +83271,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1"
-    // InternalOCLinEcore.g:28562:1: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:28566:1: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28566:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:28567:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:28570:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:28571:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:28567:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:28568:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:28571:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:28572:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
@@ -83316,17 +83316,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3"
-    // InternalOCLinEcore.g:28577:1: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:28581:1: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 : ( ruleExpCS ) ;
     public final void rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28581:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:28582:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28585:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:28586:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:28582:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:28583:1: ruleExpCS
+            // InternalOCLinEcore.g:28586:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28587:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
@@ -83361,17 +83361,17 @@
 
 
     // $ANTLR start "rule__NumberLiteralExpCS__SymbolAssignment"
-    // InternalOCLinEcore.g:28592:1: rule__NumberLiteralExpCS__SymbolAssignment : ( ruleNUMBER_LITERAL ) ;
+    // InternalOCLinEcore.g:28596:1: rule__NumberLiteralExpCS__SymbolAssignment : ( ruleNUMBER_LITERAL ) ;
     public final void rule__NumberLiteralExpCS__SymbolAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28596:1: ( ( ruleNUMBER_LITERAL ) )
-            // InternalOCLinEcore.g:28597:1: ( ruleNUMBER_LITERAL )
+            // InternalOCLinEcore.g:28600:1: ( ( ruleNUMBER_LITERAL ) )
+            // InternalOCLinEcore.g:28601:1: ( ruleNUMBER_LITERAL )
             {
-            // InternalOCLinEcore.g:28597:1: ( ruleNUMBER_LITERAL )
-            // InternalOCLinEcore.g:28598:1: ruleNUMBER_LITERAL
+            // InternalOCLinEcore.g:28601:1: ( ruleNUMBER_LITERAL )
+            // InternalOCLinEcore.g:28602:1: ruleNUMBER_LITERAL
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
@@ -83406,17 +83406,17 @@
 
 
     // $ANTLR start "rule__StringLiteralExpCS__SegmentsAssignment"
-    // InternalOCLinEcore.g:28607:1: rule__StringLiteralExpCS__SegmentsAssignment : ( ruleStringLiteral ) ;
+    // InternalOCLinEcore.g:28611:1: rule__StringLiteralExpCS__SegmentsAssignment : ( ruleStringLiteral ) ;
     public final void rule__StringLiteralExpCS__SegmentsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28611:1: ( ( ruleStringLiteral ) )
-            // InternalOCLinEcore.g:28612:1: ( ruleStringLiteral )
+            // InternalOCLinEcore.g:28615:1: ( ( ruleStringLiteral ) )
+            // InternalOCLinEcore.g:28616:1: ( ruleStringLiteral )
             {
-            // InternalOCLinEcore.g:28612:1: ( ruleStringLiteral )
-            // InternalOCLinEcore.g:28613:1: ruleStringLiteral
+            // InternalOCLinEcore.g:28616:1: ( ruleStringLiteral )
+            // InternalOCLinEcore.g:28617:1: ruleStringLiteral
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
@@ -83451,23 +83451,23 @@
 
 
     // $ANTLR start "rule__BooleanLiteralExpCS__SymbolAssignment_0"
-    // InternalOCLinEcore.g:28622:1: rule__BooleanLiteralExpCS__SymbolAssignment_0 : ( ( 'true' ) ) ;
+    // InternalOCLinEcore.g:28626:1: rule__BooleanLiteralExpCS__SymbolAssignment_0 : ( ( 'true' ) ) ;
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28626:1: ( ( ( 'true' ) ) )
-            // InternalOCLinEcore.g:28627:1: ( ( 'true' ) )
+            // InternalOCLinEcore.g:28630:1: ( ( ( 'true' ) ) )
+            // InternalOCLinEcore.g:28631:1: ( ( 'true' ) )
             {
-            // InternalOCLinEcore.g:28627:1: ( ( 'true' ) )
-            // InternalOCLinEcore.g:28628:1: ( 'true' )
+            // InternalOCLinEcore.g:28631:1: ( ( 'true' ) )
+            // InternalOCLinEcore.g:28632:1: ( 'true' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
-            // InternalOCLinEcore.g:28629:1: ( 'true' )
-            // InternalOCLinEcore.g:28630:1: 'true'
+            // InternalOCLinEcore.g:28633:1: ( 'true' )
+            // InternalOCLinEcore.g:28634:1: 'true'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
@@ -83504,23 +83504,23 @@
 
 
     // $ANTLR start "rule__BooleanLiteralExpCS__SymbolAssignment_1"
-    // InternalOCLinEcore.g:28645:1: rule__BooleanLiteralExpCS__SymbolAssignment_1 : ( ( 'false' ) ) ;
+    // InternalOCLinEcore.g:28649:1: rule__BooleanLiteralExpCS__SymbolAssignment_1 : ( ( 'false' ) ) ;
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28649:1: ( ( ( 'false' ) ) )
-            // InternalOCLinEcore.g:28650:1: ( ( 'false' ) )
+            // InternalOCLinEcore.g:28653:1: ( ( ( 'false' ) ) )
+            // InternalOCLinEcore.g:28654:1: ( ( 'false' ) )
             {
-            // InternalOCLinEcore.g:28650:1: ( ( 'false' ) )
-            // InternalOCLinEcore.g:28651:1: ( 'false' )
+            // InternalOCLinEcore.g:28654:1: ( ( 'false' ) )
+            // InternalOCLinEcore.g:28655:1: ( 'false' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
-            // InternalOCLinEcore.g:28652:1: ( 'false' )
-            // InternalOCLinEcore.g:28653:1: 'false'
+            // InternalOCLinEcore.g:28656:1: ( 'false' )
+            // InternalOCLinEcore.g:28657:1: 'false'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
@@ -83557,17 +83557,17 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1"
-    // InternalOCLinEcore.g:28668:1: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
+    // InternalOCLinEcore.g:28672:1: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
     public final void rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28672:1: ( ( ruleMultiplicityCS ) )
-            // InternalOCLinEcore.g:28673:1: ( ruleMultiplicityCS )
+            // InternalOCLinEcore.g:28676:1: ( ( ruleMultiplicityCS ) )
+            // InternalOCLinEcore.g:28677:1: ( ruleMultiplicityCS )
             {
-            // InternalOCLinEcore.g:28673:1: ( ruleMultiplicityCS )
-            // InternalOCLinEcore.g:28674:1: ruleMultiplicityCS
+            // InternalOCLinEcore.g:28677:1: ( ruleMultiplicityCS )
+            // InternalOCLinEcore.g:28678:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
@@ -83602,17 +83602,17 @@
 
 
     // $ANTLR start "rule__TypeLiteralExpCS__OwnedTypeAssignment"
-    // InternalOCLinEcore.g:28683:1: rule__TypeLiteralExpCS__OwnedTypeAssignment : ( ruleTypeLiteralWithMultiplicityCS ) ;
+    // InternalOCLinEcore.g:28687:1: rule__TypeLiteralExpCS__OwnedTypeAssignment : ( ruleTypeLiteralWithMultiplicityCS ) ;
     public final void rule__TypeLiteralExpCS__OwnedTypeAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28687:1: ( ( ruleTypeLiteralWithMultiplicityCS ) )
-            // InternalOCLinEcore.g:28688:1: ( ruleTypeLiteralWithMultiplicityCS )
+            // InternalOCLinEcore.g:28691:1: ( ( ruleTypeLiteralWithMultiplicityCS ) )
+            // InternalOCLinEcore.g:28692:1: ( ruleTypeLiteralWithMultiplicityCS )
             {
-            // InternalOCLinEcore.g:28688:1: ( ruleTypeLiteralWithMultiplicityCS )
-            // InternalOCLinEcore.g:28689:1: ruleTypeLiteralWithMultiplicityCS
+            // InternalOCLinEcore.g:28692:1: ( ruleTypeLiteralWithMultiplicityCS )
+            // InternalOCLinEcore.g:28693:1: ruleTypeLiteralWithMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
@@ -83647,17 +83647,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__OwnedPathNameAssignment_0"
-    // InternalOCLinEcore.g:28698:1: rule__TypeNameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
+    // InternalOCLinEcore.g:28702:1: rule__TypeNameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
     public final void rule__TypeNameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28702:1: ( ( rulePathNameCS ) )
-            // InternalOCLinEcore.g:28703:1: ( rulePathNameCS )
+            // InternalOCLinEcore.g:28706:1: ( ( rulePathNameCS ) )
+            // InternalOCLinEcore.g:28707:1: ( rulePathNameCS )
             {
-            // InternalOCLinEcore.g:28703:1: ( rulePathNameCS )
-            // InternalOCLinEcore.g:28704:1: rulePathNameCS
+            // InternalOCLinEcore.g:28707:1: ( rulePathNameCS )
+            // InternalOCLinEcore.g:28708:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
@@ -83692,17 +83692,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0"
-    // InternalOCLinEcore.g:28713:1: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 : ( ruleCurlyBracketedClauseCS ) ;
+    // InternalOCLinEcore.g:28717:1: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 : ( ruleCurlyBracketedClauseCS ) ;
     public final void rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28717:1: ( ( ruleCurlyBracketedClauseCS ) )
-            // InternalOCLinEcore.g:28718:1: ( ruleCurlyBracketedClauseCS )
+            // InternalOCLinEcore.g:28721:1: ( ( ruleCurlyBracketedClauseCS ) )
+            // InternalOCLinEcore.g:28722:1: ( ruleCurlyBracketedClauseCS )
             {
-            // InternalOCLinEcore.g:28718:1: ( ruleCurlyBracketedClauseCS )
-            // InternalOCLinEcore.g:28719:1: ruleCurlyBracketedClauseCS
+            // InternalOCLinEcore.g:28722:1: ( ruleCurlyBracketedClauseCS )
+            // InternalOCLinEcore.g:28723:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
@@ -83737,17 +83737,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1"
-    // InternalOCLinEcore.g:28728:1: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:28732:1: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 : ( ruleExpCS ) ;
     public final void rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28732:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:28733:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28736:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:28737:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:28733:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:28734:1: ruleExpCS
+            // InternalOCLinEcore.g:28737:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28738:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
@@ -83782,17 +83782,17 @@
 
 
     // $ANTLR start "rule__TypeExpCS__OwnedMultiplicityAssignment_1"
-    // InternalOCLinEcore.g:28743:1: rule__TypeExpCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
+    // InternalOCLinEcore.g:28747:1: rule__TypeExpCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
     public final void rule__TypeExpCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28747:1: ( ( ruleMultiplicityCS ) )
-            // InternalOCLinEcore.g:28748:1: ( ruleMultiplicityCS )
+            // InternalOCLinEcore.g:28751:1: ( ( ruleMultiplicityCS ) )
+            // InternalOCLinEcore.g:28752:1: ( ruleMultiplicityCS )
             {
-            // InternalOCLinEcore.g:28748:1: ( ruleMultiplicityCS )
-            // InternalOCLinEcore.g:28749:1: ruleMultiplicityCS
+            // InternalOCLinEcore.g:28752:1: ( ruleMultiplicityCS )
+            // InternalOCLinEcore.g:28753:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
@@ -83827,17 +83827,17 @@
 
 
     // $ANTLR start "rule__ExpCS__NameAssignment_0_1_1"
-    // InternalOCLinEcore.g:28758:1: rule__ExpCS__NameAssignment_0_1_1 : ( ruleBinaryOperatorName ) ;
+    // InternalOCLinEcore.g:28762:1: rule__ExpCS__NameAssignment_0_1_1 : ( ruleBinaryOperatorName ) ;
     public final void rule__ExpCS__NameAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28762:1: ( ( ruleBinaryOperatorName ) )
-            // InternalOCLinEcore.g:28763:1: ( ruleBinaryOperatorName )
+            // InternalOCLinEcore.g:28766:1: ( ( ruleBinaryOperatorName ) )
+            // InternalOCLinEcore.g:28767:1: ( ruleBinaryOperatorName )
             {
-            // InternalOCLinEcore.g:28763:1: ( ruleBinaryOperatorName )
-            // InternalOCLinEcore.g:28764:1: ruleBinaryOperatorName
+            // InternalOCLinEcore.g:28767:1: ( ruleBinaryOperatorName )
+            // InternalOCLinEcore.g:28768:1: ruleBinaryOperatorName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
@@ -83872,17 +83872,17 @@
 
 
     // $ANTLR start "rule__ExpCS__OwnedRightAssignment_0_1_2"
-    // InternalOCLinEcore.g:28773:1: rule__ExpCS__OwnedRightAssignment_0_1_2 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:28777:1: rule__ExpCS__OwnedRightAssignment_0_1_2 : ( ruleExpCS ) ;
     public final void rule__ExpCS__OwnedRightAssignment_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28777:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:28778:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28781:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:28782:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:28778:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:28779:1: ruleExpCS
+            // InternalOCLinEcore.g:28782:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:28783:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
@@ -83917,17 +83917,17 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__NameAssignment_0_1"
-    // InternalOCLinEcore.g:28788:1: rule__PrefixedLetExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
+    // InternalOCLinEcore.g:28792:1: rule__PrefixedLetExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
     public final void rule__PrefixedLetExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28792:1: ( ( ruleUnaryOperatorName ) )
-            // InternalOCLinEcore.g:28793:1: ( ruleUnaryOperatorName )
+            // InternalOCLinEcore.g:28796:1: ( ( ruleUnaryOperatorName ) )
+            // InternalOCLinEcore.g:28797:1: ( ruleUnaryOperatorName )
             {
-            // InternalOCLinEcore.g:28793:1: ( ruleUnaryOperatorName )
-            // InternalOCLinEcore.g:28794:1: ruleUnaryOperatorName
+            // InternalOCLinEcore.g:28797:1: ( ruleUnaryOperatorName )
+            // InternalOCLinEcore.g:28798:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
@@ -83962,17 +83962,17 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__OwnedRightAssignment_0_2"
-    // InternalOCLinEcore.g:28803:1: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedLetExpCS ) ;
+    // InternalOCLinEcore.g:28807:1: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedLetExpCS ) ;
     public final void rule__PrefixedLetExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28807:1: ( ( rulePrefixedLetExpCS ) )
-            // InternalOCLinEcore.g:28808:1: ( rulePrefixedLetExpCS )
+            // InternalOCLinEcore.g:28811:1: ( ( rulePrefixedLetExpCS ) )
+            // InternalOCLinEcore.g:28812:1: ( rulePrefixedLetExpCS )
             {
-            // InternalOCLinEcore.g:28808:1: ( rulePrefixedLetExpCS )
-            // InternalOCLinEcore.g:28809:1: rulePrefixedLetExpCS
+            // InternalOCLinEcore.g:28812:1: ( rulePrefixedLetExpCS )
+            // InternalOCLinEcore.g:28813:1: rulePrefixedLetExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
@@ -84007,17 +84007,17 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__NameAssignment_0_1"
-    // InternalOCLinEcore.g:28818:1: rule__PrefixedPrimaryExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
+    // InternalOCLinEcore.g:28822:1: rule__PrefixedPrimaryExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
     public final void rule__PrefixedPrimaryExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28822:1: ( ( ruleUnaryOperatorName ) )
-            // InternalOCLinEcore.g:28823:1: ( ruleUnaryOperatorName )
+            // InternalOCLinEcore.g:28826:1: ( ( ruleUnaryOperatorName ) )
+            // InternalOCLinEcore.g:28827:1: ( ruleUnaryOperatorName )
             {
-            // InternalOCLinEcore.g:28823:1: ( ruleUnaryOperatorName )
-            // InternalOCLinEcore.g:28824:1: ruleUnaryOperatorName
+            // InternalOCLinEcore.g:28827:1: ( ruleUnaryOperatorName )
+            // InternalOCLinEcore.g:28828:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
@@ -84052,17 +84052,17 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2"
-    // InternalOCLinEcore.g:28833:1: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedPrimaryExpCS ) ;
+    // InternalOCLinEcore.g:28837:1: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedPrimaryExpCS ) ;
     public final void rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28837:1: ( ( rulePrefixedPrimaryExpCS ) )
-            // InternalOCLinEcore.g:28838:1: ( rulePrefixedPrimaryExpCS )
+            // InternalOCLinEcore.g:28841:1: ( ( rulePrefixedPrimaryExpCS ) )
+            // InternalOCLinEcore.g:28842:1: ( rulePrefixedPrimaryExpCS )
             {
-            // InternalOCLinEcore.g:28838:1: ( rulePrefixedPrimaryExpCS )
-            // InternalOCLinEcore.g:28839:1: rulePrefixedPrimaryExpCS
+            // InternalOCLinEcore.g:28842:1: ( rulePrefixedPrimaryExpCS )
+            // InternalOCLinEcore.g:28843:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
@@ -84097,17 +84097,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedPathNameAssignment_0"
-    // InternalOCLinEcore.g:28848:1: rule__NameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
+    // InternalOCLinEcore.g:28852:1: rule__NameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
     public final void rule__NameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28852:1: ( ( rulePathNameCS ) )
-            // InternalOCLinEcore.g:28853:1: ( rulePathNameCS )
+            // InternalOCLinEcore.g:28856:1: ( ( rulePathNameCS ) )
+            // InternalOCLinEcore.g:28857:1: ( rulePathNameCS )
             {
-            // InternalOCLinEcore.g:28853:1: ( rulePathNameCS )
-            // InternalOCLinEcore.g:28854:1: rulePathNameCS
+            // InternalOCLinEcore.g:28857:1: ( rulePathNameCS )
+            // InternalOCLinEcore.g:28858:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
@@ -84142,17 +84142,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1"
-    // InternalOCLinEcore.g:28863:1: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 : ( ruleSquareBracketedClauseCS ) ;
+    // InternalOCLinEcore.g:28867:1: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 : ( ruleSquareBracketedClauseCS ) ;
     public final void rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28867:1: ( ( ruleSquareBracketedClauseCS ) )
-            // InternalOCLinEcore.g:28868:1: ( ruleSquareBracketedClauseCS )
+            // InternalOCLinEcore.g:28871:1: ( ( ruleSquareBracketedClauseCS ) )
+            // InternalOCLinEcore.g:28872:1: ( ruleSquareBracketedClauseCS )
             {
-            // InternalOCLinEcore.g:28868:1: ( ruleSquareBracketedClauseCS )
-            // InternalOCLinEcore.g:28869:1: ruleSquareBracketedClauseCS
+            // InternalOCLinEcore.g:28872:1: ( ruleSquareBracketedClauseCS )
+            // InternalOCLinEcore.g:28873:1: ruleSquareBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
@@ -84187,17 +84187,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2"
-    // InternalOCLinEcore.g:28878:1: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 : ( ruleRoundBracketedClauseCS ) ;
+    // InternalOCLinEcore.g:28882:1: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 : ( ruleRoundBracketedClauseCS ) ;
     public final void rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28882:1: ( ( ruleRoundBracketedClauseCS ) )
-            // InternalOCLinEcore.g:28883:1: ( ruleRoundBracketedClauseCS )
+            // InternalOCLinEcore.g:28886:1: ( ( ruleRoundBracketedClauseCS ) )
+            // InternalOCLinEcore.g:28887:1: ( ruleRoundBracketedClauseCS )
             {
-            // InternalOCLinEcore.g:28883:1: ( ruleRoundBracketedClauseCS )
-            // InternalOCLinEcore.g:28884:1: ruleRoundBracketedClauseCS
+            // InternalOCLinEcore.g:28887:1: ( ruleRoundBracketedClauseCS )
+            // InternalOCLinEcore.g:28888:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
@@ -84232,17 +84232,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3"
-    // InternalOCLinEcore.g:28893:1: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 : ( ruleCurlyBracketedClauseCS ) ;
+    // InternalOCLinEcore.g:28897:1: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 : ( ruleCurlyBracketedClauseCS ) ;
     public final void rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28897:1: ( ( ruleCurlyBracketedClauseCS ) )
-            // InternalOCLinEcore.g:28898:1: ( ruleCurlyBracketedClauseCS )
+            // InternalOCLinEcore.g:28901:1: ( ( ruleCurlyBracketedClauseCS ) )
+            // InternalOCLinEcore.g:28902:1: ( ruleCurlyBracketedClauseCS )
             {
-            // InternalOCLinEcore.g:28898:1: ( ruleCurlyBracketedClauseCS )
-            // InternalOCLinEcore.g:28899:1: ruleCurlyBracketedClauseCS
+            // InternalOCLinEcore.g:28902:1: ( ruleCurlyBracketedClauseCS )
+            // InternalOCLinEcore.g:28903:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
@@ -84277,23 +84277,23 @@
 
 
     // $ANTLR start "rule__NameExpCS__IsPreAssignment_4_0"
-    // InternalOCLinEcore.g:28908:1: rule__NameExpCS__IsPreAssignment_4_0 : ( ( '@' ) ) ;
+    // InternalOCLinEcore.g:28912:1: rule__NameExpCS__IsPreAssignment_4_0 : ( ( '@' ) ) ;
     public final void rule__NameExpCS__IsPreAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28912:1: ( ( ( '@' ) ) )
-            // InternalOCLinEcore.g:28913:1: ( ( '@' ) )
+            // InternalOCLinEcore.g:28916:1: ( ( ( '@' ) ) )
+            // InternalOCLinEcore.g:28917:1: ( ( '@' ) )
             {
-            // InternalOCLinEcore.g:28913:1: ( ( '@' ) )
-            // InternalOCLinEcore.g:28914:1: ( '@' )
+            // InternalOCLinEcore.g:28917:1: ( ( '@' ) )
+            // InternalOCLinEcore.g:28918:1: ( '@' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
-            // InternalOCLinEcore.g:28915:1: ( '@' )
-            // InternalOCLinEcore.g:28916:1: '@'
+            // InternalOCLinEcore.g:28919:1: ( '@' )
+            // InternalOCLinEcore.g:28920:1: '@'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
@@ -84330,17 +84330,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0"
-    // InternalOCLinEcore.g:28931:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 : ( ruleShadowPartCS ) ;
+    // InternalOCLinEcore.g:28935:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 : ( ruleShadowPartCS ) ;
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28935:1: ( ( ruleShadowPartCS ) )
-            // InternalOCLinEcore.g:28936:1: ( ruleShadowPartCS )
+            // InternalOCLinEcore.g:28939:1: ( ( ruleShadowPartCS ) )
+            // InternalOCLinEcore.g:28940:1: ( ruleShadowPartCS )
             {
-            // InternalOCLinEcore.g:28936:1: ( ruleShadowPartCS )
-            // InternalOCLinEcore.g:28937:1: ruleShadowPartCS
+            // InternalOCLinEcore.g:28940:1: ( ruleShadowPartCS )
+            // InternalOCLinEcore.g:28941:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0());
@@ -84375,17 +84375,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1"
-    // InternalOCLinEcore.g:28946:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 : ( ruleShadowPartCS ) ;
+    // InternalOCLinEcore.g:28950:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 : ( ruleShadowPartCS ) ;
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28950:1: ( ( ruleShadowPartCS ) )
-            // InternalOCLinEcore.g:28951:1: ( ruleShadowPartCS )
+            // InternalOCLinEcore.g:28954:1: ( ( ruleShadowPartCS ) )
+            // InternalOCLinEcore.g:28955:1: ( ruleShadowPartCS )
             {
-            // InternalOCLinEcore.g:28951:1: ( ruleShadowPartCS )
-            // InternalOCLinEcore.g:28952:1: ruleShadowPartCS
+            // InternalOCLinEcore.g:28955:1: ( ruleShadowPartCS )
+            // InternalOCLinEcore.g:28956:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_1_1_0());
@@ -84420,17 +84420,17 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0"
-    // InternalOCLinEcore.g:28961:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 : ( ruleNavigatingArgCS ) ;
+    // InternalOCLinEcore.g:28965:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 : ( ruleNavigatingArgCS ) ;
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28965:1: ( ( ruleNavigatingArgCS ) )
-            // InternalOCLinEcore.g:28966:1: ( ruleNavigatingArgCS )
+            // InternalOCLinEcore.g:28969:1: ( ( ruleNavigatingArgCS ) )
+            // InternalOCLinEcore.g:28970:1: ( ruleNavigatingArgCS )
             {
-            // InternalOCLinEcore.g:28966:1: ( ruleNavigatingArgCS )
-            // InternalOCLinEcore.g:28967:1: ruleNavigatingArgCS
+            // InternalOCLinEcore.g:28970:1: ( ruleNavigatingArgCS )
+            // InternalOCLinEcore.g:28971:1: ruleNavigatingArgCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
@@ -84465,23 +84465,23 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1"
-    // InternalOCLinEcore.g:28976:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) ;
+    // InternalOCLinEcore.g:28980:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) ;
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28980:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) )
-            // InternalOCLinEcore.g:28981:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
+            // InternalOCLinEcore.g:28984:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) )
+            // InternalOCLinEcore.g:28985:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
             {
-            // InternalOCLinEcore.g:28981:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
-            // InternalOCLinEcore.g:28982:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
+            // InternalOCLinEcore.g:28985:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
+            // InternalOCLinEcore.g:28986:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAlternatives_2_1_0());
             }
-            // InternalOCLinEcore.g:28983:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
-            // InternalOCLinEcore.g:28983:2: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0
+            // InternalOCLinEcore.g:28987:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
+            // InternalOCLinEcore.g:28987:2: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0();
@@ -84516,17 +84516,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__OwnedTermsAssignment_1"
-    // InternalOCLinEcore.g:28992:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:28996:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 : ( ruleExpCS ) ;
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:28996:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:28997:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29000:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29001:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:28997:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:28998:1: ruleExpCS
+            // InternalOCLinEcore.g:29001:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29002:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
@@ -84561,17 +84561,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1"
-    // InternalOCLinEcore.g:29007:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29011:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 : ( ruleExpCS ) ;
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29011:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29012:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29015:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29016:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29012:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29013:1: ruleExpCS
+            // InternalOCLinEcore.g:29016:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29017:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
@@ -84606,17 +84606,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0"
-    // InternalOCLinEcore.g:29022:1: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 : ( ruleNavigatingArgExpCS ) ;
+    // InternalOCLinEcore.g:29026:1: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29026:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalOCLinEcore.g:29027:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLinEcore.g:29030:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalOCLinEcore.g:29031:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalOCLinEcore.g:29027:1: ( ruleNavigatingArgExpCS )
-            // InternalOCLinEcore.g:29028:1: ruleNavigatingArgExpCS
+            // InternalOCLinEcore.g:29031:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLinEcore.g:29032:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
@@ -84651,17 +84651,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1"
-    // InternalOCLinEcore.g:29037:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalOCLinEcore.g:29041:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29041:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalOCLinEcore.g:29042:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLinEcore.g:29045:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalOCLinEcore.g:29046:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalOCLinEcore.g:29042:1: ( ruleCoIteratorVariableCS )
-            // InternalOCLinEcore.g:29043:1: ruleCoIteratorVariableCS
+            // InternalOCLinEcore.g:29046:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLinEcore.g:29047:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_0_1_0());
@@ -84696,17 +84696,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1"
-    // InternalOCLinEcore.g:29052:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29056:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29056:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29057:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29060:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29061:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29057:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29058:1: ruleExpCS
+            // InternalOCLinEcore.g:29061:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29062:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
@@ -84741,17 +84741,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1"
-    // InternalOCLinEcore.g:29067:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:29071:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29071:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:29072:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29075:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:29076:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:29072:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:29073:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:29076:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29077:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_1_1_0());
@@ -84786,17 +84786,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1"
-    // InternalOCLinEcore.g:29082:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalOCLinEcore.g:29086:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29086:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalOCLinEcore.g:29087:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLinEcore.g:29090:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalOCLinEcore.g:29091:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalOCLinEcore.g:29087:1: ( ruleCoIteratorVariableCS )
-            // InternalOCLinEcore.g:29088:1: ruleCoIteratorVariableCS
+            // InternalOCLinEcore.g:29091:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLinEcore.g:29092:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_1_2_1_0());
@@ -84831,17 +84831,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1"
-    // InternalOCLinEcore.g:29097:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29101:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29101:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29102:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29105:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29106:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29102:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29103:1: ruleExpCS
+            // InternalOCLinEcore.g:29106:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29107:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_3_1_0());
@@ -84876,17 +84876,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1"
-    // InternalOCLinEcore.g:29112:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:29116:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29116:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:29117:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29120:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:29121:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:29117:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:29118:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:29121:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29122:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_2_0_1_0());
@@ -84921,17 +84921,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1"
-    // InternalOCLinEcore.g:29127:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalOCLinEcore.g:29131:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29131:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalOCLinEcore.g:29132:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLinEcore.g:29135:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalOCLinEcore.g:29136:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalOCLinEcore.g:29132:1: ( ruleCoIteratorVariableCS )
-            // InternalOCLinEcore.g:29133:1: ruleCoIteratorVariableCS
+            // InternalOCLinEcore.g:29136:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLinEcore.g:29137:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_2_1_1_0());
@@ -84966,17 +84966,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3"
-    // InternalOCLinEcore.g:29142:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29146:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 : ( ruleExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29146:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29147:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29150:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29151:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29147:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29148:1: ruleExpCS
+            // InternalOCLinEcore.g:29151:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29152:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_2_3_0());
@@ -85011,17 +85011,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedTypeAssignment_1_1"
-    // InternalOCLinEcore.g:29157:1: rule__NavigatingArgCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:29161:1: rule__NavigatingArgCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29161:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:29162:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29165:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:29166:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:29162:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:29163:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:29166:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29167:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
@@ -85056,23 +85056,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__PrefixAssignment_0"
-    // InternalOCLinEcore.g:29172:1: rule__NavigatingBarArgCS__PrefixAssignment_0 : ( ( '|' ) ) ;
+    // InternalOCLinEcore.g:29176:1: rule__NavigatingBarArgCS__PrefixAssignment_0 : ( ( '|' ) ) ;
     public final void rule__NavigatingBarArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29176:1: ( ( ( '|' ) ) )
-            // InternalOCLinEcore.g:29177:1: ( ( '|' ) )
+            // InternalOCLinEcore.g:29180:1: ( ( ( '|' ) ) )
+            // InternalOCLinEcore.g:29181:1: ( ( '|' ) )
             {
-            // InternalOCLinEcore.g:29177:1: ( ( '|' ) )
-            // InternalOCLinEcore.g:29178:1: ( '|' )
+            // InternalOCLinEcore.g:29181:1: ( ( '|' ) )
+            // InternalOCLinEcore.g:29182:1: ( '|' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
-            // InternalOCLinEcore.g:29179:1: ( '|' )
-            // InternalOCLinEcore.g:29180:1: '|'
+            // InternalOCLinEcore.g:29183:1: ( '|' )
+            // InternalOCLinEcore.g:29184:1: '|'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
@@ -85109,17 +85109,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1"
-    // InternalOCLinEcore.g:29195:1: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
+    // InternalOCLinEcore.g:29199:1: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29199:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalOCLinEcore.g:29200:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLinEcore.g:29203:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalOCLinEcore.g:29204:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalOCLinEcore.g:29200:1: ( ruleNavigatingArgExpCS )
-            // InternalOCLinEcore.g:29201:1: ruleNavigatingArgExpCS
+            // InternalOCLinEcore.g:29204:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLinEcore.g:29205:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
@@ -85154,17 +85154,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1"
-    // InternalOCLinEcore.g:29210:1: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:29214:1: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29214:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:29215:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29218:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:29219:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:29215:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:29216:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:29219:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29220:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
@@ -85199,17 +85199,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1"
-    // InternalOCLinEcore.g:29225:1: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29229:1: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29229:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29230:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29233:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29234:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29230:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29231:1: ruleExpCS
+            // InternalOCLinEcore.g:29234:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29235:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
@@ -85244,23 +85244,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__PrefixAssignment_0"
-    // InternalOCLinEcore.g:29240:1: rule__NavigatingCommaArgCS__PrefixAssignment_0 : ( ( ',' ) ) ;
+    // InternalOCLinEcore.g:29244:1: rule__NavigatingCommaArgCS__PrefixAssignment_0 : ( ( ',' ) ) ;
     public final void rule__NavigatingCommaArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29244:1: ( ( ( ',' ) ) )
-            // InternalOCLinEcore.g:29245:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:29248:1: ( ( ( ',' ) ) )
+            // InternalOCLinEcore.g:29249:1: ( ( ',' ) )
             {
-            // InternalOCLinEcore.g:29245:1: ( ( ',' ) )
-            // InternalOCLinEcore.g:29246:1: ( ',' )
+            // InternalOCLinEcore.g:29249:1: ( ( ',' ) )
+            // InternalOCLinEcore.g:29250:1: ( ',' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
-            // InternalOCLinEcore.g:29247:1: ( ',' )
-            // InternalOCLinEcore.g:29248:1: ','
+            // InternalOCLinEcore.g:29251:1: ( ',' )
+            // InternalOCLinEcore.g:29252:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
@@ -85297,17 +85297,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1"
-    // InternalOCLinEcore.g:29263:1: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
+    // InternalOCLinEcore.g:29267:1: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29267:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalOCLinEcore.g:29268:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLinEcore.g:29271:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalOCLinEcore.g:29272:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalOCLinEcore.g:29268:1: ( ruleNavigatingArgExpCS )
-            // InternalOCLinEcore.g:29269:1: ruleNavigatingArgExpCS
+            // InternalOCLinEcore.g:29272:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLinEcore.g:29273:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
@@ -85342,17 +85342,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1"
-    // InternalOCLinEcore.g:29278:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalOCLinEcore.g:29282:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29282:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalOCLinEcore.g:29283:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLinEcore.g:29286:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalOCLinEcore.g:29287:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalOCLinEcore.g:29283:1: ( ruleCoIteratorVariableCS )
-            // InternalOCLinEcore.g:29284:1: ruleCoIteratorVariableCS
+            // InternalOCLinEcore.g:29287:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLinEcore.g:29288:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_0_1_0());
@@ -85387,17 +85387,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1"
-    // InternalOCLinEcore.g:29293:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29297:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29297:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29298:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29301:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29302:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29298:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29299:1: ruleExpCS
+            // InternalOCLinEcore.g:29302:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29303:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
@@ -85432,17 +85432,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1"
-    // InternalOCLinEcore.g:29308:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:29312:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29312:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:29313:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29316:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:29317:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:29313:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:29314:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:29317:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29318:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_1_0());
@@ -85477,17 +85477,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1"
-    // InternalOCLinEcore.g:29323:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalOCLinEcore.g:29327:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29327:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalOCLinEcore.g:29328:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLinEcore.g:29331:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalOCLinEcore.g:29332:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalOCLinEcore.g:29328:1: ( ruleCoIteratorVariableCS )
-            // InternalOCLinEcore.g:29329:1: ruleCoIteratorVariableCS
+            // InternalOCLinEcore.g:29332:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLinEcore.g:29333:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_1_2_1_0());
@@ -85522,17 +85522,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1"
-    // InternalOCLinEcore.g:29338:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29342:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29342:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29343:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29346:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29347:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29343:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29344:1: ruleExpCS
+            // InternalOCLinEcore.g:29347:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29348:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_3_1_0());
@@ -85567,17 +85567,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1"
-    // InternalOCLinEcore.g:29353:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:29357:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29357:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:29358:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29361:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:29362:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:29358:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:29359:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:29362:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29363:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_2_0_1_0());
@@ -85612,17 +85612,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1"
-    // InternalOCLinEcore.g:29368:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalOCLinEcore.g:29372:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29372:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalOCLinEcore.g:29373:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLinEcore.g:29376:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalOCLinEcore.g:29377:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalOCLinEcore.g:29373:1: ( ruleCoIteratorVariableCS )
-            // InternalOCLinEcore.g:29374:1: ruleCoIteratorVariableCS
+            // InternalOCLinEcore.g:29377:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLinEcore.g:29378:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_2_1_1_0());
@@ -85657,17 +85657,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3"
-    // InternalOCLinEcore.g:29383:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29387:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 : ( ruleExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29387:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29388:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29391:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29392:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29388:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29389:1: ruleExpCS
+            // InternalOCLinEcore.g:29392:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29393:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_3_0());
@@ -85702,23 +85702,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__PrefixAssignment_0"
-    // InternalOCLinEcore.g:29398:1: rule__NavigatingSemiArgCS__PrefixAssignment_0 : ( ( ';' ) ) ;
+    // InternalOCLinEcore.g:29402:1: rule__NavigatingSemiArgCS__PrefixAssignment_0 : ( ( ';' ) ) ;
     public final void rule__NavigatingSemiArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29402:1: ( ( ( ';' ) ) )
-            // InternalOCLinEcore.g:29403:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:29406:1: ( ( ( ';' ) ) )
+            // InternalOCLinEcore.g:29407:1: ( ( ';' ) )
             {
-            // InternalOCLinEcore.g:29403:1: ( ( ';' ) )
-            // InternalOCLinEcore.g:29404:1: ( ';' )
+            // InternalOCLinEcore.g:29407:1: ( ( ';' ) )
+            // InternalOCLinEcore.g:29408:1: ( ';' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
-            // InternalOCLinEcore.g:29405:1: ( ';' )
-            // InternalOCLinEcore.g:29406:1: ';'
+            // InternalOCLinEcore.g:29409:1: ( ';' )
+            // InternalOCLinEcore.g:29410:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
@@ -85755,17 +85755,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1"
-    // InternalOCLinEcore.g:29421:1: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
+    // InternalOCLinEcore.g:29425:1: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29425:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalOCLinEcore.g:29426:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLinEcore.g:29429:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalOCLinEcore.g:29430:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalOCLinEcore.g:29426:1: ( ruleNavigatingArgExpCS )
-            // InternalOCLinEcore.g:29427:1: ruleNavigatingArgExpCS
+            // InternalOCLinEcore.g:29430:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLinEcore.g:29431:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
@@ -85800,17 +85800,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1"
-    // InternalOCLinEcore.g:29436:1: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:29440:1: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29440:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:29441:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29444:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:29445:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:29441:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:29442:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:29445:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29446:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
@@ -85845,17 +85845,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1"
-    // InternalOCLinEcore.g:29451:1: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29455:1: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29455:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29456:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29459:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29460:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29456:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29457:1: ruleExpCS
+            // InternalOCLinEcore.g:29460:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29461:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
@@ -85890,17 +85890,17 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__NameAssignment_0"
-    // InternalOCLinEcore.g:29466:1: rule__CoIteratorVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:29470:1: rule__CoIteratorVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__CoIteratorVariableCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29470:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:29471:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:29474:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:29475:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:29471:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:29472:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:29475:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:29476:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -85935,17 +85935,17 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1"
-    // InternalOCLinEcore.g:29481:1: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:29485:1: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29485:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:29486:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29489:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:29490:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:29486:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:29487:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:29490:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29491:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
@@ -85980,23 +85980,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedConditionAssignment_1"
-    // InternalOCLinEcore.g:29496:1: rule__IfExpCS__OwnedConditionAssignment_1 : ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) ;
+    // InternalOCLinEcore.g:29500:1: rule__IfExpCS__OwnedConditionAssignment_1 : ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) ;
     public final void rule__IfExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29500:1: ( ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) )
-            // InternalOCLinEcore.g:29501:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
+            // InternalOCLinEcore.g:29504:1: ( ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) )
+            // InternalOCLinEcore.g:29505:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
             {
-            // InternalOCLinEcore.g:29501:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
-            // InternalOCLinEcore.g:29502:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
+            // InternalOCLinEcore.g:29505:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
+            // InternalOCLinEcore.g:29506:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0());
             }
-            // InternalOCLinEcore.g:29503:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
-            // InternalOCLinEcore.g:29503:2: rule__IfExpCS__OwnedConditionAlternatives_1_0
+            // InternalOCLinEcore.g:29507:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
+            // InternalOCLinEcore.g:29507:2: rule__IfExpCS__OwnedConditionAlternatives_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedConditionAlternatives_1_0();
@@ -86031,17 +86031,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedThenExpressionAssignment_3"
-    // InternalOCLinEcore.g:29512:1: rule__IfExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29516:1: rule__IfExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
     public final void rule__IfExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29516:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29517:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29520:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29521:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29517:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29518:1: ruleExpCS
+            // InternalOCLinEcore.g:29521:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29522:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
@@ -86076,17 +86076,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedIfThenExpressionsAssignment_4"
-    // InternalOCLinEcore.g:29527:1: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 : ( ruleElseIfThenExpCS ) ;
+    // InternalOCLinEcore.g:29531:1: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 : ( ruleElseIfThenExpCS ) ;
     public final void rule__IfExpCS__OwnedIfThenExpressionsAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29531:1: ( ( ruleElseIfThenExpCS ) )
-            // InternalOCLinEcore.g:29532:1: ( ruleElseIfThenExpCS )
+            // InternalOCLinEcore.g:29535:1: ( ( ruleElseIfThenExpCS ) )
+            // InternalOCLinEcore.g:29536:1: ( ruleElseIfThenExpCS )
             {
-            // InternalOCLinEcore.g:29532:1: ( ruleElseIfThenExpCS )
-            // InternalOCLinEcore.g:29533:1: ruleElseIfThenExpCS
+            // InternalOCLinEcore.g:29536:1: ( ruleElseIfThenExpCS )
+            // InternalOCLinEcore.g:29537:1: ruleElseIfThenExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
@@ -86121,17 +86121,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedElseExpressionAssignment_6"
-    // InternalOCLinEcore.g:29542:1: rule__IfExpCS__OwnedElseExpressionAssignment_6 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29546:1: rule__IfExpCS__OwnedElseExpressionAssignment_6 : ( ruleExpCS ) ;
     public final void rule__IfExpCS__OwnedElseExpressionAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29546:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29547:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29550:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29551:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29547:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29548:1: ruleExpCS
+            // InternalOCLinEcore.g:29551:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29552:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
@@ -86166,17 +86166,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__OwnedConditionAssignment_1"
-    // InternalOCLinEcore.g:29557:1: rule__ElseIfThenExpCS__OwnedConditionAssignment_1 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29561:1: rule__ElseIfThenExpCS__OwnedConditionAssignment_1 : ( ruleExpCS ) ;
     public final void rule__ElseIfThenExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29561:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29562:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29565:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29566:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29562:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29563:1: ruleExpCS
+            // InternalOCLinEcore.g:29566:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29567:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
@@ -86211,17 +86211,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3"
-    // InternalOCLinEcore.g:29572:1: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29576:1: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
     public final void rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29576:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29577:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29580:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29581:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29577:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29578:1: ruleExpCS
+            // InternalOCLinEcore.g:29581:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29582:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
@@ -86256,17 +86256,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__OwnedVariablesAssignment_1"
-    // InternalOCLinEcore.g:29587:1: rule__LetExpCS__OwnedVariablesAssignment_1 : ( ruleLetVariableCS ) ;
+    // InternalOCLinEcore.g:29591:1: rule__LetExpCS__OwnedVariablesAssignment_1 : ( ruleLetVariableCS ) ;
     public final void rule__LetExpCS__OwnedVariablesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29591:1: ( ( ruleLetVariableCS ) )
-            // InternalOCLinEcore.g:29592:1: ( ruleLetVariableCS )
+            // InternalOCLinEcore.g:29595:1: ( ( ruleLetVariableCS ) )
+            // InternalOCLinEcore.g:29596:1: ( ruleLetVariableCS )
             {
-            // InternalOCLinEcore.g:29592:1: ( ruleLetVariableCS )
-            // InternalOCLinEcore.g:29593:1: ruleLetVariableCS
+            // InternalOCLinEcore.g:29596:1: ( ruleLetVariableCS )
+            // InternalOCLinEcore.g:29597:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
@@ -86301,17 +86301,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__OwnedVariablesAssignment_2_1"
-    // InternalOCLinEcore.g:29602:1: rule__LetExpCS__OwnedVariablesAssignment_2_1 : ( ruleLetVariableCS ) ;
+    // InternalOCLinEcore.g:29606:1: rule__LetExpCS__OwnedVariablesAssignment_2_1 : ( ruleLetVariableCS ) ;
     public final void rule__LetExpCS__OwnedVariablesAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29606:1: ( ( ruleLetVariableCS ) )
-            // InternalOCLinEcore.g:29607:1: ( ruleLetVariableCS )
+            // InternalOCLinEcore.g:29610:1: ( ( ruleLetVariableCS ) )
+            // InternalOCLinEcore.g:29611:1: ( ruleLetVariableCS )
             {
-            // InternalOCLinEcore.g:29607:1: ( ruleLetVariableCS )
-            // InternalOCLinEcore.g:29608:1: ruleLetVariableCS
+            // InternalOCLinEcore.g:29611:1: ( ruleLetVariableCS )
+            // InternalOCLinEcore.g:29612:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
@@ -86346,17 +86346,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__OwnedInExpressionAssignment_4"
-    // InternalOCLinEcore.g:29617:1: rule__LetExpCS__OwnedInExpressionAssignment_4 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29621:1: rule__LetExpCS__OwnedInExpressionAssignment_4 : ( ruleExpCS ) ;
     public final void rule__LetExpCS__OwnedInExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29621:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29622:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29625:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29626:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29622:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29623:1: ruleExpCS
+            // InternalOCLinEcore.g:29626:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29627:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
@@ -86391,17 +86391,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__NameAssignment_0"
-    // InternalOCLinEcore.g:29632:1: rule__LetVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:29636:1: rule__LetVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__LetVariableCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29636:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:29637:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:29640:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:29641:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:29637:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:29638:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:29641:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:29642:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -86436,17 +86436,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1"
-    // InternalOCLinEcore.g:29647:1: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 : ( ruleRoundBracketedClauseCS ) ;
+    // InternalOCLinEcore.g:29651:1: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 : ( ruleRoundBracketedClauseCS ) ;
     public final void rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29651:1: ( ( ruleRoundBracketedClauseCS ) )
-            // InternalOCLinEcore.g:29652:1: ( ruleRoundBracketedClauseCS )
+            // InternalOCLinEcore.g:29655:1: ( ( ruleRoundBracketedClauseCS ) )
+            // InternalOCLinEcore.g:29656:1: ( ruleRoundBracketedClauseCS )
             {
-            // InternalOCLinEcore.g:29652:1: ( ruleRoundBracketedClauseCS )
-            // InternalOCLinEcore.g:29653:1: ruleRoundBracketedClauseCS
+            // InternalOCLinEcore.g:29656:1: ( ruleRoundBracketedClauseCS )
+            // InternalOCLinEcore.g:29657:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
@@ -86481,17 +86481,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__OwnedTypeAssignment_2_1"
-    // InternalOCLinEcore.g:29662:1: rule__LetVariableCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLinEcore.g:29666:1: rule__LetVariableCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
     public final void rule__LetVariableCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29666:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLinEcore.g:29667:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29670:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLinEcore.g:29671:1: ( ruleTypeExpCS )
             {
-            // InternalOCLinEcore.g:29667:1: ( ruleTypeExpCS )
-            // InternalOCLinEcore.g:29668:1: ruleTypeExpCS
+            // InternalOCLinEcore.g:29671:1: ( ruleTypeExpCS )
+            // InternalOCLinEcore.g:29672:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
@@ -86526,17 +86526,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__OwnedInitExpressionAssignment_4"
-    // InternalOCLinEcore.g:29677:1: rule__LetVariableCS__OwnedInitExpressionAssignment_4 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29681:1: rule__LetVariableCS__OwnedInitExpressionAssignment_4 : ( ruleExpCS ) ;
     public final void rule__LetVariableCS__OwnedInitExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29681:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29682:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29685:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29686:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29682:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29683:1: ruleExpCS
+            // InternalOCLinEcore.g:29686:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29687:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
@@ -86571,17 +86571,17 @@
 
 
     // $ANTLR start "rule__NestedExpCS__OwnedExpressionAssignment_1"
-    // InternalOCLinEcore.g:29692:1: rule__NestedExpCS__OwnedExpressionAssignment_1 : ( ruleExpCS ) ;
+    // InternalOCLinEcore.g:29696:1: rule__NestedExpCS__OwnedExpressionAssignment_1 : ( ruleExpCS ) ;
     public final void rule__NestedExpCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29696:1: ( ( ruleExpCS ) )
-            // InternalOCLinEcore.g:29697:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29700:1: ( ( ruleExpCS ) )
+            // InternalOCLinEcore.g:29701:1: ( ruleExpCS )
             {
-            // InternalOCLinEcore.g:29697:1: ( ruleExpCS )
-            // InternalOCLinEcore.g:29698:1: ruleExpCS
+            // InternalOCLinEcore.g:29701:1: ( ruleExpCS )
+            // InternalOCLinEcore.g:29702:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
@@ -86616,17 +86616,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__LowerBoundAssignment_0"
-    // InternalOCLinEcore.g:29707:1: rule__MultiplicityBoundsCS__LowerBoundAssignment_0 : ( ruleLOWER ) ;
+    // InternalOCLinEcore.g:29711:1: rule__MultiplicityBoundsCS__LowerBoundAssignment_0 : ( ruleLOWER ) ;
     public final void rule__MultiplicityBoundsCS__LowerBoundAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29711:1: ( ( ruleLOWER ) )
-            // InternalOCLinEcore.g:29712:1: ( ruleLOWER )
+            // InternalOCLinEcore.g:29715:1: ( ( ruleLOWER ) )
+            // InternalOCLinEcore.g:29716:1: ( ruleLOWER )
             {
-            // InternalOCLinEcore.g:29712:1: ( ruleLOWER )
-            // InternalOCLinEcore.g:29713:1: ruleLOWER
+            // InternalOCLinEcore.g:29716:1: ( ruleLOWER )
+            // InternalOCLinEcore.g:29717:1: ruleLOWER
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
@@ -86661,17 +86661,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1"
-    // InternalOCLinEcore.g:29722:1: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 : ( ruleUPPER ) ;
+    // InternalOCLinEcore.g:29726:1: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 : ( ruleUPPER ) ;
     public final void rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29726:1: ( ( ruleUPPER ) )
-            // InternalOCLinEcore.g:29727:1: ( ruleUPPER )
+            // InternalOCLinEcore.g:29730:1: ( ( ruleUPPER ) )
+            // InternalOCLinEcore.g:29731:1: ( ruleUPPER )
             {
-            // InternalOCLinEcore.g:29727:1: ( ruleUPPER )
-            // InternalOCLinEcore.g:29728:1: ruleUPPER
+            // InternalOCLinEcore.g:29731:1: ( ruleUPPER )
+            // InternalOCLinEcore.g:29732:1: ruleUPPER
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
@@ -86706,23 +86706,23 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__IsNullFreeAssignment_2_1"
-    // InternalOCLinEcore.g:29737:1: rule__MultiplicityCS__IsNullFreeAssignment_2_1 : ( ( '|1' ) ) ;
+    // InternalOCLinEcore.g:29741:1: rule__MultiplicityCS__IsNullFreeAssignment_2_1 : ( ( '|1' ) ) ;
     public final void rule__MultiplicityCS__IsNullFreeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29741:1: ( ( ( '|1' ) ) )
-            // InternalOCLinEcore.g:29742:1: ( ( '|1' ) )
+            // InternalOCLinEcore.g:29745:1: ( ( ( '|1' ) ) )
+            // InternalOCLinEcore.g:29746:1: ( ( '|1' ) )
             {
-            // InternalOCLinEcore.g:29742:1: ( ( '|1' ) )
-            // InternalOCLinEcore.g:29743:1: ( '|1' )
+            // InternalOCLinEcore.g:29746:1: ( ( '|1' ) )
+            // InternalOCLinEcore.g:29747:1: ( '|1' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
-            // InternalOCLinEcore.g:29744:1: ( '|1' )
-            // InternalOCLinEcore.g:29745:1: '|1'
+            // InternalOCLinEcore.g:29748:1: ( '|1' )
+            // InternalOCLinEcore.g:29749:1: '|1'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
@@ -86759,23 +86759,23 @@
 
 
     // $ANTLR start "rule__MultiplicityStringCS__StringBoundsAssignment"
-    // InternalOCLinEcore.g:29760:1: rule__MultiplicityStringCS__StringBoundsAssignment : ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) ;
+    // InternalOCLinEcore.g:29764:1: rule__MultiplicityStringCS__StringBoundsAssignment : ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) ;
     public final void rule__MultiplicityStringCS__StringBoundsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29764:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
-            // InternalOCLinEcore.g:29765:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
+            // InternalOCLinEcore.g:29768:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
+            // InternalOCLinEcore.g:29769:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
             {
-            // InternalOCLinEcore.g:29765:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
-            // InternalOCLinEcore.g:29766:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
+            // InternalOCLinEcore.g:29769:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
+            // InternalOCLinEcore.g:29770:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
-            // InternalOCLinEcore.g:29767:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
-            // InternalOCLinEcore.g:29767:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
+            // InternalOCLinEcore.g:29771:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
+            // InternalOCLinEcore.g:29771:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityStringCS__StringBoundsAlternatives_0();
@@ -86810,17 +86810,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__OwnedPathElementsAssignment_0"
-    // InternalOCLinEcore.g:29776:1: rule__PathNameCS__OwnedPathElementsAssignment_0 : ( ruleFirstPathElementCS ) ;
+    // InternalOCLinEcore.g:29780:1: rule__PathNameCS__OwnedPathElementsAssignment_0 : ( ruleFirstPathElementCS ) ;
     public final void rule__PathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29780:1: ( ( ruleFirstPathElementCS ) )
-            // InternalOCLinEcore.g:29781:1: ( ruleFirstPathElementCS )
+            // InternalOCLinEcore.g:29784:1: ( ( ruleFirstPathElementCS ) )
+            // InternalOCLinEcore.g:29785:1: ( ruleFirstPathElementCS )
             {
-            // InternalOCLinEcore.g:29781:1: ( ruleFirstPathElementCS )
-            // InternalOCLinEcore.g:29782:1: ruleFirstPathElementCS
+            // InternalOCLinEcore.g:29785:1: ( ruleFirstPathElementCS )
+            // InternalOCLinEcore.g:29786:1: ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
@@ -86855,17 +86855,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__OwnedPathElementsAssignment_1_1"
-    // InternalOCLinEcore.g:29791:1: rule__PathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
+    // InternalOCLinEcore.g:29795:1: rule__PathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
     public final void rule__PathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29795:1: ( ( ruleNextPathElementCS ) )
-            // InternalOCLinEcore.g:29796:1: ( ruleNextPathElementCS )
+            // InternalOCLinEcore.g:29799:1: ( ( ruleNextPathElementCS ) )
+            // InternalOCLinEcore.g:29800:1: ( ruleNextPathElementCS )
             {
-            // InternalOCLinEcore.g:29796:1: ( ruleNextPathElementCS )
-            // InternalOCLinEcore.g:29797:1: ruleNextPathElementCS
+            // InternalOCLinEcore.g:29800:1: ( ruleNextPathElementCS )
+            // InternalOCLinEcore.g:29801:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
@@ -86900,23 +86900,23 @@
 
 
     // $ANTLR start "rule__FirstPathElementCS__ReferredElementAssignment"
-    // InternalOCLinEcore.g:29806:1: rule__FirstPathElementCS__ReferredElementAssignment : ( ( ruleUnrestrictedName ) ) ;
+    // InternalOCLinEcore.g:29812:1: rule__FirstPathElementCS__ReferredElementAssignment : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__FirstPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29810:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalOCLinEcore.g:29811:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:29816:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalOCLinEcore.g:29817:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalOCLinEcore.g:29811:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:29812:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:29817:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:29818:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
-            // InternalOCLinEcore.g:29813:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:29814:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:29819:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:29820:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
@@ -86957,23 +86957,23 @@
 
 
     // $ANTLR start "rule__NextPathElementCS__ReferredElementAssignment"
-    // InternalOCLinEcore.g:29825:1: rule__NextPathElementCS__ReferredElementAssignment : ( ( ruleUnreservedName ) ) ;
+    // InternalOCLinEcore.g:29831:1: rule__NextPathElementCS__ReferredElementAssignment : ( ( ruleUnreservedName ) ) ;
     public final void rule__NextPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29829:1: ( ( ( ruleUnreservedName ) ) )
-            // InternalOCLinEcore.g:29830:1: ( ( ruleUnreservedName ) )
+            // InternalOCLinEcore.g:29835:1: ( ( ( ruleUnreservedName ) ) )
+            // InternalOCLinEcore.g:29836:1: ( ( ruleUnreservedName ) )
             {
-            // InternalOCLinEcore.g:29830:1: ( ( ruleUnreservedName ) )
-            // InternalOCLinEcore.g:29831:1: ( ruleUnreservedName )
+            // InternalOCLinEcore.g:29836:1: ( ( ruleUnreservedName ) )
+            // InternalOCLinEcore.g:29837:1: ( ruleUnreservedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
-            // InternalOCLinEcore.g:29832:1: ( ruleUnreservedName )
-            // InternalOCLinEcore.g:29833:1: ruleUnreservedName
+            // InternalOCLinEcore.g:29838:1: ( ruleUnreservedName )
+            // InternalOCLinEcore.g:29839:1: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
@@ -87014,17 +87014,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0"
-    // InternalOCLinEcore.g:29844:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 : ( ruleTemplateParameterSubstitutionCS ) ;
+    // InternalOCLinEcore.g:29850:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 : ( ruleTemplateParameterSubstitutionCS ) ;
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29848:1: ( ( ruleTemplateParameterSubstitutionCS ) )
-            // InternalOCLinEcore.g:29849:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalOCLinEcore.g:29854:1: ( ( ruleTemplateParameterSubstitutionCS ) )
+            // InternalOCLinEcore.g:29855:1: ( ruleTemplateParameterSubstitutionCS )
             {
-            // InternalOCLinEcore.g:29849:1: ( ruleTemplateParameterSubstitutionCS )
-            // InternalOCLinEcore.g:29850:1: ruleTemplateParameterSubstitutionCS
+            // InternalOCLinEcore.g:29855:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalOCLinEcore.g:29856:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
@@ -87059,17 +87059,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1"
-    // InternalOCLinEcore.g:29859:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 : ( ruleTemplateParameterSubstitutionCS ) ;
+    // InternalOCLinEcore.g:29865:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 : ( ruleTemplateParameterSubstitutionCS ) ;
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29863:1: ( ( ruleTemplateParameterSubstitutionCS ) )
-            // InternalOCLinEcore.g:29864:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalOCLinEcore.g:29869:1: ( ( ruleTemplateParameterSubstitutionCS ) )
+            // InternalOCLinEcore.g:29870:1: ( ruleTemplateParameterSubstitutionCS )
             {
-            // InternalOCLinEcore.g:29864:1: ( ruleTemplateParameterSubstitutionCS )
-            // InternalOCLinEcore.g:29865:1: ruleTemplateParameterSubstitutionCS
+            // InternalOCLinEcore.g:29870:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalOCLinEcore.g:29871:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
@@ -87104,17 +87104,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedMultiplicityAssignment_2"
-    // InternalOCLinEcore.g:29874:1: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 : ( ruleMultiplicityCS ) ;
+    // InternalOCLinEcore.g:29880:1: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 : ( ruleMultiplicityCS ) ;
     public final void rule__TemplateBindingCS__OwnedMultiplicityAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29878:1: ( ( ruleMultiplicityCS ) )
-            // InternalOCLinEcore.g:29879:1: ( ruleMultiplicityCS )
+            // InternalOCLinEcore.g:29884:1: ( ( ruleMultiplicityCS ) )
+            // InternalOCLinEcore.g:29885:1: ( ruleMultiplicityCS )
             {
-            // InternalOCLinEcore.g:29879:1: ( ruleMultiplicityCS )
-            // InternalOCLinEcore.g:29880:1: ruleMultiplicityCS
+            // InternalOCLinEcore.g:29885:1: ( ruleMultiplicityCS )
+            // InternalOCLinEcore.g:29886:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
@@ -87149,17 +87149,17 @@
 
 
     // $ANTLR start "rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment"
-    // InternalOCLinEcore.g:29889:1: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment : ( ruleTypeRefCS ) ;
+    // InternalOCLinEcore.g:29895:1: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment : ( ruleTypeRefCS ) ;
     public final void rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29893:1: ( ( ruleTypeRefCS ) )
-            // InternalOCLinEcore.g:29894:1: ( ruleTypeRefCS )
+            // InternalOCLinEcore.g:29899:1: ( ( ruleTypeRefCS ) )
+            // InternalOCLinEcore.g:29900:1: ( ruleTypeRefCS )
             {
-            // InternalOCLinEcore.g:29894:1: ( ruleTypeRefCS )
-            // InternalOCLinEcore.g:29895:1: ruleTypeRefCS
+            // InternalOCLinEcore.g:29900:1: ( ruleTypeRefCS )
+            // InternalOCLinEcore.g:29901:1: ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
@@ -87194,17 +87194,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__NameAssignment_0"
-    // InternalOCLinEcore.g:29904:1: rule__TypeParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLinEcore.g:29910:1: rule__TypeParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__TypeParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29908:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:29909:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:29914:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:29915:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:29909:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:29910:1: ruleUnrestrictedName
+            // InternalOCLinEcore.g:29915:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:29916:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -87239,17 +87239,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__OwnedExtendsAssignment_1_1"
-    // InternalOCLinEcore.g:29919:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_1 : ( ruleTypedRefCS ) ;
+    // InternalOCLinEcore.g:29925:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_1 : ( ruleTypedRefCS ) ;
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29923:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLinEcore.g:29924:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:29929:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLinEcore.g:29930:1: ( ruleTypedRefCS )
             {
-            // InternalOCLinEcore.g:29924:1: ( ruleTypedRefCS )
-            // InternalOCLinEcore.g:29925:1: ruleTypedRefCS
+            // InternalOCLinEcore.g:29930:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:29931:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
@@ -87284,17 +87284,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1"
-    // InternalOCLinEcore.g:29934:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 : ( ruleTypedRefCS ) ;
+    // InternalOCLinEcore.g:29940:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29938:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLinEcore.g:29939:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:29944:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLinEcore.g:29945:1: ( ruleTypedRefCS )
             {
-            // InternalOCLinEcore.g:29939:1: ( ruleTypedRefCS )
-            // InternalOCLinEcore.g:29940:1: ruleTypedRefCS
+            // InternalOCLinEcore.g:29945:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:29946:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
@@ -87329,17 +87329,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1"
-    // InternalOCLinEcore.g:29949:1: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 : ( ruleTypedRefCS ) ;
+    // InternalOCLinEcore.g:29955:1: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLinEcore.g:29953:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLinEcore.g:29954:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:29959:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLinEcore.g:29960:1: ( ruleTypedRefCS )
             {
-            // InternalOCLinEcore.g:29954:1: ( ruleTypedRefCS )
-            // InternalOCLinEcore.g:29955:1: ruleTypedRefCS
+            // InternalOCLinEcore.g:29960:1: ( ruleTypedRefCS )
+            // InternalOCLinEcore.g:29961:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
@@ -87374,11 +87374,11 @@
 
     // $ANTLR start synpred194_InternalOCLinEcore
     public final void synpred194_InternalOCLinEcore_fragment() throws RecognitionException {
-        // InternalOCLinEcore.g:5500:6: ( ( ruleTypeLiteralCS ) )
-        // InternalOCLinEcore.g:5500:6: ( ruleTypeLiteralCS )
+        // InternalOCLinEcore.g:5502:6: ( ( ruleTypeLiteralCS ) )
+        // InternalOCLinEcore.g:5502:6: ( ruleTypeLiteralCS )
         {
-        // InternalOCLinEcore.g:5500:6: ( ruleTypeLiteralCS )
-        // InternalOCLinEcore.g:5501:1: ruleTypeLiteralCS
+        // InternalOCLinEcore.g:5502:6: ( ruleTypeLiteralCS )
+        // InternalOCLinEcore.g:5503:1: ruleTypeLiteralCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_1());
@@ -87398,17 +87398,17 @@
 
     // $ANTLR start synpred195_InternalOCLinEcore
     public final void synpred195_InternalOCLinEcore_fragment() throws RecognitionException {
-        // InternalOCLinEcore.g:5522:1: ( ( ( rule__ExpCS__Group_0__0 ) ) )
-        // InternalOCLinEcore.g:5522:1: ( ( rule__ExpCS__Group_0__0 ) )
+        // InternalOCLinEcore.g:5524:1: ( ( ( rule__ExpCS__Group_0__0 ) ) )
+        // InternalOCLinEcore.g:5524:1: ( ( rule__ExpCS__Group_0__0 ) )
         {
-        // InternalOCLinEcore.g:5522:1: ( ( rule__ExpCS__Group_0__0 ) )
-        // InternalOCLinEcore.g:5523:1: ( rule__ExpCS__Group_0__0 )
+        // InternalOCLinEcore.g:5524:1: ( ( rule__ExpCS__Group_0__0 ) )
+        // InternalOCLinEcore.g:5525:1: ( rule__ExpCS__Group_0__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getExpCSAccess().getGroup_0());
         }
-        // InternalOCLinEcore.g:5524:1: ( rule__ExpCS__Group_0__0 )
-        // InternalOCLinEcore.g:5524:2: rule__ExpCS__Group_0__0
+        // InternalOCLinEcore.g:5526:1: ( rule__ExpCS__Group_0__0 )
+        // InternalOCLinEcore.g:5526:2: rule__ExpCS__Group_0__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__ExpCS__Group_0__0();
@@ -87428,11 +87428,11 @@
 
     // $ANTLR start synpred202_InternalOCLinEcore
     public final void synpred202_InternalOCLinEcore_fragment() throws RecognitionException {
-        // InternalOCLinEcore.g:5612:6: ( ( ruleTupleLiteralExpCS ) )
-        // InternalOCLinEcore.g:5612:6: ( ruleTupleLiteralExpCS )
+        // InternalOCLinEcore.g:5614:6: ( ( ruleTupleLiteralExpCS ) )
+        // InternalOCLinEcore.g:5614:6: ( ruleTupleLiteralExpCS )
         {
-        // InternalOCLinEcore.g:5612:6: ( ruleTupleLiteralExpCS )
-        // InternalOCLinEcore.g:5613:1: ruleTupleLiteralExpCS
+        // InternalOCLinEcore.g:5614:6: ( ruleTupleLiteralExpCS )
+        // InternalOCLinEcore.g:5615:1: ruleTupleLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
@@ -87452,11 +87452,11 @@
 
     // $ANTLR start synpred203_InternalOCLinEcore
     public final void synpred203_InternalOCLinEcore_fragment() throws RecognitionException {
-        // InternalOCLinEcore.g:5618:6: ( ( ruleMapLiteralExpCS ) )
-        // InternalOCLinEcore.g:5618:6: ( ruleMapLiteralExpCS )
+        // InternalOCLinEcore.g:5620:6: ( ( ruleMapLiteralExpCS ) )
+        // InternalOCLinEcore.g:5620:6: ( ruleMapLiteralExpCS )
         {
-        // InternalOCLinEcore.g:5618:6: ( ruleMapLiteralExpCS )
-        // InternalOCLinEcore.g:5619:1: ruleMapLiteralExpCS
+        // InternalOCLinEcore.g:5620:6: ( ruleMapLiteralExpCS )
+        // InternalOCLinEcore.g:5621:1: ruleMapLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
@@ -87476,11 +87476,11 @@
 
     // $ANTLR start synpred204_InternalOCLinEcore
     public final void synpred204_InternalOCLinEcore_fragment() throws RecognitionException {
-        // InternalOCLinEcore.g:5624:6: ( ( ruleCollectionLiteralExpCS ) )
-        // InternalOCLinEcore.g:5624:6: ( ruleCollectionLiteralExpCS )
+        // InternalOCLinEcore.g:5626:6: ( ( ruleCollectionLiteralExpCS ) )
+        // InternalOCLinEcore.g:5626:6: ( ruleCollectionLiteralExpCS )
         {
-        // InternalOCLinEcore.g:5624:6: ( ruleCollectionLiteralExpCS )
-        // InternalOCLinEcore.g:5625:1: ruleCollectionLiteralExpCS
+        // InternalOCLinEcore.g:5626:6: ( ruleCollectionLiteralExpCS )
+        // InternalOCLinEcore.g:5627:1: ruleCollectionLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
@@ -87500,11 +87500,11 @@
 
     // $ANTLR start synpred206_InternalOCLinEcore
     public final void synpred206_InternalOCLinEcore_fragment() throws RecognitionException {
-        // InternalOCLinEcore.g:5636:6: ( ( ruleTypeLiteralExpCS ) )
-        // InternalOCLinEcore.g:5636:6: ( ruleTypeLiteralExpCS )
+        // InternalOCLinEcore.g:5638:6: ( ( ruleTypeLiteralExpCS ) )
+        // InternalOCLinEcore.g:5638:6: ( ruleTypeLiteralExpCS )
         {
-        // InternalOCLinEcore.g:5636:6: ( ruleTypeLiteralExpCS )
-        // InternalOCLinEcore.g:5637:1: ruleTypeLiteralExpCS
+        // InternalOCLinEcore.g:5638:6: ( ruleTypeLiteralExpCS )
+        // InternalOCLinEcore.g:5639:1: ruleTypeLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
@@ -87524,17 +87524,17 @@
 
     // $ANTLR start synpred210_InternalOCLinEcore
     public final void synpred210_InternalOCLinEcore_fragment() throws RecognitionException {
-        // InternalOCLinEcore.g:5708:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) )
-        // InternalOCLinEcore.g:5708:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+        // InternalOCLinEcore.g:5710:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) )
+        // InternalOCLinEcore.g:5710:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
         {
-        // InternalOCLinEcore.g:5708:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
-        // InternalOCLinEcore.g:5709:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+        // InternalOCLinEcore.g:5710:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+        // InternalOCLinEcore.g:5711:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
         }
-        // InternalOCLinEcore.g:5710:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
-        // InternalOCLinEcore.g:5710:2: rule__NavigatingArgCS__Group_0_1_0__0
+        // InternalOCLinEcore.g:5712:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+        // InternalOCLinEcore.g:5712:2: rule__NavigatingArgCS__Group_0_1_0__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingArgCS__Group_0_1_0__0();
@@ -87554,17 +87554,17 @@
 
     // $ANTLR start synpred211_InternalOCLinEcore
     public final void synpred211_InternalOCLinEcore_fragment() throws RecognitionException {
-        // InternalOCLinEcore.g:5714:6: ( ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) )
-        // InternalOCLinEcore.g:5714:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+        // InternalOCLinEcore.g:5716:6: ( ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) )
+        // InternalOCLinEcore.g:5716:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
         {
-        // InternalOCLinEcore.g:5714:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
-        // InternalOCLinEcore.g:5715:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+        // InternalOCLinEcore.g:5716:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+        // InternalOCLinEcore.g:5717:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
         }
-        // InternalOCLinEcore.g:5716:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
-        // InternalOCLinEcore.g:5716:2: rule__NavigatingArgCS__Group_0_1_1__0
+        // InternalOCLinEcore.g:5718:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+        // InternalOCLinEcore.g:5718:2: rule__NavigatingArgCS__Group_0_1_1__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingArgCS__Group_0_1_1__0();
@@ -87584,17 +87584,17 @@
 
     // $ANTLR start synpred212_InternalOCLinEcore
     public final void synpred212_InternalOCLinEcore_fragment() throws RecognitionException {
-        // InternalOCLinEcore.g:5736:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) )
-        // InternalOCLinEcore.g:5736:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+        // InternalOCLinEcore.g:5738:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) )
+        // InternalOCLinEcore.g:5738:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
         {
-        // InternalOCLinEcore.g:5736:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
-        // InternalOCLinEcore.g:5737:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+        // InternalOCLinEcore.g:5738:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+        // InternalOCLinEcore.g:5739:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
         }
-        // InternalOCLinEcore.g:5738:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
-        // InternalOCLinEcore.g:5738:2: rule__NavigatingCommaArgCS__Group_2_0__0
+        // InternalOCLinEcore.g:5740:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+        // InternalOCLinEcore.g:5740:2: rule__NavigatingCommaArgCS__Group_2_0__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingCommaArgCS__Group_2_0__0();
@@ -87614,17 +87614,17 @@
 
     // $ANTLR start synpred213_InternalOCLinEcore
     public final void synpred213_InternalOCLinEcore_fragment() throws RecognitionException {
-        // InternalOCLinEcore.g:5742:6: ( ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) )
-        // InternalOCLinEcore.g:5742:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+        // InternalOCLinEcore.g:5744:6: ( ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) )
+        // InternalOCLinEcore.g:5744:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
         {
-        // InternalOCLinEcore.g:5742:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
-        // InternalOCLinEcore.g:5743:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+        // InternalOCLinEcore.g:5744:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+        // InternalOCLinEcore.g:5745:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
         }
-        // InternalOCLinEcore.g:5744:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
-        // InternalOCLinEcore.g:5744:2: rule__NavigatingCommaArgCS__Group_2_1__0
+        // InternalOCLinEcore.g:5746:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+        // InternalOCLinEcore.g:5746:2: rule__NavigatingCommaArgCS__Group_2_1__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingCommaArgCS__Group_2_1__0();
@@ -87842,7 +87842,7 @@
             this.transition = dfa_6;
         }
         public String getDescription() {
-            return "4113:1: rule__ModelElementCS__Alternatives : ( ( ruleClassCS ) | ( ruleEnumerationLiteralCS ) | ( ruleOperationCS ) | ( rulePackageCS ) | ( ruleStructuralFeatureCS ) );";
+            return "4115:1: rule__ModelElementCS__Alternatives : ( ( ruleClassCS ) | ( ruleEnumerationLiteralCS ) | ( ruleOperationCS ) | ( rulePackageCS ) | ( ruleStructuralFeatureCS ) );";
         }
     }
     static final String dfa_7s = "\57\uffff";
@@ -87923,7 +87923,7 @@
             this.transition = dfa_13;
         }
         public String getDescription() {
-            return "5321:1: rule__CollectionLiteralPartCS__Alternatives : ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) );";
+            return "5323:1: rule__CollectionLiteralPartCS__Alternatives : ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) );";
         }
     }
     static final String[] dfa_14s = {
@@ -87991,7 +87991,7 @@
             this.transition = dfa_14;
         }
         public String getDescription() {
-            return "5365:1: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );";
+            return "5367:1: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );";
         }
     }
     static final String dfa_15s = "\75\uffff";
@@ -88084,7 +88084,7 @@
             this.transition = dfa_20;
         }
         public String getDescription() {
-            return "5489:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );";
+            return "5491:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             TokenStream input = (TokenStream)_input;
@@ -88277,7 +88277,7 @@
             this.transition = dfa_26;
         }
         public String getDescription() {
-            return "5517:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );";
+            return "5519:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             TokenStream input = (TokenStream)_input;
@@ -88439,7 +88439,7 @@
             this.transition = dfa_32;
         }
         public String getDescription() {
-            return "5583:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );";
+            return "5585:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             TokenStream input = (TokenStream)_input;
@@ -88623,7 +88623,7 @@
             this.transition = dfa_33;
         }
         public String getDescription() {
-            return "5759:1: rule__IfExpCS__OwnedConditionAlternatives_1_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );";
+            return "5761:1: rule__IfExpCS__OwnedConditionAlternatives_1_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );";
         }
     }
     static final String dfa_34s = "\1\5\54\64\2\uffff";
@@ -88697,7 +88697,7 @@
             this.transition = dfa_37;
         }
         public String getDescription() {
-            return "10502:1: ( rule__ImportCS__Group_1__0 )?";
+            return "10504:1: ( rule__ImportCS__Group_1__0 )?";
         }
     }
 
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/OCLinEcore.xtextbin b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/OCLinEcore.xtextbin
index 0108388..a92140a 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/OCLinEcore.xtextbin
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/OCLinEcore.xtextbin
Binary files differ
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/OCLinEcoreGrammarResource.java b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/OCLinEcoreGrammarResource.java
index 659e16b..2a2e0bd 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/OCLinEcoreGrammarResource.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/OCLinEcoreGrammarResource.java
@@ -1558,6 +1558,7 @@
 		private static final @NonNull ParserRule PR_UPPER = createParserRule("UPPER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.EINT));
 		private static final @NonNull ParserRule PR_URI = createParserRule("URI", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_UnreservedName = createParserRule("UnreservedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
+		private static final @NonNull ParserRule PR_UnreservedPathNameCS = createParserRule("UnreservedPathNameCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.PATH_NAME_CS));
 		private static final @NonNull ParserRule PR_UnrestrictedName = createParserRule("UnrestrictedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_WildcardTypeRefCS = createParserRule("WildcardTypeRefCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.WILDCARD_TYPE_REF_CS));
 
@@ -1654,6 +1655,12 @@
 				createRuleCall(TR_SINGLE_QUOTED_STRING));
 			PR_UnreservedName.setAlternatives(
 				createRuleCall(_OCLinEcore.PR_UnrestrictedName));
+			PR_UnreservedPathNameCS.setAlternatives(
+				createGroup(
+					createAssignment("ownedPathElements", "+=", createRuleCall(PR_NextPathElementCS)),
+					setCardinality("*", createGroup(
+						createKeyword("::"),
+						createAssignment("ownedPathElements", "+=", createRuleCall(PR_NextPathElementCS))))));
 			PR_UnrestrictedName.setAlternatives(
 				createRuleCall(PR_Identifier));
 			PR_WildcardTypeRefCS.setAlternatives(
@@ -1682,6 +1689,7 @@
 				rules.add(PR_MultiplicityCS);
 				rules.add(PR_MultiplicityStringCS);
 				rules.add(PR_PathNameCS);
+				rules.add(PR_UnreservedPathNameCS);
 				rules.add(PR_FirstPathElementCS);
 				rules.add(PR_NextPathElementCS);
 				rules.add(PR_TemplateBindingCS);
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/internal/InternalOCLinEcore.g b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/internal/InternalOCLinEcore.g
index 818aee4..589ab5b 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/internal/InternalOCLinEcore.g
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/internal/InternalOCLinEcore.g
@@ -9839,6 +9839,8 @@
 
 
 
+
+
 // Entry rule entryRuleFirstPathElementCS
 entryRuleFirstPathElementCS returns [EObject current=null]
 	:
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/internal/InternalOCLinEcoreLexer.java b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/internal/InternalOCLinEcoreLexer.java
index c4fee71..d2c7aab 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/internal/InternalOCLinEcoreLexer.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/internal/InternalOCLinEcoreLexer.java
@@ -2828,8 +2828,8 @@
         try {
             int _type = RULE_UNQUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:10438:22: ( '\\u00A3$%^\\u00A3$%^' )
-            // InternalOCLinEcore.g:10438:24: '\\u00A3$%^\\u00A3$%^'
+            // InternalOCLinEcore.g:10440:22: ( '\\u00A3$%^\\u00A3$%^' )
+            // InternalOCLinEcore.g:10440:24: '\\u00A3$%^\\u00A3$%^'
             {
             match("\u00A3$%^\u00A3$%^");
 
@@ -2847,8 +2847,8 @@
     // $ANTLR start "RULE_ESCAPED_CHARACTER"
     public final void mRULE_ESCAPED_CHARACTER() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:10440:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
-            // InternalOCLinEcore.g:10440:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+            // InternalOCLinEcore.g:10442:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
+            // InternalOCLinEcore.g:10442:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
             match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -2872,8 +2872,8 @@
     // $ANTLR start "RULE_LETTER_CHARACTER"
     public final void mRULE_LETTER_CHARACTER() throws RecognitionException {
         try {
-            // InternalOCLinEcore.g:10442:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
-            // InternalOCLinEcore.g:10442:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
+            // InternalOCLinEcore.g:10444:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
+            // InternalOCLinEcore.g:10444:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
             {
             if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
                 input.consume();
@@ -2898,11 +2898,11 @@
         try {
             int _type = RULE_DOUBLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:10444:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
-            // InternalOCLinEcore.g:10444:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+            // InternalOCLinEcore.g:10446:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
+            // InternalOCLinEcore.g:10446:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
             match('\"');
-            // InternalOCLinEcore.g:10444:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
+            // InternalOCLinEcore.g:10446:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
                 int alt1=3;
@@ -2918,14 +2918,14 @@
 
                 switch (alt1) {
             	case 1 :
-            	    // InternalOCLinEcore.g:10444:34: RULE_ESCAPED_CHARACTER
+            	    // InternalOCLinEcore.g:10446:34: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalOCLinEcore.g:10444:57: ~ ( ( '\\\\' | '\"' ) )
+            	    // InternalOCLinEcore.g:10446:57: ~ ( ( '\\\\' | '\"' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2962,11 +2962,11 @@
         try {
             int _type = RULE_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:10446:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            // InternalOCLinEcore.g:10446:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+            // InternalOCLinEcore.g:10448:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // InternalOCLinEcore.g:10448:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
             match('\'');
-            // InternalOCLinEcore.g:10446:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
+            // InternalOCLinEcore.g:10448:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
                 int alt2=3;
@@ -2982,14 +2982,14 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // InternalOCLinEcore.g:10446:35: RULE_ESCAPED_CHARACTER
+            	    // InternalOCLinEcore.g:10448:35: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalOCLinEcore.g:10446:58: ~ ( ( '\\\\' | '\\'' ) )
+            	    // InternalOCLinEcore.g:10448:58: ~ ( ( '\\\\' | '\\'' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -3026,12 +3026,12 @@
         try {
             int _type = RULE_ML_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:10448:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
-            // InternalOCLinEcore.g:10448:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
+            // InternalOCLinEcore.g:10450:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
+            // InternalOCLinEcore.g:10450:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
             match("/'");
 
-            // InternalOCLinEcore.g:10448:38: ( options {greedy=false; } : . )*
+            // InternalOCLinEcore.g:10450:38: ( options {greedy=false; } : . )*
             loop3:
             do {
                 int alt3=2;
@@ -3056,7 +3056,7 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // InternalOCLinEcore.g:10448:66: .
+            	    // InternalOCLinEcore.g:10450:66: .
             	    {
             	    matchAny();
 
@@ -3086,11 +3086,11 @@
         try {
             int _type = RULE_SIMPLE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:10450:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
-            // InternalOCLinEcore.g:10450:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalOCLinEcore.g:10452:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
+            // InternalOCLinEcore.g:10452:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
             mRULE_LETTER_CHARACTER();
-            // InternalOCLinEcore.g:10450:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalOCLinEcore.g:10452:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
                 int alt4=2;
@@ -3139,8 +3139,8 @@
         try {
             int _type = RULE_ESCAPED_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:10452:17: ( '_' RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:10452:19: '_' RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:10454:17: ( '_' RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:10454:19: '_' RULE_SINGLE_QUOTED_STRING
             {
             match('_');
             mRULE_SINGLE_QUOTED_STRING();
@@ -3160,10 +3160,10 @@
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:10454:10: ( ( '0' .. '9' )+ )
-            // InternalOCLinEcore.g:10454:12: ( '0' .. '9' )+
+            // InternalOCLinEcore.g:10456:10: ( ( '0' .. '9' )+ )
+            // InternalOCLinEcore.g:10456:12: ( '0' .. '9' )+
             {
-            // InternalOCLinEcore.g:10454:12: ( '0' .. '9' )+
+            // InternalOCLinEcore.g:10456:12: ( '0' .. '9' )+
             int cnt5=0;
             loop5:
             do {
@@ -3177,7 +3177,7 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // InternalOCLinEcore.g:10454:13: '0' .. '9'
+            	    // InternalOCLinEcore.g:10456:13: '0' .. '9'
             	    {
             	    matchRange('0','9');
 
@@ -3209,12 +3209,12 @@
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:10456:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // InternalOCLinEcore.g:10456:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // InternalOCLinEcore.g:10458:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // InternalOCLinEcore.g:10458:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*");
 
-            // InternalOCLinEcore.g:10456:24: ( options {greedy=false; } : . )*
+            // InternalOCLinEcore.g:10458:24: ( options {greedy=false; } : . )*
             loop6:
             do {
                 int alt6=2;
@@ -3239,7 +3239,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // InternalOCLinEcore.g:10456:52: .
+            	    // InternalOCLinEcore.g:10458:52: .
             	    {
             	    matchAny();
 
@@ -3269,12 +3269,12 @@
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:10458:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // InternalOCLinEcore.g:10458:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // InternalOCLinEcore.g:10460:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // InternalOCLinEcore.g:10460:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("--");
 
-            // InternalOCLinEcore.g:10458:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // InternalOCLinEcore.g:10460:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
             do {
                 int alt7=2;
@@ -3287,7 +3287,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // InternalOCLinEcore.g:10458:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // InternalOCLinEcore.g:10460:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -3307,7 +3307,7 @@
                 }
             } while (true);
 
-            // InternalOCLinEcore.g:10458:40: ( ( '\\r' )? '\\n' )?
+            // InternalOCLinEcore.g:10460:40: ( ( '\\r' )? '\\n' )?
             int alt9=2;
             int LA9_0 = input.LA(1);
 
@@ -3316,9 +3316,9 @@
             }
             switch (alt9) {
                 case 1 :
-                    // InternalOCLinEcore.g:10458:41: ( '\\r' )? '\\n'
+                    // InternalOCLinEcore.g:10460:41: ( '\\r' )? '\\n'
                     {
-                    // InternalOCLinEcore.g:10458:41: ( '\\r' )?
+                    // InternalOCLinEcore.g:10460:41: ( '\\r' )?
                     int alt8=2;
                     int LA8_0 = input.LA(1);
 
@@ -3327,7 +3327,7 @@
                     }
                     switch (alt8) {
                         case 1 :
-                            // InternalOCLinEcore.g:10458:41: '\\r'
+                            // InternalOCLinEcore.g:10460:41: '\\r'
                             {
                             match('\r');
 
@@ -3359,10 +3359,10 @@
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:10460:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // InternalOCLinEcore.g:10460:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalOCLinEcore.g:10462:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // InternalOCLinEcore.g:10462:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // InternalOCLinEcore.g:10460:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalOCLinEcore.g:10462:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt10=0;
             loop10:
             do {
@@ -3416,8 +3416,8 @@
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLinEcore.g:10462:16: ( . )
-            // InternalOCLinEcore.g:10462:18: .
+            // InternalOCLinEcore.g:10464:16: ( . )
+            // InternalOCLinEcore.g:10464:18: .
             {
             matchAny();
 
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/internal/InternalOCLinEcoreParser.java b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/internal/InternalOCLinEcoreParser.java
index 64b6b6a..65b39e9 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/internal/InternalOCLinEcoreParser.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/internal/InternalOCLinEcoreParser.java
@@ -28500,7 +28500,7 @@
 
 
     // $ANTLR start "entryRuleFirstPathElementCS"
-    // InternalOCLinEcore.g:9843:1: entryRuleFirstPathElementCS returns [EObject current=null] : iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ;
+    // InternalOCLinEcore.g:9845:1: entryRuleFirstPathElementCS returns [EObject current=null] : iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ;
     public final EObject entryRuleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
@@ -28508,8 +28508,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:9844:2: (iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF )
-            // InternalOCLinEcore.g:9845:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
+            // InternalOCLinEcore.g:9846:2: (iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF )
+            // InternalOCLinEcore.g:9847:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getFirstPathElementCSRule());
@@ -28540,21 +28540,21 @@
 
 
     // $ANTLR start "ruleFirstPathElementCS"
-    // InternalOCLinEcore.g:9852:1: ruleFirstPathElementCS returns [EObject current=null] : ( ( ruleUnrestrictedName ) ) ;
+    // InternalOCLinEcore.g:9854:1: ruleFirstPathElementCS returns [EObject current=null] : ( ( ruleUnrestrictedName ) ) ;
     public final EObject ruleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:9855:28: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalOCLinEcore.g:9856:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:9857:28: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalOCLinEcore.g:9858:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalOCLinEcore.g:9856:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:9857:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:9858:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:9859:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:9857:1: ( ruleUnrestrictedName )
-            // InternalOCLinEcore.g:9858:3: ruleUnrestrictedName
+            // InternalOCLinEcore.g:9859:1: ( ruleUnrestrictedName )
+            // InternalOCLinEcore.g:9860:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
 
@@ -28609,7 +28609,7 @@
 
 
     // $ANTLR start "entryRuleNextPathElementCS"
-    // InternalOCLinEcore.g:9882:1: entryRuleNextPathElementCS returns [EObject current=null] : iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ;
+    // InternalOCLinEcore.g:9884:1: entryRuleNextPathElementCS returns [EObject current=null] : iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ;
     public final EObject entryRuleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
@@ -28617,8 +28617,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:9883:2: (iv_ruleNextPathElementCS= ruleNextPathElementCS EOF )
-            // InternalOCLinEcore.g:9884:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
+            // InternalOCLinEcore.g:9885:2: (iv_ruleNextPathElementCS= ruleNextPathElementCS EOF )
+            // InternalOCLinEcore.g:9886:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getNextPathElementCSRule());
@@ -28649,21 +28649,21 @@
 
 
     // $ANTLR start "ruleNextPathElementCS"
-    // InternalOCLinEcore.g:9891:1: ruleNextPathElementCS returns [EObject current=null] : ( ( ruleUnreservedName ) ) ;
+    // InternalOCLinEcore.g:9893:1: ruleNextPathElementCS returns [EObject current=null] : ( ( ruleUnreservedName ) ) ;
     public final EObject ruleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:9894:28: ( ( ( ruleUnreservedName ) ) )
-            // InternalOCLinEcore.g:9895:1: ( ( ruleUnreservedName ) )
+            // InternalOCLinEcore.g:9896:28: ( ( ( ruleUnreservedName ) ) )
+            // InternalOCLinEcore.g:9897:1: ( ( ruleUnreservedName ) )
             {
-            // InternalOCLinEcore.g:9895:1: ( ( ruleUnreservedName ) )
-            // InternalOCLinEcore.g:9896:1: ( ruleUnreservedName )
+            // InternalOCLinEcore.g:9897:1: ( ( ruleUnreservedName ) )
+            // InternalOCLinEcore.g:9898:1: ( ruleUnreservedName )
             {
-            // InternalOCLinEcore.g:9896:1: ( ruleUnreservedName )
-            // InternalOCLinEcore.g:9897:3: ruleUnreservedName
+            // InternalOCLinEcore.g:9898:1: ( ruleUnreservedName )
+            // InternalOCLinEcore.g:9899:3: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
 
@@ -28718,7 +28718,7 @@
 
 
     // $ANTLR start "entryRuleTemplateBindingCS"
-    // InternalOCLinEcore.g:9921:1: entryRuleTemplateBindingCS returns [EObject current=null] : iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ;
+    // InternalOCLinEcore.g:9923:1: entryRuleTemplateBindingCS returns [EObject current=null] : iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ;
     public final EObject entryRuleTemplateBindingCS() throws RecognitionException {
         EObject current = null;
 
@@ -28726,8 +28726,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:9922:2: (iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF )
-            // InternalOCLinEcore.g:9923:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
+            // InternalOCLinEcore.g:9924:2: (iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF )
+            // InternalOCLinEcore.g:9925:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTemplateBindingCSRule());
@@ -28758,7 +28758,7 @@
 
 
     // $ANTLR start "ruleTemplateBindingCS"
-    // InternalOCLinEcore.g:9930:1: ruleTemplateBindingCS returns [EObject current=null] : ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) ;
+    // InternalOCLinEcore.g:9932:1: ruleTemplateBindingCS returns [EObject current=null] : ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) ;
     public final EObject ruleTemplateBindingCS() throws RecognitionException {
         EObject current = null;
 
@@ -28773,17 +28773,17 @@
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:9933:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
-            // InternalOCLinEcore.g:9934:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
+            // InternalOCLinEcore.g:9935:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
+            // InternalOCLinEcore.g:9936:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
             {
-            // InternalOCLinEcore.g:9934:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
-            // InternalOCLinEcore.g:9934:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
+            // InternalOCLinEcore.g:9936:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
+            // InternalOCLinEcore.g:9936:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
             {
-            // InternalOCLinEcore.g:9934:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) )
-            // InternalOCLinEcore.g:9935:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
+            // InternalOCLinEcore.g:9936:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) )
+            // InternalOCLinEcore.g:9937:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
             {
-            // InternalOCLinEcore.g:9935:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
-            // InternalOCLinEcore.g:9936:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
+            // InternalOCLinEcore.g:9937:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
+            // InternalOCLinEcore.g:9938:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
 
@@ -28814,7 +28814,7 @@
 
             }
 
-            // InternalOCLinEcore.g:9952:2: (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )*
+            // InternalOCLinEcore.g:9954:2: (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )*
             loop217:
             do {
                 int alt217=2;
@@ -28827,7 +28827,7 @@
 
                 switch (alt217) {
             	case 1 :
-            	    // InternalOCLinEcore.g:9952:4: otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
+            	    // InternalOCLinEcore.g:9954:4: otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
             	    {
             	    otherlv_1=(Token)match(input,59,FollowSets000.FOLLOW_88); if (state.failed) return current;
             	    if ( state.backtracking==0 ) {
@@ -28835,11 +28835,11 @@
             	          	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
 
             	    }
-            	    // InternalOCLinEcore.g:9956:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
-            	    // InternalOCLinEcore.g:9957:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
+            	    // InternalOCLinEcore.g:9958:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
+            	    // InternalOCLinEcore.g:9959:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
             	    {
-            	    // InternalOCLinEcore.g:9957:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
-            	    // InternalOCLinEcore.g:9958:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
+            	    // InternalOCLinEcore.g:9959:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
+            	    // InternalOCLinEcore.g:9960:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
             	    {
             	    if ( state.backtracking==0 ) {
 
@@ -28879,7 +28879,7 @@
                 }
             } while (true);
 
-            // InternalOCLinEcore.g:9974:4: ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
+            // InternalOCLinEcore.g:9976:4: ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
             int alt218=2;
             int LA218_0 = input.LA(1);
 
@@ -28888,10 +28888,10 @@
             }
             switch (alt218) {
                 case 1 :
-                    // InternalOCLinEcore.g:9975:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
+                    // InternalOCLinEcore.g:9977:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
                     {
-                    // InternalOCLinEcore.g:9975:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
-                    // InternalOCLinEcore.g:9976:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
+                    // InternalOCLinEcore.g:9977:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
+                    // InternalOCLinEcore.g:9978:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -28948,7 +28948,7 @@
 
 
     // $ANTLR start "entryRuleTemplateParameterSubstitutionCS"
-    // InternalOCLinEcore.g:10000:1: entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] : iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ;
+    // InternalOCLinEcore.g:10002:1: entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] : iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ;
     public final EObject entryRuleTemplateParameterSubstitutionCS() throws RecognitionException {
         EObject current = null;
 
@@ -28956,8 +28956,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:10001:2: (iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF )
-            // InternalOCLinEcore.g:10002:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
+            // InternalOCLinEcore.g:10003:2: (iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF )
+            // InternalOCLinEcore.g:10004:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule());
@@ -28988,7 +28988,7 @@
 
 
     // $ANTLR start "ruleTemplateParameterSubstitutionCS"
-    // InternalOCLinEcore.g:10009:1: ruleTemplateParameterSubstitutionCS returns [EObject current=null] : ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) ;
+    // InternalOCLinEcore.g:10011:1: ruleTemplateParameterSubstitutionCS returns [EObject current=null] : ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) ;
     public final EObject ruleTemplateParameterSubstitutionCS() throws RecognitionException {
         EObject current = null;
 
@@ -28998,14 +28998,14 @@
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:10012:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
-            // InternalOCLinEcore.g:10013:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
+            // InternalOCLinEcore.g:10014:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
+            // InternalOCLinEcore.g:10015:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
             {
-            // InternalOCLinEcore.g:10013:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
-            // InternalOCLinEcore.g:10014:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
+            // InternalOCLinEcore.g:10015:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
+            // InternalOCLinEcore.g:10016:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
             {
-            // InternalOCLinEcore.g:10014:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
-            // InternalOCLinEcore.g:10015:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
+            // InternalOCLinEcore.g:10016:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
+            // InternalOCLinEcore.g:10017:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
 
@@ -29056,7 +29056,7 @@
 
 
     // $ANTLR start "entryRuleTypeParameterCS"
-    // InternalOCLinEcore.g:10039:1: entryRuleTypeParameterCS returns [EObject current=null] : iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ;
+    // InternalOCLinEcore.g:10041:1: entryRuleTypeParameterCS returns [EObject current=null] : iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ;
     public final EObject entryRuleTypeParameterCS() throws RecognitionException {
         EObject current = null;
 
@@ -29064,8 +29064,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:10040:2: (iv_ruleTypeParameterCS= ruleTypeParameterCS EOF )
-            // InternalOCLinEcore.g:10041:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
+            // InternalOCLinEcore.g:10042:2: (iv_ruleTypeParameterCS= ruleTypeParameterCS EOF )
+            // InternalOCLinEcore.g:10043:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypeParameterCSRule());
@@ -29096,7 +29096,7 @@
 
 
     // $ANTLR start "ruleTypeParameterCS"
-    // InternalOCLinEcore.g:10048:1: ruleTypeParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) ;
+    // InternalOCLinEcore.g:10050:1: ruleTypeParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) ;
     public final EObject ruleTypeParameterCS() throws RecognitionException {
         EObject current = null;
 
@@ -29112,17 +29112,17 @@
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:10051:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
-            // InternalOCLinEcore.g:10052:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
+            // InternalOCLinEcore.g:10053:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
+            // InternalOCLinEcore.g:10054:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
             {
-            // InternalOCLinEcore.g:10052:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
-            // InternalOCLinEcore.g:10052:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
+            // InternalOCLinEcore.g:10054:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
+            // InternalOCLinEcore.g:10054:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
             {
-            // InternalOCLinEcore.g:10052:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
-            // InternalOCLinEcore.g:10053:1: (lv_name_0_0= ruleUnrestrictedName )
+            // InternalOCLinEcore.g:10054:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
+            // InternalOCLinEcore.g:10055:1: (lv_name_0_0= ruleUnrestrictedName )
             {
-            // InternalOCLinEcore.g:10053:1: (lv_name_0_0= ruleUnrestrictedName )
-            // InternalOCLinEcore.g:10054:3: lv_name_0_0= ruleUnrestrictedName
+            // InternalOCLinEcore.g:10055:1: (lv_name_0_0= ruleUnrestrictedName )
+            // InternalOCLinEcore.g:10056:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
 
@@ -29153,7 +29153,7 @@
 
             }
 
-            // InternalOCLinEcore.g:10070:2: (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
+            // InternalOCLinEcore.g:10072:2: (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
             int alt220=2;
             int LA220_0 = input.LA(1);
 
@@ -29162,7 +29162,7 @@
             }
             switch (alt220) {
                 case 1 :
-                    // InternalOCLinEcore.g:10070:4: otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
+                    // InternalOCLinEcore.g:10072:4: otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
                     {
                     otherlv_1=(Token)match(input,30,FollowSets000.FOLLOW_29); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -29170,11 +29170,11 @@
                           	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
 
                     }
-                    // InternalOCLinEcore.g:10074:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
-                    // InternalOCLinEcore.g:10075:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
+                    // InternalOCLinEcore.g:10076:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
+                    // InternalOCLinEcore.g:10077:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
                     {
-                    // InternalOCLinEcore.g:10075:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
-                    // InternalOCLinEcore.g:10076:3: lv_ownedExtends_2_0= ruleTypedRefCS
+                    // InternalOCLinEcore.g:10077:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
+                    // InternalOCLinEcore.g:10078:3: lv_ownedExtends_2_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -29205,7 +29205,7 @@
 
                     }
 
-                    // InternalOCLinEcore.g:10092:2: (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
+                    // InternalOCLinEcore.g:10094:2: (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
                     loop219:
                     do {
                         int alt219=2;
@@ -29218,7 +29218,7 @@
 
                         switch (alt219) {
                     	case 1 :
-                    	    // InternalOCLinEcore.g:10092:4: otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
+                    	    // InternalOCLinEcore.g:10094:4: otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
                     	    {
                     	    otherlv_3=(Token)match(input,143,FollowSets000.FOLLOW_29); if (state.failed) return current;
                     	    if ( state.backtracking==0 ) {
@@ -29226,11 +29226,11 @@
                     	          	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
 
                     	    }
-                    	    // InternalOCLinEcore.g:10096:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
-                    	    // InternalOCLinEcore.g:10097:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
+                    	    // InternalOCLinEcore.g:10098:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
+                    	    // InternalOCLinEcore.g:10099:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
                     	    {
-                    	    // InternalOCLinEcore.g:10097:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
-                    	    // InternalOCLinEcore.g:10098:3: lv_ownedExtends_4_0= ruleTypedRefCS
+                    	    // InternalOCLinEcore.g:10099:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
+                    	    // InternalOCLinEcore.g:10100:3: lv_ownedExtends_4_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
 
@@ -29299,7 +29299,7 @@
 
 
     // $ANTLR start "entryRuleTypeRefCS"
-    // InternalOCLinEcore.g:10122:1: entryRuleTypeRefCS returns [EObject current=null] : iv_ruleTypeRefCS= ruleTypeRefCS EOF ;
+    // InternalOCLinEcore.g:10124:1: entryRuleTypeRefCS returns [EObject current=null] : iv_ruleTypeRefCS= ruleTypeRefCS EOF ;
     public final EObject entryRuleTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -29307,8 +29307,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:10123:2: (iv_ruleTypeRefCS= ruleTypeRefCS EOF )
-            // InternalOCLinEcore.g:10124:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
+            // InternalOCLinEcore.g:10125:2: (iv_ruleTypeRefCS= ruleTypeRefCS EOF )
+            // InternalOCLinEcore.g:10126:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypeRefCSRule());
@@ -29339,7 +29339,7 @@
 
 
     // $ANTLR start "ruleTypeRefCS"
-    // InternalOCLinEcore.g:10131:1: ruleTypeRefCS returns [EObject current=null] : (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) ;
+    // InternalOCLinEcore.g:10133:1: ruleTypeRefCS returns [EObject current=null] : (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) ;
     public final EObject ruleTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -29351,10 +29351,10 @@
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:10134:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
-            // InternalOCLinEcore.g:10135:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
+            // InternalOCLinEcore.g:10136:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
+            // InternalOCLinEcore.g:10137:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
             {
-            // InternalOCLinEcore.g:10135:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
+            // InternalOCLinEcore.g:10137:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
             int alt221=2;
             int LA221_0 = input.LA(1);
 
@@ -29373,7 +29373,7 @@
             }
             switch (alt221) {
                 case 1 :
-                    // InternalOCLinEcore.g:10136:2: this_TypedRefCS_0= ruleTypedRefCS
+                    // InternalOCLinEcore.g:10138:2: this_TypedRefCS_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -29400,7 +29400,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:10149:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
+                    // InternalOCLinEcore.g:10151:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -29449,7 +29449,7 @@
 
 
     // $ANTLR start "entryRuleWildcardTypeRefCS"
-    // InternalOCLinEcore.g:10168:1: entryRuleWildcardTypeRefCS returns [EObject current=null] : iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ;
+    // InternalOCLinEcore.g:10170:1: entryRuleWildcardTypeRefCS returns [EObject current=null] : iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ;
     public final EObject entryRuleWildcardTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -29457,8 +29457,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:10169:2: (iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF )
-            // InternalOCLinEcore.g:10170:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
+            // InternalOCLinEcore.g:10171:2: (iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF )
+            // InternalOCLinEcore.g:10172:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getWildcardTypeRefCSRule());
@@ -29489,7 +29489,7 @@
 
 
     // $ANTLR start "ruleWildcardTypeRefCS"
-    // InternalOCLinEcore.g:10177:1: ruleWildcardTypeRefCS returns [EObject current=null] : ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) ;
+    // InternalOCLinEcore.g:10179:1: ruleWildcardTypeRefCS returns [EObject current=null] : ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) ;
     public final EObject ruleWildcardTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -29501,14 +29501,14 @@
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:10180:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
-            // InternalOCLinEcore.g:10181:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
+            // InternalOCLinEcore.g:10182:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
+            // InternalOCLinEcore.g:10183:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
             {
-            // InternalOCLinEcore.g:10181:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
-            // InternalOCLinEcore.g:10181:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
+            // InternalOCLinEcore.g:10183:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
+            // InternalOCLinEcore.g:10183:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             {
-            // InternalOCLinEcore.g:10181:2: ()
-            // InternalOCLinEcore.g:10182:2:
+            // InternalOCLinEcore.g:10183:2: ()
+            // InternalOCLinEcore.g:10184:2:
             {
             if ( state.backtracking==0 ) {
 
@@ -29531,7 +29531,7 @@
                   	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
 
             }
-            // InternalOCLinEcore.g:10194:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
+            // InternalOCLinEcore.g:10196:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             int alt222=2;
             int LA222_0 = input.LA(1);
 
@@ -29540,7 +29540,7 @@
             }
             switch (alt222) {
                 case 1 :
-                    // InternalOCLinEcore.g:10194:3: otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
+                    // InternalOCLinEcore.g:10196:3: otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
                     {
                     otherlv_2=(Token)match(input,30,FollowSets000.FOLLOW_29); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -29548,11 +29548,11 @@
                           	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
 
                     }
-                    // InternalOCLinEcore.g:10198:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
-                    // InternalOCLinEcore.g:10199:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
+                    // InternalOCLinEcore.g:10200:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
+                    // InternalOCLinEcore.g:10201:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
                     {
-                    // InternalOCLinEcore.g:10199:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
-                    // InternalOCLinEcore.g:10200:3: lv_ownedExtends_3_0= ruleTypedRefCS
+                    // InternalOCLinEcore.g:10201:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
+                    // InternalOCLinEcore.g:10202:3: lv_ownedExtends_3_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -29612,7 +29612,7 @@
 
 
     // $ANTLR start "entryRuleID"
-    // InternalOCLinEcore.g:10224:1: entryRuleID returns [String current=null] : iv_ruleID= ruleID EOF ;
+    // InternalOCLinEcore.g:10226:1: entryRuleID returns [String current=null] : iv_ruleID= ruleID EOF ;
     public final String entryRuleID() throws RecognitionException {
         String current = null;
 
@@ -29620,8 +29620,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:10225:2: (iv_ruleID= ruleID EOF )
-            // InternalOCLinEcore.g:10226:2: iv_ruleID= ruleID EOF
+            // InternalOCLinEcore.g:10227:2: (iv_ruleID= ruleID EOF )
+            // InternalOCLinEcore.g:10228:2: iv_ruleID= ruleID EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getIDRule());
@@ -29652,7 +29652,7 @@
 
 
     // $ANTLR start "ruleID"
-    // InternalOCLinEcore.g:10233:1: ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) ;
+    // InternalOCLinEcore.g:10235:1: ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) ;
     public final AntlrDatatypeRuleToken ruleID() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -29662,10 +29662,10 @@
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:10236:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
-            // InternalOCLinEcore.g:10237:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
+            // InternalOCLinEcore.g:10238:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
+            // InternalOCLinEcore.g:10239:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
             {
-            // InternalOCLinEcore.g:10237:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
+            // InternalOCLinEcore.g:10239:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
             int alt223=2;
             int LA223_0 = input.LA(1);
 
@@ -29684,7 +29684,7 @@
             }
             switch (alt223) {
                 case 1 :
-                    // InternalOCLinEcore.g:10237:6: this_SIMPLE_ID_0= RULE_SIMPLE_ID
+                    // InternalOCLinEcore.g:10239:6: this_SIMPLE_ID_0= RULE_SIMPLE_ID
                     {
                     this_SIMPLE_ID_0=(Token)match(input,RULE_SIMPLE_ID,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -29701,7 +29701,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:10245:10: this_ESCAPED_ID_1= RULE_ESCAPED_ID
+                    // InternalOCLinEcore.g:10247:10: this_ESCAPED_ID_1= RULE_ESCAPED_ID
                     {
                     this_ESCAPED_ID_1=(Token)match(input,RULE_ESCAPED_ID,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -29740,7 +29740,7 @@
 
 
     // $ANTLR start "entryRuleIdentifier"
-    // InternalOCLinEcore.g:10260:1: entryRuleIdentifier returns [String current=null] : iv_ruleIdentifier= ruleIdentifier EOF ;
+    // InternalOCLinEcore.g:10262:1: entryRuleIdentifier returns [String current=null] : iv_ruleIdentifier= ruleIdentifier EOF ;
     public final String entryRuleIdentifier() throws RecognitionException {
         String current = null;
 
@@ -29748,8 +29748,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:10261:2: (iv_ruleIdentifier= ruleIdentifier EOF )
-            // InternalOCLinEcore.g:10262:2: iv_ruleIdentifier= ruleIdentifier EOF
+            // InternalOCLinEcore.g:10263:2: (iv_ruleIdentifier= ruleIdentifier EOF )
+            // InternalOCLinEcore.g:10264:2: iv_ruleIdentifier= ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getIdentifierRule());
@@ -29780,7 +29780,7 @@
 
 
     // $ANTLR start "ruleIdentifier"
-    // InternalOCLinEcore.g:10269:1: ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_ID_0= ruleID ;
+    // InternalOCLinEcore.g:10271:1: ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_ID_0= ruleID ;
     public final AntlrDatatypeRuleToken ruleIdentifier() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -29790,8 +29790,8 @@
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:10272:28: (this_ID_0= ruleID )
-            // InternalOCLinEcore.g:10274:5: this_ID_0= ruleID
+            // InternalOCLinEcore.g:10274:28: (this_ID_0= ruleID )
+            // InternalOCLinEcore.g:10276:5: this_ID_0= ruleID
             {
             if ( state.backtracking==0 ) {
 
@@ -29833,7 +29833,7 @@
 
 
     // $ANTLR start "entryRuleLOWER"
-    // InternalOCLinEcore.g:10292:1: entryRuleLOWER returns [String current=null] : iv_ruleLOWER= ruleLOWER EOF ;
+    // InternalOCLinEcore.g:10294:1: entryRuleLOWER returns [String current=null] : iv_ruleLOWER= ruleLOWER EOF ;
     public final String entryRuleLOWER() throws RecognitionException {
         String current = null;
 
@@ -29841,8 +29841,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:10293:2: (iv_ruleLOWER= ruleLOWER EOF )
-            // InternalOCLinEcore.g:10294:2: iv_ruleLOWER= ruleLOWER EOF
+            // InternalOCLinEcore.g:10295:2: (iv_ruleLOWER= ruleLOWER EOF )
+            // InternalOCLinEcore.g:10296:2: iv_ruleLOWER= ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getLOWERRule());
@@ -29873,7 +29873,7 @@
 
 
     // $ANTLR start "ruleLOWER"
-    // InternalOCLinEcore.g:10301:1: ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
+    // InternalOCLinEcore.g:10303:1: ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
     public final AntlrDatatypeRuleToken ruleLOWER() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -29882,8 +29882,8 @@
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:10304:28: (this_INT_0= RULE_INT )
-            // InternalOCLinEcore.g:10305:5: this_INT_0= RULE_INT
+            // InternalOCLinEcore.g:10306:28: (this_INT_0= RULE_INT )
+            // InternalOCLinEcore.g:10307:5: this_INT_0= RULE_INT
             {
             this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -29916,7 +29916,7 @@
 
 
     // $ANTLR start "entryRuleNUMBER_LITERAL"
-    // InternalOCLinEcore.g:10320:1: entryRuleNUMBER_LITERAL returns [String current=null] : iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF ;
+    // InternalOCLinEcore.g:10322:1: entryRuleNUMBER_LITERAL returns [String current=null] : iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF ;
     public final String entryRuleNUMBER_LITERAL() throws RecognitionException {
         String current = null;
 
@@ -29924,8 +29924,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:10321:2: (iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF )
-            // InternalOCLinEcore.g:10322:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF
+            // InternalOCLinEcore.g:10323:2: (iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF )
+            // InternalOCLinEcore.g:10324:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getNUMBER_LITERALRule());
@@ -29956,7 +29956,7 @@
 
 
     // $ANTLR start "ruleNUMBER_LITERAL"
-    // InternalOCLinEcore.g:10329:1: ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
+    // InternalOCLinEcore.g:10331:1: ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
     public final AntlrDatatypeRuleToken ruleNUMBER_LITERAL() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -29965,8 +29965,8 @@
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:10332:28: (this_INT_0= RULE_INT )
-            // InternalOCLinEcore.g:10333:5: this_INT_0= RULE_INT
+            // InternalOCLinEcore.g:10334:28: (this_INT_0= RULE_INT )
+            // InternalOCLinEcore.g:10335:5: this_INT_0= RULE_INT
             {
             this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -29999,7 +29999,7 @@
 
 
     // $ANTLR start "entryRuleStringLiteral"
-    // InternalOCLinEcore.g:10348:1: entryRuleStringLiteral returns [String current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ;
+    // InternalOCLinEcore.g:10350:1: entryRuleStringLiteral returns [String current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ;
     public final String entryRuleStringLiteral() throws RecognitionException {
         String current = null;
 
@@ -30007,8 +30007,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:10349:2: (iv_ruleStringLiteral= ruleStringLiteral EOF )
-            // InternalOCLinEcore.g:10350:2: iv_ruleStringLiteral= ruleStringLiteral EOF
+            // InternalOCLinEcore.g:10351:2: (iv_ruleStringLiteral= ruleStringLiteral EOF )
+            // InternalOCLinEcore.g:10352:2: iv_ruleStringLiteral= ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getStringLiteralRule());
@@ -30039,7 +30039,7 @@
 
 
     // $ANTLR start "ruleStringLiteral"
-    // InternalOCLinEcore.g:10357:1: ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
+    // InternalOCLinEcore.g:10359:1: ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
     public final AntlrDatatypeRuleToken ruleStringLiteral() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -30048,8 +30048,8 @@
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:10360:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:10361:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:10362:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:10363:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
             {
             this_SINGLE_QUOTED_STRING_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -30082,7 +30082,7 @@
 
 
     // $ANTLR start "entryRuleUPPER"
-    // InternalOCLinEcore.g:10376:1: entryRuleUPPER returns [String current=null] : iv_ruleUPPER= ruleUPPER EOF ;
+    // InternalOCLinEcore.g:10378:1: entryRuleUPPER returns [String current=null] : iv_ruleUPPER= ruleUPPER EOF ;
     public final String entryRuleUPPER() throws RecognitionException {
         String current = null;
 
@@ -30090,8 +30090,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:10377:2: (iv_ruleUPPER= ruleUPPER EOF )
-            // InternalOCLinEcore.g:10378:2: iv_ruleUPPER= ruleUPPER EOF
+            // InternalOCLinEcore.g:10379:2: (iv_ruleUPPER= ruleUPPER EOF )
+            // InternalOCLinEcore.g:10380:2: iv_ruleUPPER= ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getUPPERRule());
@@ -30122,7 +30122,7 @@
 
 
     // $ANTLR start "ruleUPPER"
-    // InternalOCLinEcore.g:10385:1: ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= '*' ) ;
+    // InternalOCLinEcore.g:10387:1: ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= '*' ) ;
     public final AntlrDatatypeRuleToken ruleUPPER() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -30132,10 +30132,10 @@
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:10388:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
-            // InternalOCLinEcore.g:10389:1: (this_INT_0= RULE_INT | kw= '*' )
+            // InternalOCLinEcore.g:10390:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
+            // InternalOCLinEcore.g:10391:1: (this_INT_0= RULE_INT | kw= '*' )
             {
-            // InternalOCLinEcore.g:10389:1: (this_INT_0= RULE_INT | kw= '*' )
+            // InternalOCLinEcore.g:10391:1: (this_INT_0= RULE_INT | kw= '*' )
             int alt224=2;
             int LA224_0 = input.LA(1);
 
@@ -30154,7 +30154,7 @@
             }
             switch (alt224) {
                 case 1 :
-                    // InternalOCLinEcore.g:10389:6: this_INT_0= RULE_INT
+                    // InternalOCLinEcore.g:10391:6: this_INT_0= RULE_INT
                     {
                     this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -30171,7 +30171,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLinEcore.g:10398:2: kw= '*'
+                    // InternalOCLinEcore.g:10400:2: kw= '*'
                     {
                     kw=(Token)match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -30206,7 +30206,7 @@
 
 
     // $ANTLR start "entryRuleURI"
-    // InternalOCLinEcore.g:10411:1: entryRuleURI returns [String current=null] : iv_ruleURI= ruleURI EOF ;
+    // InternalOCLinEcore.g:10413:1: entryRuleURI returns [String current=null] : iv_ruleURI= ruleURI EOF ;
     public final String entryRuleURI() throws RecognitionException {
         String current = null;
 
@@ -30214,8 +30214,8 @@
 
 
         try {
-            // InternalOCLinEcore.g:10412:2: (iv_ruleURI= ruleURI EOF )
-            // InternalOCLinEcore.g:10413:2: iv_ruleURI= ruleURI EOF
+            // InternalOCLinEcore.g:10414:2: (iv_ruleURI= ruleURI EOF )
+            // InternalOCLinEcore.g:10415:2: iv_ruleURI= ruleURI EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getURIRule());
@@ -30246,7 +30246,7 @@
 
 
     // $ANTLR start "ruleURI"
-    // InternalOCLinEcore.g:10420:1: ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
+    // InternalOCLinEcore.g:10422:1: ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
     public final AntlrDatatypeRuleToken ruleURI() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -30255,8 +30255,8 @@
          enterRule();
 
         try {
-            // InternalOCLinEcore.g:10423:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLinEcore.g:10424:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
+            // InternalOCLinEcore.g:10425:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLinEcore.g:10426:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
             {
             this_SINGLE_QUOTED_STRING_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/serializer/AbstractOCLinEcoreSemanticSequencer.java b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/serializer/AbstractOCLinEcoreSemanticSequencer.java
index 25a8333..cff6260 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/serializer/AbstractOCLinEcoreSemanticSequencer.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/serializer/AbstractOCLinEcoreSemanticSequencer.java
@@ -197,6 +197,10 @@
 					sequence_URIPathNameCS(context, (PathNameCS) semanticObject);
 					return;
 				}
+				else if (rule == grammarAccess.getUnreservedPathNameCSRule()) {
+					sequence_UnreservedPathNameCS(context, (PathNameCS) semanticObject);
+					return;
+				}
 				else break;
 			case BaseCSPackage.PRIMITIVE_TYPE_REF_CS:
 				if (rule == grammarAccess.getTypedRefCSRule()
@@ -743,18 +747,18 @@
 	 *         (ownedParameters+=ParameterCS ownedParameters+=ParameterCS*)?
 	 *         ownedType=TypedMultiplicityRefCS?
 	 *         (ownedExceptions+=TypedRefCS ownedExceptions+=TypedRefCS*)?
-	 *         qualifiers+='!transient'?
+	 *         qualifiers+='transient'?
 	 *         (
 	 *             (
 	 *                 qualifiers+='derived' |
 	 *                 qualifiers+='!derived' |
 	 *                 qualifiers+='ordered' |
 	 *                 qualifiers+='!ordered' |
-	 *                 qualifiers+='transient' |
+	 *                 qualifiers+='!transient' |
 	 *                 qualifiers+='unique' |
 	 *                 qualifiers+='!unique'
 	 *             )?
-	 *             qualifiers+='!transient'?
+	 *             qualifiers+='transient'?
 	 *         )*
 	 *         (
 	 *             ownedAnnotations+=AnnotationElementCS |
@@ -853,14 +857,13 @@
 	 *         referredOpposite=[Property|UnrestrictedName]?
 	 *         ownedType=TypedMultiplicityRefCS?
 	 *         default=SINGLE_QUOTED_STRING?
-	 *         qualifiers+='unsettable'?
+	 *         qualifiers+='ordered'?
 	 *         (
 	 *             (
 	 *                 qualifiers+='composes' |
 	 *                 qualifiers+='!composes' |
 	 *                 qualifiers+='derived' |
 	 *                 qualifiers+='!derived' |
-	 *                 qualifiers+='ordered' |
 	 *                 qualifiers+='!ordered' |
 	 *                 qualifiers+='readonly' |
 	 *                 qualifiers+='!readonly' |
@@ -870,11 +873,12 @@
 	 *                 qualifiers+='!transient' |
 	 *                 qualifiers+='unique' |
 	 *                 qualifiers+='!unique' |
+	 *                 qualifiers+='unsettable' |
 	 *                 qualifiers+='!unsettable' |
 	 *                 qualifiers+='volatile' |
 	 *                 qualifiers+='!volatile'
 	 *             )?
-	 *             qualifiers+='unsettable'?
+	 *             qualifiers+='ordered'?
 	 *         )*
 	 *         (
 	 *             (
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/services/OCLinEcoreGrammarAccess.java b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/services/OCLinEcoreGrammarAccess.java
index 54a4898..be425ba 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/services/OCLinEcoreGrammarAccess.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/services/OCLinEcoreGrammarAccess.java
@@ -1533,8 +1533,8 @@
 		private final Keyword cSemicolonKeyword_3_1 = (Keyword)cAlternatives_3.eContents().get(1);
 
 		//EnumerationLiteralCS base::EnumerationLiteralCS:
-		//	('literal' name=UnrestrictedName | name=EnumerationLiteralName) (':' literal=SINGLE_QUOTED_STRING)? ('=' value=SIGNED)
-		//	? ('{' ownedAnnotations+=AnnotationElementCS* '}' | ';');
+		//	('literal' name=UnrestrictedName | name=EnumerationLiteralName) (':' literal=SINGLE_QUOTED_STRING)? ('=' value=SIGNED
+		//	)? ('{' ownedAnnotations+=AnnotationElementCS* '}' | ';');
 		@Override public ParserRule getRule() { return rule; }
 
 		//('literal' name=UnrestrictedName | name=EnumerationLiteralName) (':' literal=SINGLE_QUOTED_STRING)? ('=' value=SIGNED)? (
@@ -3805,8 +3805,8 @@
 	}
 
 	//EnumerationLiteralCS base::EnumerationLiteralCS:
-	//	('literal' name=UnrestrictedName | name=EnumerationLiteralName) (':' literal=SINGLE_QUOTED_STRING)? ('=' value=SIGNED)
-	//	? ('{' ownedAnnotations+=AnnotationElementCS* '}' | ';');
+	//	('literal' name=UnrestrictedName | name=EnumerationLiteralName) (':' literal=SINGLE_QUOTED_STRING)? ('=' value=SIGNED
+	//	)? ('{' ownedAnnotations+=AnnotationElementCS* '}' | ';');
 	public EnumerationLiteralCSElements getEnumerationLiteralCSAccess() {
 		return pEnumerationLiteralCS;
 	}
@@ -4268,8 +4268,8 @@
 	}
 
 	//CollectionTypeCS:
-	//	name=CollectionTypeIdentifier ('(' ownedType=TypeExpWithoutMultiplicityCS ownedCollectionMultiplicity=MultiplicityCS?
-	//	')')?;
+	//	name=CollectionTypeIdentifier ('(' ownedType=TypeExpWithoutMultiplicityCS ownedCollectionMultiplicity=MultiplicityCS
+	//	? ')')?;
 	public EssentialOCLGrammarAccess.CollectionTypeCSElements getCollectionTypeCSAccess() {
 		return gaEssentialOCL.getCollectionTypeCSAccess();
 	}
@@ -4858,6 +4858,16 @@
 		return getPathNameCSAccess().getRule();
 	}
 
+	//UnreservedPathNameCS PathNameCS:
+	//	ownedPathElements+=NextPathElementCS ('::' ownedPathElements+=NextPathElementCS)*;
+	public BaseGrammarAccess.UnreservedPathNameCSElements getUnreservedPathNameCSAccess() {
+		return gaBase.getUnreservedPathNameCSAccess();
+	}
+
+	public ParserRule getUnreservedPathNameCSRule() {
+		return getUnreservedPathNameCSAccess().getRule();
+	}
+
 	//FirstPathElementCS PathElementCS:
 	//	referredElement=[pivot::NamedElement|super::UnrestrictedName];
 	public BaseGrammarAccess.FirstPathElementCSElements getFirstPathElementCSAccess() {
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/OCLstdlibParser.java b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/OCLstdlibParser.java
index 69cb5f2..4a4ac53 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/OCLstdlibParser.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/OCLstdlibParser.java
@@ -257,6 +257,8 @@
 					put(grammarAccess.getMultiplicityCSAccess().getGroup(), "rule__MultiplicityCS__Group__0");
 					put(grammarAccess.getPathNameCSAccess().getGroup(), "rule__PathNameCS__Group__0");
 					put(grammarAccess.getPathNameCSAccess().getGroup_1(), "rule__PathNameCS__Group_1__0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getGroup(), "rule__UnreservedPathNameCS__Group__0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getGroup_1(), "rule__UnreservedPathNameCS__Group_1__0");
 					put(grammarAccess.getTemplateBindingCSAccess().getGroup(), "rule__TemplateBindingCS__Group__0");
 					put(grammarAccess.getTemplateBindingCSAccess().getGroup_1(), "rule__TemplateBindingCS__Group_1__0");
 					put(grammarAccess.getTemplateSignatureCSAccess().getGroup(), "rule__TemplateSignatureCS__Group__0");
@@ -503,6 +505,8 @@
 					put(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment(), "rule__MultiplicityStringCS__StringBoundsAssignment");
 					put(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0(), "rule__PathNameCS__OwnedPathElementsAssignment_0");
 					put(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1(), "rule__PathNameCS__OwnedPathElementsAssignment_1_1");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_0(), "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_0");
+					put(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsAssignment_1_1(), "rule__UnreservedPathNameCS__OwnedPathElementsAssignment_1_1");
 					put(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment(), "rule__FirstPathElementCS__ReferredElementAssignment");
 					put(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment(), "rule__NextPathElementCS__ReferredElementAssignment");
 					put(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0(), "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0");
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/internal/InternalOCLstdlib.g b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/internal/InternalOCLstdlib.g
index f52271c..9245a96 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/internal/InternalOCLstdlib.g
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/internal/InternalOCLstdlib.g
@@ -2959,6 +2959,8 @@
 
 
 
+
+
 // Entry rule entryRuleFirstPathElementCS
 entryRuleFirstPathElementCS
 :
@@ -20888,6 +20890,8 @@
 
 
 
+
+
 rule__TemplateBindingCS__Group__0
     @init {
 		int stackSize = keepStackSize();
@@ -25369,6 +25373,8 @@
 	restoreStackSize(stackSize);
 }
 
+
+
 rule__FirstPathElementCS__ReferredElementAssignment
     @init {
 		int stackSize = keepStackSize();
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/internal/InternalOCLstdlibLexer.java b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/internal/InternalOCLstdlibLexer.java
index 752df70..94b4af6 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/internal/InternalOCLstdlibLexer.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/internal/InternalOCLstdlibLexer.java
@@ -2188,8 +2188,8 @@
     // $ANTLR start "RULE_ESCAPED_CHARACTER"
     public final void mRULE_ESCAPED_CHARACTER() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:25561:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
-            // InternalOCLstdlib.g:25561:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+            // InternalOCLstdlib.g:25567:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
+            // InternalOCLstdlib.g:25567:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
             match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -2213,8 +2213,8 @@
     // $ANTLR start "RULE_LETTER_CHARACTER"
     public final void mRULE_LETTER_CHARACTER() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:25563:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
-            // InternalOCLstdlib.g:25563:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
+            // InternalOCLstdlib.g:25569:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
+            // InternalOCLstdlib.g:25569:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
             {
             if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
                 input.consume();
@@ -2239,11 +2239,11 @@
         try {
             int _type = RULE_DOUBLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:25565:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
-            // InternalOCLstdlib.g:25565:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+            // InternalOCLstdlib.g:25571:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
+            // InternalOCLstdlib.g:25571:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
             match('\"');
-            // InternalOCLstdlib.g:25565:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
+            // InternalOCLstdlib.g:25571:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
                 int alt1=3;
@@ -2259,14 +2259,14 @@
 
                 switch (alt1) {
             	case 1 :
-            	    // InternalOCLstdlib.g:25565:34: RULE_ESCAPED_CHARACTER
+            	    // InternalOCLstdlib.g:25571:34: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalOCLstdlib.g:25565:57: ~ ( ( '\\\\' | '\"' ) )
+            	    // InternalOCLstdlib.g:25571:57: ~ ( ( '\\\\' | '\"' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2303,11 +2303,11 @@
         try {
             int _type = RULE_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:25567:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            // InternalOCLstdlib.g:25567:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+            // InternalOCLstdlib.g:25573:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // InternalOCLstdlib.g:25573:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
             match('\'');
-            // InternalOCLstdlib.g:25567:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
+            // InternalOCLstdlib.g:25573:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
                 int alt2=3;
@@ -2323,14 +2323,14 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // InternalOCLstdlib.g:25567:35: RULE_ESCAPED_CHARACTER
+            	    // InternalOCLstdlib.g:25573:35: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalOCLstdlib.g:25567:58: ~ ( ( '\\\\' | '\\'' ) )
+            	    // InternalOCLstdlib.g:25573:58: ~ ( ( '\\\\' | '\\'' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2367,12 +2367,12 @@
         try {
             int _type = RULE_ML_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:25569:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
-            // InternalOCLstdlib.g:25569:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
+            // InternalOCLstdlib.g:25575:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
+            // InternalOCLstdlib.g:25575:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
             match("/'");
 
-            // InternalOCLstdlib.g:25569:38: ( options {greedy=false; } : . )*
+            // InternalOCLstdlib.g:25575:38: ( options {greedy=false; } : . )*
             loop3:
             do {
                 int alt3=2;
@@ -2397,7 +2397,7 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // InternalOCLstdlib.g:25569:66: .
+            	    // InternalOCLstdlib.g:25575:66: .
             	    {
             	    matchAny();
 
@@ -2427,11 +2427,11 @@
         try {
             int _type = RULE_SIMPLE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:25571:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
-            // InternalOCLstdlib.g:25571:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalOCLstdlib.g:25577:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
+            // InternalOCLstdlib.g:25577:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
             mRULE_LETTER_CHARACTER();
-            // InternalOCLstdlib.g:25571:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalOCLstdlib.g:25577:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
                 int alt4=2;
@@ -2480,8 +2480,8 @@
         try {
             int _type = RULE_ESCAPED_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:25573:17: ( '_' RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLstdlib.g:25573:19: '_' RULE_SINGLE_QUOTED_STRING
+            // InternalOCLstdlib.g:25579:17: ( '_' RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:25579:19: '_' RULE_SINGLE_QUOTED_STRING
             {
             match('_');
             mRULE_SINGLE_QUOTED_STRING();
@@ -2501,10 +2501,10 @@
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:25575:10: ( ( '0' .. '9' )+ )
-            // InternalOCLstdlib.g:25575:12: ( '0' .. '9' )+
+            // InternalOCLstdlib.g:25581:10: ( ( '0' .. '9' )+ )
+            // InternalOCLstdlib.g:25581:12: ( '0' .. '9' )+
             {
-            // InternalOCLstdlib.g:25575:12: ( '0' .. '9' )+
+            // InternalOCLstdlib.g:25581:12: ( '0' .. '9' )+
             int cnt5=0;
             loop5:
             do {
@@ -2518,7 +2518,7 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // InternalOCLstdlib.g:25575:13: '0' .. '9'
+            	    // InternalOCLstdlib.g:25581:13: '0' .. '9'
             	    {
             	    matchRange('0','9');
 
@@ -2550,12 +2550,12 @@
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:25577:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // InternalOCLstdlib.g:25577:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // InternalOCLstdlib.g:25583:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // InternalOCLstdlib.g:25583:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*");
 
-            // InternalOCLstdlib.g:25577:24: ( options {greedy=false; } : . )*
+            // InternalOCLstdlib.g:25583:24: ( options {greedy=false; } : . )*
             loop6:
             do {
                 int alt6=2;
@@ -2580,7 +2580,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // InternalOCLstdlib.g:25577:52: .
+            	    // InternalOCLstdlib.g:25583:52: .
             	    {
             	    matchAny();
 
@@ -2610,12 +2610,12 @@
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:25579:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // InternalOCLstdlib.g:25579:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // InternalOCLstdlib.g:25585:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // InternalOCLstdlib.g:25585:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("--");
 
-            // InternalOCLstdlib.g:25579:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // InternalOCLstdlib.g:25585:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
             do {
                 int alt7=2;
@@ -2628,7 +2628,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // InternalOCLstdlib.g:25579:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // InternalOCLstdlib.g:25585:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2648,7 +2648,7 @@
                 }
             } while (true);
 
-            // InternalOCLstdlib.g:25579:40: ( ( '\\r' )? '\\n' )?
+            // InternalOCLstdlib.g:25585:40: ( ( '\\r' )? '\\n' )?
             int alt9=2;
             int LA9_0 = input.LA(1);
 
@@ -2657,9 +2657,9 @@
             }
             switch (alt9) {
                 case 1 :
-                    // InternalOCLstdlib.g:25579:41: ( '\\r' )? '\\n'
+                    // InternalOCLstdlib.g:25585:41: ( '\\r' )? '\\n'
                     {
-                    // InternalOCLstdlib.g:25579:41: ( '\\r' )?
+                    // InternalOCLstdlib.g:25585:41: ( '\\r' )?
                     int alt8=2;
                     int LA8_0 = input.LA(1);
 
@@ -2668,7 +2668,7 @@
                     }
                     switch (alt8) {
                         case 1 :
-                            // InternalOCLstdlib.g:25579:41: '\\r'
+                            // InternalOCLstdlib.g:25585:41: '\\r'
                             {
                             match('\r');
 
@@ -2700,10 +2700,10 @@
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:25581:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // InternalOCLstdlib.g:25581:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalOCLstdlib.g:25587:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // InternalOCLstdlib.g:25587:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // InternalOCLstdlib.g:25581:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalOCLstdlib.g:25587:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt10=0;
             loop10:
             do {
@@ -2757,8 +2757,8 @@
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:25583:16: ( . )
-            // InternalOCLstdlib.g:25583:18: .
+            // InternalOCLstdlib.g:25589:16: ( . )
+            // InternalOCLstdlib.g:25589:18: .
             {
             matchAny();
 
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/internal/InternalOCLstdlibParser.java b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/internal/InternalOCLstdlibParser.java
index 2141163..31c8f45 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/internal/InternalOCLstdlibParser.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/antlr/internal/InternalOCLstdlibParser.java
@@ -8939,11 +8939,11 @@
 
 
     // $ANTLR start "entryRuleFirstPathElementCS"
-    // InternalOCLstdlib.g:2963:1: entryRuleFirstPathElementCS : ruleFirstPathElementCS EOF ;
+    // InternalOCLstdlib.g:2965:1: entryRuleFirstPathElementCS : ruleFirstPathElementCS EOF ;
     public final void entryRuleFirstPathElementCS() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:2964:1: ( ruleFirstPathElementCS EOF )
-            // InternalOCLstdlib.g:2965:1: ruleFirstPathElementCS EOF
+            // InternalOCLstdlib.g:2966:1: ( ruleFirstPathElementCS EOF )
+            // InternalOCLstdlib.g:2967:1: ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSRule());
@@ -8973,23 +8973,23 @@
 
 
     // $ANTLR start "ruleFirstPathElementCS"
-    // InternalOCLstdlib.g:2972:1: ruleFirstPathElementCS : ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) ;
+    // InternalOCLstdlib.g:2974:1: ruleFirstPathElementCS : ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) ;
     public final void ruleFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:2976:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
-            // InternalOCLstdlib.g:2977:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
+            // InternalOCLstdlib.g:2978:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
+            // InternalOCLstdlib.g:2979:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
             {
-            // InternalOCLstdlib.g:2977:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
-            // InternalOCLstdlib.g:2978:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
+            // InternalOCLstdlib.g:2979:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
+            // InternalOCLstdlib.g:2980:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
-            // InternalOCLstdlib.g:2979:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
-            // InternalOCLstdlib.g:2979:2: rule__FirstPathElementCS__ReferredElementAssignment
+            // InternalOCLstdlib.g:2981:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
+            // InternalOCLstdlib.g:2981:2: rule__FirstPathElementCS__ReferredElementAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__FirstPathElementCS__ReferredElementAssignment();
@@ -9024,11 +9024,11 @@
 
 
     // $ANTLR start "entryRuleNextPathElementCS"
-    // InternalOCLstdlib.g:2991:1: entryRuleNextPathElementCS : ruleNextPathElementCS EOF ;
+    // InternalOCLstdlib.g:2993:1: entryRuleNextPathElementCS : ruleNextPathElementCS EOF ;
     public final void entryRuleNextPathElementCS() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:2992:1: ( ruleNextPathElementCS EOF )
-            // InternalOCLstdlib.g:2993:1: ruleNextPathElementCS EOF
+            // InternalOCLstdlib.g:2994:1: ( ruleNextPathElementCS EOF )
+            // InternalOCLstdlib.g:2995:1: ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSRule());
@@ -9058,23 +9058,23 @@
 
 
     // $ANTLR start "ruleNextPathElementCS"
-    // InternalOCLstdlib.g:3000:1: ruleNextPathElementCS : ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) ;
+    // InternalOCLstdlib.g:3002:1: ruleNextPathElementCS : ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) ;
     public final void ruleNextPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3004:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
-            // InternalOCLstdlib.g:3005:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
+            // InternalOCLstdlib.g:3006:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
+            // InternalOCLstdlib.g:3007:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
             {
-            // InternalOCLstdlib.g:3005:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
-            // InternalOCLstdlib.g:3006:1: ( rule__NextPathElementCS__ReferredElementAssignment )
+            // InternalOCLstdlib.g:3007:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
+            // InternalOCLstdlib.g:3008:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
-            // InternalOCLstdlib.g:3007:1: ( rule__NextPathElementCS__ReferredElementAssignment )
-            // InternalOCLstdlib.g:3007:2: rule__NextPathElementCS__ReferredElementAssignment
+            // InternalOCLstdlib.g:3009:1: ( rule__NextPathElementCS__ReferredElementAssignment )
+            // InternalOCLstdlib.g:3009:2: rule__NextPathElementCS__ReferredElementAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NextPathElementCS__ReferredElementAssignment();
@@ -9109,11 +9109,11 @@
 
 
     // $ANTLR start "entryRuleTemplateBindingCS"
-    // InternalOCLstdlib.g:3019:1: entryRuleTemplateBindingCS : ruleTemplateBindingCS EOF ;
+    // InternalOCLstdlib.g:3021:1: entryRuleTemplateBindingCS : ruleTemplateBindingCS EOF ;
     public final void entryRuleTemplateBindingCS() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:3020:1: ( ruleTemplateBindingCS EOF )
-            // InternalOCLstdlib.g:3021:1: ruleTemplateBindingCS EOF
+            // InternalOCLstdlib.g:3022:1: ( ruleTemplateBindingCS EOF )
+            // InternalOCLstdlib.g:3023:1: ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSRule());
@@ -9143,23 +9143,23 @@
 
 
     // $ANTLR start "ruleTemplateBindingCS"
-    // InternalOCLstdlib.g:3028:1: ruleTemplateBindingCS : ( ( rule__TemplateBindingCS__Group__0 ) ) ;
+    // InternalOCLstdlib.g:3030:1: ruleTemplateBindingCS : ( ( rule__TemplateBindingCS__Group__0 ) ) ;
     public final void ruleTemplateBindingCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3032:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
-            // InternalOCLstdlib.g:3033:1: ( ( rule__TemplateBindingCS__Group__0 ) )
+            // InternalOCLstdlib.g:3034:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
+            // InternalOCLstdlib.g:3035:1: ( ( rule__TemplateBindingCS__Group__0 ) )
             {
-            // InternalOCLstdlib.g:3033:1: ( ( rule__TemplateBindingCS__Group__0 ) )
-            // InternalOCLstdlib.g:3034:1: ( rule__TemplateBindingCS__Group__0 )
+            // InternalOCLstdlib.g:3035:1: ( ( rule__TemplateBindingCS__Group__0 ) )
+            // InternalOCLstdlib.g:3036:1: ( rule__TemplateBindingCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
-            // InternalOCLstdlib.g:3035:1: ( rule__TemplateBindingCS__Group__0 )
-            // InternalOCLstdlib.g:3035:2: rule__TemplateBindingCS__Group__0
+            // InternalOCLstdlib.g:3037:1: ( rule__TemplateBindingCS__Group__0 )
+            // InternalOCLstdlib.g:3037:2: rule__TemplateBindingCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group__0();
@@ -9194,11 +9194,11 @@
 
 
     // $ANTLR start "entryRuleTemplateParameterSubstitutionCS"
-    // InternalOCLstdlib.g:3047:1: entryRuleTemplateParameterSubstitutionCS : ruleTemplateParameterSubstitutionCS EOF ;
+    // InternalOCLstdlib.g:3049:1: entryRuleTemplateParameterSubstitutionCS : ruleTemplateParameterSubstitutionCS EOF ;
     public final void entryRuleTemplateParameterSubstitutionCS() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:3048:1: ( ruleTemplateParameterSubstitutionCS EOF )
-            // InternalOCLstdlib.g:3049:1: ruleTemplateParameterSubstitutionCS EOF
+            // InternalOCLstdlib.g:3050:1: ( ruleTemplateParameterSubstitutionCS EOF )
+            // InternalOCLstdlib.g:3051:1: ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSRule());
@@ -9228,23 +9228,23 @@
 
 
     // $ANTLR start "ruleTemplateParameterSubstitutionCS"
-    // InternalOCLstdlib.g:3056:1: ruleTemplateParameterSubstitutionCS : ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) ;
+    // InternalOCLstdlib.g:3058:1: ruleTemplateParameterSubstitutionCS : ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) ;
     public final void ruleTemplateParameterSubstitutionCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3060:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
-            // InternalOCLstdlib.g:3061:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
+            // InternalOCLstdlib.g:3062:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
+            // InternalOCLstdlib.g:3063:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
             {
-            // InternalOCLstdlib.g:3061:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
-            // InternalOCLstdlib.g:3062:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
+            // InternalOCLstdlib.g:3063:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
+            // InternalOCLstdlib.g:3064:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
-            // InternalOCLstdlib.g:3063:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
-            // InternalOCLstdlib.g:3063:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
+            // InternalOCLstdlib.g:3065:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
+            // InternalOCLstdlib.g:3065:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment();
@@ -9279,11 +9279,11 @@
 
 
     // $ANTLR start "entryRuleTemplateSignatureCS"
-    // InternalOCLstdlib.g:3075:1: entryRuleTemplateSignatureCS : ruleTemplateSignatureCS EOF ;
+    // InternalOCLstdlib.g:3077:1: entryRuleTemplateSignatureCS : ruleTemplateSignatureCS EOF ;
     public final void entryRuleTemplateSignatureCS() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:3076:1: ( ruleTemplateSignatureCS EOF )
-            // InternalOCLstdlib.g:3077:1: ruleTemplateSignatureCS EOF
+            // InternalOCLstdlib.g:3078:1: ( ruleTemplateSignatureCS EOF )
+            // InternalOCLstdlib.g:3079:1: ruleTemplateSignatureCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSRule());
@@ -9313,23 +9313,23 @@
 
 
     // $ANTLR start "ruleTemplateSignatureCS"
-    // InternalOCLstdlib.g:3084:1: ruleTemplateSignatureCS : ( ( rule__TemplateSignatureCS__Group__0 ) ) ;
+    // InternalOCLstdlib.g:3086:1: ruleTemplateSignatureCS : ( ( rule__TemplateSignatureCS__Group__0 ) ) ;
     public final void ruleTemplateSignatureCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3088:2: ( ( ( rule__TemplateSignatureCS__Group__0 ) ) )
-            // InternalOCLstdlib.g:3089:1: ( ( rule__TemplateSignatureCS__Group__0 ) )
+            // InternalOCLstdlib.g:3090:2: ( ( ( rule__TemplateSignatureCS__Group__0 ) ) )
+            // InternalOCLstdlib.g:3091:1: ( ( rule__TemplateSignatureCS__Group__0 ) )
             {
-            // InternalOCLstdlib.g:3089:1: ( ( rule__TemplateSignatureCS__Group__0 ) )
-            // InternalOCLstdlib.g:3090:1: ( rule__TemplateSignatureCS__Group__0 )
+            // InternalOCLstdlib.g:3091:1: ( ( rule__TemplateSignatureCS__Group__0 ) )
+            // InternalOCLstdlib.g:3092:1: ( rule__TemplateSignatureCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getGroup());
             }
-            // InternalOCLstdlib.g:3091:1: ( rule__TemplateSignatureCS__Group__0 )
-            // InternalOCLstdlib.g:3091:2: rule__TemplateSignatureCS__Group__0
+            // InternalOCLstdlib.g:3093:1: ( rule__TemplateSignatureCS__Group__0 )
+            // InternalOCLstdlib.g:3093:2: rule__TemplateSignatureCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__Group__0();
@@ -9364,11 +9364,11 @@
 
 
     // $ANTLR start "entryRuleTypeParameterCS"
-    // InternalOCLstdlib.g:3103:1: entryRuleTypeParameterCS : ruleTypeParameterCS EOF ;
+    // InternalOCLstdlib.g:3105:1: entryRuleTypeParameterCS : ruleTypeParameterCS EOF ;
     public final void entryRuleTypeParameterCS() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:3104:1: ( ruleTypeParameterCS EOF )
-            // InternalOCLstdlib.g:3105:1: ruleTypeParameterCS EOF
+            // InternalOCLstdlib.g:3106:1: ( ruleTypeParameterCS EOF )
+            // InternalOCLstdlib.g:3107:1: ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSRule());
@@ -9398,23 +9398,23 @@
 
 
     // $ANTLR start "ruleTypeParameterCS"
-    // InternalOCLstdlib.g:3112:1: ruleTypeParameterCS : ( ( rule__TypeParameterCS__Group__0 ) ) ;
+    // InternalOCLstdlib.g:3114:1: ruleTypeParameterCS : ( ( rule__TypeParameterCS__Group__0 ) ) ;
     public final void ruleTypeParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3116:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
-            // InternalOCLstdlib.g:3117:1: ( ( rule__TypeParameterCS__Group__0 ) )
+            // InternalOCLstdlib.g:3118:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
+            // InternalOCLstdlib.g:3119:1: ( ( rule__TypeParameterCS__Group__0 ) )
             {
-            // InternalOCLstdlib.g:3117:1: ( ( rule__TypeParameterCS__Group__0 ) )
-            // InternalOCLstdlib.g:3118:1: ( rule__TypeParameterCS__Group__0 )
+            // InternalOCLstdlib.g:3119:1: ( ( rule__TypeParameterCS__Group__0 ) )
+            // InternalOCLstdlib.g:3120:1: ( rule__TypeParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
-            // InternalOCLstdlib.g:3119:1: ( rule__TypeParameterCS__Group__0 )
-            // InternalOCLstdlib.g:3119:2: rule__TypeParameterCS__Group__0
+            // InternalOCLstdlib.g:3121:1: ( rule__TypeParameterCS__Group__0 )
+            // InternalOCLstdlib.g:3121:2: rule__TypeParameterCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group__0();
@@ -9449,11 +9449,11 @@
 
 
     // $ANTLR start "entryRuleTypeRefCS"
-    // InternalOCLstdlib.g:3131:1: entryRuleTypeRefCS : ruleTypeRefCS EOF ;
+    // InternalOCLstdlib.g:3133:1: entryRuleTypeRefCS : ruleTypeRefCS EOF ;
     public final void entryRuleTypeRefCS() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:3132:1: ( ruleTypeRefCS EOF )
-            // InternalOCLstdlib.g:3133:1: ruleTypeRefCS EOF
+            // InternalOCLstdlib.g:3134:1: ( ruleTypeRefCS EOF )
+            // InternalOCLstdlib.g:3135:1: ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeRefCSRule());
@@ -9483,23 +9483,23 @@
 
 
     // $ANTLR start "ruleTypeRefCS"
-    // InternalOCLstdlib.g:3140:1: ruleTypeRefCS : ( ( rule__TypeRefCS__Alternatives ) ) ;
+    // InternalOCLstdlib.g:3142:1: ruleTypeRefCS : ( ( rule__TypeRefCS__Alternatives ) ) ;
     public final void ruleTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3144:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
-            // InternalOCLstdlib.g:3145:1: ( ( rule__TypeRefCS__Alternatives ) )
+            // InternalOCLstdlib.g:3146:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
+            // InternalOCLstdlib.g:3147:1: ( ( rule__TypeRefCS__Alternatives ) )
             {
-            // InternalOCLstdlib.g:3145:1: ( ( rule__TypeRefCS__Alternatives ) )
-            // InternalOCLstdlib.g:3146:1: ( rule__TypeRefCS__Alternatives )
+            // InternalOCLstdlib.g:3147:1: ( ( rule__TypeRefCS__Alternatives ) )
+            // InternalOCLstdlib.g:3148:1: ( rule__TypeRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
-            // InternalOCLstdlib.g:3147:1: ( rule__TypeRefCS__Alternatives )
-            // InternalOCLstdlib.g:3147:2: rule__TypeRefCS__Alternatives
+            // InternalOCLstdlib.g:3149:1: ( rule__TypeRefCS__Alternatives )
+            // InternalOCLstdlib.g:3149:2: rule__TypeRefCS__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeRefCS__Alternatives();
@@ -9534,11 +9534,11 @@
 
 
     // $ANTLR start "entryRuleWildcardTypeRefCS"
-    // InternalOCLstdlib.g:3159:1: entryRuleWildcardTypeRefCS : ruleWildcardTypeRefCS EOF ;
+    // InternalOCLstdlib.g:3161:1: entryRuleWildcardTypeRefCS : ruleWildcardTypeRefCS EOF ;
     public final void entryRuleWildcardTypeRefCS() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:3160:1: ( ruleWildcardTypeRefCS EOF )
-            // InternalOCLstdlib.g:3161:1: ruleWildcardTypeRefCS EOF
+            // InternalOCLstdlib.g:3162:1: ( ruleWildcardTypeRefCS EOF )
+            // InternalOCLstdlib.g:3163:1: ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSRule());
@@ -9568,23 +9568,23 @@
 
 
     // $ANTLR start "ruleWildcardTypeRefCS"
-    // InternalOCLstdlib.g:3168:1: ruleWildcardTypeRefCS : ( ( rule__WildcardTypeRefCS__Group__0 ) ) ;
+    // InternalOCLstdlib.g:3170:1: ruleWildcardTypeRefCS : ( ( rule__WildcardTypeRefCS__Group__0 ) ) ;
     public final void ruleWildcardTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3172:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
-            // InternalOCLstdlib.g:3173:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
+            // InternalOCLstdlib.g:3174:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
+            // InternalOCLstdlib.g:3175:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
             {
-            // InternalOCLstdlib.g:3173:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
-            // InternalOCLstdlib.g:3174:1: ( rule__WildcardTypeRefCS__Group__0 )
+            // InternalOCLstdlib.g:3175:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
+            // InternalOCLstdlib.g:3176:1: ( rule__WildcardTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
-            // InternalOCLstdlib.g:3175:1: ( rule__WildcardTypeRefCS__Group__0 )
-            // InternalOCLstdlib.g:3175:2: rule__WildcardTypeRefCS__Group__0
+            // InternalOCLstdlib.g:3177:1: ( rule__WildcardTypeRefCS__Group__0 )
+            // InternalOCLstdlib.g:3177:2: rule__WildcardTypeRefCS__Group__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group__0();
@@ -9619,11 +9619,11 @@
 
 
     // $ANTLR start "entryRuleID"
-    // InternalOCLstdlib.g:3187:1: entryRuleID : ruleID EOF ;
+    // InternalOCLstdlib.g:3189:1: entryRuleID : ruleID EOF ;
     public final void entryRuleID() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:3188:1: ( ruleID EOF )
-            // InternalOCLstdlib.g:3189:1: ruleID EOF
+            // InternalOCLstdlib.g:3190:1: ( ruleID EOF )
+            // InternalOCLstdlib.g:3191:1: ruleID EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIDRule());
@@ -9653,23 +9653,23 @@
 
 
     // $ANTLR start "ruleID"
-    // InternalOCLstdlib.g:3196:1: ruleID : ( ( rule__ID__Alternatives ) ) ;
+    // InternalOCLstdlib.g:3198:1: ruleID : ( ( rule__ID__Alternatives ) ) ;
     public final void ruleID() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3200:2: ( ( ( rule__ID__Alternatives ) ) )
-            // InternalOCLstdlib.g:3201:1: ( ( rule__ID__Alternatives ) )
+            // InternalOCLstdlib.g:3202:2: ( ( ( rule__ID__Alternatives ) ) )
+            // InternalOCLstdlib.g:3203:1: ( ( rule__ID__Alternatives ) )
             {
-            // InternalOCLstdlib.g:3201:1: ( ( rule__ID__Alternatives ) )
-            // InternalOCLstdlib.g:3202:1: ( rule__ID__Alternatives )
+            // InternalOCLstdlib.g:3203:1: ( ( rule__ID__Alternatives ) )
+            // InternalOCLstdlib.g:3204:1: ( rule__ID__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIDAccess().getAlternatives());
             }
-            // InternalOCLstdlib.g:3203:1: ( rule__ID__Alternatives )
-            // InternalOCLstdlib.g:3203:2: rule__ID__Alternatives
+            // InternalOCLstdlib.g:3205:1: ( rule__ID__Alternatives )
+            // InternalOCLstdlib.g:3205:2: rule__ID__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ID__Alternatives();
@@ -9704,11 +9704,11 @@
 
 
     // $ANTLR start "entryRuleLOWER"
-    // InternalOCLstdlib.g:3215:1: entryRuleLOWER : ruleLOWER EOF ;
+    // InternalOCLstdlib.g:3217:1: entryRuleLOWER : ruleLOWER EOF ;
     public final void entryRuleLOWER() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:3216:1: ( ruleLOWER EOF )
-            // InternalOCLstdlib.g:3217:1: ruleLOWER EOF
+            // InternalOCLstdlib.g:3218:1: ( ruleLOWER EOF )
+            // InternalOCLstdlib.g:3219:1: ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLOWERRule());
@@ -9738,17 +9738,17 @@
 
 
     // $ANTLR start "ruleLOWER"
-    // InternalOCLstdlib.g:3224:1: ruleLOWER : ( RULE_INT ) ;
+    // InternalOCLstdlib.g:3226:1: ruleLOWER : ( RULE_INT ) ;
     public final void ruleLOWER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3228:2: ( ( RULE_INT ) )
-            // InternalOCLstdlib.g:3229:1: ( RULE_INT )
+            // InternalOCLstdlib.g:3230:2: ( ( RULE_INT ) )
+            // InternalOCLstdlib.g:3231:1: ( RULE_INT )
             {
-            // InternalOCLstdlib.g:3229:1: ( RULE_INT )
-            // InternalOCLstdlib.g:3230:1: RULE_INT
+            // InternalOCLstdlib.g:3231:1: ( RULE_INT )
+            // InternalOCLstdlib.g:3232:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
@@ -9779,11 +9779,11 @@
 
 
     // $ANTLR start "entryRuleNUMBER_LITERAL"
-    // InternalOCLstdlib.g:3243:1: entryRuleNUMBER_LITERAL : ruleNUMBER_LITERAL EOF ;
+    // InternalOCLstdlib.g:3245:1: entryRuleNUMBER_LITERAL : ruleNUMBER_LITERAL EOF ;
     public final void entryRuleNUMBER_LITERAL() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:3244:1: ( ruleNUMBER_LITERAL EOF )
-            // InternalOCLstdlib.g:3245:1: ruleNUMBER_LITERAL EOF
+            // InternalOCLstdlib.g:3246:1: ( ruleNUMBER_LITERAL EOF )
+            // InternalOCLstdlib.g:3247:1: ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNUMBER_LITERALRule());
@@ -9813,17 +9813,17 @@
 
 
     // $ANTLR start "ruleNUMBER_LITERAL"
-    // InternalOCLstdlib.g:3252:1: ruleNUMBER_LITERAL : ( RULE_INT ) ;
+    // InternalOCLstdlib.g:3254:1: ruleNUMBER_LITERAL : ( RULE_INT ) ;
     public final void ruleNUMBER_LITERAL() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3256:2: ( ( RULE_INT ) )
-            // InternalOCLstdlib.g:3257:1: ( RULE_INT )
+            // InternalOCLstdlib.g:3258:2: ( ( RULE_INT ) )
+            // InternalOCLstdlib.g:3259:1: ( RULE_INT )
             {
-            // InternalOCLstdlib.g:3257:1: ( RULE_INT )
-            // InternalOCLstdlib.g:3258:1: RULE_INT
+            // InternalOCLstdlib.g:3259:1: ( RULE_INT )
+            // InternalOCLstdlib.g:3260:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
@@ -9854,11 +9854,11 @@
 
 
     // $ANTLR start "entryRuleStringLiteral"
-    // InternalOCLstdlib.g:3271:1: entryRuleStringLiteral : ruleStringLiteral EOF ;
+    // InternalOCLstdlib.g:3273:1: entryRuleStringLiteral : ruleStringLiteral EOF ;
     public final void entryRuleStringLiteral() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:3272:1: ( ruleStringLiteral EOF )
-            // InternalOCLstdlib.g:3273:1: ruleStringLiteral EOF
+            // InternalOCLstdlib.g:3274:1: ( ruleStringLiteral EOF )
+            // InternalOCLstdlib.g:3275:1: ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStringLiteralRule());
@@ -9888,17 +9888,17 @@
 
 
     // $ANTLR start "ruleStringLiteral"
-    // InternalOCLstdlib.g:3280:1: ruleStringLiteral : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalOCLstdlib.g:3282:1: ruleStringLiteral : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void ruleStringLiteral() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3284:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLstdlib.g:3285:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:3286:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:3287:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalOCLstdlib.g:3285:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLstdlib.g:3286:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLstdlib.g:3287:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:3288:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
@@ -9929,11 +9929,11 @@
 
 
     // $ANTLR start "entryRuleUPPER"
-    // InternalOCLstdlib.g:3299:1: entryRuleUPPER : ruleUPPER EOF ;
+    // InternalOCLstdlib.g:3301:1: entryRuleUPPER : ruleUPPER EOF ;
     public final void entryRuleUPPER() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:3300:1: ( ruleUPPER EOF )
-            // InternalOCLstdlib.g:3301:1: ruleUPPER EOF
+            // InternalOCLstdlib.g:3302:1: ( ruleUPPER EOF )
+            // InternalOCLstdlib.g:3303:1: ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUPPERRule());
@@ -9963,23 +9963,23 @@
 
 
     // $ANTLR start "ruleUPPER"
-    // InternalOCLstdlib.g:3308:1: ruleUPPER : ( ( rule__UPPER__Alternatives ) ) ;
+    // InternalOCLstdlib.g:3310:1: ruleUPPER : ( ( rule__UPPER__Alternatives ) ) ;
     public final void ruleUPPER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3312:2: ( ( ( rule__UPPER__Alternatives ) ) )
-            // InternalOCLstdlib.g:3313:1: ( ( rule__UPPER__Alternatives ) )
+            // InternalOCLstdlib.g:3314:2: ( ( ( rule__UPPER__Alternatives ) ) )
+            // InternalOCLstdlib.g:3315:1: ( ( rule__UPPER__Alternatives ) )
             {
-            // InternalOCLstdlib.g:3313:1: ( ( rule__UPPER__Alternatives ) )
-            // InternalOCLstdlib.g:3314:1: ( rule__UPPER__Alternatives )
+            // InternalOCLstdlib.g:3315:1: ( ( rule__UPPER__Alternatives ) )
+            // InternalOCLstdlib.g:3316:1: ( rule__UPPER__Alternatives )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUPPERAccess().getAlternatives());
             }
-            // InternalOCLstdlib.g:3315:1: ( rule__UPPER__Alternatives )
-            // InternalOCLstdlib.g:3315:2: rule__UPPER__Alternatives
+            // InternalOCLstdlib.g:3317:1: ( rule__UPPER__Alternatives )
+            // InternalOCLstdlib.g:3317:2: rule__UPPER__Alternatives
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__UPPER__Alternatives();
@@ -10014,11 +10014,11 @@
 
 
     // $ANTLR start "entryRuleURI"
-    // InternalOCLstdlib.g:3327:1: entryRuleURI : ruleURI EOF ;
+    // InternalOCLstdlib.g:3329:1: entryRuleURI : ruleURI EOF ;
     public final void entryRuleURI() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:3328:1: ( ruleURI EOF )
-            // InternalOCLstdlib.g:3329:1: ruleURI EOF
+            // InternalOCLstdlib.g:3330:1: ( ruleURI EOF )
+            // InternalOCLstdlib.g:3331:1: ruleURI EOF
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIRule());
@@ -10048,17 +10048,17 @@
 
 
     // $ANTLR start "ruleURI"
-    // InternalOCLstdlib.g:3336:1: ruleURI : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalOCLstdlib.g:3338:1: ruleURI : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void ruleURI() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3340:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLstdlib.g:3341:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:3342:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:3343:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalOCLstdlib.g:3341:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLstdlib.g:3342:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLstdlib.g:3343:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:3344:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
@@ -10089,13 +10089,13 @@
 
 
     // $ANTLR start "rule__Identifier__Alternatives"
-    // InternalOCLstdlib.g:3355:1: rule__Identifier__Alternatives : ( ( ruleID ) | ( ruleRestrictedKeywords ) );
+    // InternalOCLstdlib.g:3357:1: rule__Identifier__Alternatives : ( ( ruleID ) | ( ruleRestrictedKeywords ) );
     public final void rule__Identifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3359:1: ( ( ruleID ) | ( ruleRestrictedKeywords ) )
+            // InternalOCLstdlib.g:3361:1: ( ( ruleID ) | ( ruleRestrictedKeywords ) )
             int alt2=2;
             int LA2_0 = input.LA(1);
 
@@ -10114,10 +10114,10 @@
             }
             switch (alt2) {
                 case 1 :
-                    // InternalOCLstdlib.g:3360:1: ( ruleID )
+                    // InternalOCLstdlib.g:3362:1: ( ruleID )
                     {
-                    // InternalOCLstdlib.g:3360:1: ( ruleID )
-                    // InternalOCLstdlib.g:3361:1: ruleID
+                    // InternalOCLstdlib.g:3362:1: ( ruleID )
+                    // InternalOCLstdlib.g:3363:1: ruleID
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIdentifierAccess().getIDParserRuleCall_0());
@@ -10137,10 +10137,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3366:6: ( ruleRestrictedKeywords )
+                    // InternalOCLstdlib.g:3368:6: ( ruleRestrictedKeywords )
                     {
-                    // InternalOCLstdlib.g:3366:6: ( ruleRestrictedKeywords )
-                    // InternalOCLstdlib.g:3367:1: ruleRestrictedKeywords
+                    // InternalOCLstdlib.g:3368:6: ( ruleRestrictedKeywords )
+                    // InternalOCLstdlib.g:3369:1: ruleRestrictedKeywords
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIdentifierAccess().getRestrictedKeywordsParserRuleCall_1());
@@ -10177,13 +10177,13 @@
 
 
     // $ANTLR start "rule__RestrictedKeywords__Alternatives"
-    // InternalOCLstdlib.g:3377:1: rule__RestrictedKeywords__Alternatives : ( ( 'abstract' ) | ( 'annotation' ) | ( 'conformsTo' ) | ( 'documentation' ) | ( 'extends' ) | ( 'import' ) | ( 'inv' ) | ( 'invalidating' ) | ( 'iteration' ) | ( 'left' ) | ( 'library' ) | ( 'operation' ) | ( 'opposite' ) | ( 'package' ) | ( 'post' ) | ( 'pre' ) | ( 'precedence' ) | ( 'property' ) | ( 'right' ) | ( 'static' ) | ( 'type' ) | ( 'validating' ) );
+    // InternalOCLstdlib.g:3379:1: rule__RestrictedKeywords__Alternatives : ( ( 'abstract' ) | ( 'annotation' ) | ( 'conformsTo' ) | ( 'documentation' ) | ( 'extends' ) | ( 'import' ) | ( 'inv' ) | ( 'invalidating' ) | ( 'iteration' ) | ( 'left' ) | ( 'library' ) | ( 'operation' ) | ( 'opposite' ) | ( 'package' ) | ( 'post' ) | ( 'pre' ) | ( 'precedence' ) | ( 'property' ) | ( 'right' ) | ( 'static' ) | ( 'type' ) | ( 'validating' ) );
     public final void rule__RestrictedKeywords__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3381:1: ( ( 'abstract' ) | ( 'annotation' ) | ( 'conformsTo' ) | ( 'documentation' ) | ( 'extends' ) | ( 'import' ) | ( 'inv' ) | ( 'invalidating' ) | ( 'iteration' ) | ( 'left' ) | ( 'library' ) | ( 'operation' ) | ( 'opposite' ) | ( 'package' ) | ( 'post' ) | ( 'pre' ) | ( 'precedence' ) | ( 'property' ) | ( 'right' ) | ( 'static' ) | ( 'type' ) | ( 'validating' ) )
+            // InternalOCLstdlib.g:3383:1: ( ( 'abstract' ) | ( 'annotation' ) | ( 'conformsTo' ) | ( 'documentation' ) | ( 'extends' ) | ( 'import' ) | ( 'inv' ) | ( 'invalidating' ) | ( 'iteration' ) | ( 'left' ) | ( 'library' ) | ( 'operation' ) | ( 'opposite' ) | ( 'package' ) | ( 'post' ) | ( 'pre' ) | ( 'precedence' ) | ( 'property' ) | ( 'right' ) | ( 'static' ) | ( 'type' ) | ( 'validating' ) )
             int alt3=22;
             switch ( input.LA(1) ) {
             case 16:
@@ -10306,10 +10306,10 @@
 
             switch (alt3) {
                 case 1 :
-                    // InternalOCLstdlib.g:3382:1: ( 'abstract' )
+                    // InternalOCLstdlib.g:3384:1: ( 'abstract' )
                     {
-                    // InternalOCLstdlib.g:3382:1: ( 'abstract' )
-                    // InternalOCLstdlib.g:3383:1: 'abstract'
+                    // InternalOCLstdlib.g:3384:1: ( 'abstract' )
+                    // InternalOCLstdlib.g:3385:1: 'abstract'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getAbstractKeyword_0());
@@ -10325,10 +10325,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3390:6: ( 'annotation' )
+                    // InternalOCLstdlib.g:3392:6: ( 'annotation' )
                     {
-                    // InternalOCLstdlib.g:3390:6: ( 'annotation' )
-                    // InternalOCLstdlib.g:3391:1: 'annotation'
+                    // InternalOCLstdlib.g:3392:6: ( 'annotation' )
+                    // InternalOCLstdlib.g:3393:1: 'annotation'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getAnnotationKeyword_1());
@@ -10344,10 +10344,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:3398:6: ( 'conformsTo' )
+                    // InternalOCLstdlib.g:3400:6: ( 'conformsTo' )
                     {
-                    // InternalOCLstdlib.g:3398:6: ( 'conformsTo' )
-                    // InternalOCLstdlib.g:3399:1: 'conformsTo'
+                    // InternalOCLstdlib.g:3400:6: ( 'conformsTo' )
+                    // InternalOCLstdlib.g:3401:1: 'conformsTo'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getConformsToKeyword_2());
@@ -10363,10 +10363,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:3406:6: ( 'documentation' )
+                    // InternalOCLstdlib.g:3408:6: ( 'documentation' )
                     {
-                    // InternalOCLstdlib.g:3406:6: ( 'documentation' )
-                    // InternalOCLstdlib.g:3407:1: 'documentation'
+                    // InternalOCLstdlib.g:3408:6: ( 'documentation' )
+                    // InternalOCLstdlib.g:3409:1: 'documentation'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getDocumentationKeyword_3());
@@ -10382,10 +10382,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLstdlib.g:3414:6: ( 'extends' )
+                    // InternalOCLstdlib.g:3416:6: ( 'extends' )
                     {
-                    // InternalOCLstdlib.g:3414:6: ( 'extends' )
-                    // InternalOCLstdlib.g:3415:1: 'extends'
+                    // InternalOCLstdlib.g:3416:6: ( 'extends' )
+                    // InternalOCLstdlib.g:3417:1: 'extends'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getExtendsKeyword_4());
@@ -10401,10 +10401,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLstdlib.g:3422:6: ( 'import' )
+                    // InternalOCLstdlib.g:3424:6: ( 'import' )
                     {
-                    // InternalOCLstdlib.g:3422:6: ( 'import' )
-                    // InternalOCLstdlib.g:3423:1: 'import'
+                    // InternalOCLstdlib.g:3424:6: ( 'import' )
+                    // InternalOCLstdlib.g:3425:1: 'import'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getImportKeyword_5());
@@ -10420,10 +10420,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLstdlib.g:3430:6: ( 'inv' )
+                    // InternalOCLstdlib.g:3432:6: ( 'inv' )
                     {
-                    // InternalOCLstdlib.g:3430:6: ( 'inv' )
-                    // InternalOCLstdlib.g:3431:1: 'inv'
+                    // InternalOCLstdlib.g:3432:6: ( 'inv' )
+                    // InternalOCLstdlib.g:3433:1: 'inv'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getInvKeyword_6());
@@ -10439,10 +10439,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLstdlib.g:3438:6: ( 'invalidating' )
+                    // InternalOCLstdlib.g:3440:6: ( 'invalidating' )
                     {
-                    // InternalOCLstdlib.g:3438:6: ( 'invalidating' )
-                    // InternalOCLstdlib.g:3439:1: 'invalidating'
+                    // InternalOCLstdlib.g:3440:6: ( 'invalidating' )
+                    // InternalOCLstdlib.g:3441:1: 'invalidating'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getInvalidatingKeyword_7());
@@ -10458,10 +10458,10 @@
                     }
                     break;
                 case 9 :
-                    // InternalOCLstdlib.g:3446:6: ( 'iteration' )
+                    // InternalOCLstdlib.g:3448:6: ( 'iteration' )
                     {
-                    // InternalOCLstdlib.g:3446:6: ( 'iteration' )
-                    // InternalOCLstdlib.g:3447:1: 'iteration'
+                    // InternalOCLstdlib.g:3448:6: ( 'iteration' )
+                    // InternalOCLstdlib.g:3449:1: 'iteration'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getIterationKeyword_8());
@@ -10477,10 +10477,10 @@
                     }
                     break;
                 case 10 :
-                    // InternalOCLstdlib.g:3454:6: ( 'left' )
+                    // InternalOCLstdlib.g:3456:6: ( 'left' )
                     {
-                    // InternalOCLstdlib.g:3454:6: ( 'left' )
-                    // InternalOCLstdlib.g:3455:1: 'left'
+                    // InternalOCLstdlib.g:3456:6: ( 'left' )
+                    // InternalOCLstdlib.g:3457:1: 'left'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getLeftKeyword_9());
@@ -10496,10 +10496,10 @@
                     }
                     break;
                 case 11 :
-                    // InternalOCLstdlib.g:3462:6: ( 'library' )
+                    // InternalOCLstdlib.g:3464:6: ( 'library' )
                     {
-                    // InternalOCLstdlib.g:3462:6: ( 'library' )
-                    // InternalOCLstdlib.g:3463:1: 'library'
+                    // InternalOCLstdlib.g:3464:6: ( 'library' )
+                    // InternalOCLstdlib.g:3465:1: 'library'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getLibraryKeyword_10());
@@ -10515,10 +10515,10 @@
                     }
                     break;
                 case 12 :
-                    // InternalOCLstdlib.g:3470:6: ( 'operation' )
+                    // InternalOCLstdlib.g:3472:6: ( 'operation' )
                     {
-                    // InternalOCLstdlib.g:3470:6: ( 'operation' )
-                    // InternalOCLstdlib.g:3471:1: 'operation'
+                    // InternalOCLstdlib.g:3472:6: ( 'operation' )
+                    // InternalOCLstdlib.g:3473:1: 'operation'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getOperationKeyword_11());
@@ -10534,10 +10534,10 @@
                     }
                     break;
                 case 13 :
-                    // InternalOCLstdlib.g:3478:6: ( 'opposite' )
+                    // InternalOCLstdlib.g:3480:6: ( 'opposite' )
                     {
-                    // InternalOCLstdlib.g:3478:6: ( 'opposite' )
-                    // InternalOCLstdlib.g:3479:1: 'opposite'
+                    // InternalOCLstdlib.g:3480:6: ( 'opposite' )
+                    // InternalOCLstdlib.g:3481:1: 'opposite'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getOppositeKeyword_12());
@@ -10553,10 +10553,10 @@
                     }
                     break;
                 case 14 :
-                    // InternalOCLstdlib.g:3486:6: ( 'package' )
+                    // InternalOCLstdlib.g:3488:6: ( 'package' )
                     {
-                    // InternalOCLstdlib.g:3486:6: ( 'package' )
-                    // InternalOCLstdlib.g:3487:1: 'package'
+                    // InternalOCLstdlib.g:3488:6: ( 'package' )
+                    // InternalOCLstdlib.g:3489:1: 'package'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getPackageKeyword_13());
@@ -10572,10 +10572,10 @@
                     }
                     break;
                 case 15 :
-                    // InternalOCLstdlib.g:3494:6: ( 'post' )
+                    // InternalOCLstdlib.g:3496:6: ( 'post' )
                     {
-                    // InternalOCLstdlib.g:3494:6: ( 'post' )
-                    // InternalOCLstdlib.g:3495:1: 'post'
+                    // InternalOCLstdlib.g:3496:6: ( 'post' )
+                    // InternalOCLstdlib.g:3497:1: 'post'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getPostKeyword_14());
@@ -10591,10 +10591,10 @@
                     }
                     break;
                 case 16 :
-                    // InternalOCLstdlib.g:3502:6: ( 'pre' )
+                    // InternalOCLstdlib.g:3504:6: ( 'pre' )
                     {
-                    // InternalOCLstdlib.g:3502:6: ( 'pre' )
-                    // InternalOCLstdlib.g:3503:1: 'pre'
+                    // InternalOCLstdlib.g:3504:6: ( 'pre' )
+                    // InternalOCLstdlib.g:3505:1: 'pre'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getPreKeyword_15());
@@ -10610,10 +10610,10 @@
                     }
                     break;
                 case 17 :
-                    // InternalOCLstdlib.g:3510:6: ( 'precedence' )
+                    // InternalOCLstdlib.g:3512:6: ( 'precedence' )
                     {
-                    // InternalOCLstdlib.g:3510:6: ( 'precedence' )
-                    // InternalOCLstdlib.g:3511:1: 'precedence'
+                    // InternalOCLstdlib.g:3512:6: ( 'precedence' )
+                    // InternalOCLstdlib.g:3513:1: 'precedence'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getPrecedenceKeyword_16());
@@ -10629,10 +10629,10 @@
                     }
                     break;
                 case 18 :
-                    // InternalOCLstdlib.g:3518:6: ( 'property' )
+                    // InternalOCLstdlib.g:3520:6: ( 'property' )
                     {
-                    // InternalOCLstdlib.g:3518:6: ( 'property' )
-                    // InternalOCLstdlib.g:3519:1: 'property'
+                    // InternalOCLstdlib.g:3520:6: ( 'property' )
+                    // InternalOCLstdlib.g:3521:1: 'property'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getPropertyKeyword_17());
@@ -10648,10 +10648,10 @@
                     }
                     break;
                 case 19 :
-                    // InternalOCLstdlib.g:3526:6: ( 'right' )
+                    // InternalOCLstdlib.g:3528:6: ( 'right' )
                     {
-                    // InternalOCLstdlib.g:3526:6: ( 'right' )
-                    // InternalOCLstdlib.g:3527:1: 'right'
+                    // InternalOCLstdlib.g:3528:6: ( 'right' )
+                    // InternalOCLstdlib.g:3529:1: 'right'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getRightKeyword_18());
@@ -10667,10 +10667,10 @@
                     }
                     break;
                 case 20 :
-                    // InternalOCLstdlib.g:3534:6: ( 'static' )
+                    // InternalOCLstdlib.g:3536:6: ( 'static' )
                     {
-                    // InternalOCLstdlib.g:3534:6: ( 'static' )
-                    // InternalOCLstdlib.g:3535:1: 'static'
+                    // InternalOCLstdlib.g:3536:6: ( 'static' )
+                    // InternalOCLstdlib.g:3537:1: 'static'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getStaticKeyword_19());
@@ -10686,10 +10686,10 @@
                     }
                     break;
                 case 21 :
-                    // InternalOCLstdlib.g:3542:6: ( 'type' )
+                    // InternalOCLstdlib.g:3544:6: ( 'type' )
                     {
-                    // InternalOCLstdlib.g:3542:6: ( 'type' )
-                    // InternalOCLstdlib.g:3543:1: 'type'
+                    // InternalOCLstdlib.g:3544:6: ( 'type' )
+                    // InternalOCLstdlib.g:3545:1: 'type'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getTypeKeyword_20());
@@ -10705,10 +10705,10 @@
                     }
                     break;
                 case 22 :
-                    // InternalOCLstdlib.g:3550:6: ( 'validating' )
+                    // InternalOCLstdlib.g:3552:6: ( 'validating' )
                     {
-                    // InternalOCLstdlib.g:3550:6: ( 'validating' )
-                    // InternalOCLstdlib.g:3551:1: 'validating'
+                    // InternalOCLstdlib.g:3552:6: ( 'validating' )
+                    // InternalOCLstdlib.g:3553:1: 'validating'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRestrictedKeywordsAccess().getValidatingKeyword_21());
@@ -10741,13 +10741,13 @@
 
 
     // $ANTLR start "rule__Name__Alternatives"
-    // InternalOCLstdlib.g:3563:1: rule__Name__Alternatives : ( ( ruleIdentifier ) | ( RULE_DOUBLE_QUOTED_STRING ) | ( ruleEssentialOCLReservedKeyword ) | ( rulePrimitiveTypeIdentifier ) | ( ruleCollectionTypeIdentifier ) );
+    // InternalOCLstdlib.g:3565:1: rule__Name__Alternatives : ( ( ruleIdentifier ) | ( RULE_DOUBLE_QUOTED_STRING ) | ( ruleEssentialOCLReservedKeyword ) | ( rulePrimitiveTypeIdentifier ) | ( ruleCollectionTypeIdentifier ) );
     public final void rule__Name__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3567:1: ( ( ruleIdentifier ) | ( RULE_DOUBLE_QUOTED_STRING ) | ( ruleEssentialOCLReservedKeyword ) | ( rulePrimitiveTypeIdentifier ) | ( ruleCollectionTypeIdentifier ) )
+            // InternalOCLstdlib.g:3569:1: ( ( ruleIdentifier ) | ( RULE_DOUBLE_QUOTED_STRING ) | ( ruleEssentialOCLReservedKeyword ) | ( rulePrimitiveTypeIdentifier ) | ( ruleCollectionTypeIdentifier ) )
             int alt4=5;
             switch ( input.LA(1) ) {
             case RULE_SIMPLE_ID:
@@ -10834,10 +10834,10 @@
 
             switch (alt4) {
                 case 1 :
-                    // InternalOCLstdlib.g:3568:1: ( ruleIdentifier )
+                    // InternalOCLstdlib.g:3570:1: ( ruleIdentifier )
                     {
-                    // InternalOCLstdlib.g:3568:1: ( ruleIdentifier )
-                    // InternalOCLstdlib.g:3569:1: ruleIdentifier
+                    // InternalOCLstdlib.g:3570:1: ( ruleIdentifier )
+                    // InternalOCLstdlib.g:3571:1: ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNameAccess().getIdentifierParserRuleCall_0());
@@ -10857,10 +10857,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3574:6: ( RULE_DOUBLE_QUOTED_STRING )
+                    // InternalOCLstdlib.g:3576:6: ( RULE_DOUBLE_QUOTED_STRING )
                     {
-                    // InternalOCLstdlib.g:3574:6: ( RULE_DOUBLE_QUOTED_STRING )
-                    // InternalOCLstdlib.g:3575:1: RULE_DOUBLE_QUOTED_STRING
+                    // InternalOCLstdlib.g:3576:6: ( RULE_DOUBLE_QUOTED_STRING )
+                    // InternalOCLstdlib.g:3577:1: RULE_DOUBLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNameAccess().getDOUBLE_QUOTED_STRINGTerminalRuleCall_1());
@@ -10876,10 +10876,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:3580:6: ( ruleEssentialOCLReservedKeyword )
+                    // InternalOCLstdlib.g:3582:6: ( ruleEssentialOCLReservedKeyword )
                     {
-                    // InternalOCLstdlib.g:3580:6: ( ruleEssentialOCLReservedKeyword )
-                    // InternalOCLstdlib.g:3581:1: ruleEssentialOCLReservedKeyword
+                    // InternalOCLstdlib.g:3582:6: ( ruleEssentialOCLReservedKeyword )
+                    // InternalOCLstdlib.g:3583:1: ruleEssentialOCLReservedKeyword
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNameAccess().getEssentialOCLReservedKeywordParserRuleCall_2());
@@ -10899,10 +10899,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:3586:6: ( rulePrimitiveTypeIdentifier )
+                    // InternalOCLstdlib.g:3588:6: ( rulePrimitiveTypeIdentifier )
                     {
-                    // InternalOCLstdlib.g:3586:6: ( rulePrimitiveTypeIdentifier )
-                    // InternalOCLstdlib.g:3587:1: rulePrimitiveTypeIdentifier
+                    // InternalOCLstdlib.g:3588:6: ( rulePrimitiveTypeIdentifier )
+                    // InternalOCLstdlib.g:3589:1: rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNameAccess().getPrimitiveTypeIdentifierParserRuleCall_3());
@@ -10922,10 +10922,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLstdlib.g:3592:6: ( ruleCollectionTypeIdentifier )
+                    // InternalOCLstdlib.g:3594:6: ( ruleCollectionTypeIdentifier )
                     {
-                    // InternalOCLstdlib.g:3592:6: ( ruleCollectionTypeIdentifier )
-                    // InternalOCLstdlib.g:3593:1: ruleCollectionTypeIdentifier
+                    // InternalOCLstdlib.g:3594:6: ( ruleCollectionTypeIdentifier )
+                    // InternalOCLstdlib.g:3595:1: ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNameAccess().getCollectionTypeIdentifierParserRuleCall_4());
@@ -10962,13 +10962,13 @@
 
 
     // $ANTLR start "rule__AnyName__Alternatives"
-    // InternalOCLstdlib.g:3603:1: rule__AnyName__Alternatives : ( ( ruleName ) | ( 'Lambda' ) | ( 'Map' ) | ( 'Tuple' ) );
+    // InternalOCLstdlib.g:3605:1: rule__AnyName__Alternatives : ( ( ruleName ) | ( 'Lambda' ) | ( 'Map' ) | ( 'Tuple' ) );
     public final void rule__AnyName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3607:1: ( ( ruleName ) | ( 'Lambda' ) | ( 'Map' ) | ( 'Tuple' ) )
+            // InternalOCLstdlib.g:3609:1: ( ( ruleName ) | ( 'Lambda' ) | ( 'Map' ) | ( 'Tuple' ) )
             int alt5=4;
             switch ( input.LA(1) ) {
             case RULE_DOUBLE_QUOTED_STRING:
@@ -11054,10 +11054,10 @@
 
             switch (alt5) {
                 case 1 :
-                    // InternalOCLstdlib.g:3608:1: ( ruleName )
+                    // InternalOCLstdlib.g:3610:1: ( ruleName )
                     {
-                    // InternalOCLstdlib.g:3608:1: ( ruleName )
-                    // InternalOCLstdlib.g:3609:1: ruleName
+                    // InternalOCLstdlib.g:3610:1: ( ruleName )
+                    // InternalOCLstdlib.g:3611:1: ruleName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnyNameAccess().getNameParserRuleCall_0());
@@ -11077,10 +11077,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3614:6: ( 'Lambda' )
+                    // InternalOCLstdlib.g:3616:6: ( 'Lambda' )
                     {
-                    // InternalOCLstdlib.g:3614:6: ( 'Lambda' )
-                    // InternalOCLstdlib.g:3615:1: 'Lambda'
+                    // InternalOCLstdlib.g:3616:6: ( 'Lambda' )
+                    // InternalOCLstdlib.g:3617:1: 'Lambda'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnyNameAccess().getLambdaKeyword_1());
@@ -11096,10 +11096,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:3622:6: ( 'Map' )
+                    // InternalOCLstdlib.g:3624:6: ( 'Map' )
                     {
-                    // InternalOCLstdlib.g:3622:6: ( 'Map' )
-                    // InternalOCLstdlib.g:3623:1: 'Map'
+                    // InternalOCLstdlib.g:3624:6: ( 'Map' )
+                    // InternalOCLstdlib.g:3625:1: 'Map'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnyNameAccess().getMapKeyword_2());
@@ -11115,10 +11115,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:3630:6: ( 'Tuple' )
+                    // InternalOCLstdlib.g:3632:6: ( 'Tuple' )
                     {
-                    // InternalOCLstdlib.g:3630:6: ( 'Tuple' )
-                    // InternalOCLstdlib.g:3631:1: 'Tuple'
+                    // InternalOCLstdlib.g:3632:6: ( 'Tuple' )
+                    // InternalOCLstdlib.g:3633:1: 'Tuple'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnyNameAccess().getTupleKeyword_3());
@@ -11151,13 +11151,13 @@
 
 
     // $ANTLR start "rule__AnnotationCS__NameAlternatives_1_0"
-    // InternalOCLstdlib.g:3643:1: rule__AnnotationCS__NameAlternatives_1_0 : ( ( ruleIdentifier ) | ( RULE_SINGLE_QUOTED_STRING ) );
+    // InternalOCLstdlib.g:3645:1: rule__AnnotationCS__NameAlternatives_1_0 : ( ( ruleIdentifier ) | ( RULE_SINGLE_QUOTED_STRING ) );
     public final void rule__AnnotationCS__NameAlternatives_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3647:1: ( ( ruleIdentifier ) | ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:3649:1: ( ( ruleIdentifier ) | ( RULE_SINGLE_QUOTED_STRING ) )
             int alt6=2;
             int LA6_0 = input.LA(1);
 
@@ -11176,10 +11176,10 @@
             }
             switch (alt6) {
                 case 1 :
-                    // InternalOCLstdlib.g:3648:1: ( ruleIdentifier )
+                    // InternalOCLstdlib.g:3650:1: ( ruleIdentifier )
                     {
-                    // InternalOCLstdlib.g:3648:1: ( ruleIdentifier )
-                    // InternalOCLstdlib.g:3649:1: ruleIdentifier
+                    // InternalOCLstdlib.g:3650:1: ( ruleIdentifier )
+                    // InternalOCLstdlib.g:3651:1: ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationCSAccess().getNameIdentifierParserRuleCall_1_0_0());
@@ -11199,10 +11199,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3654:6: ( RULE_SINGLE_QUOTED_STRING )
+                    // InternalOCLstdlib.g:3656:6: ( RULE_SINGLE_QUOTED_STRING )
                     {
-                    // InternalOCLstdlib.g:3654:6: ( RULE_SINGLE_QUOTED_STRING )
-                    // InternalOCLstdlib.g:3655:1: RULE_SINGLE_QUOTED_STRING
+                    // InternalOCLstdlib.g:3656:6: ( RULE_SINGLE_QUOTED_STRING )
+                    // InternalOCLstdlib.g:3657:1: RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_1_0_1());
@@ -11235,13 +11235,13 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Alternatives_3"
-    // InternalOCLstdlib.g:3665:1: rule__AnnotationCS__Alternatives_3 : ( ( ( rule__AnnotationCS__Group_3_0__0 ) ) | ( ';' ) );
+    // InternalOCLstdlib.g:3667:1: rule__AnnotationCS__Alternatives_3 : ( ( ( rule__AnnotationCS__Group_3_0__0 ) ) | ( ';' ) );
     public final void rule__AnnotationCS__Alternatives_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3669:1: ( ( ( rule__AnnotationCS__Group_3_0__0 ) ) | ( ';' ) )
+            // InternalOCLstdlib.g:3671:1: ( ( ( rule__AnnotationCS__Group_3_0__0 ) ) | ( ';' ) )
             int alt7=2;
             int LA7_0 = input.LA(1);
 
@@ -11260,16 +11260,16 @@
             }
             switch (alt7) {
                 case 1 :
-                    // InternalOCLstdlib.g:3670:1: ( ( rule__AnnotationCS__Group_3_0__0 ) )
+                    // InternalOCLstdlib.g:3672:1: ( ( rule__AnnotationCS__Group_3_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:3670:1: ( ( rule__AnnotationCS__Group_3_0__0 ) )
-                    // InternalOCLstdlib.g:3671:1: ( rule__AnnotationCS__Group_3_0__0 )
+                    // InternalOCLstdlib.g:3672:1: ( ( rule__AnnotationCS__Group_3_0__0 ) )
+                    // InternalOCLstdlib.g:3673:1: ( rule__AnnotationCS__Group_3_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationCSAccess().getGroup_3_0());
                     }
-                    // InternalOCLstdlib.g:3672:1: ( rule__AnnotationCS__Group_3_0__0 )
-                    // InternalOCLstdlib.g:3672:2: rule__AnnotationCS__Group_3_0__0
+                    // InternalOCLstdlib.g:3674:1: ( rule__AnnotationCS__Group_3_0__0 )
+                    // InternalOCLstdlib.g:3674:2: rule__AnnotationCS__Group_3_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AnnotationCS__Group_3_0__0();
@@ -11289,10 +11289,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3676:6: ( ';' )
+                    // InternalOCLstdlib.g:3678:6: ( ';' )
                     {
-                    // InternalOCLstdlib.g:3676:6: ( ';' )
-                    // InternalOCLstdlib.g:3677:1: ';'
+                    // InternalOCLstdlib.g:3678:6: ( ';' )
+                    // InternalOCLstdlib.g:3679:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_3_1());
@@ -11325,13 +11325,13 @@
 
 
     // $ANTLR start "rule__AnnotationElementCS__Alternatives"
-    // InternalOCLstdlib.g:3689:1: rule__AnnotationElementCS__Alternatives : ( ( ruleAnnotationCS ) | ( ruleDocumentationCS ) );
+    // InternalOCLstdlib.g:3691:1: rule__AnnotationElementCS__Alternatives : ( ( ruleAnnotationCS ) | ( ruleDocumentationCS ) );
     public final void rule__AnnotationElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3693:1: ( ( ruleAnnotationCS ) | ( ruleDocumentationCS ) )
+            // InternalOCLstdlib.g:3695:1: ( ( ruleAnnotationCS ) | ( ruleDocumentationCS ) )
             int alt8=2;
             int LA8_0 = input.LA(1);
 
@@ -11350,10 +11350,10 @@
             }
             switch (alt8) {
                 case 1 :
-                    // InternalOCLstdlib.g:3694:1: ( ruleAnnotationCS )
+                    // InternalOCLstdlib.g:3696:1: ( ruleAnnotationCS )
                     {
-                    // InternalOCLstdlib.g:3694:1: ( ruleAnnotationCS )
-                    // InternalOCLstdlib.g:3695:1: ruleAnnotationCS
+                    // InternalOCLstdlib.g:3696:1: ( ruleAnnotationCS )
+                    // InternalOCLstdlib.g:3697:1: ruleAnnotationCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0());
@@ -11373,10 +11373,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3700:6: ( ruleDocumentationCS )
+                    // InternalOCLstdlib.g:3702:6: ( ruleDocumentationCS )
                     {
-                    // InternalOCLstdlib.g:3700:6: ( ruleDocumentationCS )
-                    // InternalOCLstdlib.g:3701:1: ruleDocumentationCS
+                    // InternalOCLstdlib.g:3702:6: ( ruleDocumentationCS )
+                    // InternalOCLstdlib.g:3703:1: ruleDocumentationCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1());
@@ -11413,13 +11413,13 @@
 
 
     // $ANTLR start "rule__LibClassCS__Alternatives_7"
-    // InternalOCLstdlib.g:3711:1: rule__LibClassCS__Alternatives_7 : ( ( ( rule__LibClassCS__OwnedOperationsAssignment_7_0 ) ) | ( ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 ) ) | ( ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 ) ) | ( ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 ) ) );
+    // InternalOCLstdlib.g:3713:1: rule__LibClassCS__Alternatives_7 : ( ( ( rule__LibClassCS__OwnedOperationsAssignment_7_0 ) ) | ( ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 ) ) | ( ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 ) ) | ( ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 ) ) );
     public final void rule__LibClassCS__Alternatives_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3715:1: ( ( ( rule__LibClassCS__OwnedOperationsAssignment_7_0 ) ) | ( ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 ) ) | ( ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 ) ) | ( ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 ) ) )
+            // InternalOCLstdlib.g:3717:1: ( ( ( rule__LibClassCS__OwnedOperationsAssignment_7_0 ) ) | ( ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 ) ) | ( ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 ) ) | ( ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 ) ) )
             int alt9=4;
             switch ( input.LA(1) ) {
             case 24:
@@ -11474,16 +11474,16 @@
 
             switch (alt9) {
                 case 1 :
-                    // InternalOCLstdlib.g:3716:1: ( ( rule__LibClassCS__OwnedOperationsAssignment_7_0 ) )
+                    // InternalOCLstdlib.g:3718:1: ( ( rule__LibClassCS__OwnedOperationsAssignment_7_0 ) )
                     {
-                    // InternalOCLstdlib.g:3716:1: ( ( rule__LibClassCS__OwnedOperationsAssignment_7_0 ) )
-                    // InternalOCLstdlib.g:3717:1: ( rule__LibClassCS__OwnedOperationsAssignment_7_0 )
+                    // InternalOCLstdlib.g:3718:1: ( ( rule__LibClassCS__OwnedOperationsAssignment_7_0 ) )
+                    // InternalOCLstdlib.g:3719:1: ( rule__LibClassCS__OwnedOperationsAssignment_7_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibClassCSAccess().getOwnedOperationsAssignment_7_0());
                     }
-                    // InternalOCLstdlib.g:3718:1: ( rule__LibClassCS__OwnedOperationsAssignment_7_0 )
-                    // InternalOCLstdlib.g:3718:2: rule__LibClassCS__OwnedOperationsAssignment_7_0
+                    // InternalOCLstdlib.g:3720:1: ( rule__LibClassCS__OwnedOperationsAssignment_7_0 )
+                    // InternalOCLstdlib.g:3720:2: rule__LibClassCS__OwnedOperationsAssignment_7_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibClassCS__OwnedOperationsAssignment_7_0();
@@ -11503,16 +11503,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3722:6: ( ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 ) )
+                    // InternalOCLstdlib.g:3724:6: ( ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 ) )
                     {
-                    // InternalOCLstdlib.g:3722:6: ( ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 ) )
-                    // InternalOCLstdlib.g:3723:1: ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 )
+                    // InternalOCLstdlib.g:3724:6: ( ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 ) )
+                    // InternalOCLstdlib.g:3725:1: ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibClassCSAccess().getOwnedPropertiesAssignment_7_1());
                     }
-                    // InternalOCLstdlib.g:3724:1: ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 )
-                    // InternalOCLstdlib.g:3724:2: rule__LibClassCS__OwnedPropertiesAssignment_7_1
+                    // InternalOCLstdlib.g:3726:1: ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 )
+                    // InternalOCLstdlib.g:3726:2: rule__LibClassCS__OwnedPropertiesAssignment_7_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibClassCS__OwnedPropertiesAssignment_7_1();
@@ -11532,16 +11532,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:3728:6: ( ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 ) )
+                    // InternalOCLstdlib.g:3730:6: ( ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 ) )
                     {
-                    // InternalOCLstdlib.g:3728:6: ( ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 ) )
-                    // InternalOCLstdlib.g:3729:1: ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 )
+                    // InternalOCLstdlib.g:3730:6: ( ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 ) )
+                    // InternalOCLstdlib.g:3731:1: ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibClassCSAccess().getOwnedConstraintsAssignment_7_2());
                     }
-                    // InternalOCLstdlib.g:3730:1: ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 )
-                    // InternalOCLstdlib.g:3730:2: rule__LibClassCS__OwnedConstraintsAssignment_7_2
+                    // InternalOCLstdlib.g:3732:1: ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 )
+                    // InternalOCLstdlib.g:3732:2: rule__LibClassCS__OwnedConstraintsAssignment_7_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibClassCS__OwnedConstraintsAssignment_7_2();
@@ -11561,16 +11561,16 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:3734:6: ( ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 ) )
+                    // InternalOCLstdlib.g:3736:6: ( ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 ) )
                     {
-                    // InternalOCLstdlib.g:3734:6: ( ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 ) )
-                    // InternalOCLstdlib.g:3735:1: ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 )
+                    // InternalOCLstdlib.g:3736:6: ( ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 ) )
+                    // InternalOCLstdlib.g:3737:1: ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAssignment_7_3());
                     }
-                    // InternalOCLstdlib.g:3736:1: ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 )
-                    // InternalOCLstdlib.g:3736:2: rule__LibClassCS__OwnedAnnotationsAssignment_7_3
+                    // InternalOCLstdlib.g:3738:1: ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 )
+                    // InternalOCLstdlib.g:3738:2: rule__LibClassCS__OwnedAnnotationsAssignment_7_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibClassCS__OwnedAnnotationsAssignment_7_3();
@@ -11607,13 +11607,13 @@
 
 
     // $ANTLR start "rule__DetailCS__NameAlternatives_0_0"
-    // InternalOCLstdlib.g:3745:1: rule__DetailCS__NameAlternatives_0_0 : ( ( ruleName ) | ( RULE_SINGLE_QUOTED_STRING ) );
+    // InternalOCLstdlib.g:3747:1: rule__DetailCS__NameAlternatives_0_0 : ( ( ruleName ) | ( RULE_SINGLE_QUOTED_STRING ) );
     public final void rule__DetailCS__NameAlternatives_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3749:1: ( ( ruleName ) | ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:3751:1: ( ( ruleName ) | ( RULE_SINGLE_QUOTED_STRING ) )
             int alt10=2;
             int LA10_0 = input.LA(1);
 
@@ -11632,10 +11632,10 @@
             }
             switch (alt10) {
                 case 1 :
-                    // InternalOCLstdlib.g:3750:1: ( ruleName )
+                    // InternalOCLstdlib.g:3752:1: ( ruleName )
                     {
-                    // InternalOCLstdlib.g:3750:1: ( ruleName )
-                    // InternalOCLstdlib.g:3751:1: ruleName
+                    // InternalOCLstdlib.g:3752:1: ( ruleName )
+                    // InternalOCLstdlib.g:3753:1: ruleName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDetailCSAccess().getNameNameParserRuleCall_0_0_0());
@@ -11655,10 +11655,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3756:6: ( RULE_SINGLE_QUOTED_STRING )
+                    // InternalOCLstdlib.g:3758:6: ( RULE_SINGLE_QUOTED_STRING )
                     {
-                    // InternalOCLstdlib.g:3756:6: ( RULE_SINGLE_QUOTED_STRING )
-                    // InternalOCLstdlib.g:3757:1: RULE_SINGLE_QUOTED_STRING
+                    // InternalOCLstdlib.g:3758:6: ( RULE_SINGLE_QUOTED_STRING )
+                    // InternalOCLstdlib.g:3759:1: RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1());
@@ -11691,13 +11691,13 @@
 
 
     // $ANTLR start "rule__DetailCS__ValuesAlternatives_2_0"
-    // InternalOCLstdlib.g:3767:1: rule__DetailCS__ValuesAlternatives_2_0 : ( ( RULE_SINGLE_QUOTED_STRING ) | ( RULE_ML_SINGLE_QUOTED_STRING ) );
+    // InternalOCLstdlib.g:3769:1: rule__DetailCS__ValuesAlternatives_2_0 : ( ( RULE_SINGLE_QUOTED_STRING ) | ( RULE_ML_SINGLE_QUOTED_STRING ) );
     public final void rule__DetailCS__ValuesAlternatives_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3771:1: ( ( RULE_SINGLE_QUOTED_STRING ) | ( RULE_ML_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:3773:1: ( ( RULE_SINGLE_QUOTED_STRING ) | ( RULE_ML_SINGLE_QUOTED_STRING ) )
             int alt11=2;
             int LA11_0 = input.LA(1);
 
@@ -11716,10 +11716,10 @@
             }
             switch (alt11) {
                 case 1 :
-                    // InternalOCLstdlib.g:3772:1: ( RULE_SINGLE_QUOTED_STRING )
+                    // InternalOCLstdlib.g:3774:1: ( RULE_SINGLE_QUOTED_STRING )
                     {
-                    // InternalOCLstdlib.g:3772:1: ( RULE_SINGLE_QUOTED_STRING )
-                    // InternalOCLstdlib.g:3773:1: RULE_SINGLE_QUOTED_STRING
+                    // InternalOCLstdlib.g:3774:1: ( RULE_SINGLE_QUOTED_STRING )
+                    // InternalOCLstdlib.g:3775:1: RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0());
@@ -11735,10 +11735,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3778:6: ( RULE_ML_SINGLE_QUOTED_STRING )
+                    // InternalOCLstdlib.g:3780:6: ( RULE_ML_SINGLE_QUOTED_STRING )
                     {
-                    // InternalOCLstdlib.g:3778:6: ( RULE_ML_SINGLE_QUOTED_STRING )
-                    // InternalOCLstdlib.g:3779:1: RULE_ML_SINGLE_QUOTED_STRING
+                    // InternalOCLstdlib.g:3780:6: ( RULE_ML_SINGLE_QUOTED_STRING )
+                    // InternalOCLstdlib.g:3781:1: RULE_ML_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
@@ -11771,13 +11771,13 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Alternatives_7"
-    // InternalOCLstdlib.g:3789:1: rule__LibCoercionCS__Alternatives_7 : ( ( ( rule__LibCoercionCS__Group_7_0__0 ) ) | ( ';' ) );
+    // InternalOCLstdlib.g:3791:1: rule__LibCoercionCS__Alternatives_7 : ( ( ( rule__LibCoercionCS__Group_7_0__0 ) ) | ( ';' ) );
     public final void rule__LibCoercionCS__Alternatives_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3793:1: ( ( ( rule__LibCoercionCS__Group_7_0__0 ) ) | ( ';' ) )
+            // InternalOCLstdlib.g:3795:1: ( ( ( rule__LibCoercionCS__Group_7_0__0 ) ) | ( ';' ) )
             int alt12=2;
             int LA12_0 = input.LA(1);
 
@@ -11796,16 +11796,16 @@
             }
             switch (alt12) {
                 case 1 :
-                    // InternalOCLstdlib.g:3794:1: ( ( rule__LibCoercionCS__Group_7_0__0 ) )
+                    // InternalOCLstdlib.g:3796:1: ( ( rule__LibCoercionCS__Group_7_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:3794:1: ( ( rule__LibCoercionCS__Group_7_0__0 ) )
-                    // InternalOCLstdlib.g:3795:1: ( rule__LibCoercionCS__Group_7_0__0 )
+                    // InternalOCLstdlib.g:3796:1: ( ( rule__LibCoercionCS__Group_7_0__0 ) )
+                    // InternalOCLstdlib.g:3797:1: ( rule__LibCoercionCS__Group_7_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibCoercionCSAccess().getGroup_7_0());
                     }
-                    // InternalOCLstdlib.g:3796:1: ( rule__LibCoercionCS__Group_7_0__0 )
-                    // InternalOCLstdlib.g:3796:2: rule__LibCoercionCS__Group_7_0__0
+                    // InternalOCLstdlib.g:3798:1: ( rule__LibCoercionCS__Group_7_0__0 )
+                    // InternalOCLstdlib.g:3798:2: rule__LibCoercionCS__Group_7_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibCoercionCS__Group_7_0__0();
@@ -11825,10 +11825,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3800:6: ( ';' )
+                    // InternalOCLstdlib.g:3802:6: ( ';' )
                     {
-                    // InternalOCLstdlib.g:3800:6: ( ';' )
-                    // InternalOCLstdlib.g:3801:1: ';'
+                    // InternalOCLstdlib.g:3802:6: ( ';' )
+                    // InternalOCLstdlib.g:3803:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibCoercionCSAccess().getSemicolonKeyword_7_1());
@@ -11861,13 +11861,13 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Alternatives_7_0_1"
-    // InternalOCLstdlib.g:3813:1: rule__LibCoercionCS__Alternatives_7_0_1 : ( ( ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 ) ) | ( ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 ) ) | ( ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 ) ) );
+    // InternalOCLstdlib.g:3815:1: rule__LibCoercionCS__Alternatives_7_0_1 : ( ( ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 ) ) | ( ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 ) ) | ( ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 ) ) );
     public final void rule__LibCoercionCS__Alternatives_7_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3817:1: ( ( ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 ) ) | ( ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 ) ) | ( ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 ) ) )
+            // InternalOCLstdlib.g:3819:1: ( ( ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 ) ) | ( ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 ) ) | ( ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 ) ) )
             int alt13=3;
             switch ( input.LA(1) ) {
             case 17:
@@ -11896,16 +11896,16 @@
 
             switch (alt13) {
                 case 1 :
-                    // InternalOCLstdlib.g:3818:1: ( ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 ) )
+                    // InternalOCLstdlib.g:3820:1: ( ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 ) )
                     {
-                    // InternalOCLstdlib.g:3818:1: ( ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 ) )
-                    // InternalOCLstdlib.g:3819:1: ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 )
+                    // InternalOCLstdlib.g:3820:1: ( ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 ) )
+                    // InternalOCLstdlib.g:3821:1: ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAssignment_7_0_1_0());
                     }
-                    // InternalOCLstdlib.g:3820:1: ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 )
-                    // InternalOCLstdlib.g:3820:2: rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0
+                    // InternalOCLstdlib.g:3822:1: ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 )
+                    // InternalOCLstdlib.g:3822:2: rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0();
@@ -11925,16 +11925,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3824:6: ( ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 ) )
+                    // InternalOCLstdlib.g:3826:6: ( ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 ) )
                     {
-                    // InternalOCLstdlib.g:3824:6: ( ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 ) )
-                    // InternalOCLstdlib.g:3825:1: ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 )
+                    // InternalOCLstdlib.g:3826:6: ( ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 ) )
+                    // InternalOCLstdlib.g:3827:1: ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsAssignment_7_0_1_1());
                     }
-                    // InternalOCLstdlib.g:3826:1: ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 )
-                    // InternalOCLstdlib.g:3826:2: rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1
+                    // InternalOCLstdlib.g:3828:1: ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 )
+                    // InternalOCLstdlib.g:3828:2: rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1();
@@ -11954,16 +11954,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:3830:6: ( ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 ) )
+                    // InternalOCLstdlib.g:3832:6: ( ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 ) )
                     {
-                    // InternalOCLstdlib.g:3830:6: ( ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 ) )
-                    // InternalOCLstdlib.g:3831:1: ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 )
+                    // InternalOCLstdlib.g:3832:6: ( ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 ) )
+                    // InternalOCLstdlib.g:3833:1: ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsAssignment_7_0_1_2());
                     }
-                    // InternalOCLstdlib.g:3832:1: ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 )
-                    // InternalOCLstdlib.g:3832:2: rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2
+                    // InternalOCLstdlib.g:3834:1: ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 )
+                    // InternalOCLstdlib.g:3834:2: rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2();
@@ -12000,13 +12000,13 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Alternatives_14"
-    // InternalOCLstdlib.g:3841:1: rule__LibIterationCS__Alternatives_14 : ( ( ( rule__LibIterationCS__Group_14_0__0 ) ) | ( ';' ) );
+    // InternalOCLstdlib.g:3843:1: rule__LibIterationCS__Alternatives_14 : ( ( ( rule__LibIterationCS__Group_14_0__0 ) ) | ( ';' ) );
     public final void rule__LibIterationCS__Alternatives_14() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3845:1: ( ( ( rule__LibIterationCS__Group_14_0__0 ) ) | ( ';' ) )
+            // InternalOCLstdlib.g:3847:1: ( ( ( rule__LibIterationCS__Group_14_0__0 ) ) | ( ';' ) )
             int alt14=2;
             int LA14_0 = input.LA(1);
 
@@ -12025,16 +12025,16 @@
             }
             switch (alt14) {
                 case 1 :
-                    // InternalOCLstdlib.g:3846:1: ( ( rule__LibIterationCS__Group_14_0__0 ) )
+                    // InternalOCLstdlib.g:3848:1: ( ( rule__LibIterationCS__Group_14_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:3846:1: ( ( rule__LibIterationCS__Group_14_0__0 ) )
-                    // InternalOCLstdlib.g:3847:1: ( rule__LibIterationCS__Group_14_0__0 )
+                    // InternalOCLstdlib.g:3848:1: ( ( rule__LibIterationCS__Group_14_0__0 ) )
+                    // InternalOCLstdlib.g:3849:1: ( rule__LibIterationCS__Group_14_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibIterationCSAccess().getGroup_14_0());
                     }
-                    // InternalOCLstdlib.g:3848:1: ( rule__LibIterationCS__Group_14_0__0 )
-                    // InternalOCLstdlib.g:3848:2: rule__LibIterationCS__Group_14_0__0
+                    // InternalOCLstdlib.g:3850:1: ( rule__LibIterationCS__Group_14_0__0 )
+                    // InternalOCLstdlib.g:3850:2: rule__LibIterationCS__Group_14_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibIterationCS__Group_14_0__0();
@@ -12054,10 +12054,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3852:6: ( ';' )
+                    // InternalOCLstdlib.g:3854:6: ( ';' )
                     {
-                    // InternalOCLstdlib.g:3852:6: ( ';' )
-                    // InternalOCLstdlib.g:3853:1: ';'
+                    // InternalOCLstdlib.g:3854:6: ( ';' )
+                    // InternalOCLstdlib.g:3855:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_14_1());
@@ -12090,13 +12090,13 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Alternatives_14_0_1"
-    // InternalOCLstdlib.g:3865:1: rule__LibIterationCS__Alternatives_14_0_1 : ( ( ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 ) ) | ( ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 ) ) | ( ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 ) ) );
+    // InternalOCLstdlib.g:3867:1: rule__LibIterationCS__Alternatives_14_0_1 : ( ( ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 ) ) | ( ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 ) ) | ( ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 ) ) );
     public final void rule__LibIterationCS__Alternatives_14_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3869:1: ( ( ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 ) ) | ( ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 ) ) | ( ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 ) ) )
+            // InternalOCLstdlib.g:3871:1: ( ( ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 ) ) | ( ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 ) ) | ( ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 ) ) )
             int alt15=3;
             switch ( input.LA(1) ) {
             case 17:
@@ -12125,16 +12125,16 @@
 
             switch (alt15) {
                 case 1 :
-                    // InternalOCLstdlib.g:3870:1: ( ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 ) )
+                    // InternalOCLstdlib.g:3872:1: ( ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 ) )
                     {
-                    // InternalOCLstdlib.g:3870:1: ( ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 ) )
-                    // InternalOCLstdlib.g:3871:1: ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 )
+                    // InternalOCLstdlib.g:3872:1: ( ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 ) )
+                    // InternalOCLstdlib.g:3873:1: ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAssignment_14_0_1_0());
                     }
-                    // InternalOCLstdlib.g:3872:1: ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 )
-                    // InternalOCLstdlib.g:3872:2: rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0
+                    // InternalOCLstdlib.g:3874:1: ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 )
+                    // InternalOCLstdlib.g:3874:2: rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0();
@@ -12154,16 +12154,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3876:6: ( ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 ) )
+                    // InternalOCLstdlib.g:3878:6: ( ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 ) )
                     {
-                    // InternalOCLstdlib.g:3876:6: ( ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 ) )
-                    // InternalOCLstdlib.g:3877:1: ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 )
+                    // InternalOCLstdlib.g:3878:6: ( ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 ) )
+                    // InternalOCLstdlib.g:3879:1: ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsAssignment_14_0_1_1());
                     }
-                    // InternalOCLstdlib.g:3878:1: ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 )
-                    // InternalOCLstdlib.g:3878:2: rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1
+                    // InternalOCLstdlib.g:3880:1: ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 )
+                    // InternalOCLstdlib.g:3880:2: rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1();
@@ -12183,16 +12183,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:3882:6: ( ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 ) )
+                    // InternalOCLstdlib.g:3884:6: ( ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 ) )
                     {
-                    // InternalOCLstdlib.g:3882:6: ( ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 ) )
-                    // InternalOCLstdlib.g:3883:1: ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 )
+                    // InternalOCLstdlib.g:3884:6: ( ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 ) )
+                    // InternalOCLstdlib.g:3885:1: ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsAssignment_14_0_1_2());
                     }
-                    // InternalOCLstdlib.g:3884:1: ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 )
-                    // InternalOCLstdlib.g:3884:2: rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2
+                    // InternalOCLstdlib.g:3886:1: ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 )
+                    // InternalOCLstdlib.g:3886:2: rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2();
@@ -12229,13 +12229,13 @@
 
 
     // $ANTLR start "rule__OperationCS__Alternatives"
-    // InternalOCLstdlib.g:3893:1: rule__OperationCS__Alternatives : ( ( ruleLibCoercionCS ) | ( ruleLibIterationCS ) | ( ruleLibOperationCS ) );
+    // InternalOCLstdlib.g:3895:1: rule__OperationCS__Alternatives : ( ( ruleLibCoercionCS ) | ( ruleLibIterationCS ) | ( ruleLibOperationCS ) );
     public final void rule__OperationCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3897:1: ( ( ruleLibCoercionCS ) | ( ruleLibIterationCS ) | ( ruleLibOperationCS ) )
+            // InternalOCLstdlib.g:3899:1: ( ( ruleLibCoercionCS ) | ( ruleLibIterationCS ) | ( ruleLibOperationCS ) )
             int alt16=3;
             switch ( input.LA(1) ) {
             case 94:
@@ -12264,10 +12264,10 @@
 
             switch (alt16) {
                 case 1 :
-                    // InternalOCLstdlib.g:3898:1: ( ruleLibCoercionCS )
+                    // InternalOCLstdlib.g:3900:1: ( ruleLibCoercionCS )
                     {
-                    // InternalOCLstdlib.g:3898:1: ( ruleLibCoercionCS )
-                    // InternalOCLstdlib.g:3899:1: ruleLibCoercionCS
+                    // InternalOCLstdlib.g:3900:1: ( ruleLibCoercionCS )
+                    // InternalOCLstdlib.g:3901:1: ruleLibCoercionCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getLibCoercionCSParserRuleCall_0());
@@ -12287,10 +12287,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3904:6: ( ruleLibIterationCS )
+                    // InternalOCLstdlib.g:3906:6: ( ruleLibIterationCS )
                     {
-                    // InternalOCLstdlib.g:3904:6: ( ruleLibIterationCS )
-                    // InternalOCLstdlib.g:3905:1: ruleLibIterationCS
+                    // InternalOCLstdlib.g:3906:6: ( ruleLibIterationCS )
+                    // InternalOCLstdlib.g:3907:1: ruleLibIterationCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getLibIterationCSParserRuleCall_1());
@@ -12310,10 +12310,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:3910:6: ( ruleLibOperationCS )
+                    // InternalOCLstdlib.g:3912:6: ( ruleLibOperationCS )
                     {
-                    // InternalOCLstdlib.g:3910:6: ( ruleLibOperationCS )
-                    // InternalOCLstdlib.g:3911:1: ruleLibOperationCS
+                    // InternalOCLstdlib.g:3912:6: ( ruleLibOperationCS )
+                    // InternalOCLstdlib.g:3913:1: ruleLibOperationCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getOperationCSAccess().getLibOperationCSParserRuleCall_2());
@@ -12350,13 +12350,13 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Alternatives_13"
-    // InternalOCLstdlib.g:3921:1: rule__LibOperationCS__Alternatives_13 : ( ( ( rule__LibOperationCS__Group_13_0__0 ) ) | ( ';' ) );
+    // InternalOCLstdlib.g:3923:1: rule__LibOperationCS__Alternatives_13 : ( ( ( rule__LibOperationCS__Group_13_0__0 ) ) | ( ';' ) );
     public final void rule__LibOperationCS__Alternatives_13() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3925:1: ( ( ( rule__LibOperationCS__Group_13_0__0 ) ) | ( ';' ) )
+            // InternalOCLstdlib.g:3927:1: ( ( ( rule__LibOperationCS__Group_13_0__0 ) ) | ( ';' ) )
             int alt17=2;
             int LA17_0 = input.LA(1);
 
@@ -12375,16 +12375,16 @@
             }
             switch (alt17) {
                 case 1 :
-                    // InternalOCLstdlib.g:3926:1: ( ( rule__LibOperationCS__Group_13_0__0 ) )
+                    // InternalOCLstdlib.g:3928:1: ( ( rule__LibOperationCS__Group_13_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:3926:1: ( ( rule__LibOperationCS__Group_13_0__0 ) )
-                    // InternalOCLstdlib.g:3927:1: ( rule__LibOperationCS__Group_13_0__0 )
+                    // InternalOCLstdlib.g:3928:1: ( ( rule__LibOperationCS__Group_13_0__0 ) )
+                    // InternalOCLstdlib.g:3929:1: ( rule__LibOperationCS__Group_13_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibOperationCSAccess().getGroup_13_0());
                     }
-                    // InternalOCLstdlib.g:3928:1: ( rule__LibOperationCS__Group_13_0__0 )
-                    // InternalOCLstdlib.g:3928:2: rule__LibOperationCS__Group_13_0__0
+                    // InternalOCLstdlib.g:3930:1: ( rule__LibOperationCS__Group_13_0__0 )
+                    // InternalOCLstdlib.g:3930:2: rule__LibOperationCS__Group_13_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibOperationCS__Group_13_0__0();
@@ -12404,10 +12404,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3932:6: ( ';' )
+                    // InternalOCLstdlib.g:3934:6: ( ';' )
                     {
-                    // InternalOCLstdlib.g:3932:6: ( ';' )
-                    // InternalOCLstdlib.g:3933:1: ';'
+                    // InternalOCLstdlib.g:3934:6: ( ';' )
+                    // InternalOCLstdlib.g:3935:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_1());
@@ -12440,13 +12440,13 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Alternatives_13_0_1"
-    // InternalOCLstdlib.g:3945:1: rule__LibOperationCS__Alternatives_13_0_1 : ( ( ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 ) ) | ( ( rule__LibOperationCS__Group_13_0_1_1__0 ) ) | ( ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 ) ) | ( ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 ) ) );
+    // InternalOCLstdlib.g:3947:1: rule__LibOperationCS__Alternatives_13_0_1 : ( ( ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 ) ) | ( ( rule__LibOperationCS__Group_13_0_1_1__0 ) ) | ( ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 ) ) | ( ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 ) ) );
     public final void rule__LibOperationCS__Alternatives_13_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3949:1: ( ( ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 ) ) | ( ( rule__LibOperationCS__Group_13_0_1_1__0 ) ) | ( ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 ) ) | ( ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 ) ) )
+            // InternalOCLstdlib.g:3951:1: ( ( ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 ) ) | ( ( rule__LibOperationCS__Group_13_0_1_1__0 ) ) | ( ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 ) ) | ( ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 ) ) )
             int alt18=4;
             switch ( input.LA(1) ) {
             case 17:
@@ -12480,16 +12480,16 @@
 
             switch (alt18) {
                 case 1 :
-                    // InternalOCLstdlib.g:3950:1: ( ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 ) )
+                    // InternalOCLstdlib.g:3952:1: ( ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 ) )
                     {
-                    // InternalOCLstdlib.g:3950:1: ( ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 ) )
-                    // InternalOCLstdlib.g:3951:1: ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 )
+                    // InternalOCLstdlib.g:3952:1: ( ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 ) )
+                    // InternalOCLstdlib.g:3953:1: ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAssignment_13_0_1_0());
                     }
-                    // InternalOCLstdlib.g:3952:1: ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 )
-                    // InternalOCLstdlib.g:3952:2: rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0
+                    // InternalOCLstdlib.g:3954:1: ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 )
+                    // InternalOCLstdlib.g:3954:2: rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0();
@@ -12509,16 +12509,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3956:6: ( ( rule__LibOperationCS__Group_13_0_1_1__0 ) )
+                    // InternalOCLstdlib.g:3958:6: ( ( rule__LibOperationCS__Group_13_0_1_1__0 ) )
                     {
-                    // InternalOCLstdlib.g:3956:6: ( ( rule__LibOperationCS__Group_13_0_1_1__0 ) )
-                    // InternalOCLstdlib.g:3957:1: ( rule__LibOperationCS__Group_13_0_1_1__0 )
+                    // InternalOCLstdlib.g:3958:6: ( ( rule__LibOperationCS__Group_13_0_1_1__0 ) )
+                    // InternalOCLstdlib.g:3959:1: ( rule__LibOperationCS__Group_13_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibOperationCSAccess().getGroup_13_0_1_1());
                     }
-                    // InternalOCLstdlib.g:3958:1: ( rule__LibOperationCS__Group_13_0_1_1__0 )
-                    // InternalOCLstdlib.g:3958:2: rule__LibOperationCS__Group_13_0_1_1__0
+                    // InternalOCLstdlib.g:3960:1: ( rule__LibOperationCS__Group_13_0_1_1__0 )
+                    // InternalOCLstdlib.g:3960:2: rule__LibOperationCS__Group_13_0_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibOperationCS__Group_13_0_1_1__0();
@@ -12538,16 +12538,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:3962:6: ( ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 ) )
+                    // InternalOCLstdlib.g:3964:6: ( ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 ) )
                     {
-                    // InternalOCLstdlib.g:3962:6: ( ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 ) )
-                    // InternalOCLstdlib.g:3963:1: ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 )
+                    // InternalOCLstdlib.g:3964:6: ( ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 ) )
+                    // InternalOCLstdlib.g:3965:1: ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsAssignment_13_0_1_2());
                     }
-                    // InternalOCLstdlib.g:3964:1: ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 )
-                    // InternalOCLstdlib.g:3964:2: rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2
+                    // InternalOCLstdlib.g:3966:1: ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 )
+                    // InternalOCLstdlib.g:3966:2: rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2();
@@ -12567,16 +12567,16 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:3968:6: ( ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 ) )
+                    // InternalOCLstdlib.g:3970:6: ( ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 ) )
                     {
-                    // InternalOCLstdlib.g:3968:6: ( ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 ) )
-                    // InternalOCLstdlib.g:3969:1: ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 )
+                    // InternalOCLstdlib.g:3970:6: ( ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 ) )
+                    // InternalOCLstdlib.g:3971:1: ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsAssignment_13_0_1_3());
                     }
-                    // InternalOCLstdlib.g:3970:1: ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 )
-                    // InternalOCLstdlib.g:3970:2: rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3
+                    // InternalOCLstdlib.g:3972:1: ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 )
+                    // InternalOCLstdlib.g:3972:2: rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3();
@@ -12613,13 +12613,13 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Alternatives_4"
-    // InternalOCLstdlib.g:3979:1: rule__LibPackageCS__Alternatives_4 : ( ( ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 ) ) | ( ( rule__LibPackageCS__Group_4_1__0 ) ) | ( ( rule__LibPackageCS__OwnedClassesAssignment_4_2 ) ) | ( ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 ) ) );
+    // InternalOCLstdlib.g:3981:1: rule__LibPackageCS__Alternatives_4 : ( ( ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 ) ) | ( ( rule__LibPackageCS__Group_4_1__0 ) ) | ( ( rule__LibPackageCS__OwnedClassesAssignment_4_2 ) ) | ( ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 ) ) );
     public final void rule__LibPackageCS__Alternatives_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:3983:1: ( ( ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 ) ) | ( ( rule__LibPackageCS__Group_4_1__0 ) ) | ( ( rule__LibPackageCS__OwnedClassesAssignment_4_2 ) ) | ( ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 ) ) )
+            // InternalOCLstdlib.g:3985:1: ( ( ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 ) ) | ( ( rule__LibPackageCS__Group_4_1__0 ) ) | ( ( rule__LibPackageCS__OwnedClassesAssignment_4_2 ) ) | ( ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 ) ) )
             int alt19=4;
             switch ( input.LA(1) ) {
             case 29:
@@ -12654,16 +12654,16 @@
 
             switch (alt19) {
                 case 1 :
-                    // InternalOCLstdlib.g:3984:1: ( ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 ) )
+                    // InternalOCLstdlib.g:3986:1: ( ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 ) )
                     {
-                    // InternalOCLstdlib.g:3984:1: ( ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 ) )
-                    // InternalOCLstdlib.g:3985:1: ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 )
+                    // InternalOCLstdlib.g:3986:1: ( ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 ) )
+                    // InternalOCLstdlib.g:3987:1: ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibPackageCSAccess().getOwnedPackagesAssignment_4_0());
                     }
-                    // InternalOCLstdlib.g:3986:1: ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 )
-                    // InternalOCLstdlib.g:3986:2: rule__LibPackageCS__OwnedPackagesAssignment_4_0
+                    // InternalOCLstdlib.g:3988:1: ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 )
+                    // InternalOCLstdlib.g:3988:2: rule__LibPackageCS__OwnedPackagesAssignment_4_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibPackageCS__OwnedPackagesAssignment_4_0();
@@ -12683,16 +12683,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:3990:6: ( ( rule__LibPackageCS__Group_4_1__0 ) )
+                    // InternalOCLstdlib.g:3992:6: ( ( rule__LibPackageCS__Group_4_1__0 ) )
                     {
-                    // InternalOCLstdlib.g:3990:6: ( ( rule__LibPackageCS__Group_4_1__0 ) )
-                    // InternalOCLstdlib.g:3991:1: ( rule__LibPackageCS__Group_4_1__0 )
+                    // InternalOCLstdlib.g:3992:6: ( ( rule__LibPackageCS__Group_4_1__0 ) )
+                    // InternalOCLstdlib.g:3993:1: ( rule__LibPackageCS__Group_4_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibPackageCSAccess().getGroup_4_1());
                     }
-                    // InternalOCLstdlib.g:3992:1: ( rule__LibPackageCS__Group_4_1__0 )
-                    // InternalOCLstdlib.g:3992:2: rule__LibPackageCS__Group_4_1__0
+                    // InternalOCLstdlib.g:3994:1: ( rule__LibPackageCS__Group_4_1__0 )
+                    // InternalOCLstdlib.g:3994:2: rule__LibPackageCS__Group_4_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibPackageCS__Group_4_1__0();
@@ -12712,16 +12712,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:3996:6: ( ( rule__LibPackageCS__OwnedClassesAssignment_4_2 ) )
+                    // InternalOCLstdlib.g:3998:6: ( ( rule__LibPackageCS__OwnedClassesAssignment_4_2 ) )
                     {
-                    // InternalOCLstdlib.g:3996:6: ( ( rule__LibPackageCS__OwnedClassesAssignment_4_2 ) )
-                    // InternalOCLstdlib.g:3997:1: ( rule__LibPackageCS__OwnedClassesAssignment_4_2 )
+                    // InternalOCLstdlib.g:3998:6: ( ( rule__LibPackageCS__OwnedClassesAssignment_4_2 ) )
+                    // InternalOCLstdlib.g:3999:1: ( rule__LibPackageCS__OwnedClassesAssignment_4_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibPackageCSAccess().getOwnedClassesAssignment_4_2());
                     }
-                    // InternalOCLstdlib.g:3998:1: ( rule__LibPackageCS__OwnedClassesAssignment_4_2 )
-                    // InternalOCLstdlib.g:3998:2: rule__LibPackageCS__OwnedClassesAssignment_4_2
+                    // InternalOCLstdlib.g:4000:1: ( rule__LibPackageCS__OwnedClassesAssignment_4_2 )
+                    // InternalOCLstdlib.g:4000:2: rule__LibPackageCS__OwnedClassesAssignment_4_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibPackageCS__OwnedClassesAssignment_4_2();
@@ -12741,16 +12741,16 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:4002:6: ( ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 ) )
+                    // InternalOCLstdlib.g:4004:6: ( ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 ) )
                     {
-                    // InternalOCLstdlib.g:4002:6: ( ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 ) )
-                    // InternalOCLstdlib.g:4003:1: ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 )
+                    // InternalOCLstdlib.g:4004:6: ( ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 ) )
+                    // InternalOCLstdlib.g:4005:1: ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAssignment_4_3());
                     }
-                    // InternalOCLstdlib.g:4004:1: ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 )
-                    // InternalOCLstdlib.g:4004:2: rule__LibPackageCS__OwnedAnnotationsAssignment_4_3
+                    // InternalOCLstdlib.g:4006:1: ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 )
+                    // InternalOCLstdlib.g:4006:2: rule__LibPackageCS__OwnedAnnotationsAssignment_4_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibPackageCS__OwnedAnnotationsAssignment_4_3();
@@ -12787,13 +12787,13 @@
 
 
     // $ANTLR start "rule__PackageCS__Alternatives_4"
-    // InternalOCLstdlib.g:4013:1: rule__PackageCS__Alternatives_4 : ( ( ( rule__PackageCS__OwnedPackagesAssignment_4_0 ) ) | ( ( rule__PackageCS__OwnedClassesAssignment_4_1 ) ) | ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 ) ) );
+    // InternalOCLstdlib.g:4015:1: rule__PackageCS__Alternatives_4 : ( ( ( rule__PackageCS__OwnedPackagesAssignment_4_0 ) ) | ( ( rule__PackageCS__OwnedClassesAssignment_4_1 ) ) | ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 ) ) );
     public final void rule__PackageCS__Alternatives_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4017:1: ( ( ( rule__PackageCS__OwnedPackagesAssignment_4_0 ) ) | ( ( rule__PackageCS__OwnedClassesAssignment_4_1 ) ) | ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 ) ) )
+            // InternalOCLstdlib.g:4019:1: ( ( ( rule__PackageCS__OwnedPackagesAssignment_4_0 ) ) | ( ( rule__PackageCS__OwnedClassesAssignment_4_1 ) ) | ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 ) ) )
             int alt20=3;
             switch ( input.LA(1) ) {
             case 29:
@@ -12823,16 +12823,16 @@
 
             switch (alt20) {
                 case 1 :
-                    // InternalOCLstdlib.g:4018:1: ( ( rule__PackageCS__OwnedPackagesAssignment_4_0 ) )
+                    // InternalOCLstdlib.g:4020:1: ( ( rule__PackageCS__OwnedPackagesAssignment_4_0 ) )
                     {
-                    // InternalOCLstdlib.g:4018:1: ( ( rule__PackageCS__OwnedPackagesAssignment_4_0 ) )
-                    // InternalOCLstdlib.g:4019:1: ( rule__PackageCS__OwnedPackagesAssignment_4_0 )
+                    // InternalOCLstdlib.g:4020:1: ( ( rule__PackageCS__OwnedPackagesAssignment_4_0 ) )
+                    // InternalOCLstdlib.g:4021:1: ( rule__PackageCS__OwnedPackagesAssignment_4_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPackageCSAccess().getOwnedPackagesAssignment_4_0());
                     }
-                    // InternalOCLstdlib.g:4020:1: ( rule__PackageCS__OwnedPackagesAssignment_4_0 )
-                    // InternalOCLstdlib.g:4020:2: rule__PackageCS__OwnedPackagesAssignment_4_0
+                    // InternalOCLstdlib.g:4022:1: ( rule__PackageCS__OwnedPackagesAssignment_4_0 )
+                    // InternalOCLstdlib.g:4022:2: rule__PackageCS__OwnedPackagesAssignment_4_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PackageCS__OwnedPackagesAssignment_4_0();
@@ -12852,16 +12852,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4024:6: ( ( rule__PackageCS__OwnedClassesAssignment_4_1 ) )
+                    // InternalOCLstdlib.g:4026:6: ( ( rule__PackageCS__OwnedClassesAssignment_4_1 ) )
                     {
-                    // InternalOCLstdlib.g:4024:6: ( ( rule__PackageCS__OwnedClassesAssignment_4_1 ) )
-                    // InternalOCLstdlib.g:4025:1: ( rule__PackageCS__OwnedClassesAssignment_4_1 )
+                    // InternalOCLstdlib.g:4026:6: ( ( rule__PackageCS__OwnedClassesAssignment_4_1 ) )
+                    // InternalOCLstdlib.g:4027:1: ( rule__PackageCS__OwnedClassesAssignment_4_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPackageCSAccess().getOwnedClassesAssignment_4_1());
                     }
-                    // InternalOCLstdlib.g:4026:1: ( rule__PackageCS__OwnedClassesAssignment_4_1 )
-                    // InternalOCLstdlib.g:4026:2: rule__PackageCS__OwnedClassesAssignment_4_1
+                    // InternalOCLstdlib.g:4028:1: ( rule__PackageCS__OwnedClassesAssignment_4_1 )
+                    // InternalOCLstdlib.g:4028:2: rule__PackageCS__OwnedClassesAssignment_4_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PackageCS__OwnedClassesAssignment_4_1();
@@ -12881,16 +12881,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4030:6: ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 ) )
+                    // InternalOCLstdlib.g:4032:6: ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 ) )
                     {
-                    // InternalOCLstdlib.g:4030:6: ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 ) )
-                    // InternalOCLstdlib.g:4031:1: ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 )
+                    // InternalOCLstdlib.g:4032:6: ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 ) )
+                    // InternalOCLstdlib.g:4033:1: ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAssignment_4_2());
                     }
-                    // InternalOCLstdlib.g:4032:1: ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 )
-                    // InternalOCLstdlib.g:4032:2: rule__PackageCS__OwnedAnnotationsAssignment_4_2
+                    // InternalOCLstdlib.g:4034:1: ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 )
+                    // InternalOCLstdlib.g:4034:2: rule__PackageCS__OwnedAnnotationsAssignment_4_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PackageCS__OwnedAnnotationsAssignment_4_2();
@@ -12927,13 +12927,13 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Alternatives_7"
-    // InternalOCLstdlib.g:4041:1: rule__LibPropertyCS__Alternatives_7 : ( ( ( rule__LibPropertyCS__Group_7_0__0 ) ) | ( ';' ) );
+    // InternalOCLstdlib.g:4043:1: rule__LibPropertyCS__Alternatives_7 : ( ( ( rule__LibPropertyCS__Group_7_0__0 ) ) | ( ';' ) );
     public final void rule__LibPropertyCS__Alternatives_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4045:1: ( ( ( rule__LibPropertyCS__Group_7_0__0 ) ) | ( ';' ) )
+            // InternalOCLstdlib.g:4047:1: ( ( ( rule__LibPropertyCS__Group_7_0__0 ) ) | ( ';' ) )
             int alt21=2;
             int LA21_0 = input.LA(1);
 
@@ -12952,16 +12952,16 @@
             }
             switch (alt21) {
                 case 1 :
-                    // InternalOCLstdlib.g:4046:1: ( ( rule__LibPropertyCS__Group_7_0__0 ) )
+                    // InternalOCLstdlib.g:4048:1: ( ( rule__LibPropertyCS__Group_7_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:4046:1: ( ( rule__LibPropertyCS__Group_7_0__0 ) )
-                    // InternalOCLstdlib.g:4047:1: ( rule__LibPropertyCS__Group_7_0__0 )
+                    // InternalOCLstdlib.g:4048:1: ( ( rule__LibPropertyCS__Group_7_0__0 ) )
+                    // InternalOCLstdlib.g:4049:1: ( rule__LibPropertyCS__Group_7_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibPropertyCSAccess().getGroup_7_0());
                     }
-                    // InternalOCLstdlib.g:4048:1: ( rule__LibPropertyCS__Group_7_0__0 )
-                    // InternalOCLstdlib.g:4048:2: rule__LibPropertyCS__Group_7_0__0
+                    // InternalOCLstdlib.g:4050:1: ( rule__LibPropertyCS__Group_7_0__0 )
+                    // InternalOCLstdlib.g:4050:2: rule__LibPropertyCS__Group_7_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibPropertyCS__Group_7_0__0();
@@ -12981,10 +12981,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4052:6: ( ';' )
+                    // InternalOCLstdlib.g:4054:6: ( ';' )
                     {
-                    // InternalOCLstdlib.g:4052:6: ( ';' )
-                    // InternalOCLstdlib.g:4053:1: ';'
+                    // InternalOCLstdlib.g:4054:6: ( ';' )
+                    // InternalOCLstdlib.g:4055:1: ';'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getLibPropertyCSAccess().getSemicolonKeyword_7_1());
@@ -13017,13 +13017,13 @@
 
 
     // $ANTLR start "rule__PrecedenceCS__Alternatives_0"
-    // InternalOCLstdlib.g:4065:1: rule__PrecedenceCS__Alternatives_0 : ( ( 'left' ) | ( ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 ) ) );
+    // InternalOCLstdlib.g:4067:1: rule__PrecedenceCS__Alternatives_0 : ( ( 'left' ) | ( ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 ) ) );
     public final void rule__PrecedenceCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4069:1: ( ( 'left' ) | ( ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 ) ) )
+            // InternalOCLstdlib.g:4071:1: ( ( 'left' ) | ( ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 ) ) )
             int alt22=2;
             int LA22_0 = input.LA(1);
 
@@ -13042,10 +13042,10 @@
             }
             switch (alt22) {
                 case 1 :
-                    // InternalOCLstdlib.g:4070:1: ( 'left' )
+                    // InternalOCLstdlib.g:4072:1: ( 'left' )
                     {
-                    // InternalOCLstdlib.g:4070:1: ( 'left' )
-                    // InternalOCLstdlib.g:4071:1: 'left'
+                    // InternalOCLstdlib.g:4072:1: ( 'left' )
+                    // InternalOCLstdlib.g:4073:1: 'left'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrecedenceCSAccess().getLeftKeyword_0_0());
@@ -13061,16 +13061,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4078:6: ( ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 ) )
+                    // InternalOCLstdlib.g:4080:6: ( ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 ) )
                     {
-                    // InternalOCLstdlib.g:4078:6: ( ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 ) )
-                    // InternalOCLstdlib.g:4079:1: ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 )
+                    // InternalOCLstdlib.g:4080:6: ( ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 ) )
+                    // InternalOCLstdlib.g:4081:1: ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeAssignment_0_1());
                     }
-                    // InternalOCLstdlib.g:4080:1: ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 )
-                    // InternalOCLstdlib.g:4080:2: rule__PrecedenceCS__IsRightAssociativeAssignment_0_1
+                    // InternalOCLstdlib.g:4082:1: ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 )
+                    // InternalOCLstdlib.g:4082:2: rule__PrecedenceCS__IsRightAssociativeAssignment_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PrecedenceCS__IsRightAssociativeAssignment_0_1();
@@ -13107,13 +13107,13 @@
 
 
     // $ANTLR start "rule__TypedMultiplicityRefCS__Alternatives_0"
-    // InternalOCLstdlib.g:4089:1: rule__TypedMultiplicityRefCS__Alternatives_0 : ( ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) | ( ruleTypedTypeRefCS ) | ( ruleLambdaTypeCS ) );
+    // InternalOCLstdlib.g:4091:1: rule__TypedMultiplicityRefCS__Alternatives_0 : ( ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) | ( ruleTypedTypeRefCS ) | ( ruleLambdaTypeCS ) );
     public final void rule__TypedMultiplicityRefCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4093:1: ( ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) | ( ruleTypedTypeRefCS ) | ( ruleLambdaTypeCS ) )
+            // InternalOCLstdlib.g:4095:1: ( ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) | ( ruleTypedTypeRefCS ) | ( ruleLambdaTypeCS ) )
             int alt23=4;
             switch ( input.LA(1) ) {
             case 39:
@@ -13200,10 +13200,10 @@
 
             switch (alt23) {
                 case 1 :
-                    // InternalOCLstdlib.g:4094:1: ( ruleMapTypeCS )
+                    // InternalOCLstdlib.g:4096:1: ( ruleMapTypeCS )
                     {
-                    // InternalOCLstdlib.g:4094:1: ( ruleMapTypeCS )
-                    // InternalOCLstdlib.g:4095:1: ruleMapTypeCS
+                    // InternalOCLstdlib.g:4096:1: ( ruleMapTypeCS )
+                    // InternalOCLstdlib.g:4097:1: ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedMultiplicityRefCSAccess().getMapTypeCSParserRuleCall_0_0());
@@ -13223,10 +13223,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4100:6: ( ruleTupleTypeCS )
+                    // InternalOCLstdlib.g:4102:6: ( ruleTupleTypeCS )
                     {
-                    // InternalOCLstdlib.g:4100:6: ( ruleTupleTypeCS )
-                    // InternalOCLstdlib.g:4101:1: ruleTupleTypeCS
+                    // InternalOCLstdlib.g:4102:6: ( ruleTupleTypeCS )
+                    // InternalOCLstdlib.g:4103:1: ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedMultiplicityRefCSAccess().getTupleTypeCSParserRuleCall_0_1());
@@ -13246,10 +13246,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4106:6: ( ruleTypedTypeRefCS )
+                    // InternalOCLstdlib.g:4108:6: ( ruleTypedTypeRefCS )
                     {
-                    // InternalOCLstdlib.g:4106:6: ( ruleTypedTypeRefCS )
-                    // InternalOCLstdlib.g:4107:1: ruleTypedTypeRefCS
+                    // InternalOCLstdlib.g:4108:6: ( ruleTypedTypeRefCS )
+                    // InternalOCLstdlib.g:4109:1: ruleTypedTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedTypeRefCSParserRuleCall_0_2());
@@ -13269,10 +13269,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:4112:6: ( ruleLambdaTypeCS )
+                    // InternalOCLstdlib.g:4114:6: ( ruleLambdaTypeCS )
                     {
-                    // InternalOCLstdlib.g:4112:6: ( ruleLambdaTypeCS )
-                    // InternalOCLstdlib.g:4113:1: ruleLambdaTypeCS
+                    // InternalOCLstdlib.g:4114:6: ( ruleLambdaTypeCS )
+                    // InternalOCLstdlib.g:4115:1: ruleLambdaTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedMultiplicityRefCSAccess().getLambdaTypeCSParserRuleCall_0_3());
@@ -13309,13 +13309,13 @@
 
 
     // $ANTLR start "rule__TypedRefCS__Alternatives"
-    // InternalOCLstdlib.g:4123:1: rule__TypedRefCS__Alternatives : ( ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) | ( ruleTypedTypeRefCS ) | ( ruleLambdaTypeCS ) );
+    // InternalOCLstdlib.g:4125:1: rule__TypedRefCS__Alternatives : ( ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) | ( ruleTypedTypeRefCS ) | ( ruleLambdaTypeCS ) );
     public final void rule__TypedRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4127:1: ( ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) | ( ruleTypedTypeRefCS ) | ( ruleLambdaTypeCS ) )
+            // InternalOCLstdlib.g:4129:1: ( ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) | ( ruleTypedTypeRefCS ) | ( ruleLambdaTypeCS ) )
             int alt24=4;
             switch ( input.LA(1) ) {
             case 39:
@@ -13402,10 +13402,10 @@
 
             switch (alt24) {
                 case 1 :
-                    // InternalOCLstdlib.g:4128:1: ( ruleMapTypeCS )
+                    // InternalOCLstdlib.g:4130:1: ( ruleMapTypeCS )
                     {
-                    // InternalOCLstdlib.g:4128:1: ( ruleMapTypeCS )
-                    // InternalOCLstdlib.g:4129:1: ruleMapTypeCS
+                    // InternalOCLstdlib.g:4130:1: ( ruleMapTypeCS )
+                    // InternalOCLstdlib.g:4131:1: ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedRefCSAccess().getMapTypeCSParserRuleCall_0());
@@ -13425,10 +13425,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4134:6: ( ruleTupleTypeCS )
+                    // InternalOCLstdlib.g:4136:6: ( ruleTupleTypeCS )
                     {
-                    // InternalOCLstdlib.g:4134:6: ( ruleTupleTypeCS )
-                    // InternalOCLstdlib.g:4135:1: ruleTupleTypeCS
+                    // InternalOCLstdlib.g:4136:6: ( ruleTupleTypeCS )
+                    // InternalOCLstdlib.g:4137:1: ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedRefCSAccess().getTupleTypeCSParserRuleCall_1());
@@ -13448,10 +13448,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4140:6: ( ruleTypedTypeRefCS )
+                    // InternalOCLstdlib.g:4142:6: ( ruleTypedTypeRefCS )
                     {
-                    // InternalOCLstdlib.g:4140:6: ( ruleTypedTypeRefCS )
-                    // InternalOCLstdlib.g:4141:1: ruleTypedTypeRefCS
+                    // InternalOCLstdlib.g:4142:6: ( ruleTypedTypeRefCS )
+                    // InternalOCLstdlib.g:4143:1: ruleTypedTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_2());
@@ -13471,10 +13471,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:4146:6: ( ruleLambdaTypeCS )
+                    // InternalOCLstdlib.g:4148:6: ( ruleLambdaTypeCS )
                     {
-                    // InternalOCLstdlib.g:4146:6: ( ruleLambdaTypeCS )
-                    // InternalOCLstdlib.g:4147:1: ruleLambdaTypeCS
+                    // InternalOCLstdlib.g:4148:6: ( ruleLambdaTypeCS )
+                    // InternalOCLstdlib.g:4149:1: ruleLambdaTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedRefCSAccess().getLambdaTypeCSParserRuleCall_3());
@@ -13511,13 +13511,13 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Alternatives"
-    // InternalOCLstdlib.g:4157:1: rule__TypedTypeRefCS__Alternatives : ( ( ( rule__TypedTypeRefCS__Group_0__0 ) ) | ( ( rule__TypedTypeRefCS__Group_1__0 ) ) );
+    // InternalOCLstdlib.g:4159:1: rule__TypedTypeRefCS__Alternatives : ( ( ( rule__TypedTypeRefCS__Group_0__0 ) ) | ( ( rule__TypedTypeRefCS__Group_1__0 ) ) );
     public final void rule__TypedTypeRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4161:1: ( ( ( rule__TypedTypeRefCS__Group_0__0 ) ) | ( ( rule__TypedTypeRefCS__Group_1__0 ) ) )
+            // InternalOCLstdlib.g:4163:1: ( ( ( rule__TypedTypeRefCS__Group_0__0 ) ) | ( ( rule__TypedTypeRefCS__Group_1__0 ) ) )
             int alt25=2;
             int LA25_0 = input.LA(1);
 
@@ -13536,16 +13536,16 @@
             }
             switch (alt25) {
                 case 1 :
-                    // InternalOCLstdlib.g:4162:1: ( ( rule__TypedTypeRefCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:4164:1: ( ( rule__TypedTypeRefCS__Group_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:4162:1: ( ( rule__TypedTypeRefCS__Group_0__0 ) )
-                    // InternalOCLstdlib.g:4163:1: ( rule__TypedTypeRefCS__Group_0__0 )
+                    // InternalOCLstdlib.g:4164:1: ( ( rule__TypedTypeRefCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:4165:1: ( rule__TypedTypeRefCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedTypeRefCSAccess().getGroup_0());
                     }
-                    // InternalOCLstdlib.g:4164:1: ( rule__TypedTypeRefCS__Group_0__0 )
-                    // InternalOCLstdlib.g:4164:2: rule__TypedTypeRefCS__Group_0__0
+                    // InternalOCLstdlib.g:4166:1: ( rule__TypedTypeRefCS__Group_0__0 )
+                    // InternalOCLstdlib.g:4166:2: rule__TypedTypeRefCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypedTypeRefCS__Group_0__0();
@@ -13565,16 +13565,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4168:6: ( ( rule__TypedTypeRefCS__Group_1__0 ) )
+                    // InternalOCLstdlib.g:4170:6: ( ( rule__TypedTypeRefCS__Group_1__0 ) )
                     {
-                    // InternalOCLstdlib.g:4168:6: ( ( rule__TypedTypeRefCS__Group_1__0 ) )
-                    // InternalOCLstdlib.g:4169:1: ( rule__TypedTypeRefCS__Group_1__0 )
+                    // InternalOCLstdlib.g:4170:6: ( ( rule__TypedTypeRefCS__Group_1__0 ) )
+                    // InternalOCLstdlib.g:4171:1: ( rule__TypedTypeRefCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1());
                     }
-                    // InternalOCLstdlib.g:4170:1: ( rule__TypedTypeRefCS__Group_1__0 )
-                    // InternalOCLstdlib.g:4170:2: rule__TypedTypeRefCS__Group_1__0
+                    // InternalOCLstdlib.g:4172:1: ( rule__TypedTypeRefCS__Group_1__0 )
+                    // InternalOCLstdlib.g:4172:2: rule__TypedTypeRefCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypedTypeRefCS__Group_1__0();
@@ -13611,13 +13611,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLReservedKeyword__Alternatives"
-    // InternalOCLstdlib.g:4179:1: rule__EssentialOCLReservedKeyword__Alternatives : ( ( 'and' ) | ( 'and2' ) | ( 'else' ) | ( 'endif' ) | ( 'if' ) | ( 'implies' ) | ( 'implies2' ) | ( 'in' ) | ( 'let' ) | ( 'not' ) | ( 'not2' ) | ( 'or' ) | ( 'or2' ) | ( 'then' ) | ( 'xor' ) | ( 'xor2' ) );
+    // InternalOCLstdlib.g:4181:1: rule__EssentialOCLReservedKeyword__Alternatives : ( ( 'and' ) | ( 'and2' ) | ( 'else' ) | ( 'endif' ) | ( 'if' ) | ( 'implies' ) | ( 'implies2' ) | ( 'in' ) | ( 'let' ) | ( 'not' ) | ( 'not2' ) | ( 'or' ) | ( 'or2' ) | ( 'then' ) | ( 'xor' ) | ( 'xor2' ) );
     public final void rule__EssentialOCLReservedKeyword__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4183:1: ( ( 'and' ) | ( 'and2' ) | ( 'else' ) | ( 'endif' ) | ( 'if' ) | ( 'implies' ) | ( 'implies2' ) | ( 'in' ) | ( 'let' ) | ( 'not' ) | ( 'not2' ) | ( 'or' ) | ( 'or2' ) | ( 'then' ) | ( 'xor' ) | ( 'xor2' ) )
+            // InternalOCLstdlib.g:4185:1: ( ( 'and' ) | ( 'and2' ) | ( 'else' ) | ( 'endif' ) | ( 'if' ) | ( 'implies' ) | ( 'implies2' ) | ( 'in' ) | ( 'let' ) | ( 'not' ) | ( 'not2' ) | ( 'or' ) | ( 'or2' ) | ( 'then' ) | ( 'xor' ) | ( 'xor2' ) )
             int alt26=16;
             switch ( input.LA(1) ) {
             case 42:
@@ -13710,10 +13710,10 @@
 
             switch (alt26) {
                 case 1 :
-                    // InternalOCLstdlib.g:4184:1: ( 'and' )
+                    // InternalOCLstdlib.g:4186:1: ( 'and' )
                     {
-                    // InternalOCLstdlib.g:4184:1: ( 'and' )
-                    // InternalOCLstdlib.g:4185:1: 'and'
+                    // InternalOCLstdlib.g:4186:1: ( 'and' )
+                    // InternalOCLstdlib.g:4187:1: 'and'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getAndKeyword_0());
@@ -13729,10 +13729,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4192:6: ( 'and2' )
+                    // InternalOCLstdlib.g:4194:6: ( 'and2' )
                     {
-                    // InternalOCLstdlib.g:4192:6: ( 'and2' )
-                    // InternalOCLstdlib.g:4193:1: 'and2'
+                    // InternalOCLstdlib.g:4194:6: ( 'and2' )
+                    // InternalOCLstdlib.g:4195:1: 'and2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getAnd2Keyword_1());
@@ -13748,10 +13748,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4200:6: ( 'else' )
+                    // InternalOCLstdlib.g:4202:6: ( 'else' )
                     {
-                    // InternalOCLstdlib.g:4200:6: ( 'else' )
-                    // InternalOCLstdlib.g:4201:1: 'else'
+                    // InternalOCLstdlib.g:4202:6: ( 'else' )
+                    // InternalOCLstdlib.g:4203:1: 'else'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getElseKeyword_2());
@@ -13767,10 +13767,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:4208:6: ( 'endif' )
+                    // InternalOCLstdlib.g:4210:6: ( 'endif' )
                     {
-                    // InternalOCLstdlib.g:4208:6: ( 'endif' )
-                    // InternalOCLstdlib.g:4209:1: 'endif'
+                    // InternalOCLstdlib.g:4210:6: ( 'endif' )
+                    // InternalOCLstdlib.g:4211:1: 'endif'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getEndifKeyword_3());
@@ -13786,10 +13786,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLstdlib.g:4216:6: ( 'if' )
+                    // InternalOCLstdlib.g:4218:6: ( 'if' )
                     {
-                    // InternalOCLstdlib.g:4216:6: ( 'if' )
-                    // InternalOCLstdlib.g:4217:1: 'if'
+                    // InternalOCLstdlib.g:4218:6: ( 'if' )
+                    // InternalOCLstdlib.g:4219:1: 'if'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getIfKeyword_4());
@@ -13805,10 +13805,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLstdlib.g:4224:6: ( 'implies' )
+                    // InternalOCLstdlib.g:4226:6: ( 'implies' )
                     {
-                    // InternalOCLstdlib.g:4224:6: ( 'implies' )
-                    // InternalOCLstdlib.g:4225:1: 'implies'
+                    // InternalOCLstdlib.g:4226:6: ( 'implies' )
+                    // InternalOCLstdlib.g:4227:1: 'implies'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getImpliesKeyword_5());
@@ -13824,10 +13824,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLstdlib.g:4232:6: ( 'implies2' )
+                    // InternalOCLstdlib.g:4234:6: ( 'implies2' )
                     {
-                    // InternalOCLstdlib.g:4232:6: ( 'implies2' )
-                    // InternalOCLstdlib.g:4233:1: 'implies2'
+                    // InternalOCLstdlib.g:4234:6: ( 'implies2' )
+                    // InternalOCLstdlib.g:4235:1: 'implies2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getImplies2Keyword_6());
@@ -13843,10 +13843,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLstdlib.g:4240:6: ( 'in' )
+                    // InternalOCLstdlib.g:4242:6: ( 'in' )
                     {
-                    // InternalOCLstdlib.g:4240:6: ( 'in' )
-                    // InternalOCLstdlib.g:4241:1: 'in'
+                    // InternalOCLstdlib.g:4242:6: ( 'in' )
+                    // InternalOCLstdlib.g:4243:1: 'in'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getInKeyword_7());
@@ -13862,10 +13862,10 @@
                     }
                     break;
                 case 9 :
-                    // InternalOCLstdlib.g:4248:6: ( 'let' )
+                    // InternalOCLstdlib.g:4250:6: ( 'let' )
                     {
-                    // InternalOCLstdlib.g:4248:6: ( 'let' )
-                    // InternalOCLstdlib.g:4249:1: 'let'
+                    // InternalOCLstdlib.g:4250:6: ( 'let' )
+                    // InternalOCLstdlib.g:4251:1: 'let'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getLetKeyword_8());
@@ -13881,10 +13881,10 @@
                     }
                     break;
                 case 10 :
-                    // InternalOCLstdlib.g:4256:6: ( 'not' )
+                    // InternalOCLstdlib.g:4258:6: ( 'not' )
                     {
-                    // InternalOCLstdlib.g:4256:6: ( 'not' )
-                    // InternalOCLstdlib.g:4257:1: 'not'
+                    // InternalOCLstdlib.g:4258:6: ( 'not' )
+                    // InternalOCLstdlib.g:4259:1: 'not'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getNotKeyword_9());
@@ -13900,10 +13900,10 @@
                     }
                     break;
                 case 11 :
-                    // InternalOCLstdlib.g:4264:6: ( 'not2' )
+                    // InternalOCLstdlib.g:4266:6: ( 'not2' )
                     {
-                    // InternalOCLstdlib.g:4264:6: ( 'not2' )
-                    // InternalOCLstdlib.g:4265:1: 'not2'
+                    // InternalOCLstdlib.g:4266:6: ( 'not2' )
+                    // InternalOCLstdlib.g:4267:1: 'not2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getNot2Keyword_10());
@@ -13919,10 +13919,10 @@
                     }
                     break;
                 case 12 :
-                    // InternalOCLstdlib.g:4272:6: ( 'or' )
+                    // InternalOCLstdlib.g:4274:6: ( 'or' )
                     {
-                    // InternalOCLstdlib.g:4272:6: ( 'or' )
-                    // InternalOCLstdlib.g:4273:1: 'or'
+                    // InternalOCLstdlib.g:4274:6: ( 'or' )
+                    // InternalOCLstdlib.g:4275:1: 'or'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getOrKeyword_11());
@@ -13938,10 +13938,10 @@
                     }
                     break;
                 case 13 :
-                    // InternalOCLstdlib.g:4280:6: ( 'or2' )
+                    // InternalOCLstdlib.g:4282:6: ( 'or2' )
                     {
-                    // InternalOCLstdlib.g:4280:6: ( 'or2' )
-                    // InternalOCLstdlib.g:4281:1: 'or2'
+                    // InternalOCLstdlib.g:4282:6: ( 'or2' )
+                    // InternalOCLstdlib.g:4283:1: 'or2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getOr2Keyword_12());
@@ -13957,10 +13957,10 @@
                     }
                     break;
                 case 14 :
-                    // InternalOCLstdlib.g:4288:6: ( 'then' )
+                    // InternalOCLstdlib.g:4290:6: ( 'then' )
                     {
-                    // InternalOCLstdlib.g:4288:6: ( 'then' )
-                    // InternalOCLstdlib.g:4289:1: 'then'
+                    // InternalOCLstdlib.g:4290:6: ( 'then' )
+                    // InternalOCLstdlib.g:4291:1: 'then'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getThenKeyword_13());
@@ -13976,10 +13976,10 @@
                     }
                     break;
                 case 15 :
-                    // InternalOCLstdlib.g:4296:6: ( 'xor' )
+                    // InternalOCLstdlib.g:4298:6: ( 'xor' )
                     {
-                    // InternalOCLstdlib.g:4296:6: ( 'xor' )
-                    // InternalOCLstdlib.g:4297:1: 'xor'
+                    // InternalOCLstdlib.g:4298:6: ( 'xor' )
+                    // InternalOCLstdlib.g:4299:1: 'xor'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getXorKeyword_14());
@@ -13995,10 +13995,10 @@
                     }
                     break;
                 case 16 :
-                    // InternalOCLstdlib.g:4304:6: ( 'xor2' )
+                    // InternalOCLstdlib.g:4306:6: ( 'xor2' )
                     {
-                    // InternalOCLstdlib.g:4304:6: ( 'xor2' )
-                    // InternalOCLstdlib.g:4305:1: 'xor2'
+                    // InternalOCLstdlib.g:4306:6: ( 'xor2' )
+                    // InternalOCLstdlib.g:4307:1: 'xor2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLReservedKeywordAccess().getXor2Keyword_15());
@@ -14031,13 +14031,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLUnaryOperatorName__Alternatives"
-    // InternalOCLstdlib.g:4317:1: rule__EssentialOCLUnaryOperatorName__Alternatives : ( ( '-' ) | ( 'not' ) | ( 'not2' ) );
+    // InternalOCLstdlib.g:4319:1: rule__EssentialOCLUnaryOperatorName__Alternatives : ( ( '-' ) | ( 'not' ) | ( 'not2' ) );
     public final void rule__EssentialOCLUnaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4321:1: ( ( '-' ) | ( 'not' ) | ( 'not2' ) )
+            // InternalOCLstdlib.g:4323:1: ( ( '-' ) | ( 'not' ) | ( 'not2' ) )
             int alt27=3;
             switch ( input.LA(1) ) {
             case 58:
@@ -14065,10 +14065,10 @@
 
             switch (alt27) {
                 case 1 :
-                    // InternalOCLstdlib.g:4322:1: ( '-' )
+                    // InternalOCLstdlib.g:4324:1: ( '-' )
                     {
-                    // InternalOCLstdlib.g:4322:1: ( '-' )
-                    // InternalOCLstdlib.g:4323:1: '-'
+                    // InternalOCLstdlib.g:4324:1: ( '-' )
+                    // InternalOCLstdlib.g:4325:1: '-'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
@@ -14084,10 +14084,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4330:6: ( 'not' )
+                    // InternalOCLstdlib.g:4332:6: ( 'not' )
                     {
-                    // InternalOCLstdlib.g:4330:6: ( 'not' )
-                    // InternalOCLstdlib.g:4331:1: 'not'
+                    // InternalOCLstdlib.g:4332:6: ( 'not' )
+                    // InternalOCLstdlib.g:4333:1: 'not'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
@@ -14103,10 +14103,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4338:6: ( 'not2' )
+                    // InternalOCLstdlib.g:4340:6: ( 'not2' )
                     {
-                    // InternalOCLstdlib.g:4338:6: ( 'not2' )
-                    // InternalOCLstdlib.g:4339:1: 'not2'
+                    // InternalOCLstdlib.g:4340:6: ( 'not2' )
+                    // InternalOCLstdlib.g:4341:1: 'not2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNot2Keyword_2());
@@ -14139,13 +14139,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLInfixOperatorName__Alternatives"
-    // InternalOCLstdlib.g:4351:1: rule__EssentialOCLInfixOperatorName__Alternatives : ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) );
+    // InternalOCLstdlib.g:4353:1: rule__EssentialOCLInfixOperatorName__Alternatives : ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) );
     public final void rule__EssentialOCLInfixOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4355:1: ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) )
+            // InternalOCLstdlib.g:4357:1: ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'and2' ) | ( 'implies' ) | ( 'implies2' ) | ( 'or' ) | ( 'or2' ) | ( 'xor' ) | ( 'xor2' ) )
             int alt28=18;
             switch ( input.LA(1) ) {
             case 59:
@@ -14248,10 +14248,10 @@
 
             switch (alt28) {
                 case 1 :
-                    // InternalOCLstdlib.g:4356:1: ( '*' )
+                    // InternalOCLstdlib.g:4358:1: ( '*' )
                     {
-                    // InternalOCLstdlib.g:4356:1: ( '*' )
-                    // InternalOCLstdlib.g:4357:1: '*'
+                    // InternalOCLstdlib.g:4358:1: ( '*' )
+                    // InternalOCLstdlib.g:4359:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
@@ -14267,10 +14267,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4364:6: ( '/' )
+                    // InternalOCLstdlib.g:4366:6: ( '/' )
                     {
-                    // InternalOCLstdlib.g:4364:6: ( '/' )
-                    // InternalOCLstdlib.g:4365:1: '/'
+                    // InternalOCLstdlib.g:4366:6: ( '/' )
+                    // InternalOCLstdlib.g:4367:1: '/'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
@@ -14286,10 +14286,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4372:6: ( '+' )
+                    // InternalOCLstdlib.g:4374:6: ( '+' )
                     {
-                    // InternalOCLstdlib.g:4372:6: ( '+' )
-                    // InternalOCLstdlib.g:4373:1: '+'
+                    // InternalOCLstdlib.g:4374:6: ( '+' )
+                    // InternalOCLstdlib.g:4375:1: '+'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
@@ -14305,10 +14305,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:4380:6: ( '-' )
+                    // InternalOCLstdlib.g:4382:6: ( '-' )
                     {
-                    // InternalOCLstdlib.g:4380:6: ( '-' )
-                    // InternalOCLstdlib.g:4381:1: '-'
+                    // InternalOCLstdlib.g:4382:6: ( '-' )
+                    // InternalOCLstdlib.g:4383:1: '-'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
@@ -14324,10 +14324,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLstdlib.g:4388:6: ( '>' )
+                    // InternalOCLstdlib.g:4390:6: ( '>' )
                     {
-                    // InternalOCLstdlib.g:4388:6: ( '>' )
-                    // InternalOCLstdlib.g:4389:1: '>'
+                    // InternalOCLstdlib.g:4390:6: ( '>' )
+                    // InternalOCLstdlib.g:4391:1: '>'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
@@ -14343,10 +14343,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLstdlib.g:4396:6: ( '<' )
+                    // InternalOCLstdlib.g:4398:6: ( '<' )
                     {
-                    // InternalOCLstdlib.g:4396:6: ( '<' )
-                    // InternalOCLstdlib.g:4397:1: '<'
+                    // InternalOCLstdlib.g:4398:6: ( '<' )
+                    // InternalOCLstdlib.g:4399:1: '<'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
@@ -14362,10 +14362,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLstdlib.g:4404:6: ( '>=' )
+                    // InternalOCLstdlib.g:4406:6: ( '>=' )
                     {
-                    // InternalOCLstdlib.g:4404:6: ( '>=' )
-                    // InternalOCLstdlib.g:4405:1: '>='
+                    // InternalOCLstdlib.g:4406:6: ( '>=' )
+                    // InternalOCLstdlib.g:4407:1: '>='
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
@@ -14381,10 +14381,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLstdlib.g:4412:6: ( '<=' )
+                    // InternalOCLstdlib.g:4414:6: ( '<=' )
                     {
-                    // InternalOCLstdlib.g:4412:6: ( '<=' )
-                    // InternalOCLstdlib.g:4413:1: '<='
+                    // InternalOCLstdlib.g:4414:6: ( '<=' )
+                    // InternalOCLstdlib.g:4415:1: '<='
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
@@ -14400,10 +14400,10 @@
                     }
                     break;
                 case 9 :
-                    // InternalOCLstdlib.g:4420:6: ( '=' )
+                    // InternalOCLstdlib.g:4422:6: ( '=' )
                     {
-                    // InternalOCLstdlib.g:4420:6: ( '=' )
-                    // InternalOCLstdlib.g:4421:1: '='
+                    // InternalOCLstdlib.g:4422:6: ( '=' )
+                    // InternalOCLstdlib.g:4423:1: '='
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
@@ -14419,10 +14419,10 @@
                     }
                     break;
                 case 10 :
-                    // InternalOCLstdlib.g:4428:6: ( '<>' )
+                    // InternalOCLstdlib.g:4430:6: ( '<>' )
                     {
-                    // InternalOCLstdlib.g:4428:6: ( '<>' )
-                    // InternalOCLstdlib.g:4429:1: '<>'
+                    // InternalOCLstdlib.g:4430:6: ( '<>' )
+                    // InternalOCLstdlib.g:4431:1: '<>'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
@@ -14438,10 +14438,10 @@
                     }
                     break;
                 case 11 :
-                    // InternalOCLstdlib.g:4436:6: ( 'and' )
+                    // InternalOCLstdlib.g:4438:6: ( 'and' )
                     {
-                    // InternalOCLstdlib.g:4436:6: ( 'and' )
-                    // InternalOCLstdlib.g:4437:1: 'and'
+                    // InternalOCLstdlib.g:4438:6: ( 'and' )
+                    // InternalOCLstdlib.g:4439:1: 'and'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
@@ -14457,10 +14457,10 @@
                     }
                     break;
                 case 12 :
-                    // InternalOCLstdlib.g:4444:6: ( 'and2' )
+                    // InternalOCLstdlib.g:4446:6: ( 'and2' )
                     {
-                    // InternalOCLstdlib.g:4444:6: ( 'and2' )
-                    // InternalOCLstdlib.g:4445:1: 'and2'
+                    // InternalOCLstdlib.g:4446:6: ( 'and2' )
+                    // InternalOCLstdlib.g:4447:1: 'and2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAnd2Keyword_11());
@@ -14476,10 +14476,10 @@
                     }
                     break;
                 case 13 :
-                    // InternalOCLstdlib.g:4452:6: ( 'implies' )
+                    // InternalOCLstdlib.g:4454:6: ( 'implies' )
                     {
-                    // InternalOCLstdlib.g:4452:6: ( 'implies' )
-                    // InternalOCLstdlib.g:4453:1: 'implies'
+                    // InternalOCLstdlib.g:4454:6: ( 'implies' )
+                    // InternalOCLstdlib.g:4455:1: 'implies'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_12());
@@ -14495,10 +14495,10 @@
                     }
                     break;
                 case 14 :
-                    // InternalOCLstdlib.g:4460:6: ( 'implies2' )
+                    // InternalOCLstdlib.g:4462:6: ( 'implies2' )
                     {
-                    // InternalOCLstdlib.g:4460:6: ( 'implies2' )
-                    // InternalOCLstdlib.g:4461:1: 'implies2'
+                    // InternalOCLstdlib.g:4462:6: ( 'implies2' )
+                    // InternalOCLstdlib.g:4463:1: 'implies2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImplies2Keyword_13());
@@ -14514,10 +14514,10 @@
                     }
                     break;
                 case 15 :
-                    // InternalOCLstdlib.g:4468:6: ( 'or' )
+                    // InternalOCLstdlib.g:4470:6: ( 'or' )
                     {
-                    // InternalOCLstdlib.g:4468:6: ( 'or' )
-                    // InternalOCLstdlib.g:4469:1: 'or'
+                    // InternalOCLstdlib.g:4470:6: ( 'or' )
+                    // InternalOCLstdlib.g:4471:1: 'or'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_14());
@@ -14533,10 +14533,10 @@
                     }
                     break;
                 case 16 :
-                    // InternalOCLstdlib.g:4476:6: ( 'or2' )
+                    // InternalOCLstdlib.g:4478:6: ( 'or2' )
                     {
-                    // InternalOCLstdlib.g:4476:6: ( 'or2' )
-                    // InternalOCLstdlib.g:4477:1: 'or2'
+                    // InternalOCLstdlib.g:4478:6: ( 'or2' )
+                    // InternalOCLstdlib.g:4479:1: 'or2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOr2Keyword_15());
@@ -14552,10 +14552,10 @@
                     }
                     break;
                 case 17 :
-                    // InternalOCLstdlib.g:4484:6: ( 'xor' )
+                    // InternalOCLstdlib.g:4486:6: ( 'xor' )
                     {
-                    // InternalOCLstdlib.g:4484:6: ( 'xor' )
-                    // InternalOCLstdlib.g:4485:1: 'xor'
+                    // InternalOCLstdlib.g:4486:6: ( 'xor' )
+                    // InternalOCLstdlib.g:4487:1: 'xor'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_16());
@@ -14571,10 +14571,10 @@
                     }
                     break;
                 case 18 :
-                    // InternalOCLstdlib.g:4492:6: ( 'xor2' )
+                    // InternalOCLstdlib.g:4494:6: ( 'xor2' )
                     {
-                    // InternalOCLstdlib.g:4492:6: ( 'xor2' )
-                    // InternalOCLstdlib.g:4493:1: 'xor2'
+                    // InternalOCLstdlib.g:4494:6: ( 'xor2' )
+                    // InternalOCLstdlib.g:4495:1: 'xor2'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXor2Keyword_17());
@@ -14607,13 +14607,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLNavigationOperatorName__Alternatives"
-    // InternalOCLstdlib.g:4505:1: rule__EssentialOCLNavigationOperatorName__Alternatives : ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) );
+    // InternalOCLstdlib.g:4507:1: rule__EssentialOCLNavigationOperatorName__Alternatives : ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) );
     public final void rule__EssentialOCLNavigationOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4509:1: ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) )
+            // InternalOCLstdlib.g:4511:1: ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) )
             int alt29=4;
             switch ( input.LA(1) ) {
             case 68:
@@ -14646,10 +14646,10 @@
 
             switch (alt29) {
                 case 1 :
-                    // InternalOCLstdlib.g:4510:1: ( '.' )
+                    // InternalOCLstdlib.g:4512:1: ( '.' )
                     {
-                    // InternalOCLstdlib.g:4510:1: ( '.' )
-                    // InternalOCLstdlib.g:4511:1: '.'
+                    // InternalOCLstdlib.g:4512:1: ( '.' )
+                    // InternalOCLstdlib.g:4513:1: '.'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
@@ -14665,10 +14665,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4518:6: ( '->' )
+                    // InternalOCLstdlib.g:4520:6: ( '->' )
                     {
-                    // InternalOCLstdlib.g:4518:6: ( '->' )
-                    // InternalOCLstdlib.g:4519:1: '->'
+                    // InternalOCLstdlib.g:4520:6: ( '->' )
+                    // InternalOCLstdlib.g:4521:1: '->'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
@@ -14684,10 +14684,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4526:6: ( '?.' )
+                    // InternalOCLstdlib.g:4528:6: ( '?.' )
                     {
-                    // InternalOCLstdlib.g:4526:6: ( '?.' )
-                    // InternalOCLstdlib.g:4527:1: '?.'
+                    // InternalOCLstdlib.g:4528:6: ( '?.' )
+                    // InternalOCLstdlib.g:4529:1: '?.'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
@@ -14703,10 +14703,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:4534:6: ( '?->' )
+                    // InternalOCLstdlib.g:4536:6: ( '?->' )
                     {
-                    // InternalOCLstdlib.g:4534:6: ( '?->' )
-                    // InternalOCLstdlib.g:4535:1: '?->'
+                    // InternalOCLstdlib.g:4536:6: ( '?->' )
+                    // InternalOCLstdlib.g:4537:1: '?->'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
@@ -14739,13 +14739,13 @@
 
 
     // $ANTLR start "rule__BinaryOperatorName__Alternatives"
-    // InternalOCLstdlib.g:4547:1: rule__BinaryOperatorName__Alternatives : ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) );
+    // InternalOCLstdlib.g:4549:1: rule__BinaryOperatorName__Alternatives : ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) );
     public final void rule__BinaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4551:1: ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) )
+            // InternalOCLstdlib.g:4553:1: ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) )
             int alt30=2;
             int LA30_0 = input.LA(1);
 
@@ -14764,10 +14764,10 @@
             }
             switch (alt30) {
                 case 1 :
-                    // InternalOCLstdlib.g:4552:1: ( ruleInfixOperatorName )
+                    // InternalOCLstdlib.g:4554:1: ( ruleInfixOperatorName )
                     {
-                    // InternalOCLstdlib.g:4552:1: ( ruleInfixOperatorName )
-                    // InternalOCLstdlib.g:4553:1: ruleInfixOperatorName
+                    // InternalOCLstdlib.g:4554:1: ( ruleInfixOperatorName )
+                    // InternalOCLstdlib.g:4555:1: ruleInfixOperatorName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
@@ -14787,10 +14787,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4558:6: ( ruleNavigationOperatorName )
+                    // InternalOCLstdlib.g:4560:6: ( ruleNavigationOperatorName )
                     {
-                    // InternalOCLstdlib.g:4558:6: ( ruleNavigationOperatorName )
-                    // InternalOCLstdlib.g:4559:1: ruleNavigationOperatorName
+                    // InternalOCLstdlib.g:4560:6: ( ruleNavigationOperatorName )
+                    // InternalOCLstdlib.g:4561:1: ruleNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
@@ -14827,13 +14827,13 @@
 
 
     // $ANTLR start "rule__EssentialOCLUnreservedName__Alternatives"
-    // InternalOCLstdlib.g:4569:1: rule__EssentialOCLUnreservedName__Alternatives : ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) );
+    // InternalOCLstdlib.g:4571:1: rule__EssentialOCLUnreservedName__Alternatives : ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) );
     public final void rule__EssentialOCLUnreservedName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4573:1: ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) )
+            // InternalOCLstdlib.g:4575:1: ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) )
             int alt31=5;
             switch ( input.LA(1) ) {
             case RULE_SIMPLE_ID:
@@ -14905,10 +14905,10 @@
 
             switch (alt31) {
                 case 1 :
-                    // InternalOCLstdlib.g:4574:1: ( ruleUnrestrictedName )
+                    // InternalOCLstdlib.g:4576:1: ( ruleUnrestrictedName )
                     {
-                    // InternalOCLstdlib.g:4574:1: ( ruleUnrestrictedName )
-                    // InternalOCLstdlib.g:4575:1: ruleUnrestrictedName
+                    // InternalOCLstdlib.g:4576:1: ( ruleUnrestrictedName )
+                    // InternalOCLstdlib.g:4577:1: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
@@ -14928,10 +14928,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4580:6: ( ruleCollectionTypeIdentifier )
+                    // InternalOCLstdlib.g:4582:6: ( ruleCollectionTypeIdentifier )
                     {
-                    // InternalOCLstdlib.g:4580:6: ( ruleCollectionTypeIdentifier )
-                    // InternalOCLstdlib.g:4581:1: ruleCollectionTypeIdentifier
+                    // InternalOCLstdlib.g:4582:6: ( ruleCollectionTypeIdentifier )
+                    // InternalOCLstdlib.g:4583:1: ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
@@ -14951,10 +14951,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4586:6: ( rulePrimitiveTypeIdentifier )
+                    // InternalOCLstdlib.g:4588:6: ( rulePrimitiveTypeIdentifier )
                     {
-                    // InternalOCLstdlib.g:4586:6: ( rulePrimitiveTypeIdentifier )
-                    // InternalOCLstdlib.g:4587:1: rulePrimitiveTypeIdentifier
+                    // InternalOCLstdlib.g:4588:6: ( rulePrimitiveTypeIdentifier )
+                    // InternalOCLstdlib.g:4589:1: rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
@@ -14974,10 +14974,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:4592:6: ( 'Map' )
+                    // InternalOCLstdlib.g:4594:6: ( 'Map' )
                     {
-                    // InternalOCLstdlib.g:4592:6: ( 'Map' )
-                    // InternalOCLstdlib.g:4593:1: 'Map'
+                    // InternalOCLstdlib.g:4594:6: ( 'Map' )
+                    // InternalOCLstdlib.g:4595:1: 'Map'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
@@ -14993,10 +14993,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLstdlib.g:4600:6: ( 'Tuple' )
+                    // InternalOCLstdlib.g:4602:6: ( 'Tuple' )
                     {
-                    // InternalOCLstdlib.g:4600:6: ( 'Tuple' )
-                    // InternalOCLstdlib.g:4601:1: 'Tuple'
+                    // InternalOCLstdlib.g:4602:6: ( 'Tuple' )
+                    // InternalOCLstdlib.g:4603:1: 'Tuple'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
@@ -15029,13 +15029,13 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Alternatives"
-    // InternalOCLstdlib.g:4613:1: rule__URIFirstPathElementCS__Alternatives : ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) );
+    // InternalOCLstdlib.g:4615:1: rule__URIFirstPathElementCS__Alternatives : ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) );
     public final void rule__URIFirstPathElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4617:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) )
+            // InternalOCLstdlib.g:4619:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) )
             int alt32=2;
             int LA32_0 = input.LA(1);
 
@@ -15054,16 +15054,16 @@
             }
             switch (alt32) {
                 case 1 :
-                    // InternalOCLstdlib.g:4618:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
+                    // InternalOCLstdlib.g:4620:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
                     {
-                    // InternalOCLstdlib.g:4618:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
-                    // InternalOCLstdlib.g:4619:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
+                    // InternalOCLstdlib.g:4620:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) )
+                    // InternalOCLstdlib.g:4621:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0());
                     }
-                    // InternalOCLstdlib.g:4620:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
-                    // InternalOCLstdlib.g:4620:2: rule__URIFirstPathElementCS__ReferredElementAssignment_0
+                    // InternalOCLstdlib.g:4622:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
+                    // InternalOCLstdlib.g:4622:2: rule__URIFirstPathElementCS__ReferredElementAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__URIFirstPathElementCS__ReferredElementAssignment_0();
@@ -15083,16 +15083,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4624:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
+                    // InternalOCLstdlib.g:4626:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
                     {
-                    // InternalOCLstdlib.g:4624:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
-                    // InternalOCLstdlib.g:4625:1: ( rule__URIFirstPathElementCS__Group_1__0 )
+                    // InternalOCLstdlib.g:4626:6: ( ( rule__URIFirstPathElementCS__Group_1__0 ) )
+                    // InternalOCLstdlib.g:4627:1: ( rule__URIFirstPathElementCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1());
                     }
-                    // InternalOCLstdlib.g:4626:1: ( rule__URIFirstPathElementCS__Group_1__0 )
-                    // InternalOCLstdlib.g:4626:2: rule__URIFirstPathElementCS__Group_1__0
+                    // InternalOCLstdlib.g:4628:1: ( rule__URIFirstPathElementCS__Group_1__0 )
+                    // InternalOCLstdlib.g:4628:2: rule__URIFirstPathElementCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__URIFirstPathElementCS__Group_1__0();
@@ -15129,13 +15129,13 @@
 
 
     // $ANTLR start "rule__PrimitiveTypeIdentifier__Alternatives"
-    // InternalOCLstdlib.g:4635:1: rule__PrimitiveTypeIdentifier__Alternatives : ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) );
+    // InternalOCLstdlib.g:4637:1: rule__PrimitiveTypeIdentifier__Alternatives : ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) );
     public final void rule__PrimitiveTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4639:1: ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) )
+            // InternalOCLstdlib.g:4641:1: ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) )
             int alt33=8;
             switch ( input.LA(1) ) {
             case 72:
@@ -15188,10 +15188,10 @@
 
             switch (alt33) {
                 case 1 :
-                    // InternalOCLstdlib.g:4640:1: ( 'Boolean' )
+                    // InternalOCLstdlib.g:4642:1: ( 'Boolean' )
                     {
-                    // InternalOCLstdlib.g:4640:1: ( 'Boolean' )
-                    // InternalOCLstdlib.g:4641:1: 'Boolean'
+                    // InternalOCLstdlib.g:4642:1: ( 'Boolean' )
+                    // InternalOCLstdlib.g:4643:1: 'Boolean'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
@@ -15207,10 +15207,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4648:6: ( 'Integer' )
+                    // InternalOCLstdlib.g:4650:6: ( 'Integer' )
                     {
-                    // InternalOCLstdlib.g:4648:6: ( 'Integer' )
-                    // InternalOCLstdlib.g:4649:1: 'Integer'
+                    // InternalOCLstdlib.g:4650:6: ( 'Integer' )
+                    // InternalOCLstdlib.g:4651:1: 'Integer'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
@@ -15226,10 +15226,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4656:6: ( 'Real' )
+                    // InternalOCLstdlib.g:4658:6: ( 'Real' )
                     {
-                    // InternalOCLstdlib.g:4656:6: ( 'Real' )
-                    // InternalOCLstdlib.g:4657:1: 'Real'
+                    // InternalOCLstdlib.g:4658:6: ( 'Real' )
+                    // InternalOCLstdlib.g:4659:1: 'Real'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
@@ -15245,10 +15245,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:4664:6: ( 'String' )
+                    // InternalOCLstdlib.g:4666:6: ( 'String' )
                     {
-                    // InternalOCLstdlib.g:4664:6: ( 'String' )
-                    // InternalOCLstdlib.g:4665:1: 'String'
+                    // InternalOCLstdlib.g:4666:6: ( 'String' )
+                    // InternalOCLstdlib.g:4667:1: 'String'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
@@ -15264,10 +15264,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLstdlib.g:4672:6: ( 'UnlimitedNatural' )
+                    // InternalOCLstdlib.g:4674:6: ( 'UnlimitedNatural' )
                     {
-                    // InternalOCLstdlib.g:4672:6: ( 'UnlimitedNatural' )
-                    // InternalOCLstdlib.g:4673:1: 'UnlimitedNatural'
+                    // InternalOCLstdlib.g:4674:6: ( 'UnlimitedNatural' )
+                    // InternalOCLstdlib.g:4675:1: 'UnlimitedNatural'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
@@ -15283,10 +15283,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLstdlib.g:4680:6: ( 'OclAny' )
+                    // InternalOCLstdlib.g:4682:6: ( 'OclAny' )
                     {
-                    // InternalOCLstdlib.g:4680:6: ( 'OclAny' )
-                    // InternalOCLstdlib.g:4681:1: 'OclAny'
+                    // InternalOCLstdlib.g:4682:6: ( 'OclAny' )
+                    // InternalOCLstdlib.g:4683:1: 'OclAny'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
@@ -15302,10 +15302,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLstdlib.g:4688:6: ( 'OclInvalid' )
+                    // InternalOCLstdlib.g:4690:6: ( 'OclInvalid' )
                     {
-                    // InternalOCLstdlib.g:4688:6: ( 'OclInvalid' )
-                    // InternalOCLstdlib.g:4689:1: 'OclInvalid'
+                    // InternalOCLstdlib.g:4690:6: ( 'OclInvalid' )
+                    // InternalOCLstdlib.g:4691:1: 'OclInvalid'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
@@ -15321,10 +15321,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLstdlib.g:4696:6: ( 'OclVoid' )
+                    // InternalOCLstdlib.g:4698:6: ( 'OclVoid' )
                     {
-                    // InternalOCLstdlib.g:4696:6: ( 'OclVoid' )
-                    // InternalOCLstdlib.g:4697:1: 'OclVoid'
+                    // InternalOCLstdlib.g:4698:6: ( 'OclVoid' )
+                    // InternalOCLstdlib.g:4699:1: 'OclVoid'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
@@ -15357,13 +15357,13 @@
 
 
     // $ANTLR start "rule__CollectionTypeIdentifier__Alternatives"
-    // InternalOCLstdlib.g:4709:1: rule__CollectionTypeIdentifier__Alternatives : ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) );
+    // InternalOCLstdlib.g:4711:1: rule__CollectionTypeIdentifier__Alternatives : ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) );
     public final void rule__CollectionTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4713:1: ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) )
+            // InternalOCLstdlib.g:4715:1: ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) )
             int alt34=5;
             switch ( input.LA(1) ) {
             case 80:
@@ -15401,10 +15401,10 @@
 
             switch (alt34) {
                 case 1 :
-                    // InternalOCLstdlib.g:4714:1: ( 'Set' )
+                    // InternalOCLstdlib.g:4716:1: ( 'Set' )
                     {
-                    // InternalOCLstdlib.g:4714:1: ( 'Set' )
-                    // InternalOCLstdlib.g:4715:1: 'Set'
+                    // InternalOCLstdlib.g:4716:1: ( 'Set' )
+                    // InternalOCLstdlib.g:4717:1: 'Set'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
@@ -15420,10 +15420,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4722:6: ( 'Bag' )
+                    // InternalOCLstdlib.g:4724:6: ( 'Bag' )
                     {
-                    // InternalOCLstdlib.g:4722:6: ( 'Bag' )
-                    // InternalOCLstdlib.g:4723:1: 'Bag'
+                    // InternalOCLstdlib.g:4724:6: ( 'Bag' )
+                    // InternalOCLstdlib.g:4725:1: 'Bag'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
@@ -15439,10 +15439,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4730:6: ( 'Sequence' )
+                    // InternalOCLstdlib.g:4732:6: ( 'Sequence' )
                     {
-                    // InternalOCLstdlib.g:4730:6: ( 'Sequence' )
-                    // InternalOCLstdlib.g:4731:1: 'Sequence'
+                    // InternalOCLstdlib.g:4732:6: ( 'Sequence' )
+                    // InternalOCLstdlib.g:4733:1: 'Sequence'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
@@ -15458,10 +15458,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:4738:6: ( 'Collection' )
+                    // InternalOCLstdlib.g:4740:6: ( 'Collection' )
                     {
-                    // InternalOCLstdlib.g:4738:6: ( 'Collection' )
-                    // InternalOCLstdlib.g:4739:1: 'Collection'
+                    // InternalOCLstdlib.g:4740:6: ( 'Collection' )
+                    // InternalOCLstdlib.g:4741:1: 'Collection'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
@@ -15477,10 +15477,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLstdlib.g:4746:6: ( 'OrderedSet' )
+                    // InternalOCLstdlib.g:4748:6: ( 'OrderedSet' )
                     {
-                    // InternalOCLstdlib.g:4746:6: ( 'OrderedSet' )
-                    // InternalOCLstdlib.g:4747:1: 'OrderedSet'
+                    // InternalOCLstdlib.g:4748:6: ( 'OrderedSet' )
+                    // InternalOCLstdlib.g:4749:1: 'OrderedSet'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
@@ -15513,27 +15513,27 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Alternatives"
-    // InternalOCLstdlib.g:4759:1: rule__CollectionLiteralPartCS__Alternatives : ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) );
+    // InternalOCLstdlib.g:4761:1: rule__CollectionLiteralPartCS__Alternatives : ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) );
     public final void rule__CollectionLiteralPartCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4763:1: ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) )
+            // InternalOCLstdlib.g:4765:1: ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) )
             int alt35=2;
             alt35 = dfa35.predict(input);
             switch (alt35) {
                 case 1 :
-                    // InternalOCLstdlib.g:4764:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:4766:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:4764:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
-                    // InternalOCLstdlib.g:4765:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
+                    // InternalOCLstdlib.g:4766:1: ( ( rule__CollectionLiteralPartCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:4767:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0());
                     }
-                    // InternalOCLstdlib.g:4766:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
-                    // InternalOCLstdlib.g:4766:2: rule__CollectionLiteralPartCS__Group_0__0
+                    // InternalOCLstdlib.g:4768:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
+                    // InternalOCLstdlib.g:4768:2: rule__CollectionLiteralPartCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralPartCS__Group_0__0();
@@ -15553,16 +15553,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4770:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
+                    // InternalOCLstdlib.g:4772:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
                     {
-                    // InternalOCLstdlib.g:4770:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
-                    // InternalOCLstdlib.g:4771:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
+                    // InternalOCLstdlib.g:4772:6: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) )
+                    // InternalOCLstdlib.g:4773:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1());
                     }
-                    // InternalOCLstdlib.g:4772:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
-                    // InternalOCLstdlib.g:4772:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1
+                    // InternalOCLstdlib.g:4774:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
+                    // InternalOCLstdlib.g:4774:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1();
@@ -15599,13 +15599,13 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Alternatives"
-    // InternalOCLstdlib.g:4781:1: rule__ShadowPartCS__Alternatives : ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) );
+    // InternalOCLstdlib.g:4783:1: rule__ShadowPartCS__Alternatives : ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) );
     public final void rule__ShadowPartCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4785:1: ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) )
+            // InternalOCLstdlib.g:4787:1: ( ( ( rule__ShadowPartCS__Group_0__0 ) ) | ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) ) )
             int alt36=2;
             int LA36_0 = input.LA(1);
 
@@ -15624,16 +15624,16 @@
             }
             switch (alt36) {
                 case 1 :
-                    // InternalOCLstdlib.g:4786:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:4788:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:4786:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
-                    // InternalOCLstdlib.g:4787:1: ( rule__ShadowPartCS__Group_0__0 )
+                    // InternalOCLstdlib.g:4788:1: ( ( rule__ShadowPartCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:4789:1: ( rule__ShadowPartCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getGroup_0());
                     }
-                    // InternalOCLstdlib.g:4788:1: ( rule__ShadowPartCS__Group_0__0 )
-                    // InternalOCLstdlib.g:4788:2: rule__ShadowPartCS__Group_0__0
+                    // InternalOCLstdlib.g:4790:1: ( rule__ShadowPartCS__Group_0__0 )
+                    // InternalOCLstdlib.g:4790:2: rule__ShadowPartCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ShadowPartCS__Group_0__0();
@@ -15653,16 +15653,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4792:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
+                    // InternalOCLstdlib.g:4794:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
                     {
-                    // InternalOCLstdlib.g:4792:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
-                    // InternalOCLstdlib.g:4793:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
+                    // InternalOCLstdlib.g:4794:6: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 ) )
+                    // InternalOCLstdlib.g:4795:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_1());
                     }
-                    // InternalOCLstdlib.g:4794:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
-                    // InternalOCLstdlib.g:4794:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_1
+                    // InternalOCLstdlib.g:4796:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_1 )
+                    // InternalOCLstdlib.g:4796:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ShadowPartCS__OwnedInitExpressionAssignment_1();
@@ -15699,21 +15699,21 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0"
-    // InternalOCLstdlib.g:4803:1: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
+    // InternalOCLstdlib.g:4805:1: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
     public final void rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4807:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
+            // InternalOCLstdlib.g:4809:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt37=2;
             alt37 = dfa37.predict(input);
             switch (alt37) {
                 case 1 :
-                    // InternalOCLstdlib.g:4808:1: ( ruleExpCS )
+                    // InternalOCLstdlib.g:4810:1: ( ruleExpCS )
                     {
-                    // InternalOCLstdlib.g:4808:1: ( ruleExpCS )
-                    // InternalOCLstdlib.g:4809:1: ruleExpCS
+                    // InternalOCLstdlib.g:4810:1: ( ruleExpCS )
+                    // InternalOCLstdlib.g:4811:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_2_0_0());
@@ -15733,10 +15733,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4814:6: ( rulePatternExpCS )
+                    // InternalOCLstdlib.g:4816:6: ( rulePatternExpCS )
                     {
-                    // InternalOCLstdlib.g:4814:6: ( rulePatternExpCS )
-                    // InternalOCLstdlib.g:4815:1: rulePatternExpCS
+                    // InternalOCLstdlib.g:4816:6: ( rulePatternExpCS )
+                    // InternalOCLstdlib.g:4817:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_0_2_0_1());
@@ -15773,13 +15773,13 @@
 
 
     // $ANTLR start "rule__PrimitiveLiteralExpCS__Alternatives"
-    // InternalOCLstdlib.g:4825:1: rule__PrimitiveLiteralExpCS__Alternatives : ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) );
+    // InternalOCLstdlib.g:4827:1: rule__PrimitiveLiteralExpCS__Alternatives : ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) );
     public final void rule__PrimitiveLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4829:1: ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) )
+            // InternalOCLstdlib.g:4831:1: ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) )
             int alt38=6;
             switch ( input.LA(1) ) {
             case RULE_INT:
@@ -15823,10 +15823,10 @@
 
             switch (alt38) {
                 case 1 :
-                    // InternalOCLstdlib.g:4830:1: ( ruleNumberLiteralExpCS )
+                    // InternalOCLstdlib.g:4832:1: ( ruleNumberLiteralExpCS )
                     {
-                    // InternalOCLstdlib.g:4830:1: ( ruleNumberLiteralExpCS )
-                    // InternalOCLstdlib.g:4831:1: ruleNumberLiteralExpCS
+                    // InternalOCLstdlib.g:4832:1: ( ruleNumberLiteralExpCS )
+                    // InternalOCLstdlib.g:4833:1: ruleNumberLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
@@ -15846,10 +15846,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4836:6: ( ruleStringLiteralExpCS )
+                    // InternalOCLstdlib.g:4838:6: ( ruleStringLiteralExpCS )
                     {
-                    // InternalOCLstdlib.g:4836:6: ( ruleStringLiteralExpCS )
-                    // InternalOCLstdlib.g:4837:1: ruleStringLiteralExpCS
+                    // InternalOCLstdlib.g:4838:6: ( ruleStringLiteralExpCS )
+                    // InternalOCLstdlib.g:4839:1: ruleStringLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
@@ -15869,10 +15869,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4842:6: ( ruleBooleanLiteralExpCS )
+                    // InternalOCLstdlib.g:4844:6: ( ruleBooleanLiteralExpCS )
                     {
-                    // InternalOCLstdlib.g:4842:6: ( ruleBooleanLiteralExpCS )
-                    // InternalOCLstdlib.g:4843:1: ruleBooleanLiteralExpCS
+                    // InternalOCLstdlib.g:4844:6: ( ruleBooleanLiteralExpCS )
+                    // InternalOCLstdlib.g:4845:1: ruleBooleanLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
@@ -15892,10 +15892,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:4848:6: ( ruleUnlimitedNaturalLiteralExpCS )
+                    // InternalOCLstdlib.g:4850:6: ( ruleUnlimitedNaturalLiteralExpCS )
                     {
-                    // InternalOCLstdlib.g:4848:6: ( ruleUnlimitedNaturalLiteralExpCS )
-                    // InternalOCLstdlib.g:4849:1: ruleUnlimitedNaturalLiteralExpCS
+                    // InternalOCLstdlib.g:4850:6: ( ruleUnlimitedNaturalLiteralExpCS )
+                    // InternalOCLstdlib.g:4851:1: ruleUnlimitedNaturalLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
@@ -15915,10 +15915,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLstdlib.g:4854:6: ( ruleInvalidLiteralExpCS )
+                    // InternalOCLstdlib.g:4856:6: ( ruleInvalidLiteralExpCS )
                     {
-                    // InternalOCLstdlib.g:4854:6: ( ruleInvalidLiteralExpCS )
-                    // InternalOCLstdlib.g:4855:1: ruleInvalidLiteralExpCS
+                    // InternalOCLstdlib.g:4856:6: ( ruleInvalidLiteralExpCS )
+                    // InternalOCLstdlib.g:4857:1: ruleInvalidLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
@@ -15938,10 +15938,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLstdlib.g:4860:6: ( ruleNullLiteralExpCS )
+                    // InternalOCLstdlib.g:4862:6: ( ruleNullLiteralExpCS )
                     {
-                    // InternalOCLstdlib.g:4860:6: ( ruleNullLiteralExpCS )
-                    // InternalOCLstdlib.g:4861:1: ruleNullLiteralExpCS
+                    // InternalOCLstdlib.g:4862:6: ( ruleNullLiteralExpCS )
+                    // InternalOCLstdlib.g:4863:1: ruleNullLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
@@ -15978,13 +15978,13 @@
 
 
     // $ANTLR start "rule__BooleanLiteralExpCS__Alternatives"
-    // InternalOCLstdlib.g:4871:1: rule__BooleanLiteralExpCS__Alternatives : ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) );
+    // InternalOCLstdlib.g:4873:1: rule__BooleanLiteralExpCS__Alternatives : ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) );
     public final void rule__BooleanLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4875:1: ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) )
+            // InternalOCLstdlib.g:4877:1: ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) )
             int alt39=2;
             int LA39_0 = input.LA(1);
 
@@ -16003,16 +16003,16 @@
             }
             switch (alt39) {
                 case 1 :
-                    // InternalOCLstdlib.g:4876:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
+                    // InternalOCLstdlib.g:4878:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
                     {
-                    // InternalOCLstdlib.g:4876:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
-                    // InternalOCLstdlib.g:4877:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
+                    // InternalOCLstdlib.g:4878:1: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) )
+                    // InternalOCLstdlib.g:4879:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0());
                     }
-                    // InternalOCLstdlib.g:4878:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
-                    // InternalOCLstdlib.g:4878:2: rule__BooleanLiteralExpCS__SymbolAssignment_0
+                    // InternalOCLstdlib.g:4880:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
+                    // InternalOCLstdlib.g:4880:2: rule__BooleanLiteralExpCS__SymbolAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__BooleanLiteralExpCS__SymbolAssignment_0();
@@ -16032,16 +16032,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4882:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
+                    // InternalOCLstdlib.g:4884:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
                     {
-                    // InternalOCLstdlib.g:4882:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
-                    // InternalOCLstdlib.g:4883:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
+                    // InternalOCLstdlib.g:4884:6: ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) )
+                    // InternalOCLstdlib.g:4885:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1());
                     }
-                    // InternalOCLstdlib.g:4884:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
-                    // InternalOCLstdlib.g:4884:2: rule__BooleanLiteralExpCS__SymbolAssignment_1
+                    // InternalOCLstdlib.g:4886:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
+                    // InternalOCLstdlib.g:4886:2: rule__BooleanLiteralExpCS__SymbolAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__BooleanLiteralExpCS__SymbolAssignment_1();
@@ -16078,13 +16078,13 @@
 
 
     // $ANTLR start "rule__TypeLiteralCS__Alternatives"
-    // InternalOCLstdlib.g:4893:1: rule__TypeLiteralCS__Alternatives : ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) );
+    // InternalOCLstdlib.g:4895:1: rule__TypeLiteralCS__Alternatives : ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) );
     public final void rule__TypeLiteralCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4897:1: ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) )
+            // InternalOCLstdlib.g:4899:1: ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) )
             int alt40=4;
             switch ( input.LA(1) ) {
             case 72:
@@ -16128,10 +16128,10 @@
 
             switch (alt40) {
                 case 1 :
-                    // InternalOCLstdlib.g:4898:1: ( rulePrimitiveTypeCS )
+                    // InternalOCLstdlib.g:4900:1: ( rulePrimitiveTypeCS )
                     {
-                    // InternalOCLstdlib.g:4898:1: ( rulePrimitiveTypeCS )
-                    // InternalOCLstdlib.g:4899:1: rulePrimitiveTypeCS
+                    // InternalOCLstdlib.g:4900:1: ( rulePrimitiveTypeCS )
+                    // InternalOCLstdlib.g:4901:1: rulePrimitiveTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
@@ -16151,10 +16151,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4904:6: ( ruleCollectionTypeCS )
+                    // InternalOCLstdlib.g:4906:6: ( ruleCollectionTypeCS )
                     {
-                    // InternalOCLstdlib.g:4904:6: ( ruleCollectionTypeCS )
-                    // InternalOCLstdlib.g:4905:1: ruleCollectionTypeCS
+                    // InternalOCLstdlib.g:4906:6: ( ruleCollectionTypeCS )
+                    // InternalOCLstdlib.g:4907:1: ruleCollectionTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
@@ -16174,10 +16174,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4910:6: ( ruleMapTypeCS )
+                    // InternalOCLstdlib.g:4912:6: ( ruleMapTypeCS )
                     {
-                    // InternalOCLstdlib.g:4910:6: ( ruleMapTypeCS )
-                    // InternalOCLstdlib.g:4911:1: ruleMapTypeCS
+                    // InternalOCLstdlib.g:4912:6: ( ruleMapTypeCS )
+                    // InternalOCLstdlib.g:4913:1: ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
@@ -16197,10 +16197,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:4916:6: ( ruleTupleTypeCS )
+                    // InternalOCLstdlib.g:4918:6: ( ruleTupleTypeCS )
                     {
-                    // InternalOCLstdlib.g:4916:6: ( ruleTupleTypeCS )
-                    // InternalOCLstdlib.g:4917:1: ruleTupleTypeCS
+                    // InternalOCLstdlib.g:4918:6: ( ruleTupleTypeCS )
+                    // InternalOCLstdlib.g:4919:1: ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
@@ -16237,21 +16237,21 @@
 
 
     // $ANTLR start "rule__TypeExpWithoutMultiplicityCS__Alternatives"
-    // InternalOCLstdlib.g:4927:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );
+    // InternalOCLstdlib.g:4929:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );
     public final void rule__TypeExpWithoutMultiplicityCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4931:1: ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) )
+            // InternalOCLstdlib.g:4933:1: ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) )
             int alt41=3;
             alt41 = dfa41.predict(input);
             switch (alt41) {
                 case 1 :
-                    // InternalOCLstdlib.g:4932:1: ( ruleTypeNameExpCS )
+                    // InternalOCLstdlib.g:4934:1: ( ruleTypeNameExpCS )
                     {
-                    // InternalOCLstdlib.g:4932:1: ( ruleTypeNameExpCS )
-                    // InternalOCLstdlib.g:4933:1: ruleTypeNameExpCS
+                    // InternalOCLstdlib.g:4934:1: ( ruleTypeNameExpCS )
+                    // InternalOCLstdlib.g:4935:1: ruleTypeNameExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeNameExpCSParserRuleCall_0());
@@ -16271,10 +16271,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4938:6: ( ruleTypeLiteralCS )
+                    // InternalOCLstdlib.g:4940:6: ( ruleTypeLiteralCS )
                     {
-                    // InternalOCLstdlib.g:4938:6: ( ruleTypeLiteralCS )
-                    // InternalOCLstdlib.g:4939:1: ruleTypeLiteralCS
+                    // InternalOCLstdlib.g:4940:6: ( ruleTypeLiteralCS )
+                    // InternalOCLstdlib.g:4941:1: ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_1());
@@ -16294,10 +16294,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:4944:6: ( ruleCollectionPatternCS )
+                    // InternalOCLstdlib.g:4946:6: ( ruleCollectionPatternCS )
                     {
-                    // InternalOCLstdlib.g:4944:6: ( ruleCollectionPatternCS )
-                    // InternalOCLstdlib.g:4945:1: ruleCollectionPatternCS
+                    // InternalOCLstdlib.g:4946:6: ( ruleCollectionPatternCS )
+                    // InternalOCLstdlib.g:4947:1: ruleCollectionPatternCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getCollectionPatternCSParserRuleCall_2());
@@ -16334,27 +16334,27 @@
 
 
     // $ANTLR start "rule__ExpCS__Alternatives"
-    // InternalOCLstdlib.g:4955:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );
+    // InternalOCLstdlib.g:4957:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );
     public final void rule__ExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4959:1: ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) )
+            // InternalOCLstdlib.g:4961:1: ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) )
             int alt42=2;
             alt42 = dfa42.predict(input);
             switch (alt42) {
                 case 1 :
-                    // InternalOCLstdlib.g:4960:1: ( ( rule__ExpCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:4962:1: ( ( rule__ExpCS__Group_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:4960:1: ( ( rule__ExpCS__Group_0__0 ) )
-                    // InternalOCLstdlib.g:4961:1: ( rule__ExpCS__Group_0__0 )
+                    // InternalOCLstdlib.g:4962:1: ( ( rule__ExpCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:4963:1: ( rule__ExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getExpCSAccess().getGroup_0());
                     }
-                    // InternalOCLstdlib.g:4962:1: ( rule__ExpCS__Group_0__0 )
-                    // InternalOCLstdlib.g:4962:2: rule__ExpCS__Group_0__0
+                    // InternalOCLstdlib.g:4964:1: ( rule__ExpCS__Group_0__0 )
+                    // InternalOCLstdlib.g:4964:2: rule__ExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ExpCS__Group_0__0();
@@ -16374,10 +16374,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4966:6: ( rulePrefixedLetExpCS )
+                    // InternalOCLstdlib.g:4968:6: ( rulePrefixedLetExpCS )
                     {
-                    // InternalOCLstdlib.g:4966:6: ( rulePrefixedLetExpCS )
-                    // InternalOCLstdlib.g:4967:1: rulePrefixedLetExpCS
+                    // InternalOCLstdlib.g:4968:6: ( rulePrefixedLetExpCS )
+                    // InternalOCLstdlib.g:4969:1: rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
@@ -16414,13 +16414,13 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Alternatives"
-    // InternalOCLstdlib.g:4977:1: rule__PrefixedLetExpCS__Alternatives : ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) );
+    // InternalOCLstdlib.g:4979:1: rule__PrefixedLetExpCS__Alternatives : ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) );
     public final void rule__PrefixedLetExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:4981:1: ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) )
+            // InternalOCLstdlib.g:4983:1: ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) )
             int alt43=2;
             int LA43_0 = input.LA(1);
 
@@ -16439,16 +16439,16 @@
             }
             switch (alt43) {
                 case 1 :
-                    // InternalOCLstdlib.g:4982:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:4984:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:4982:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
-                    // InternalOCLstdlib.g:4983:1: ( rule__PrefixedLetExpCS__Group_0__0 )
+                    // InternalOCLstdlib.g:4984:1: ( ( rule__PrefixedLetExpCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:4985:1: ( rule__PrefixedLetExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0());
                     }
-                    // InternalOCLstdlib.g:4984:1: ( rule__PrefixedLetExpCS__Group_0__0 )
-                    // InternalOCLstdlib.g:4984:2: rule__PrefixedLetExpCS__Group_0__0
+                    // InternalOCLstdlib.g:4986:1: ( rule__PrefixedLetExpCS__Group_0__0 )
+                    // InternalOCLstdlib.g:4986:2: rule__PrefixedLetExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PrefixedLetExpCS__Group_0__0();
@@ -16468,10 +16468,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:4988:6: ( ruleLetExpCS )
+                    // InternalOCLstdlib.g:4990:6: ( ruleLetExpCS )
                     {
-                    // InternalOCLstdlib.g:4988:6: ( ruleLetExpCS )
-                    // InternalOCLstdlib.g:4989:1: ruleLetExpCS
+                    // InternalOCLstdlib.g:4990:6: ( ruleLetExpCS )
+                    // InternalOCLstdlib.g:4991:1: ruleLetExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
@@ -16508,13 +16508,13 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Alternatives"
-    // InternalOCLstdlib.g:4999:1: rule__PrefixedPrimaryExpCS__Alternatives : ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) );
+    // InternalOCLstdlib.g:5001:1: rule__PrefixedPrimaryExpCS__Alternatives : ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) );
     public final void rule__PrefixedPrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5003:1: ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) )
+            // InternalOCLstdlib.g:5005:1: ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) )
             int alt44=2;
             int LA44_0 = input.LA(1);
 
@@ -16533,16 +16533,16 @@
             }
             switch (alt44) {
                 case 1 :
-                    // InternalOCLstdlib.g:5004:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:5006:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:5004:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
-                    // InternalOCLstdlib.g:5005:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
+                    // InternalOCLstdlib.g:5006:1: ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:5007:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0());
                     }
-                    // InternalOCLstdlib.g:5006:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
-                    // InternalOCLstdlib.g:5006:2: rule__PrefixedPrimaryExpCS__Group_0__0
+                    // InternalOCLstdlib.g:5008:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
+                    // InternalOCLstdlib.g:5008:2: rule__PrefixedPrimaryExpCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PrefixedPrimaryExpCS__Group_0__0();
@@ -16562,10 +16562,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5010:6: ( rulePrimaryExpCS )
+                    // InternalOCLstdlib.g:5012:6: ( rulePrimaryExpCS )
                     {
-                    // InternalOCLstdlib.g:5010:6: ( rulePrimaryExpCS )
-                    // InternalOCLstdlib.g:5011:1: rulePrimaryExpCS
+                    // InternalOCLstdlib.g:5012:6: ( rulePrimaryExpCS )
+                    // InternalOCLstdlib.g:5013:1: rulePrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
@@ -16602,21 +16602,21 @@
 
 
     // $ANTLR start "rule__PrimaryExpCS__Alternatives"
-    // InternalOCLstdlib.g:5021:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );
+    // InternalOCLstdlib.g:5023:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );
     public final void rule__PrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5025:1: ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) )
+            // InternalOCLstdlib.g:5027:1: ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) )
             int alt45=10;
             alt45 = dfa45.predict(input);
             switch (alt45) {
                 case 1 :
-                    // InternalOCLstdlib.g:5026:1: ( ruleNestedExpCS )
+                    // InternalOCLstdlib.g:5028:1: ( ruleNestedExpCS )
                     {
-                    // InternalOCLstdlib.g:5026:1: ( ruleNestedExpCS )
-                    // InternalOCLstdlib.g:5027:1: ruleNestedExpCS
+                    // InternalOCLstdlib.g:5028:1: ( ruleNestedExpCS )
+                    // InternalOCLstdlib.g:5029:1: ruleNestedExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
@@ -16636,10 +16636,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5032:6: ( ruleIfExpCS )
+                    // InternalOCLstdlib.g:5034:6: ( ruleIfExpCS )
                     {
-                    // InternalOCLstdlib.g:5032:6: ( ruleIfExpCS )
-                    // InternalOCLstdlib.g:5033:1: ruleIfExpCS
+                    // InternalOCLstdlib.g:5034:6: ( ruleIfExpCS )
+                    // InternalOCLstdlib.g:5035:1: ruleIfExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
@@ -16659,10 +16659,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:5038:6: ( ruleSelfExpCS )
+                    // InternalOCLstdlib.g:5040:6: ( ruleSelfExpCS )
                     {
-                    // InternalOCLstdlib.g:5038:6: ( ruleSelfExpCS )
-                    // InternalOCLstdlib.g:5039:1: ruleSelfExpCS
+                    // InternalOCLstdlib.g:5040:6: ( ruleSelfExpCS )
+                    // InternalOCLstdlib.g:5041:1: ruleSelfExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
@@ -16682,10 +16682,10 @@
                     }
                     break;
                 case 4 :
-                    // InternalOCLstdlib.g:5044:6: ( rulePrimitiveLiteralExpCS )
+                    // InternalOCLstdlib.g:5046:6: ( rulePrimitiveLiteralExpCS )
                     {
-                    // InternalOCLstdlib.g:5044:6: ( rulePrimitiveLiteralExpCS )
-                    // InternalOCLstdlib.g:5045:1: rulePrimitiveLiteralExpCS
+                    // InternalOCLstdlib.g:5046:6: ( rulePrimitiveLiteralExpCS )
+                    // InternalOCLstdlib.g:5047:1: rulePrimitiveLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
@@ -16705,10 +16705,10 @@
                     }
                     break;
                 case 5 :
-                    // InternalOCLstdlib.g:5050:6: ( ruleTupleLiteralExpCS )
+                    // InternalOCLstdlib.g:5052:6: ( ruleTupleLiteralExpCS )
                     {
-                    // InternalOCLstdlib.g:5050:6: ( ruleTupleLiteralExpCS )
-                    // InternalOCLstdlib.g:5051:1: ruleTupleLiteralExpCS
+                    // InternalOCLstdlib.g:5052:6: ( ruleTupleLiteralExpCS )
+                    // InternalOCLstdlib.g:5053:1: ruleTupleLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
@@ -16728,10 +16728,10 @@
                     }
                     break;
                 case 6 :
-                    // InternalOCLstdlib.g:5056:6: ( ruleMapLiteralExpCS )
+                    // InternalOCLstdlib.g:5058:6: ( ruleMapLiteralExpCS )
                     {
-                    // InternalOCLstdlib.g:5056:6: ( ruleMapLiteralExpCS )
-                    // InternalOCLstdlib.g:5057:1: ruleMapLiteralExpCS
+                    // InternalOCLstdlib.g:5058:6: ( ruleMapLiteralExpCS )
+                    // InternalOCLstdlib.g:5059:1: ruleMapLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
@@ -16751,10 +16751,10 @@
                     }
                     break;
                 case 7 :
-                    // InternalOCLstdlib.g:5062:6: ( ruleCollectionLiteralExpCS )
+                    // InternalOCLstdlib.g:5064:6: ( ruleCollectionLiteralExpCS )
                     {
-                    // InternalOCLstdlib.g:5062:6: ( ruleCollectionLiteralExpCS )
-                    // InternalOCLstdlib.g:5063:1: ruleCollectionLiteralExpCS
+                    // InternalOCLstdlib.g:5064:6: ( ruleCollectionLiteralExpCS )
+                    // InternalOCLstdlib.g:5065:1: ruleCollectionLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
@@ -16774,10 +16774,10 @@
                     }
                     break;
                 case 8 :
-                    // InternalOCLstdlib.g:5068:6: ( ruleLambdaLiteralExpCS )
+                    // InternalOCLstdlib.g:5070:6: ( ruleLambdaLiteralExpCS )
                     {
-                    // InternalOCLstdlib.g:5068:6: ( ruleLambdaLiteralExpCS )
-                    // InternalOCLstdlib.g:5069:1: ruleLambdaLiteralExpCS
+                    // InternalOCLstdlib.g:5070:6: ( ruleLambdaLiteralExpCS )
+                    // InternalOCLstdlib.g:5071:1: ruleLambdaLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
@@ -16797,10 +16797,10 @@
                     }
                     break;
                 case 9 :
-                    // InternalOCLstdlib.g:5074:6: ( ruleTypeLiteralExpCS )
+                    // InternalOCLstdlib.g:5076:6: ( ruleTypeLiteralExpCS )
                     {
-                    // InternalOCLstdlib.g:5074:6: ( ruleTypeLiteralExpCS )
-                    // InternalOCLstdlib.g:5075:1: ruleTypeLiteralExpCS
+                    // InternalOCLstdlib.g:5076:6: ( ruleTypeLiteralExpCS )
+                    // InternalOCLstdlib.g:5077:1: ruleTypeLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
@@ -16820,10 +16820,10 @@
                     }
                     break;
                 case 10 :
-                    // InternalOCLstdlib.g:5080:6: ( ruleNameExpCS )
+                    // InternalOCLstdlib.g:5082:6: ( ruleNameExpCS )
                     {
-                    // InternalOCLstdlib.g:5080:6: ( ruleNameExpCS )
-                    // InternalOCLstdlib.g:5081:1: ruleNameExpCS
+                    // InternalOCLstdlib.g:5082:6: ( ruleNameExpCS )
+                    // InternalOCLstdlib.g:5083:1: ruleNameExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
@@ -16860,13 +16860,13 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0"
-    // InternalOCLstdlib.g:5091:1: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 : ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) );
+    // InternalOCLstdlib.g:5093:1: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 : ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) );
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5095:1: ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) )
+            // InternalOCLstdlib.g:5097:1: ( ( ruleNavigatingCommaArgCS ) | ( ruleNavigatingSemiArgCS ) | ( ruleNavigatingBarArgCS ) )
             int alt46=3;
             switch ( input.LA(1) ) {
             case 91:
@@ -16894,10 +16894,10 @@
 
             switch (alt46) {
                 case 1 :
-                    // InternalOCLstdlib.g:5096:1: ( ruleNavigatingCommaArgCS )
+                    // InternalOCLstdlib.g:5098:1: ( ruleNavigatingCommaArgCS )
                     {
-                    // InternalOCLstdlib.g:5096:1: ( ruleNavigatingCommaArgCS )
-                    // InternalOCLstdlib.g:5097:1: ruleNavigatingCommaArgCS
+                    // InternalOCLstdlib.g:5098:1: ( ruleNavigatingCommaArgCS )
+                    // InternalOCLstdlib.g:5099:1: ruleNavigatingCommaArgCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0_0());
@@ -16917,10 +16917,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5102:6: ( ruleNavigatingSemiArgCS )
+                    // InternalOCLstdlib.g:5104:6: ( ruleNavigatingSemiArgCS )
                     {
-                    // InternalOCLstdlib.g:5102:6: ( ruleNavigatingSemiArgCS )
-                    // InternalOCLstdlib.g:5103:1: ruleNavigatingSemiArgCS
+                    // InternalOCLstdlib.g:5104:6: ( ruleNavigatingSemiArgCS )
+                    // InternalOCLstdlib.g:5105:1: ruleNavigatingSemiArgCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_1_0_1());
@@ -16940,10 +16940,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:5108:6: ( ruleNavigatingBarArgCS )
+                    // InternalOCLstdlib.g:5110:6: ( ruleNavigatingBarArgCS )
                     {
-                    // InternalOCLstdlib.g:5108:6: ( ruleNavigatingBarArgCS )
-                    // InternalOCLstdlib.g:5109:1: ruleNavigatingBarArgCS
+                    // InternalOCLstdlib.g:5110:6: ( ruleNavigatingBarArgCS )
+                    // InternalOCLstdlib.g:5111:1: ruleNavigatingBarArgCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_1_0_2());
@@ -16980,13 +16980,13 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Alternatives"
-    // InternalOCLstdlib.g:5119:1: rule__NavigatingArgCS__Alternatives : ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) );
+    // InternalOCLstdlib.g:5121:1: rule__NavigatingArgCS__Alternatives : ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) );
     public final void rule__NavigatingArgCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5123:1: ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) )
+            // InternalOCLstdlib.g:5125:1: ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) )
             int alt47=2;
             int LA47_0 = input.LA(1);
 
@@ -17005,16 +17005,16 @@
             }
             switch (alt47) {
                 case 1 :
-                    // InternalOCLstdlib.g:5124:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:5126:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:5124:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
-                    // InternalOCLstdlib.g:5125:1: ( rule__NavigatingArgCS__Group_0__0 )
+                    // InternalOCLstdlib.g:5126:1: ( ( rule__NavigatingArgCS__Group_0__0 ) )
+                    // InternalOCLstdlib.g:5127:1: ( rule__NavigatingArgCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0());
                     }
-                    // InternalOCLstdlib.g:5126:1: ( rule__NavigatingArgCS__Group_0__0 )
-                    // InternalOCLstdlib.g:5126:2: rule__NavigatingArgCS__Group_0__0
+                    // InternalOCLstdlib.g:5128:1: ( rule__NavigatingArgCS__Group_0__0 )
+                    // InternalOCLstdlib.g:5128:2: rule__NavigatingArgCS__Group_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0__0();
@@ -17034,16 +17034,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5130:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
+                    // InternalOCLstdlib.g:5132:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
                     {
-                    // InternalOCLstdlib.g:5130:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
-                    // InternalOCLstdlib.g:5131:1: ( rule__NavigatingArgCS__Group_1__0 )
+                    // InternalOCLstdlib.g:5132:6: ( ( rule__NavigatingArgCS__Group_1__0 ) )
+                    // InternalOCLstdlib.g:5133:1: ( rule__NavigatingArgCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_1());
                     }
-                    // InternalOCLstdlib.g:5132:1: ( rule__NavigatingArgCS__Group_1__0 )
-                    // InternalOCLstdlib.g:5132:2: rule__NavigatingArgCS__Group_1__0
+                    // InternalOCLstdlib.g:5134:1: ( rule__NavigatingArgCS__Group_1__0 )
+                    // InternalOCLstdlib.g:5134:2: rule__NavigatingArgCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_1__0();
@@ -17080,13 +17080,13 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Alternatives_0_1"
-    // InternalOCLstdlib.g:5141:1: rule__NavigatingArgCS__Alternatives_0_1 : ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) );
+    // InternalOCLstdlib.g:5143:1: rule__NavigatingArgCS__Alternatives_0_1 : ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) );
     public final void rule__NavigatingArgCS__Alternatives_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5145:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) )
+            // InternalOCLstdlib.g:5147:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) ) )
             int alt48=3;
             switch ( input.LA(1) ) {
             case 100:
@@ -17142,16 +17142,16 @@
 
             switch (alt48) {
                 case 1 :
-                    // InternalOCLstdlib.g:5146:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+                    // InternalOCLstdlib.g:5148:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:5146:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
-                    // InternalOCLstdlib.g:5147:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+                    // InternalOCLstdlib.g:5148:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+                    // InternalOCLstdlib.g:5149:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
                     }
-                    // InternalOCLstdlib.g:5148:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
-                    // InternalOCLstdlib.g:5148:2: rule__NavigatingArgCS__Group_0_1_0__0
+                    // InternalOCLstdlib.g:5150:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+                    // InternalOCLstdlib.g:5150:2: rule__NavigatingArgCS__Group_0_1_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_0__0();
@@ -17171,16 +17171,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5152:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+                    // InternalOCLstdlib.g:5154:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
                     {
-                    // InternalOCLstdlib.g:5152:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
-                    // InternalOCLstdlib.g:5153:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+                    // InternalOCLstdlib.g:5154:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+                    // InternalOCLstdlib.g:5155:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
                     }
-                    // InternalOCLstdlib.g:5154:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
-                    // InternalOCLstdlib.g:5154:2: rule__NavigatingArgCS__Group_0_1_1__0
+                    // InternalOCLstdlib.g:5156:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+                    // InternalOCLstdlib.g:5156:2: rule__NavigatingArgCS__Group_0_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_1__0();
@@ -17200,16 +17200,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:5158:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
+                    // InternalOCLstdlib.g:5160:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
                     {
-                    // InternalOCLstdlib.g:5158:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
-                    // InternalOCLstdlib.g:5159:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
+                    // InternalOCLstdlib.g:5160:6: ( ( rule__NavigatingArgCS__Group_0_1_2__0 ) )
+                    // InternalOCLstdlib.g:5161:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_2());
                     }
-                    // InternalOCLstdlib.g:5160:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
-                    // InternalOCLstdlib.g:5160:2: rule__NavigatingArgCS__Group_0_1_2__0
+                    // InternalOCLstdlib.g:5162:1: ( rule__NavigatingArgCS__Group_0_1_2__0 )
+                    // InternalOCLstdlib.g:5162:2: rule__NavigatingArgCS__Group_0_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_2__0();
@@ -17246,13 +17246,13 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Alternatives_2"
-    // InternalOCLstdlib.g:5169:1: rule__NavigatingCommaArgCS__Alternatives_2 : ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) );
+    // InternalOCLstdlib.g:5171:1: rule__NavigatingCommaArgCS__Alternatives_2 : ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) );
     public final void rule__NavigatingCommaArgCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5173:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) )
+            // InternalOCLstdlib.g:5175:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) ) )
             int alt49=3;
             switch ( input.LA(1) ) {
             case 100:
@@ -17308,16 +17308,16 @@
 
             switch (alt49) {
                 case 1 :
-                    // InternalOCLstdlib.g:5174:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+                    // InternalOCLstdlib.g:5176:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
                     {
-                    // InternalOCLstdlib.g:5174:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
-                    // InternalOCLstdlib.g:5175:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+                    // InternalOCLstdlib.g:5176:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+                    // InternalOCLstdlib.g:5177:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
                     }
-                    // InternalOCLstdlib.g:5176:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
-                    // InternalOCLstdlib.g:5176:2: rule__NavigatingCommaArgCS__Group_2_0__0
+                    // InternalOCLstdlib.g:5178:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+                    // InternalOCLstdlib.g:5178:2: rule__NavigatingCommaArgCS__Group_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_0__0();
@@ -17337,16 +17337,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5180:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+                    // InternalOCLstdlib.g:5182:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
                     {
-                    // InternalOCLstdlib.g:5180:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
-                    // InternalOCLstdlib.g:5181:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+                    // InternalOCLstdlib.g:5182:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+                    // InternalOCLstdlib.g:5183:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
                     }
-                    // InternalOCLstdlib.g:5182:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
-                    // InternalOCLstdlib.g:5182:2: rule__NavigatingCommaArgCS__Group_2_1__0
+                    // InternalOCLstdlib.g:5184:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+                    // InternalOCLstdlib.g:5184:2: rule__NavigatingCommaArgCS__Group_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_1__0();
@@ -17366,16 +17366,16 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:5186:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
+                    // InternalOCLstdlib.g:5188:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
                     {
-                    // InternalOCLstdlib.g:5186:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
-                    // InternalOCLstdlib.g:5187:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
+                    // InternalOCLstdlib.g:5188:6: ( ( rule__NavigatingCommaArgCS__Group_2_2__0 ) )
+                    // InternalOCLstdlib.g:5189:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_2());
                     }
-                    // InternalOCLstdlib.g:5188:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
-                    // InternalOCLstdlib.g:5188:2: rule__NavigatingCommaArgCS__Group_2_2__0
+                    // InternalOCLstdlib.g:5190:1: ( rule__NavigatingCommaArgCS__Group_2_2__0 )
+                    // InternalOCLstdlib.g:5190:2: rule__NavigatingCommaArgCS__Group_2_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_2__0();
@@ -17412,21 +17412,21 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedConditionAlternatives_1_0"
-    // InternalOCLstdlib.g:5197:1: rule__IfExpCS__OwnedConditionAlternatives_1_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
+    // InternalOCLstdlib.g:5199:1: rule__IfExpCS__OwnedConditionAlternatives_1_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );
     public final void rule__IfExpCS__OwnedConditionAlternatives_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5201:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
+            // InternalOCLstdlib.g:5203:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt50=2;
             alt50 = dfa50.predict(input);
             switch (alt50) {
                 case 1 :
-                    // InternalOCLstdlib.g:5202:1: ( ruleExpCS )
+                    // InternalOCLstdlib.g:5204:1: ( ruleExpCS )
                     {
-                    // InternalOCLstdlib.g:5202:1: ( ruleExpCS )
-                    // InternalOCLstdlib.g:5203:1: ruleExpCS
+                    // InternalOCLstdlib.g:5204:1: ( ruleExpCS )
+                    // InternalOCLstdlib.g:5205:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
@@ -17446,10 +17446,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5208:6: ( rulePatternExpCS )
+                    // InternalOCLstdlib.g:5210:6: ( rulePatternExpCS )
                     {
-                    // InternalOCLstdlib.g:5208:6: ( rulePatternExpCS )
-                    // InternalOCLstdlib.g:5209:1: rulePatternExpCS
+                    // InternalOCLstdlib.g:5210:6: ( rulePatternExpCS )
+                    // InternalOCLstdlib.g:5211:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
@@ -17486,13 +17486,13 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Alternatives_1"
-    // InternalOCLstdlib.g:5219:1: rule__MultiplicityCS__Alternatives_1 : ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) );
+    // InternalOCLstdlib.g:5221:1: rule__MultiplicityCS__Alternatives_1 : ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) );
     public final void rule__MultiplicityCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5223:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
+            // InternalOCLstdlib.g:5225:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
             int alt51=2;
             int LA51_0 = input.LA(1);
 
@@ -17511,10 +17511,10 @@
             }
             switch (alt51) {
                 case 1 :
-                    // InternalOCLstdlib.g:5224:1: ( ruleMultiplicityBoundsCS )
+                    // InternalOCLstdlib.g:5226:1: ( ruleMultiplicityBoundsCS )
                     {
-                    // InternalOCLstdlib.g:5224:1: ( ruleMultiplicityBoundsCS )
-                    // InternalOCLstdlib.g:5225:1: ruleMultiplicityBoundsCS
+                    // InternalOCLstdlib.g:5226:1: ( ruleMultiplicityBoundsCS )
+                    // InternalOCLstdlib.g:5227:1: ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
@@ -17534,10 +17534,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5230:6: ( ruleMultiplicityStringCS )
+                    // InternalOCLstdlib.g:5232:6: ( ruleMultiplicityStringCS )
                     {
-                    // InternalOCLstdlib.g:5230:6: ( ruleMultiplicityStringCS )
-                    // InternalOCLstdlib.g:5231:1: ruleMultiplicityStringCS
+                    // InternalOCLstdlib.g:5232:6: ( ruleMultiplicityStringCS )
+                    // InternalOCLstdlib.g:5233:1: ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
@@ -17574,13 +17574,13 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Alternatives_2"
-    // InternalOCLstdlib.g:5241:1: rule__MultiplicityCS__Alternatives_2 : ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) );
+    // InternalOCLstdlib.g:5243:1: rule__MultiplicityCS__Alternatives_2 : ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) );
     public final void rule__MultiplicityCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5245:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
+            // InternalOCLstdlib.g:5247:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
             int alt52=2;
             int LA52_0 = input.LA(1);
 
@@ -17599,10 +17599,10 @@
             }
             switch (alt52) {
                 case 1 :
-                    // InternalOCLstdlib.g:5246:1: ( '|?' )
+                    // InternalOCLstdlib.g:5248:1: ( '|?' )
                     {
-                    // InternalOCLstdlib.g:5246:1: ( '|?' )
-                    // InternalOCLstdlib.g:5247:1: '|?'
+                    // InternalOCLstdlib.g:5248:1: ( '|?' )
+                    // InternalOCLstdlib.g:5249:1: '|?'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
@@ -17618,16 +17618,16 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5254:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
+                    // InternalOCLstdlib.g:5256:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
                     {
-                    // InternalOCLstdlib.g:5254:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
-                    // InternalOCLstdlib.g:5255:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
+                    // InternalOCLstdlib.g:5256:6: ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) )
+                    // InternalOCLstdlib.g:5257:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
-                    // InternalOCLstdlib.g:5256:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
-                    // InternalOCLstdlib.g:5256:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
+                    // InternalOCLstdlib.g:5258:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
+                    // InternalOCLstdlib.g:5258:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityCS__IsNullFreeAssignment_2_1();
@@ -17664,13 +17664,13 @@
 
 
     // $ANTLR start "rule__MultiplicityStringCS__StringBoundsAlternatives_0"
-    // InternalOCLstdlib.g:5265:1: rule__MultiplicityStringCS__StringBoundsAlternatives_0 : ( ( '*' ) | ( '+' ) | ( '?' ) );
+    // InternalOCLstdlib.g:5267:1: rule__MultiplicityStringCS__StringBoundsAlternatives_0 : ( ( '*' ) | ( '+' ) | ( '?' ) );
     public final void rule__MultiplicityStringCS__StringBoundsAlternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5269:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
+            // InternalOCLstdlib.g:5271:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
             int alt53=3;
             switch ( input.LA(1) ) {
             case 59:
@@ -17698,10 +17698,10 @@
 
             switch (alt53) {
                 case 1 :
-                    // InternalOCLstdlib.g:5270:1: ( '*' )
+                    // InternalOCLstdlib.g:5272:1: ( '*' )
                     {
-                    // InternalOCLstdlib.g:5270:1: ( '*' )
-                    // InternalOCLstdlib.g:5271:1: '*'
+                    // InternalOCLstdlib.g:5272:1: ( '*' )
+                    // InternalOCLstdlib.g:5273:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
@@ -17717,10 +17717,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5278:6: ( '+' )
+                    // InternalOCLstdlib.g:5280:6: ( '+' )
                     {
-                    // InternalOCLstdlib.g:5278:6: ( '+' )
-                    // InternalOCLstdlib.g:5279:1: '+'
+                    // InternalOCLstdlib.g:5280:6: ( '+' )
+                    // InternalOCLstdlib.g:5281:1: '+'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
@@ -17736,10 +17736,10 @@
                     }
                     break;
                 case 3 :
-                    // InternalOCLstdlib.g:5286:6: ( '?' )
+                    // InternalOCLstdlib.g:5288:6: ( '?' )
                     {
-                    // InternalOCLstdlib.g:5286:6: ( '?' )
-                    // InternalOCLstdlib.g:5287:1: '?'
+                    // InternalOCLstdlib.g:5288:6: ( '?' )
+                    // InternalOCLstdlib.g:5289:1: '?'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
@@ -17772,13 +17772,13 @@
 
 
     // $ANTLR start "rule__TypeRefCS__Alternatives"
-    // InternalOCLstdlib.g:5299:1: rule__TypeRefCS__Alternatives : ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) );
+    // InternalOCLstdlib.g:5301:1: rule__TypeRefCS__Alternatives : ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) );
     public final void rule__TypeRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5303:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
+            // InternalOCLstdlib.g:5305:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
             int alt54=2;
             int LA54_0 = input.LA(1);
 
@@ -17797,10 +17797,10 @@
             }
             switch (alt54) {
                 case 1 :
-                    // InternalOCLstdlib.g:5304:1: ( ruleTypedRefCS )
+                    // InternalOCLstdlib.g:5306:1: ( ruleTypedRefCS )
                     {
-                    // InternalOCLstdlib.g:5304:1: ( ruleTypedRefCS )
-                    // InternalOCLstdlib.g:5305:1: ruleTypedRefCS
+                    // InternalOCLstdlib.g:5306:1: ( ruleTypedRefCS )
+                    // InternalOCLstdlib.g:5307:1: ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
@@ -17820,10 +17820,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5310:6: ( ruleWildcardTypeRefCS )
+                    // InternalOCLstdlib.g:5312:6: ( ruleWildcardTypeRefCS )
                     {
-                    // InternalOCLstdlib.g:5310:6: ( ruleWildcardTypeRefCS )
-                    // InternalOCLstdlib.g:5311:1: ruleWildcardTypeRefCS
+                    // InternalOCLstdlib.g:5312:6: ( ruleWildcardTypeRefCS )
+                    // InternalOCLstdlib.g:5313:1: ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
@@ -17860,13 +17860,13 @@
 
 
     // $ANTLR start "rule__ID__Alternatives"
-    // InternalOCLstdlib.g:5321:1: rule__ID__Alternatives : ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) );
+    // InternalOCLstdlib.g:5323:1: rule__ID__Alternatives : ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) );
     public final void rule__ID__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5325:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
+            // InternalOCLstdlib.g:5327:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
             int alt55=2;
             int LA55_0 = input.LA(1);
 
@@ -17885,10 +17885,10 @@
             }
             switch (alt55) {
                 case 1 :
-                    // InternalOCLstdlib.g:5326:1: ( RULE_SIMPLE_ID )
+                    // InternalOCLstdlib.g:5328:1: ( RULE_SIMPLE_ID )
                     {
-                    // InternalOCLstdlib.g:5326:1: ( RULE_SIMPLE_ID )
-                    // InternalOCLstdlib.g:5327:1: RULE_SIMPLE_ID
+                    // InternalOCLstdlib.g:5328:1: ( RULE_SIMPLE_ID )
+                    // InternalOCLstdlib.g:5329:1: RULE_SIMPLE_ID
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
@@ -17904,10 +17904,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5332:6: ( RULE_ESCAPED_ID )
+                    // InternalOCLstdlib.g:5334:6: ( RULE_ESCAPED_ID )
                     {
-                    // InternalOCLstdlib.g:5332:6: ( RULE_ESCAPED_ID )
-                    // InternalOCLstdlib.g:5333:1: RULE_ESCAPED_ID
+                    // InternalOCLstdlib.g:5334:6: ( RULE_ESCAPED_ID )
+                    // InternalOCLstdlib.g:5335:1: RULE_ESCAPED_ID
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
@@ -17940,13 +17940,13 @@
 
 
     // $ANTLR start "rule__UPPER__Alternatives"
-    // InternalOCLstdlib.g:5343:1: rule__UPPER__Alternatives : ( ( RULE_INT ) | ( '*' ) );
+    // InternalOCLstdlib.g:5345:1: rule__UPPER__Alternatives : ( ( RULE_INT ) | ( '*' ) );
     public final void rule__UPPER__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5347:1: ( ( RULE_INT ) | ( '*' ) )
+            // InternalOCLstdlib.g:5349:1: ( ( RULE_INT ) | ( '*' ) )
             int alt56=2;
             int LA56_0 = input.LA(1);
 
@@ -17965,10 +17965,10 @@
             }
             switch (alt56) {
                 case 1 :
-                    // InternalOCLstdlib.g:5348:1: ( RULE_INT )
+                    // InternalOCLstdlib.g:5350:1: ( RULE_INT )
                     {
-                    // InternalOCLstdlib.g:5348:1: ( RULE_INT )
-                    // InternalOCLstdlib.g:5349:1: RULE_INT
+                    // InternalOCLstdlib.g:5350:1: ( RULE_INT )
+                    // InternalOCLstdlib.g:5351:1: RULE_INT
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
@@ -17984,10 +17984,10 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:5354:6: ( '*' )
+                    // InternalOCLstdlib.g:5356:6: ( '*' )
                     {
-                    // InternalOCLstdlib.g:5354:6: ( '*' )
-                    // InternalOCLstdlib.g:5355:1: '*'
+                    // InternalOCLstdlib.g:5356:6: ( '*' )
+                    // InternalOCLstdlib.g:5357:1: '*'
                     {
                     if ( state.backtracking==0 ) {
                        before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
@@ -18020,14 +18020,14 @@
 
 
     // $ANTLR start "rule__Library__Group__0"
-    // InternalOCLstdlib.g:5369:1: rule__Library__Group__0 : rule__Library__Group__0__Impl rule__Library__Group__1 ;
+    // InternalOCLstdlib.g:5371:1: rule__Library__Group__0 : rule__Library__Group__0__Impl rule__Library__Group__1 ;
     public final void rule__Library__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5373:1: ( rule__Library__Group__0__Impl rule__Library__Group__1 )
-            // InternalOCLstdlib.g:5374:2: rule__Library__Group__0__Impl rule__Library__Group__1
+            // InternalOCLstdlib.g:5375:1: ( rule__Library__Group__0__Impl rule__Library__Group__1 )
+            // InternalOCLstdlib.g:5376:2: rule__Library__Group__0__Impl rule__Library__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_4);
             rule__Library__Group__0__Impl();
@@ -18058,22 +18058,22 @@
 
 
     // $ANTLR start "rule__Library__Group__0__Impl"
-    // InternalOCLstdlib.g:5381:1: rule__Library__Group__0__Impl : ( ( rule__Library__Group_0__0 )* ) ;
+    // InternalOCLstdlib.g:5383:1: rule__Library__Group__0__Impl : ( ( rule__Library__Group_0__0 )* ) ;
     public final void rule__Library__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5385:1: ( ( ( rule__Library__Group_0__0 )* ) )
-            // InternalOCLstdlib.g:5386:1: ( ( rule__Library__Group_0__0 )* )
+            // InternalOCLstdlib.g:5387:1: ( ( ( rule__Library__Group_0__0 )* ) )
+            // InternalOCLstdlib.g:5388:1: ( ( rule__Library__Group_0__0 )* )
             {
-            // InternalOCLstdlib.g:5386:1: ( ( rule__Library__Group_0__0 )* )
-            // InternalOCLstdlib.g:5387:1: ( rule__Library__Group_0__0 )*
+            // InternalOCLstdlib.g:5388:1: ( ( rule__Library__Group_0__0 )* )
+            // InternalOCLstdlib.g:5389:1: ( rule__Library__Group_0__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibraryAccess().getGroup_0());
             }
-            // InternalOCLstdlib.g:5388:1: ( rule__Library__Group_0__0 )*
+            // InternalOCLstdlib.g:5390:1: ( rule__Library__Group_0__0 )*
             loop57:
             do {
                 int alt57=2;
@@ -18086,7 +18086,7 @@
 
                 switch (alt57) {
             	case 1 :
-            	    // InternalOCLstdlib.g:5388:2: rule__Library__Group_0__0
+            	    // InternalOCLstdlib.g:5390:2: rule__Library__Group_0__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_5);
             	    rule__Library__Group_0__0();
@@ -18127,14 +18127,14 @@
 
 
     // $ANTLR start "rule__Library__Group__1"
-    // InternalOCLstdlib.g:5398:1: rule__Library__Group__1 : rule__Library__Group__1__Impl ;
+    // InternalOCLstdlib.g:5400:1: rule__Library__Group__1 : rule__Library__Group__1__Impl ;
     public final void rule__Library__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5402:1: ( rule__Library__Group__1__Impl )
-            // InternalOCLstdlib.g:5403:2: rule__Library__Group__1__Impl
+            // InternalOCLstdlib.g:5404:1: ( rule__Library__Group__1__Impl )
+            // InternalOCLstdlib.g:5405:2: rule__Library__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__Library__Group__1__Impl();
@@ -18160,22 +18160,22 @@
 
 
     // $ANTLR start "rule__Library__Group__1__Impl"
-    // InternalOCLstdlib.g:5409:1: rule__Library__Group__1__Impl : ( ( rule__Library__OwnedPackagesAssignment_1 )* ) ;
+    // InternalOCLstdlib.g:5411:1: rule__Library__Group__1__Impl : ( ( rule__Library__OwnedPackagesAssignment_1 )* ) ;
     public final void rule__Library__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5413:1: ( ( ( rule__Library__OwnedPackagesAssignment_1 )* ) )
-            // InternalOCLstdlib.g:5414:1: ( ( rule__Library__OwnedPackagesAssignment_1 )* )
+            // InternalOCLstdlib.g:5415:1: ( ( ( rule__Library__OwnedPackagesAssignment_1 )* ) )
+            // InternalOCLstdlib.g:5416:1: ( ( rule__Library__OwnedPackagesAssignment_1 )* )
             {
-            // InternalOCLstdlib.g:5414:1: ( ( rule__Library__OwnedPackagesAssignment_1 )* )
-            // InternalOCLstdlib.g:5415:1: ( rule__Library__OwnedPackagesAssignment_1 )*
+            // InternalOCLstdlib.g:5416:1: ( ( rule__Library__OwnedPackagesAssignment_1 )* )
+            // InternalOCLstdlib.g:5417:1: ( rule__Library__OwnedPackagesAssignment_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibraryAccess().getOwnedPackagesAssignment_1());
             }
-            // InternalOCLstdlib.g:5416:1: ( rule__Library__OwnedPackagesAssignment_1 )*
+            // InternalOCLstdlib.g:5418:1: ( rule__Library__OwnedPackagesAssignment_1 )*
             loop58:
             do {
                 int alt58=2;
@@ -18188,7 +18188,7 @@
 
                 switch (alt58) {
             	case 1 :
-            	    // InternalOCLstdlib.g:5416:2: rule__Library__OwnedPackagesAssignment_1
+            	    // InternalOCLstdlib.g:5418:2: rule__Library__OwnedPackagesAssignment_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_6);
             	    rule__Library__OwnedPackagesAssignment_1();
@@ -18229,14 +18229,14 @@
 
 
     // $ANTLR start "rule__Library__Group_0__0"
-    // InternalOCLstdlib.g:5430:1: rule__Library__Group_0__0 : rule__Library__Group_0__0__Impl rule__Library__Group_0__1 ;
+    // InternalOCLstdlib.g:5432:1: rule__Library__Group_0__0 : rule__Library__Group_0__0__Impl rule__Library__Group_0__1 ;
     public final void rule__Library__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5434:1: ( rule__Library__Group_0__0__Impl rule__Library__Group_0__1 )
-            // InternalOCLstdlib.g:5435:2: rule__Library__Group_0__0__Impl rule__Library__Group_0__1
+            // InternalOCLstdlib.g:5436:1: ( rule__Library__Group_0__0__Impl rule__Library__Group_0__1 )
+            // InternalOCLstdlib.g:5437:2: rule__Library__Group_0__0__Impl rule__Library__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__Library__Group_0__0__Impl();
@@ -18267,23 +18267,23 @@
 
 
     // $ANTLR start "rule__Library__Group_0__0__Impl"
-    // InternalOCLstdlib.g:5442:1: rule__Library__Group_0__0__Impl : ( ( rule__Library__OwnedImportsAssignment_0_0 ) ) ;
+    // InternalOCLstdlib.g:5444:1: rule__Library__Group_0__0__Impl : ( ( rule__Library__OwnedImportsAssignment_0_0 ) ) ;
     public final void rule__Library__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5446:1: ( ( ( rule__Library__OwnedImportsAssignment_0_0 ) ) )
-            // InternalOCLstdlib.g:5447:1: ( ( rule__Library__OwnedImportsAssignment_0_0 ) )
+            // InternalOCLstdlib.g:5448:1: ( ( ( rule__Library__OwnedImportsAssignment_0_0 ) ) )
+            // InternalOCLstdlib.g:5449:1: ( ( rule__Library__OwnedImportsAssignment_0_0 ) )
             {
-            // InternalOCLstdlib.g:5447:1: ( ( rule__Library__OwnedImportsAssignment_0_0 ) )
-            // InternalOCLstdlib.g:5448:1: ( rule__Library__OwnedImportsAssignment_0_0 )
+            // InternalOCLstdlib.g:5449:1: ( ( rule__Library__OwnedImportsAssignment_0_0 ) )
+            // InternalOCLstdlib.g:5450:1: ( rule__Library__OwnedImportsAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibraryAccess().getOwnedImportsAssignment_0_0());
             }
-            // InternalOCLstdlib.g:5449:1: ( rule__Library__OwnedImportsAssignment_0_0 )
-            // InternalOCLstdlib.g:5449:2: rule__Library__OwnedImportsAssignment_0_0
+            // InternalOCLstdlib.g:5451:1: ( rule__Library__OwnedImportsAssignment_0_0 )
+            // InternalOCLstdlib.g:5451:2: rule__Library__OwnedImportsAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__Library__OwnedImportsAssignment_0_0();
@@ -18318,14 +18318,14 @@
 
 
     // $ANTLR start "rule__Library__Group_0__1"
-    // InternalOCLstdlib.g:5459:1: rule__Library__Group_0__1 : rule__Library__Group_0__1__Impl ;
+    // InternalOCLstdlib.g:5461:1: rule__Library__Group_0__1 : rule__Library__Group_0__1__Impl ;
     public final void rule__Library__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5463:1: ( rule__Library__Group_0__1__Impl )
-            // InternalOCLstdlib.g:5464:2: rule__Library__Group_0__1__Impl
+            // InternalOCLstdlib.g:5465:1: ( rule__Library__Group_0__1__Impl )
+            // InternalOCLstdlib.g:5466:2: rule__Library__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__Library__Group_0__1__Impl();
@@ -18351,17 +18351,17 @@
 
 
     // $ANTLR start "rule__Library__Group_0__1__Impl"
-    // InternalOCLstdlib.g:5470:1: rule__Library__Group_0__1__Impl : ( ';' ) ;
+    // InternalOCLstdlib.g:5472:1: rule__Library__Group_0__1__Impl : ( ';' ) ;
     public final void rule__Library__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5474:1: ( ( ';' ) )
-            // InternalOCLstdlib.g:5475:1: ( ';' )
+            // InternalOCLstdlib.g:5476:1: ( ( ';' ) )
+            // InternalOCLstdlib.g:5477:1: ( ';' )
             {
-            // InternalOCLstdlib.g:5475:1: ( ';' )
-            // InternalOCLstdlib.g:5476:1: ';'
+            // InternalOCLstdlib.g:5477:1: ( ';' )
+            // InternalOCLstdlib.g:5478:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibraryAccess().getSemicolonKeyword_0_1());
@@ -18392,14 +18392,14 @@
 
 
     // $ANTLR start "rule__LibPathNameCS__Group__0"
-    // InternalOCLstdlib.g:5493:1: rule__LibPathNameCS__Group__0 : rule__LibPathNameCS__Group__0__Impl rule__LibPathNameCS__Group__1 ;
+    // InternalOCLstdlib.g:5495:1: rule__LibPathNameCS__Group__0 : rule__LibPathNameCS__Group__0__Impl rule__LibPathNameCS__Group__1 ;
     public final void rule__LibPathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5497:1: ( rule__LibPathNameCS__Group__0__Impl rule__LibPathNameCS__Group__1 )
-            // InternalOCLstdlib.g:5498:2: rule__LibPathNameCS__Group__0__Impl rule__LibPathNameCS__Group__1
+            // InternalOCLstdlib.g:5499:1: ( rule__LibPathNameCS__Group__0__Impl rule__LibPathNameCS__Group__1 )
+            // InternalOCLstdlib.g:5500:2: rule__LibPathNameCS__Group__0__Impl rule__LibPathNameCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_8);
             rule__LibPathNameCS__Group__0__Impl();
@@ -18430,23 +18430,23 @@
 
 
     // $ANTLR start "rule__LibPathNameCS__Group__0__Impl"
-    // InternalOCLstdlib.g:5505:1: rule__LibPathNameCS__Group__0__Impl : ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:5507:1: rule__LibPathNameCS__Group__0__Impl : ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 ) ) ;
     public final void rule__LibPathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5509:1: ( ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 ) ) )
-            // InternalOCLstdlib.g:5510:1: ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalOCLstdlib.g:5511:1: ( ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 ) ) )
+            // InternalOCLstdlib.g:5512:1: ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:5510:1: ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 ) )
-            // InternalOCLstdlib.g:5511:1: ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalOCLstdlib.g:5512:1: ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalOCLstdlib.g:5513:1: ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
-            // InternalOCLstdlib.g:5512:1: ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 )
-            // InternalOCLstdlib.g:5512:2: rule__LibPathNameCS__OwnedPathElementsAssignment_0
+            // InternalOCLstdlib.g:5514:1: ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalOCLstdlib.g:5514:2: rule__LibPathNameCS__OwnedPathElementsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPathNameCS__OwnedPathElementsAssignment_0();
@@ -18481,14 +18481,14 @@
 
 
     // $ANTLR start "rule__LibPathNameCS__Group__1"
-    // InternalOCLstdlib.g:5522:1: rule__LibPathNameCS__Group__1 : rule__LibPathNameCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:5524:1: rule__LibPathNameCS__Group__1 : rule__LibPathNameCS__Group__1__Impl ;
     public final void rule__LibPathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5526:1: ( rule__LibPathNameCS__Group__1__Impl )
-            // InternalOCLstdlib.g:5527:2: rule__LibPathNameCS__Group__1__Impl
+            // InternalOCLstdlib.g:5528:1: ( rule__LibPathNameCS__Group__1__Impl )
+            // InternalOCLstdlib.g:5529:2: rule__LibPathNameCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPathNameCS__Group__1__Impl();
@@ -18514,22 +18514,22 @@
 
 
     // $ANTLR start "rule__LibPathNameCS__Group__1__Impl"
-    // InternalOCLstdlib.g:5533:1: rule__LibPathNameCS__Group__1__Impl : ( ( rule__LibPathNameCS__Group_1__0 )* ) ;
+    // InternalOCLstdlib.g:5535:1: rule__LibPathNameCS__Group__1__Impl : ( ( rule__LibPathNameCS__Group_1__0 )* ) ;
     public final void rule__LibPathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5537:1: ( ( ( rule__LibPathNameCS__Group_1__0 )* ) )
-            // InternalOCLstdlib.g:5538:1: ( ( rule__LibPathNameCS__Group_1__0 )* )
+            // InternalOCLstdlib.g:5539:1: ( ( ( rule__LibPathNameCS__Group_1__0 )* ) )
+            // InternalOCLstdlib.g:5540:1: ( ( rule__LibPathNameCS__Group_1__0 )* )
             {
-            // InternalOCLstdlib.g:5538:1: ( ( rule__LibPathNameCS__Group_1__0 )* )
-            // InternalOCLstdlib.g:5539:1: ( rule__LibPathNameCS__Group_1__0 )*
+            // InternalOCLstdlib.g:5540:1: ( ( rule__LibPathNameCS__Group_1__0 )* )
+            // InternalOCLstdlib.g:5541:1: ( rule__LibPathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPathNameCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:5540:1: ( rule__LibPathNameCS__Group_1__0 )*
+            // InternalOCLstdlib.g:5542:1: ( rule__LibPathNameCS__Group_1__0 )*
             loop59:
             do {
                 int alt59=2;
@@ -18542,7 +18542,7 @@
 
                 switch (alt59) {
             	case 1 :
-            	    // InternalOCLstdlib.g:5540:2: rule__LibPathNameCS__Group_1__0
+            	    // InternalOCLstdlib.g:5542:2: rule__LibPathNameCS__Group_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_9);
             	    rule__LibPathNameCS__Group_1__0();
@@ -18583,14 +18583,14 @@
 
 
     // $ANTLR start "rule__LibPathNameCS__Group_1__0"
-    // InternalOCLstdlib.g:5554:1: rule__LibPathNameCS__Group_1__0 : rule__LibPathNameCS__Group_1__0__Impl rule__LibPathNameCS__Group_1__1 ;
+    // InternalOCLstdlib.g:5556:1: rule__LibPathNameCS__Group_1__0 : rule__LibPathNameCS__Group_1__0__Impl rule__LibPathNameCS__Group_1__1 ;
     public final void rule__LibPathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5558:1: ( rule__LibPathNameCS__Group_1__0__Impl rule__LibPathNameCS__Group_1__1 )
-            // InternalOCLstdlib.g:5559:2: rule__LibPathNameCS__Group_1__0__Impl rule__LibPathNameCS__Group_1__1
+            // InternalOCLstdlib.g:5560:1: ( rule__LibPathNameCS__Group_1__0__Impl rule__LibPathNameCS__Group_1__1 )
+            // InternalOCLstdlib.g:5561:2: rule__LibPathNameCS__Group_1__0__Impl rule__LibPathNameCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__LibPathNameCS__Group_1__0__Impl();
@@ -18621,17 +18621,17 @@
 
 
     // $ANTLR start "rule__LibPathNameCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:5566:1: rule__LibPathNameCS__Group_1__0__Impl : ( '::' ) ;
+    // InternalOCLstdlib.g:5568:1: rule__LibPathNameCS__Group_1__0__Impl : ( '::' ) ;
     public final void rule__LibPathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5570:1: ( ( '::' ) )
-            // InternalOCLstdlib.g:5571:1: ( '::' )
+            // InternalOCLstdlib.g:5572:1: ( ( '::' ) )
+            // InternalOCLstdlib.g:5573:1: ( '::' )
             {
-            // InternalOCLstdlib.g:5571:1: ( '::' )
-            // InternalOCLstdlib.g:5572:1: '::'
+            // InternalOCLstdlib.g:5573:1: ( '::' )
+            // InternalOCLstdlib.g:5574:1: '::'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPathNameCSAccess().getColonColonKeyword_1_0());
@@ -18662,14 +18662,14 @@
 
 
     // $ANTLR start "rule__LibPathNameCS__Group_1__1"
-    // InternalOCLstdlib.g:5585:1: rule__LibPathNameCS__Group_1__1 : rule__LibPathNameCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:5587:1: rule__LibPathNameCS__Group_1__1 : rule__LibPathNameCS__Group_1__1__Impl ;
     public final void rule__LibPathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5589:1: ( rule__LibPathNameCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:5590:2: rule__LibPathNameCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:5591:1: ( rule__LibPathNameCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:5592:2: rule__LibPathNameCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPathNameCS__Group_1__1__Impl();
@@ -18695,23 +18695,23 @@
 
 
     // $ANTLR start "rule__LibPathNameCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:5596:1: rule__LibPathNameCS__Group_1__1__Impl : ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
+    // InternalOCLstdlib.g:5598:1: rule__LibPathNameCS__Group_1__1__Impl : ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
     public final void rule__LibPathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5600:1: ( ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
-            // InternalOCLstdlib.g:5601:1: ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalOCLstdlib.g:5602:1: ( ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
+            // InternalOCLstdlib.g:5603:1: ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 ) )
             {
-            // InternalOCLstdlib.g:5601:1: ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 ) )
-            // InternalOCLstdlib.g:5602:1: ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalOCLstdlib.g:5603:1: ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalOCLstdlib.g:5604:1: ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
-            // InternalOCLstdlib.g:5603:1: ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 )
-            // InternalOCLstdlib.g:5603:2: rule__LibPathNameCS__OwnedPathElementsAssignment_1_1
+            // InternalOCLstdlib.g:5605:1: ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalOCLstdlib.g:5605:2: rule__LibPathNameCS__OwnedPathElementsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPathNameCS__OwnedPathElementsAssignment_1_1();
@@ -18746,14 +18746,14 @@
 
 
     // $ANTLR start "rule__AccumulatorCS__Group__0"
-    // InternalOCLstdlib.g:5617:1: rule__AccumulatorCS__Group__0 : rule__AccumulatorCS__Group__0__Impl rule__AccumulatorCS__Group__1 ;
+    // InternalOCLstdlib.g:5619:1: rule__AccumulatorCS__Group__0 : rule__AccumulatorCS__Group__0__Impl rule__AccumulatorCS__Group__1 ;
     public final void rule__AccumulatorCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5621:1: ( rule__AccumulatorCS__Group__0__Impl rule__AccumulatorCS__Group__1 )
-            // InternalOCLstdlib.g:5622:2: rule__AccumulatorCS__Group__0__Impl rule__AccumulatorCS__Group__1
+            // InternalOCLstdlib.g:5623:1: ( rule__AccumulatorCS__Group__0__Impl rule__AccumulatorCS__Group__1 )
+            // InternalOCLstdlib.g:5624:2: rule__AccumulatorCS__Group__0__Impl rule__AccumulatorCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__AccumulatorCS__Group__0__Impl();
@@ -18784,23 +18784,23 @@
 
 
     // $ANTLR start "rule__AccumulatorCS__Group__0__Impl"
-    // InternalOCLstdlib.g:5629:1: rule__AccumulatorCS__Group__0__Impl : ( ( rule__AccumulatorCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:5631:1: rule__AccumulatorCS__Group__0__Impl : ( ( rule__AccumulatorCS__NameAssignment_0 ) ) ;
     public final void rule__AccumulatorCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5633:1: ( ( ( rule__AccumulatorCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:5634:1: ( ( rule__AccumulatorCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:5635:1: ( ( ( rule__AccumulatorCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:5636:1: ( ( rule__AccumulatorCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:5634:1: ( ( rule__AccumulatorCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:5635:1: ( rule__AccumulatorCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:5636:1: ( ( rule__AccumulatorCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:5637:1: ( rule__AccumulatorCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAccumulatorCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:5636:1: ( rule__AccumulatorCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:5636:2: rule__AccumulatorCS__NameAssignment_0
+            // InternalOCLstdlib.g:5638:1: ( rule__AccumulatorCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:5638:2: rule__AccumulatorCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AccumulatorCS__NameAssignment_0();
@@ -18835,14 +18835,14 @@
 
 
     // $ANTLR start "rule__AccumulatorCS__Group__1"
-    // InternalOCLstdlib.g:5646:1: rule__AccumulatorCS__Group__1 : rule__AccumulatorCS__Group__1__Impl rule__AccumulatorCS__Group__2 ;
+    // InternalOCLstdlib.g:5648:1: rule__AccumulatorCS__Group__1 : rule__AccumulatorCS__Group__1__Impl rule__AccumulatorCS__Group__2 ;
     public final void rule__AccumulatorCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5650:1: ( rule__AccumulatorCS__Group__1__Impl rule__AccumulatorCS__Group__2 )
-            // InternalOCLstdlib.g:5651:2: rule__AccumulatorCS__Group__1__Impl rule__AccumulatorCS__Group__2
+            // InternalOCLstdlib.g:5652:1: ( rule__AccumulatorCS__Group__1__Impl rule__AccumulatorCS__Group__2 )
+            // InternalOCLstdlib.g:5653:2: rule__AccumulatorCS__Group__1__Impl rule__AccumulatorCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__AccumulatorCS__Group__1__Impl();
@@ -18873,17 +18873,17 @@
 
 
     // $ANTLR start "rule__AccumulatorCS__Group__1__Impl"
-    // InternalOCLstdlib.g:5658:1: rule__AccumulatorCS__Group__1__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:5660:1: rule__AccumulatorCS__Group__1__Impl : ( ':' ) ;
     public final void rule__AccumulatorCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5662:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:5663:1: ( ':' )
+            // InternalOCLstdlib.g:5664:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:5665:1: ( ':' )
             {
-            // InternalOCLstdlib.g:5663:1: ( ':' )
-            // InternalOCLstdlib.g:5664:1: ':'
+            // InternalOCLstdlib.g:5665:1: ( ':' )
+            // InternalOCLstdlib.g:5666:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAccumulatorCSAccess().getColonKeyword_1());
@@ -18914,14 +18914,14 @@
 
 
     // $ANTLR start "rule__AccumulatorCS__Group__2"
-    // InternalOCLstdlib.g:5677:1: rule__AccumulatorCS__Group__2 : rule__AccumulatorCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:5679:1: rule__AccumulatorCS__Group__2 : rule__AccumulatorCS__Group__2__Impl ;
     public final void rule__AccumulatorCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5681:1: ( rule__AccumulatorCS__Group__2__Impl )
-            // InternalOCLstdlib.g:5682:2: rule__AccumulatorCS__Group__2__Impl
+            // InternalOCLstdlib.g:5683:1: ( rule__AccumulatorCS__Group__2__Impl )
+            // InternalOCLstdlib.g:5684:2: rule__AccumulatorCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AccumulatorCS__Group__2__Impl();
@@ -18947,23 +18947,23 @@
 
 
     // $ANTLR start "rule__AccumulatorCS__Group__2__Impl"
-    // InternalOCLstdlib.g:5688:1: rule__AccumulatorCS__Group__2__Impl : ( ( rule__AccumulatorCS__OwnedTypeAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:5690:1: rule__AccumulatorCS__Group__2__Impl : ( ( rule__AccumulatorCS__OwnedTypeAssignment_2 ) ) ;
     public final void rule__AccumulatorCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5692:1: ( ( ( rule__AccumulatorCS__OwnedTypeAssignment_2 ) ) )
-            // InternalOCLstdlib.g:5693:1: ( ( rule__AccumulatorCS__OwnedTypeAssignment_2 ) )
+            // InternalOCLstdlib.g:5694:1: ( ( ( rule__AccumulatorCS__OwnedTypeAssignment_2 ) ) )
+            // InternalOCLstdlib.g:5695:1: ( ( rule__AccumulatorCS__OwnedTypeAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:5693:1: ( ( rule__AccumulatorCS__OwnedTypeAssignment_2 ) )
-            // InternalOCLstdlib.g:5694:1: ( rule__AccumulatorCS__OwnedTypeAssignment_2 )
+            // InternalOCLstdlib.g:5695:1: ( ( rule__AccumulatorCS__OwnedTypeAssignment_2 ) )
+            // InternalOCLstdlib.g:5696:1: ( rule__AccumulatorCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAccumulatorCSAccess().getOwnedTypeAssignment_2());
             }
-            // InternalOCLstdlib.g:5695:1: ( rule__AccumulatorCS__OwnedTypeAssignment_2 )
-            // InternalOCLstdlib.g:5695:2: rule__AccumulatorCS__OwnedTypeAssignment_2
+            // InternalOCLstdlib.g:5697:1: ( rule__AccumulatorCS__OwnedTypeAssignment_2 )
+            // InternalOCLstdlib.g:5697:2: rule__AccumulatorCS__OwnedTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AccumulatorCS__OwnedTypeAssignment_2();
@@ -18998,14 +18998,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__0"
-    // InternalOCLstdlib.g:5711:1: rule__AnnotationCS__Group__0 : rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1 ;
+    // InternalOCLstdlib.g:5713:1: rule__AnnotationCS__Group__0 : rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1 ;
     public final void rule__AnnotationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5715:1: ( rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1 )
-            // InternalOCLstdlib.g:5716:2: rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1
+            // InternalOCLstdlib.g:5717:1: ( rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1 )
+            // InternalOCLstdlib.g:5718:2: rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__AnnotationCS__Group__0__Impl();
@@ -19036,17 +19036,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__0__Impl"
-    // InternalOCLstdlib.g:5723:1: rule__AnnotationCS__Group__0__Impl : ( 'annotation' ) ;
+    // InternalOCLstdlib.g:5725:1: rule__AnnotationCS__Group__0__Impl : ( 'annotation' ) ;
     public final void rule__AnnotationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5727:1: ( ( 'annotation' ) )
-            // InternalOCLstdlib.g:5728:1: ( 'annotation' )
+            // InternalOCLstdlib.g:5729:1: ( ( 'annotation' ) )
+            // InternalOCLstdlib.g:5730:1: ( 'annotation' )
             {
-            // InternalOCLstdlib.g:5728:1: ( 'annotation' )
-            // InternalOCLstdlib.g:5729:1: 'annotation'
+            // InternalOCLstdlib.g:5730:1: ( 'annotation' )
+            // InternalOCLstdlib.g:5731:1: 'annotation'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_0());
@@ -19077,14 +19077,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__1"
-    // InternalOCLstdlib.g:5742:1: rule__AnnotationCS__Group__1 : rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2 ;
+    // InternalOCLstdlib.g:5744:1: rule__AnnotationCS__Group__1 : rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2 ;
     public final void rule__AnnotationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5746:1: ( rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2 )
-            // InternalOCLstdlib.g:5747:2: rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2
+            // InternalOCLstdlib.g:5748:1: ( rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2 )
+            // InternalOCLstdlib.g:5749:2: rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__AnnotationCS__Group__1__Impl();
@@ -19115,23 +19115,23 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__1__Impl"
-    // InternalOCLstdlib.g:5754:1: rule__AnnotationCS__Group__1__Impl : ( ( rule__AnnotationCS__NameAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:5756:1: rule__AnnotationCS__Group__1__Impl : ( ( rule__AnnotationCS__NameAssignment_1 ) ) ;
     public final void rule__AnnotationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5758:1: ( ( ( rule__AnnotationCS__NameAssignment_1 ) ) )
-            // InternalOCLstdlib.g:5759:1: ( ( rule__AnnotationCS__NameAssignment_1 ) )
+            // InternalOCLstdlib.g:5760:1: ( ( ( rule__AnnotationCS__NameAssignment_1 ) ) )
+            // InternalOCLstdlib.g:5761:1: ( ( rule__AnnotationCS__NameAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:5759:1: ( ( rule__AnnotationCS__NameAssignment_1 ) )
-            // InternalOCLstdlib.g:5760:1: ( rule__AnnotationCS__NameAssignment_1 )
+            // InternalOCLstdlib.g:5761:1: ( ( rule__AnnotationCS__NameAssignment_1 ) )
+            // InternalOCLstdlib.g:5762:1: ( rule__AnnotationCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getNameAssignment_1());
             }
-            // InternalOCLstdlib.g:5761:1: ( rule__AnnotationCS__NameAssignment_1 )
-            // InternalOCLstdlib.g:5761:2: rule__AnnotationCS__NameAssignment_1
+            // InternalOCLstdlib.g:5763:1: ( rule__AnnotationCS__NameAssignment_1 )
+            // InternalOCLstdlib.g:5763:2: rule__AnnotationCS__NameAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__NameAssignment_1();
@@ -19166,14 +19166,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__2"
-    // InternalOCLstdlib.g:5771:1: rule__AnnotationCS__Group__2 : rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3 ;
+    // InternalOCLstdlib.g:5773:1: rule__AnnotationCS__Group__2 : rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3 ;
     public final void rule__AnnotationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5775:1: ( rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3 )
-            // InternalOCLstdlib.g:5776:2: rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3
+            // InternalOCLstdlib.g:5777:1: ( rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3 )
+            // InternalOCLstdlib.g:5778:2: rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_14);
             rule__AnnotationCS__Group__2__Impl();
@@ -19204,22 +19204,22 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__2__Impl"
-    // InternalOCLstdlib.g:5783:1: rule__AnnotationCS__Group__2__Impl : ( ( rule__AnnotationCS__Group_2__0 )? ) ;
+    // InternalOCLstdlib.g:5785:1: rule__AnnotationCS__Group__2__Impl : ( ( rule__AnnotationCS__Group_2__0 )? ) ;
     public final void rule__AnnotationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5787:1: ( ( ( rule__AnnotationCS__Group_2__0 )? ) )
-            // InternalOCLstdlib.g:5788:1: ( ( rule__AnnotationCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:5789:1: ( ( ( rule__AnnotationCS__Group_2__0 )? ) )
+            // InternalOCLstdlib.g:5790:1: ( ( rule__AnnotationCS__Group_2__0 )? )
             {
-            // InternalOCLstdlib.g:5788:1: ( ( rule__AnnotationCS__Group_2__0 )? )
-            // InternalOCLstdlib.g:5789:1: ( rule__AnnotationCS__Group_2__0 )?
+            // InternalOCLstdlib.g:5790:1: ( ( rule__AnnotationCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:5791:1: ( rule__AnnotationCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:5790:1: ( rule__AnnotationCS__Group_2__0 )?
+            // InternalOCLstdlib.g:5792:1: ( rule__AnnotationCS__Group_2__0 )?
             int alt60=2;
             int LA60_0 = input.LA(1);
 
@@ -19228,7 +19228,7 @@
             }
             switch (alt60) {
                 case 1 :
-                    // InternalOCLstdlib.g:5790:2: rule__AnnotationCS__Group_2__0
+                    // InternalOCLstdlib.g:5792:2: rule__AnnotationCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__AnnotationCS__Group_2__0();
@@ -19266,14 +19266,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__3"
-    // InternalOCLstdlib.g:5800:1: rule__AnnotationCS__Group__3 : rule__AnnotationCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:5802:1: rule__AnnotationCS__Group__3 : rule__AnnotationCS__Group__3__Impl ;
     public final void rule__AnnotationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5804:1: ( rule__AnnotationCS__Group__3__Impl )
-            // InternalOCLstdlib.g:5805:2: rule__AnnotationCS__Group__3__Impl
+            // InternalOCLstdlib.g:5806:1: ( rule__AnnotationCS__Group__3__Impl )
+            // InternalOCLstdlib.g:5807:2: rule__AnnotationCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__Group__3__Impl();
@@ -19299,23 +19299,23 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group__3__Impl"
-    // InternalOCLstdlib.g:5811:1: rule__AnnotationCS__Group__3__Impl : ( ( rule__AnnotationCS__Alternatives_3 ) ) ;
+    // InternalOCLstdlib.g:5813:1: rule__AnnotationCS__Group__3__Impl : ( ( rule__AnnotationCS__Alternatives_3 ) ) ;
     public final void rule__AnnotationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5815:1: ( ( ( rule__AnnotationCS__Alternatives_3 ) ) )
-            // InternalOCLstdlib.g:5816:1: ( ( rule__AnnotationCS__Alternatives_3 ) )
+            // InternalOCLstdlib.g:5817:1: ( ( ( rule__AnnotationCS__Alternatives_3 ) ) )
+            // InternalOCLstdlib.g:5818:1: ( ( rule__AnnotationCS__Alternatives_3 ) )
             {
-            // InternalOCLstdlib.g:5816:1: ( ( rule__AnnotationCS__Alternatives_3 ) )
-            // InternalOCLstdlib.g:5817:1: ( rule__AnnotationCS__Alternatives_3 )
+            // InternalOCLstdlib.g:5818:1: ( ( rule__AnnotationCS__Alternatives_3 ) )
+            // InternalOCLstdlib.g:5819:1: ( rule__AnnotationCS__Alternatives_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getAlternatives_3());
             }
-            // InternalOCLstdlib.g:5818:1: ( rule__AnnotationCS__Alternatives_3 )
-            // InternalOCLstdlib.g:5818:2: rule__AnnotationCS__Alternatives_3
+            // InternalOCLstdlib.g:5820:1: ( rule__AnnotationCS__Alternatives_3 )
+            // InternalOCLstdlib.g:5820:2: rule__AnnotationCS__Alternatives_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__Alternatives_3();
@@ -19350,14 +19350,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_2__0"
-    // InternalOCLstdlib.g:5836:1: rule__AnnotationCS__Group_2__0 : rule__AnnotationCS__Group_2__0__Impl rule__AnnotationCS__Group_2__1 ;
+    // InternalOCLstdlib.g:5838:1: rule__AnnotationCS__Group_2__0 : rule__AnnotationCS__Group_2__0__Impl rule__AnnotationCS__Group_2__1 ;
     public final void rule__AnnotationCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5840:1: ( rule__AnnotationCS__Group_2__0__Impl rule__AnnotationCS__Group_2__1 )
-            // InternalOCLstdlib.g:5841:2: rule__AnnotationCS__Group_2__0__Impl rule__AnnotationCS__Group_2__1
+            // InternalOCLstdlib.g:5842:1: ( rule__AnnotationCS__Group_2__0__Impl rule__AnnotationCS__Group_2__1 )
+            // InternalOCLstdlib.g:5843:2: rule__AnnotationCS__Group_2__0__Impl rule__AnnotationCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__AnnotationCS__Group_2__0__Impl();
@@ -19388,17 +19388,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:5848:1: rule__AnnotationCS__Group_2__0__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:5850:1: rule__AnnotationCS__Group_2__0__Impl : ( '(' ) ;
     public final void rule__AnnotationCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5852:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:5853:1: ( '(' )
+            // InternalOCLstdlib.g:5854:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:5855:1: ( '(' )
             {
-            // InternalOCLstdlib.g:5853:1: ( '(' )
-            // InternalOCLstdlib.g:5854:1: '('
+            // InternalOCLstdlib.g:5855:1: ( '(' )
+            // InternalOCLstdlib.g:5856:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_2_0());
@@ -19429,14 +19429,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_2__1"
-    // InternalOCLstdlib.g:5867:1: rule__AnnotationCS__Group_2__1 : rule__AnnotationCS__Group_2__1__Impl rule__AnnotationCS__Group_2__2 ;
+    // InternalOCLstdlib.g:5869:1: rule__AnnotationCS__Group_2__1 : rule__AnnotationCS__Group_2__1__Impl rule__AnnotationCS__Group_2__2 ;
     public final void rule__AnnotationCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5871:1: ( rule__AnnotationCS__Group_2__1__Impl rule__AnnotationCS__Group_2__2 )
-            // InternalOCLstdlib.g:5872:2: rule__AnnotationCS__Group_2__1__Impl rule__AnnotationCS__Group_2__2
+            // InternalOCLstdlib.g:5873:1: ( rule__AnnotationCS__Group_2__1__Impl rule__AnnotationCS__Group_2__2 )
+            // InternalOCLstdlib.g:5874:2: rule__AnnotationCS__Group_2__1__Impl rule__AnnotationCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__AnnotationCS__Group_2__1__Impl();
@@ -19467,23 +19467,23 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:5879:1: rule__AnnotationCS__Group_2__1__Impl : ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 ) ) ;
+    // InternalOCLstdlib.g:5881:1: rule__AnnotationCS__Group_2__1__Impl : ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 ) ) ;
     public final void rule__AnnotationCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5883:1: ( ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 ) ) )
-            // InternalOCLstdlib.g:5884:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 ) )
+            // InternalOCLstdlib.g:5885:1: ( ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 ) ) )
+            // InternalOCLstdlib.g:5886:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 ) )
             {
-            // InternalOCLstdlib.g:5884:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 ) )
-            // InternalOCLstdlib.g:5885:1: ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 )
+            // InternalOCLstdlib.g:5886:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 ) )
+            // InternalOCLstdlib.g:5887:1: ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_2_1());
             }
-            // InternalOCLstdlib.g:5886:1: ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 )
-            // InternalOCLstdlib.g:5886:2: rule__AnnotationCS__OwnedDetailsAssignment_2_1
+            // InternalOCLstdlib.g:5888:1: ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 )
+            // InternalOCLstdlib.g:5888:2: rule__AnnotationCS__OwnedDetailsAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__OwnedDetailsAssignment_2_1();
@@ -19518,14 +19518,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_2__2"
-    // InternalOCLstdlib.g:5896:1: rule__AnnotationCS__Group_2__2 : rule__AnnotationCS__Group_2__2__Impl rule__AnnotationCS__Group_2__3 ;
+    // InternalOCLstdlib.g:5898:1: rule__AnnotationCS__Group_2__2 : rule__AnnotationCS__Group_2__2__Impl rule__AnnotationCS__Group_2__3 ;
     public final void rule__AnnotationCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5900:1: ( rule__AnnotationCS__Group_2__2__Impl rule__AnnotationCS__Group_2__3 )
-            // InternalOCLstdlib.g:5901:2: rule__AnnotationCS__Group_2__2__Impl rule__AnnotationCS__Group_2__3
+            // InternalOCLstdlib.g:5902:1: ( rule__AnnotationCS__Group_2__2__Impl rule__AnnotationCS__Group_2__3 )
+            // InternalOCLstdlib.g:5903:2: rule__AnnotationCS__Group_2__2__Impl rule__AnnotationCS__Group_2__3
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__AnnotationCS__Group_2__2__Impl();
@@ -19556,22 +19556,22 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_2__2__Impl"
-    // InternalOCLstdlib.g:5908:1: rule__AnnotationCS__Group_2__2__Impl : ( ( rule__AnnotationCS__Group_2_2__0 )* ) ;
+    // InternalOCLstdlib.g:5910:1: rule__AnnotationCS__Group_2__2__Impl : ( ( rule__AnnotationCS__Group_2_2__0 )* ) ;
     public final void rule__AnnotationCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5912:1: ( ( ( rule__AnnotationCS__Group_2_2__0 )* ) )
-            // InternalOCLstdlib.g:5913:1: ( ( rule__AnnotationCS__Group_2_2__0 )* )
+            // InternalOCLstdlib.g:5914:1: ( ( ( rule__AnnotationCS__Group_2_2__0 )* ) )
+            // InternalOCLstdlib.g:5915:1: ( ( rule__AnnotationCS__Group_2_2__0 )* )
             {
-            // InternalOCLstdlib.g:5913:1: ( ( rule__AnnotationCS__Group_2_2__0 )* )
-            // InternalOCLstdlib.g:5914:1: ( rule__AnnotationCS__Group_2_2__0 )*
+            // InternalOCLstdlib.g:5915:1: ( ( rule__AnnotationCS__Group_2_2__0 )* )
+            // InternalOCLstdlib.g:5916:1: ( rule__AnnotationCS__Group_2_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getGroup_2_2());
             }
-            // InternalOCLstdlib.g:5915:1: ( rule__AnnotationCS__Group_2_2__0 )*
+            // InternalOCLstdlib.g:5917:1: ( rule__AnnotationCS__Group_2_2__0 )*
             loop61:
             do {
                 int alt61=2;
@@ -19584,7 +19584,7 @@
 
                 switch (alt61) {
             	case 1 :
-            	    // InternalOCLstdlib.g:5915:2: rule__AnnotationCS__Group_2_2__0
+            	    // InternalOCLstdlib.g:5917:2: rule__AnnotationCS__Group_2_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__AnnotationCS__Group_2_2__0();
@@ -19625,14 +19625,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_2__3"
-    // InternalOCLstdlib.g:5925:1: rule__AnnotationCS__Group_2__3 : rule__AnnotationCS__Group_2__3__Impl ;
+    // InternalOCLstdlib.g:5927:1: rule__AnnotationCS__Group_2__3 : rule__AnnotationCS__Group_2__3__Impl ;
     public final void rule__AnnotationCS__Group_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5929:1: ( rule__AnnotationCS__Group_2__3__Impl )
-            // InternalOCLstdlib.g:5930:2: rule__AnnotationCS__Group_2__3__Impl
+            // InternalOCLstdlib.g:5931:1: ( rule__AnnotationCS__Group_2__3__Impl )
+            // InternalOCLstdlib.g:5932:2: rule__AnnotationCS__Group_2__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__Group_2__3__Impl();
@@ -19658,17 +19658,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_2__3__Impl"
-    // InternalOCLstdlib.g:5936:1: rule__AnnotationCS__Group_2__3__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:5938:1: rule__AnnotationCS__Group_2__3__Impl : ( ')' ) ;
     public final void rule__AnnotationCS__Group_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5940:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:5941:1: ( ')' )
+            // InternalOCLstdlib.g:5942:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:5943:1: ( ')' )
             {
-            // InternalOCLstdlib.g:5941:1: ( ')' )
-            // InternalOCLstdlib.g:5942:1: ')'
+            // InternalOCLstdlib.g:5943:1: ( ')' )
+            // InternalOCLstdlib.g:5944:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_2_3());
@@ -19699,14 +19699,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_2_2__0"
-    // InternalOCLstdlib.g:5963:1: rule__AnnotationCS__Group_2_2__0 : rule__AnnotationCS__Group_2_2__0__Impl rule__AnnotationCS__Group_2_2__1 ;
+    // InternalOCLstdlib.g:5965:1: rule__AnnotationCS__Group_2_2__0 : rule__AnnotationCS__Group_2_2__0__Impl rule__AnnotationCS__Group_2_2__1 ;
     public final void rule__AnnotationCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5967:1: ( rule__AnnotationCS__Group_2_2__0__Impl rule__AnnotationCS__Group_2_2__1 )
-            // InternalOCLstdlib.g:5968:2: rule__AnnotationCS__Group_2_2__0__Impl rule__AnnotationCS__Group_2_2__1
+            // InternalOCLstdlib.g:5969:1: ( rule__AnnotationCS__Group_2_2__0__Impl rule__AnnotationCS__Group_2_2__1 )
+            // InternalOCLstdlib.g:5970:2: rule__AnnotationCS__Group_2_2__0__Impl rule__AnnotationCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__AnnotationCS__Group_2_2__0__Impl();
@@ -19737,17 +19737,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_2_2__0__Impl"
-    // InternalOCLstdlib.g:5975:1: rule__AnnotationCS__Group_2_2__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:5977:1: rule__AnnotationCS__Group_2_2__0__Impl : ( ',' ) ;
     public final void rule__AnnotationCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5979:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:5980:1: ( ',' )
+            // InternalOCLstdlib.g:5981:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:5982:1: ( ',' )
             {
-            // InternalOCLstdlib.g:5980:1: ( ',' )
-            // InternalOCLstdlib.g:5981:1: ','
+            // InternalOCLstdlib.g:5982:1: ( ',' )
+            // InternalOCLstdlib.g:5983:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getCommaKeyword_2_2_0());
@@ -19778,14 +19778,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_2_2__1"
-    // InternalOCLstdlib.g:5994:1: rule__AnnotationCS__Group_2_2__1 : rule__AnnotationCS__Group_2_2__1__Impl ;
+    // InternalOCLstdlib.g:5996:1: rule__AnnotationCS__Group_2_2__1 : rule__AnnotationCS__Group_2_2__1__Impl ;
     public final void rule__AnnotationCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:5998:1: ( rule__AnnotationCS__Group_2_2__1__Impl )
-            // InternalOCLstdlib.g:5999:2: rule__AnnotationCS__Group_2_2__1__Impl
+            // InternalOCLstdlib.g:6000:1: ( rule__AnnotationCS__Group_2_2__1__Impl )
+            // InternalOCLstdlib.g:6001:2: rule__AnnotationCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__Group_2_2__1__Impl();
@@ -19811,23 +19811,23 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_2_2__1__Impl"
-    // InternalOCLstdlib.g:6005:1: rule__AnnotationCS__Group_2_2__1__Impl : ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 ) ) ;
+    // InternalOCLstdlib.g:6007:1: rule__AnnotationCS__Group_2_2__1__Impl : ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 ) ) ;
     public final void rule__AnnotationCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6009:1: ( ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 ) ) )
-            // InternalOCLstdlib.g:6010:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 ) )
+            // InternalOCLstdlib.g:6011:1: ( ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 ) ) )
+            // InternalOCLstdlib.g:6012:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 ) )
             {
-            // InternalOCLstdlib.g:6010:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 ) )
-            // InternalOCLstdlib.g:6011:1: ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 )
+            // InternalOCLstdlib.g:6012:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 ) )
+            // InternalOCLstdlib.g:6013:1: ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_2_2_1());
             }
-            // InternalOCLstdlib.g:6012:1: ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 )
-            // InternalOCLstdlib.g:6012:2: rule__AnnotationCS__OwnedDetailsAssignment_2_2_1
+            // InternalOCLstdlib.g:6014:1: ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 )
+            // InternalOCLstdlib.g:6014:2: rule__AnnotationCS__OwnedDetailsAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__OwnedDetailsAssignment_2_2_1();
@@ -19862,14 +19862,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3_0__0"
-    // InternalOCLstdlib.g:6026:1: rule__AnnotationCS__Group_3_0__0 : rule__AnnotationCS__Group_3_0__0__Impl rule__AnnotationCS__Group_3_0__1 ;
+    // InternalOCLstdlib.g:6028:1: rule__AnnotationCS__Group_3_0__0 : rule__AnnotationCS__Group_3_0__0__Impl rule__AnnotationCS__Group_3_0__1 ;
     public final void rule__AnnotationCS__Group_3_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6030:1: ( rule__AnnotationCS__Group_3_0__0__Impl rule__AnnotationCS__Group_3_0__1 )
-            // InternalOCLstdlib.g:6031:2: rule__AnnotationCS__Group_3_0__0__Impl rule__AnnotationCS__Group_3_0__1
+            // InternalOCLstdlib.g:6032:1: ( rule__AnnotationCS__Group_3_0__0__Impl rule__AnnotationCS__Group_3_0__1 )
+            // InternalOCLstdlib.g:6033:2: rule__AnnotationCS__Group_3_0__0__Impl rule__AnnotationCS__Group_3_0__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__AnnotationCS__Group_3_0__0__Impl();
@@ -19900,17 +19900,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3_0__0__Impl"
-    // InternalOCLstdlib.g:6038:1: rule__AnnotationCS__Group_3_0__0__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:6040:1: rule__AnnotationCS__Group_3_0__0__Impl : ( '{' ) ;
     public final void rule__AnnotationCS__Group_3_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6042:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:6043:1: ( '{' )
+            // InternalOCLstdlib.g:6044:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:6045:1: ( '{' )
             {
-            // InternalOCLstdlib.g:6043:1: ( '{' )
-            // InternalOCLstdlib.g:6044:1: '{'
+            // InternalOCLstdlib.g:6045:1: ( '{' )
+            // InternalOCLstdlib.g:6046:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_3_0_0());
@@ -19941,14 +19941,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3_0__1"
-    // InternalOCLstdlib.g:6057:1: rule__AnnotationCS__Group_3_0__1 : rule__AnnotationCS__Group_3_0__1__Impl rule__AnnotationCS__Group_3_0__2 ;
+    // InternalOCLstdlib.g:6059:1: rule__AnnotationCS__Group_3_0__1 : rule__AnnotationCS__Group_3_0__1__Impl rule__AnnotationCS__Group_3_0__2 ;
     public final void rule__AnnotationCS__Group_3_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6061:1: ( rule__AnnotationCS__Group_3_0__1__Impl rule__AnnotationCS__Group_3_0__2 )
-            // InternalOCLstdlib.g:6062:2: rule__AnnotationCS__Group_3_0__1__Impl rule__AnnotationCS__Group_3_0__2
+            // InternalOCLstdlib.g:6063:1: ( rule__AnnotationCS__Group_3_0__1__Impl rule__AnnotationCS__Group_3_0__2 )
+            // InternalOCLstdlib.g:6064:2: rule__AnnotationCS__Group_3_0__1__Impl rule__AnnotationCS__Group_3_0__2
             {
             pushFollow(FollowSets000.FOLLOW_19);
             rule__AnnotationCS__Group_3_0__1__Impl();
@@ -19979,23 +19979,23 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3_0__1__Impl"
-    // InternalOCLstdlib.g:6069:1: rule__AnnotationCS__Group_3_0__1__Impl : ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 ) ) ;
+    // InternalOCLstdlib.g:6071:1: rule__AnnotationCS__Group_3_0__1__Impl : ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 ) ) ;
     public final void rule__AnnotationCS__Group_3_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6073:1: ( ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 ) ) )
-            // InternalOCLstdlib.g:6074:1: ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 ) )
+            // InternalOCLstdlib.g:6075:1: ( ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 ) ) )
+            // InternalOCLstdlib.g:6076:1: ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 ) )
             {
-            // InternalOCLstdlib.g:6074:1: ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 ) )
-            // InternalOCLstdlib.g:6075:1: ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 )
+            // InternalOCLstdlib.g:6076:1: ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 ) )
+            // InternalOCLstdlib.g:6077:1: ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAssignment_3_0_1());
             }
-            // InternalOCLstdlib.g:6076:1: ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 )
-            // InternalOCLstdlib.g:6076:2: rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1
+            // InternalOCLstdlib.g:6078:1: ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 )
+            // InternalOCLstdlib.g:6078:2: rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1();
@@ -20030,14 +20030,14 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3_0__2"
-    // InternalOCLstdlib.g:6086:1: rule__AnnotationCS__Group_3_0__2 : rule__AnnotationCS__Group_3_0__2__Impl ;
+    // InternalOCLstdlib.g:6088:1: rule__AnnotationCS__Group_3_0__2 : rule__AnnotationCS__Group_3_0__2__Impl ;
     public final void rule__AnnotationCS__Group_3_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6090:1: ( rule__AnnotationCS__Group_3_0__2__Impl )
-            // InternalOCLstdlib.g:6091:2: rule__AnnotationCS__Group_3_0__2__Impl
+            // InternalOCLstdlib.g:6092:1: ( rule__AnnotationCS__Group_3_0__2__Impl )
+            // InternalOCLstdlib.g:6093:2: rule__AnnotationCS__Group_3_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__Group_3_0__2__Impl();
@@ -20063,17 +20063,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__Group_3_0__2__Impl"
-    // InternalOCLstdlib.g:6097:1: rule__AnnotationCS__Group_3_0__2__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:6099:1: rule__AnnotationCS__Group_3_0__2__Impl : ( '}' ) ;
     public final void rule__AnnotationCS__Group_3_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6101:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:6102:1: ( '}' )
+            // InternalOCLstdlib.g:6103:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:6104:1: ( '}' )
             {
-            // InternalOCLstdlib.g:6102:1: ( '}' )
-            // InternalOCLstdlib.g:6103:1: '}'
+            // InternalOCLstdlib.g:6104:1: ( '}' )
+            // InternalOCLstdlib.g:6105:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_3_0_2());
@@ -20104,14 +20104,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__0"
-    // InternalOCLstdlib.g:6122:1: rule__LibClassCS__Group__0 : rule__LibClassCS__Group__0__Impl rule__LibClassCS__Group__1 ;
+    // InternalOCLstdlib.g:6124:1: rule__LibClassCS__Group__0 : rule__LibClassCS__Group__0__Impl rule__LibClassCS__Group__1 ;
     public final void rule__LibClassCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6126:1: ( rule__LibClassCS__Group__0__Impl rule__LibClassCS__Group__1 )
-            // InternalOCLstdlib.g:6127:2: rule__LibClassCS__Group__0__Impl rule__LibClassCS__Group__1
+            // InternalOCLstdlib.g:6128:1: ( rule__LibClassCS__Group__0__Impl rule__LibClassCS__Group__1 )
+            // InternalOCLstdlib.g:6129:2: rule__LibClassCS__Group__0__Impl rule__LibClassCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_20);
             rule__LibClassCS__Group__0__Impl();
@@ -20142,22 +20142,22 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__0__Impl"
-    // InternalOCLstdlib.g:6134:1: rule__LibClassCS__Group__0__Impl : ( ( rule__LibClassCS__IsAbstractAssignment_0 )? ) ;
+    // InternalOCLstdlib.g:6136:1: rule__LibClassCS__Group__0__Impl : ( ( rule__LibClassCS__IsAbstractAssignment_0 )? ) ;
     public final void rule__LibClassCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6138:1: ( ( ( rule__LibClassCS__IsAbstractAssignment_0 )? ) )
-            // InternalOCLstdlib.g:6139:1: ( ( rule__LibClassCS__IsAbstractAssignment_0 )? )
+            // InternalOCLstdlib.g:6140:1: ( ( ( rule__LibClassCS__IsAbstractAssignment_0 )? ) )
+            // InternalOCLstdlib.g:6141:1: ( ( rule__LibClassCS__IsAbstractAssignment_0 )? )
             {
-            // InternalOCLstdlib.g:6139:1: ( ( rule__LibClassCS__IsAbstractAssignment_0 )? )
-            // InternalOCLstdlib.g:6140:1: ( rule__LibClassCS__IsAbstractAssignment_0 )?
+            // InternalOCLstdlib.g:6141:1: ( ( rule__LibClassCS__IsAbstractAssignment_0 )? )
+            // InternalOCLstdlib.g:6142:1: ( rule__LibClassCS__IsAbstractAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getIsAbstractAssignment_0());
             }
-            // InternalOCLstdlib.g:6141:1: ( rule__LibClassCS__IsAbstractAssignment_0 )?
+            // InternalOCLstdlib.g:6143:1: ( rule__LibClassCS__IsAbstractAssignment_0 )?
             int alt62=2;
             int LA62_0 = input.LA(1);
 
@@ -20166,7 +20166,7 @@
             }
             switch (alt62) {
                 case 1 :
-                    // InternalOCLstdlib.g:6141:2: rule__LibClassCS__IsAbstractAssignment_0
+                    // InternalOCLstdlib.g:6143:2: rule__LibClassCS__IsAbstractAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibClassCS__IsAbstractAssignment_0();
@@ -20204,14 +20204,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__1"
-    // InternalOCLstdlib.g:6151:1: rule__LibClassCS__Group__1 : rule__LibClassCS__Group__1__Impl rule__LibClassCS__Group__2 ;
+    // InternalOCLstdlib.g:6153:1: rule__LibClassCS__Group__1 : rule__LibClassCS__Group__1__Impl rule__LibClassCS__Group__2 ;
     public final void rule__LibClassCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6155:1: ( rule__LibClassCS__Group__1__Impl rule__LibClassCS__Group__2 )
-            // InternalOCLstdlib.g:6156:2: rule__LibClassCS__Group__1__Impl rule__LibClassCS__Group__2
+            // InternalOCLstdlib.g:6157:1: ( rule__LibClassCS__Group__1__Impl rule__LibClassCS__Group__2 )
+            // InternalOCLstdlib.g:6158:2: rule__LibClassCS__Group__1__Impl rule__LibClassCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_21);
             rule__LibClassCS__Group__1__Impl();
@@ -20242,17 +20242,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__1__Impl"
-    // InternalOCLstdlib.g:6163:1: rule__LibClassCS__Group__1__Impl : ( 'type' ) ;
+    // InternalOCLstdlib.g:6165:1: rule__LibClassCS__Group__1__Impl : ( 'type' ) ;
     public final void rule__LibClassCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6167:1: ( ( 'type' ) )
-            // InternalOCLstdlib.g:6168:1: ( 'type' )
+            // InternalOCLstdlib.g:6169:1: ( ( 'type' ) )
+            // InternalOCLstdlib.g:6170:1: ( 'type' )
             {
-            // InternalOCLstdlib.g:6168:1: ( 'type' )
-            // InternalOCLstdlib.g:6169:1: 'type'
+            // InternalOCLstdlib.g:6170:1: ( 'type' )
+            // InternalOCLstdlib.g:6171:1: 'type'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getTypeKeyword_1());
@@ -20283,14 +20283,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__2"
-    // InternalOCLstdlib.g:6182:1: rule__LibClassCS__Group__2 : rule__LibClassCS__Group__2__Impl rule__LibClassCS__Group__3 ;
+    // InternalOCLstdlib.g:6184:1: rule__LibClassCS__Group__2 : rule__LibClassCS__Group__2__Impl rule__LibClassCS__Group__3 ;
     public final void rule__LibClassCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6186:1: ( rule__LibClassCS__Group__2__Impl rule__LibClassCS__Group__3 )
-            // InternalOCLstdlib.g:6187:2: rule__LibClassCS__Group__2__Impl rule__LibClassCS__Group__3
+            // InternalOCLstdlib.g:6188:1: ( rule__LibClassCS__Group__2__Impl rule__LibClassCS__Group__3 )
+            // InternalOCLstdlib.g:6189:2: rule__LibClassCS__Group__2__Impl rule__LibClassCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__LibClassCS__Group__2__Impl();
@@ -20321,23 +20321,23 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__2__Impl"
-    // InternalOCLstdlib.g:6194:1: rule__LibClassCS__Group__2__Impl : ( ( rule__LibClassCS__NameAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:6196:1: rule__LibClassCS__Group__2__Impl : ( ( rule__LibClassCS__NameAssignment_2 ) ) ;
     public final void rule__LibClassCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6198:1: ( ( ( rule__LibClassCS__NameAssignment_2 ) ) )
-            // InternalOCLstdlib.g:6199:1: ( ( rule__LibClassCS__NameAssignment_2 ) )
+            // InternalOCLstdlib.g:6200:1: ( ( ( rule__LibClassCS__NameAssignment_2 ) ) )
+            // InternalOCLstdlib.g:6201:1: ( ( rule__LibClassCS__NameAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:6199:1: ( ( rule__LibClassCS__NameAssignment_2 ) )
-            // InternalOCLstdlib.g:6200:1: ( rule__LibClassCS__NameAssignment_2 )
+            // InternalOCLstdlib.g:6201:1: ( ( rule__LibClassCS__NameAssignment_2 ) )
+            // InternalOCLstdlib.g:6202:1: ( rule__LibClassCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getNameAssignment_2());
             }
-            // InternalOCLstdlib.g:6201:1: ( rule__LibClassCS__NameAssignment_2 )
-            // InternalOCLstdlib.g:6201:2: rule__LibClassCS__NameAssignment_2
+            // InternalOCLstdlib.g:6203:1: ( rule__LibClassCS__NameAssignment_2 )
+            // InternalOCLstdlib.g:6203:2: rule__LibClassCS__NameAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibClassCS__NameAssignment_2();
@@ -20372,14 +20372,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__3"
-    // InternalOCLstdlib.g:6211:1: rule__LibClassCS__Group__3 : rule__LibClassCS__Group__3__Impl rule__LibClassCS__Group__4 ;
+    // InternalOCLstdlib.g:6213:1: rule__LibClassCS__Group__3 : rule__LibClassCS__Group__3__Impl rule__LibClassCS__Group__4 ;
     public final void rule__LibClassCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6215:1: ( rule__LibClassCS__Group__3__Impl rule__LibClassCS__Group__4 )
-            // InternalOCLstdlib.g:6216:2: rule__LibClassCS__Group__3__Impl rule__LibClassCS__Group__4
+            // InternalOCLstdlib.g:6217:1: ( rule__LibClassCS__Group__3__Impl rule__LibClassCS__Group__4 )
+            // InternalOCLstdlib.g:6218:2: rule__LibClassCS__Group__3__Impl rule__LibClassCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__LibClassCS__Group__3__Impl();
@@ -20410,22 +20410,22 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__3__Impl"
-    // InternalOCLstdlib.g:6223:1: rule__LibClassCS__Group__3__Impl : ( ( rule__LibClassCS__OwnedSignatureAssignment_3 )? ) ;
+    // InternalOCLstdlib.g:6225:1: rule__LibClassCS__Group__3__Impl : ( ( rule__LibClassCS__OwnedSignatureAssignment_3 )? ) ;
     public final void rule__LibClassCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6227:1: ( ( ( rule__LibClassCS__OwnedSignatureAssignment_3 )? ) )
-            // InternalOCLstdlib.g:6228:1: ( ( rule__LibClassCS__OwnedSignatureAssignment_3 )? )
+            // InternalOCLstdlib.g:6229:1: ( ( ( rule__LibClassCS__OwnedSignatureAssignment_3 )? ) )
+            // InternalOCLstdlib.g:6230:1: ( ( rule__LibClassCS__OwnedSignatureAssignment_3 )? )
             {
-            // InternalOCLstdlib.g:6228:1: ( ( rule__LibClassCS__OwnedSignatureAssignment_3 )? )
-            // InternalOCLstdlib.g:6229:1: ( rule__LibClassCS__OwnedSignatureAssignment_3 )?
+            // InternalOCLstdlib.g:6230:1: ( ( rule__LibClassCS__OwnedSignatureAssignment_3 )? )
+            // InternalOCLstdlib.g:6231:1: ( rule__LibClassCS__OwnedSignatureAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getOwnedSignatureAssignment_3());
             }
-            // InternalOCLstdlib.g:6230:1: ( rule__LibClassCS__OwnedSignatureAssignment_3 )?
+            // InternalOCLstdlib.g:6232:1: ( rule__LibClassCS__OwnedSignatureAssignment_3 )?
             int alt63=2;
             int LA63_0 = input.LA(1);
 
@@ -20434,7 +20434,7 @@
             }
             switch (alt63) {
                 case 1 :
-                    // InternalOCLstdlib.g:6230:2: rule__LibClassCS__OwnedSignatureAssignment_3
+                    // InternalOCLstdlib.g:6232:2: rule__LibClassCS__OwnedSignatureAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibClassCS__OwnedSignatureAssignment_3();
@@ -20472,14 +20472,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__4"
-    // InternalOCLstdlib.g:6240:1: rule__LibClassCS__Group__4 : rule__LibClassCS__Group__4__Impl rule__LibClassCS__Group__5 ;
+    // InternalOCLstdlib.g:6242:1: rule__LibClassCS__Group__4 : rule__LibClassCS__Group__4__Impl rule__LibClassCS__Group__5 ;
     public final void rule__LibClassCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6244:1: ( rule__LibClassCS__Group__4__Impl rule__LibClassCS__Group__5 )
-            // InternalOCLstdlib.g:6245:2: rule__LibClassCS__Group__4__Impl rule__LibClassCS__Group__5
+            // InternalOCLstdlib.g:6246:1: ( rule__LibClassCS__Group__4__Impl rule__LibClassCS__Group__5 )
+            // InternalOCLstdlib.g:6247:2: rule__LibClassCS__Group__4__Impl rule__LibClassCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__LibClassCS__Group__4__Impl();
@@ -20510,22 +20510,22 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__4__Impl"
-    // InternalOCLstdlib.g:6252:1: rule__LibClassCS__Group__4__Impl : ( ( rule__LibClassCS__Group_4__0 )? ) ;
+    // InternalOCLstdlib.g:6254:1: rule__LibClassCS__Group__4__Impl : ( ( rule__LibClassCS__Group_4__0 )? ) ;
     public final void rule__LibClassCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6256:1: ( ( ( rule__LibClassCS__Group_4__0 )? ) )
-            // InternalOCLstdlib.g:6257:1: ( ( rule__LibClassCS__Group_4__0 )? )
+            // InternalOCLstdlib.g:6258:1: ( ( ( rule__LibClassCS__Group_4__0 )? ) )
+            // InternalOCLstdlib.g:6259:1: ( ( rule__LibClassCS__Group_4__0 )? )
             {
-            // InternalOCLstdlib.g:6257:1: ( ( rule__LibClassCS__Group_4__0 )? )
-            // InternalOCLstdlib.g:6258:1: ( rule__LibClassCS__Group_4__0 )?
+            // InternalOCLstdlib.g:6259:1: ( ( rule__LibClassCS__Group_4__0 )? )
+            // InternalOCLstdlib.g:6260:1: ( rule__LibClassCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getGroup_4());
             }
-            // InternalOCLstdlib.g:6259:1: ( rule__LibClassCS__Group_4__0 )?
+            // InternalOCLstdlib.g:6261:1: ( rule__LibClassCS__Group_4__0 )?
             int alt64=2;
             int LA64_0 = input.LA(1);
 
@@ -20534,7 +20534,7 @@
             }
             switch (alt64) {
                 case 1 :
-                    // InternalOCLstdlib.g:6259:2: rule__LibClassCS__Group_4__0
+                    // InternalOCLstdlib.g:6261:2: rule__LibClassCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibClassCS__Group_4__0();
@@ -20572,14 +20572,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__5"
-    // InternalOCLstdlib.g:6269:1: rule__LibClassCS__Group__5 : rule__LibClassCS__Group__5__Impl rule__LibClassCS__Group__6 ;
+    // InternalOCLstdlib.g:6271:1: rule__LibClassCS__Group__5 : rule__LibClassCS__Group__5__Impl rule__LibClassCS__Group__6 ;
     public final void rule__LibClassCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6273:1: ( rule__LibClassCS__Group__5__Impl rule__LibClassCS__Group__6 )
-            // InternalOCLstdlib.g:6274:2: rule__LibClassCS__Group__5__Impl rule__LibClassCS__Group__6
+            // InternalOCLstdlib.g:6275:1: ( rule__LibClassCS__Group__5__Impl rule__LibClassCS__Group__6 )
+            // InternalOCLstdlib.g:6276:2: rule__LibClassCS__Group__5__Impl rule__LibClassCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_22);
             rule__LibClassCS__Group__5__Impl();
@@ -20610,22 +20610,22 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__5__Impl"
-    // InternalOCLstdlib.g:6281:1: rule__LibClassCS__Group__5__Impl : ( ( rule__LibClassCS__Group_5__0 )? ) ;
+    // InternalOCLstdlib.g:6283:1: rule__LibClassCS__Group__5__Impl : ( ( rule__LibClassCS__Group_5__0 )? ) ;
     public final void rule__LibClassCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6285:1: ( ( ( rule__LibClassCS__Group_5__0 )? ) )
-            // InternalOCLstdlib.g:6286:1: ( ( rule__LibClassCS__Group_5__0 )? )
+            // InternalOCLstdlib.g:6287:1: ( ( ( rule__LibClassCS__Group_5__0 )? ) )
+            // InternalOCLstdlib.g:6288:1: ( ( rule__LibClassCS__Group_5__0 )? )
             {
-            // InternalOCLstdlib.g:6286:1: ( ( rule__LibClassCS__Group_5__0 )? )
-            // InternalOCLstdlib.g:6287:1: ( rule__LibClassCS__Group_5__0 )?
+            // InternalOCLstdlib.g:6288:1: ( ( rule__LibClassCS__Group_5__0 )? )
+            // InternalOCLstdlib.g:6289:1: ( rule__LibClassCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getGroup_5());
             }
-            // InternalOCLstdlib.g:6288:1: ( rule__LibClassCS__Group_5__0 )?
+            // InternalOCLstdlib.g:6290:1: ( rule__LibClassCS__Group_5__0 )?
             int alt65=2;
             int LA65_0 = input.LA(1);
 
@@ -20634,7 +20634,7 @@
             }
             switch (alt65) {
                 case 1 :
-                    // InternalOCLstdlib.g:6288:2: rule__LibClassCS__Group_5__0
+                    // InternalOCLstdlib.g:6290:2: rule__LibClassCS__Group_5__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibClassCS__Group_5__0();
@@ -20672,14 +20672,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__6"
-    // InternalOCLstdlib.g:6298:1: rule__LibClassCS__Group__6 : rule__LibClassCS__Group__6__Impl rule__LibClassCS__Group__7 ;
+    // InternalOCLstdlib.g:6300:1: rule__LibClassCS__Group__6 : rule__LibClassCS__Group__6__Impl rule__LibClassCS__Group__7 ;
     public final void rule__LibClassCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6302:1: ( rule__LibClassCS__Group__6__Impl rule__LibClassCS__Group__7 )
-            // InternalOCLstdlib.g:6303:2: rule__LibClassCS__Group__6__Impl rule__LibClassCS__Group__7
+            // InternalOCLstdlib.g:6304:1: ( rule__LibClassCS__Group__6__Impl rule__LibClassCS__Group__7 )
+            // InternalOCLstdlib.g:6305:2: rule__LibClassCS__Group__6__Impl rule__LibClassCS__Group__7
             {
             pushFollow(FollowSets000.FOLLOW_23);
             rule__LibClassCS__Group__6__Impl();
@@ -20710,17 +20710,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__6__Impl"
-    // InternalOCLstdlib.g:6310:1: rule__LibClassCS__Group__6__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:6312:1: rule__LibClassCS__Group__6__Impl : ( '{' ) ;
     public final void rule__LibClassCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6314:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:6315:1: ( '{' )
+            // InternalOCLstdlib.g:6316:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:6317:1: ( '{' )
             {
-            // InternalOCLstdlib.g:6315:1: ( '{' )
-            // InternalOCLstdlib.g:6316:1: '{'
+            // InternalOCLstdlib.g:6317:1: ( '{' )
+            // InternalOCLstdlib.g:6318:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getLeftCurlyBracketKeyword_6());
@@ -20751,14 +20751,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__7"
-    // InternalOCLstdlib.g:6329:1: rule__LibClassCS__Group__7 : rule__LibClassCS__Group__7__Impl rule__LibClassCS__Group__8 ;
+    // InternalOCLstdlib.g:6331:1: rule__LibClassCS__Group__7 : rule__LibClassCS__Group__7__Impl rule__LibClassCS__Group__8 ;
     public final void rule__LibClassCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6333:1: ( rule__LibClassCS__Group__7__Impl rule__LibClassCS__Group__8 )
-            // InternalOCLstdlib.g:6334:2: rule__LibClassCS__Group__7__Impl rule__LibClassCS__Group__8
+            // InternalOCLstdlib.g:6335:1: ( rule__LibClassCS__Group__7__Impl rule__LibClassCS__Group__8 )
+            // InternalOCLstdlib.g:6336:2: rule__LibClassCS__Group__7__Impl rule__LibClassCS__Group__8
             {
             pushFollow(FollowSets000.FOLLOW_23);
             rule__LibClassCS__Group__7__Impl();
@@ -20789,22 +20789,22 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__7__Impl"
-    // InternalOCLstdlib.g:6341:1: rule__LibClassCS__Group__7__Impl : ( ( rule__LibClassCS__Alternatives_7 )* ) ;
+    // InternalOCLstdlib.g:6343:1: rule__LibClassCS__Group__7__Impl : ( ( rule__LibClassCS__Alternatives_7 )* ) ;
     public final void rule__LibClassCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6345:1: ( ( ( rule__LibClassCS__Alternatives_7 )* ) )
-            // InternalOCLstdlib.g:6346:1: ( ( rule__LibClassCS__Alternatives_7 )* )
+            // InternalOCLstdlib.g:6347:1: ( ( ( rule__LibClassCS__Alternatives_7 )* ) )
+            // InternalOCLstdlib.g:6348:1: ( ( rule__LibClassCS__Alternatives_7 )* )
             {
-            // InternalOCLstdlib.g:6346:1: ( ( rule__LibClassCS__Alternatives_7 )* )
-            // InternalOCLstdlib.g:6347:1: ( rule__LibClassCS__Alternatives_7 )*
+            // InternalOCLstdlib.g:6348:1: ( ( rule__LibClassCS__Alternatives_7 )* )
+            // InternalOCLstdlib.g:6349:1: ( rule__LibClassCS__Alternatives_7 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getAlternatives_7());
             }
-            // InternalOCLstdlib.g:6348:1: ( rule__LibClassCS__Alternatives_7 )*
+            // InternalOCLstdlib.g:6350:1: ( rule__LibClassCS__Alternatives_7 )*
             loop66:
             do {
                 int alt66=2;
@@ -20817,7 +20817,7 @@
 
                 switch (alt66) {
             	case 1 :
-            	    // InternalOCLstdlib.g:6348:2: rule__LibClassCS__Alternatives_7
+            	    // InternalOCLstdlib.g:6350:2: rule__LibClassCS__Alternatives_7
             	    {
             	    pushFollow(FollowSets000.FOLLOW_24);
             	    rule__LibClassCS__Alternatives_7();
@@ -20858,14 +20858,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__8"
-    // InternalOCLstdlib.g:6358:1: rule__LibClassCS__Group__8 : rule__LibClassCS__Group__8__Impl ;
+    // InternalOCLstdlib.g:6360:1: rule__LibClassCS__Group__8 : rule__LibClassCS__Group__8__Impl ;
     public final void rule__LibClassCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6362:1: ( rule__LibClassCS__Group__8__Impl )
-            // InternalOCLstdlib.g:6363:2: rule__LibClassCS__Group__8__Impl
+            // InternalOCLstdlib.g:6364:1: ( rule__LibClassCS__Group__8__Impl )
+            // InternalOCLstdlib.g:6365:2: rule__LibClassCS__Group__8__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibClassCS__Group__8__Impl();
@@ -20891,17 +20891,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group__8__Impl"
-    // InternalOCLstdlib.g:6369:1: rule__LibClassCS__Group__8__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:6371:1: rule__LibClassCS__Group__8__Impl : ( '}' ) ;
     public final void rule__LibClassCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6373:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:6374:1: ( '}' )
+            // InternalOCLstdlib.g:6375:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:6376:1: ( '}' )
             {
-            // InternalOCLstdlib.g:6374:1: ( '}' )
-            // InternalOCLstdlib.g:6375:1: '}'
+            // InternalOCLstdlib.g:6376:1: ( '}' )
+            // InternalOCLstdlib.g:6377:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getRightCurlyBracketKeyword_8());
@@ -20932,14 +20932,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_4__0"
-    // InternalOCLstdlib.g:6406:1: rule__LibClassCS__Group_4__0 : rule__LibClassCS__Group_4__0__Impl rule__LibClassCS__Group_4__1 ;
+    // InternalOCLstdlib.g:6408:1: rule__LibClassCS__Group_4__0 : rule__LibClassCS__Group_4__0__Impl rule__LibClassCS__Group_4__1 ;
     public final void rule__LibClassCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6410:1: ( rule__LibClassCS__Group_4__0__Impl rule__LibClassCS__Group_4__1 )
-            // InternalOCLstdlib.g:6411:2: rule__LibClassCS__Group_4__0__Impl rule__LibClassCS__Group_4__1
+            // InternalOCLstdlib.g:6412:1: ( rule__LibClassCS__Group_4__0__Impl rule__LibClassCS__Group_4__1 )
+            // InternalOCLstdlib.g:6413:2: rule__LibClassCS__Group_4__0__Impl rule__LibClassCS__Group_4__1
             {
             pushFollow(FollowSets000.FOLLOW_21);
             rule__LibClassCS__Group_4__0__Impl();
@@ -20970,17 +20970,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_4__0__Impl"
-    // InternalOCLstdlib.g:6418:1: rule__LibClassCS__Group_4__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:6420:1: rule__LibClassCS__Group_4__0__Impl : ( ':' ) ;
     public final void rule__LibClassCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6422:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:6423:1: ( ':' )
+            // InternalOCLstdlib.g:6424:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:6425:1: ( ':' )
             {
-            // InternalOCLstdlib.g:6423:1: ( ':' )
-            // InternalOCLstdlib.g:6424:1: ':'
+            // InternalOCLstdlib.g:6425:1: ( ':' )
+            // InternalOCLstdlib.g:6426:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getColonKeyword_4_0());
@@ -21011,14 +21011,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_4__1"
-    // InternalOCLstdlib.g:6437:1: rule__LibClassCS__Group_4__1 : rule__LibClassCS__Group_4__1__Impl ;
+    // InternalOCLstdlib.g:6439:1: rule__LibClassCS__Group_4__1 : rule__LibClassCS__Group_4__1__Impl ;
     public final void rule__LibClassCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6441:1: ( rule__LibClassCS__Group_4__1__Impl )
-            // InternalOCLstdlib.g:6442:2: rule__LibClassCS__Group_4__1__Impl
+            // InternalOCLstdlib.g:6443:1: ( rule__LibClassCS__Group_4__1__Impl )
+            // InternalOCLstdlib.g:6444:2: rule__LibClassCS__Group_4__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibClassCS__Group_4__1__Impl();
@@ -21044,23 +21044,23 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_4__1__Impl"
-    // InternalOCLstdlib.g:6448:1: rule__LibClassCS__Group_4__1__Impl : ( ( rule__LibClassCS__MetaclassNameAssignment_4_1 ) ) ;
+    // InternalOCLstdlib.g:6450:1: rule__LibClassCS__Group_4__1__Impl : ( ( rule__LibClassCS__MetaclassNameAssignment_4_1 ) ) ;
     public final void rule__LibClassCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6452:1: ( ( ( rule__LibClassCS__MetaclassNameAssignment_4_1 ) ) )
-            // InternalOCLstdlib.g:6453:1: ( ( rule__LibClassCS__MetaclassNameAssignment_4_1 ) )
+            // InternalOCLstdlib.g:6454:1: ( ( ( rule__LibClassCS__MetaclassNameAssignment_4_1 ) ) )
+            // InternalOCLstdlib.g:6455:1: ( ( rule__LibClassCS__MetaclassNameAssignment_4_1 ) )
             {
-            // InternalOCLstdlib.g:6453:1: ( ( rule__LibClassCS__MetaclassNameAssignment_4_1 ) )
-            // InternalOCLstdlib.g:6454:1: ( rule__LibClassCS__MetaclassNameAssignment_4_1 )
+            // InternalOCLstdlib.g:6455:1: ( ( rule__LibClassCS__MetaclassNameAssignment_4_1 ) )
+            // InternalOCLstdlib.g:6456:1: ( rule__LibClassCS__MetaclassNameAssignment_4_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getMetaclassNameAssignment_4_1());
             }
-            // InternalOCLstdlib.g:6455:1: ( rule__LibClassCS__MetaclassNameAssignment_4_1 )
-            // InternalOCLstdlib.g:6455:2: rule__LibClassCS__MetaclassNameAssignment_4_1
+            // InternalOCLstdlib.g:6457:1: ( rule__LibClassCS__MetaclassNameAssignment_4_1 )
+            // InternalOCLstdlib.g:6457:2: rule__LibClassCS__MetaclassNameAssignment_4_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibClassCS__MetaclassNameAssignment_4_1();
@@ -21095,14 +21095,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_5__0"
-    // InternalOCLstdlib.g:6469:1: rule__LibClassCS__Group_5__0 : rule__LibClassCS__Group_5__0__Impl rule__LibClassCS__Group_5__1 ;
+    // InternalOCLstdlib.g:6471:1: rule__LibClassCS__Group_5__0 : rule__LibClassCS__Group_5__0__Impl rule__LibClassCS__Group_5__1 ;
     public final void rule__LibClassCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6473:1: ( rule__LibClassCS__Group_5__0__Impl rule__LibClassCS__Group_5__1 )
-            // InternalOCLstdlib.g:6474:2: rule__LibClassCS__Group_5__0__Impl rule__LibClassCS__Group_5__1
+            // InternalOCLstdlib.g:6475:1: ( rule__LibClassCS__Group_5__0__Impl rule__LibClassCS__Group_5__1 )
+            // InternalOCLstdlib.g:6476:2: rule__LibClassCS__Group_5__0__Impl rule__LibClassCS__Group_5__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__LibClassCS__Group_5__0__Impl();
@@ -21133,17 +21133,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_5__0__Impl"
-    // InternalOCLstdlib.g:6481:1: rule__LibClassCS__Group_5__0__Impl : ( 'conformsTo' ) ;
+    // InternalOCLstdlib.g:6483:1: rule__LibClassCS__Group_5__0__Impl : ( 'conformsTo' ) ;
     public final void rule__LibClassCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6485:1: ( ( 'conformsTo' ) )
-            // InternalOCLstdlib.g:6486:1: ( 'conformsTo' )
+            // InternalOCLstdlib.g:6487:1: ( ( 'conformsTo' ) )
+            // InternalOCLstdlib.g:6488:1: ( 'conformsTo' )
             {
-            // InternalOCLstdlib.g:6486:1: ( 'conformsTo' )
-            // InternalOCLstdlib.g:6487:1: 'conformsTo'
+            // InternalOCLstdlib.g:6488:1: ( 'conformsTo' )
+            // InternalOCLstdlib.g:6489:1: 'conformsTo'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getConformsToKeyword_5_0());
@@ -21174,14 +21174,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_5__1"
-    // InternalOCLstdlib.g:6500:1: rule__LibClassCS__Group_5__1 : rule__LibClassCS__Group_5__1__Impl rule__LibClassCS__Group_5__2 ;
+    // InternalOCLstdlib.g:6502:1: rule__LibClassCS__Group_5__1 : rule__LibClassCS__Group_5__1__Impl rule__LibClassCS__Group_5__2 ;
     public final void rule__LibClassCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6504:1: ( rule__LibClassCS__Group_5__1__Impl rule__LibClassCS__Group_5__2 )
-            // InternalOCLstdlib.g:6505:2: rule__LibClassCS__Group_5__1__Impl rule__LibClassCS__Group_5__2
+            // InternalOCLstdlib.g:6506:1: ( rule__LibClassCS__Group_5__1__Impl rule__LibClassCS__Group_5__2 )
+            // InternalOCLstdlib.g:6507:2: rule__LibClassCS__Group_5__1__Impl rule__LibClassCS__Group_5__2
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__LibClassCS__Group_5__1__Impl();
@@ -21212,23 +21212,23 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_5__1__Impl"
-    // InternalOCLstdlib.g:6512:1: rule__LibClassCS__Group_5__1__Impl : ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 ) ) ;
+    // InternalOCLstdlib.g:6514:1: rule__LibClassCS__Group_5__1__Impl : ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 ) ) ;
     public final void rule__LibClassCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6516:1: ( ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 ) ) )
-            // InternalOCLstdlib.g:6517:1: ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 ) )
+            // InternalOCLstdlib.g:6518:1: ( ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 ) ) )
+            // InternalOCLstdlib.g:6519:1: ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 ) )
             {
-            // InternalOCLstdlib.g:6517:1: ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 ) )
-            // InternalOCLstdlib.g:6518:1: ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 )
+            // InternalOCLstdlib.g:6519:1: ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 ) )
+            // InternalOCLstdlib.g:6520:1: ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesAssignment_5_1());
             }
-            // InternalOCLstdlib.g:6519:1: ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 )
-            // InternalOCLstdlib.g:6519:2: rule__LibClassCS__OwnedSuperTypesAssignment_5_1
+            // InternalOCLstdlib.g:6521:1: ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 )
+            // InternalOCLstdlib.g:6521:2: rule__LibClassCS__OwnedSuperTypesAssignment_5_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibClassCS__OwnedSuperTypesAssignment_5_1();
@@ -21263,14 +21263,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_5__2"
-    // InternalOCLstdlib.g:6529:1: rule__LibClassCS__Group_5__2 : rule__LibClassCS__Group_5__2__Impl ;
+    // InternalOCLstdlib.g:6531:1: rule__LibClassCS__Group_5__2 : rule__LibClassCS__Group_5__2__Impl ;
     public final void rule__LibClassCS__Group_5__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6533:1: ( rule__LibClassCS__Group_5__2__Impl )
-            // InternalOCLstdlib.g:6534:2: rule__LibClassCS__Group_5__2__Impl
+            // InternalOCLstdlib.g:6535:1: ( rule__LibClassCS__Group_5__2__Impl )
+            // InternalOCLstdlib.g:6536:2: rule__LibClassCS__Group_5__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibClassCS__Group_5__2__Impl();
@@ -21296,22 +21296,22 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_5__2__Impl"
-    // InternalOCLstdlib.g:6540:1: rule__LibClassCS__Group_5__2__Impl : ( ( rule__LibClassCS__Group_5_2__0 )* ) ;
+    // InternalOCLstdlib.g:6542:1: rule__LibClassCS__Group_5__2__Impl : ( ( rule__LibClassCS__Group_5_2__0 )* ) ;
     public final void rule__LibClassCS__Group_5__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6544:1: ( ( ( rule__LibClassCS__Group_5_2__0 )* ) )
-            // InternalOCLstdlib.g:6545:1: ( ( rule__LibClassCS__Group_5_2__0 )* )
+            // InternalOCLstdlib.g:6546:1: ( ( ( rule__LibClassCS__Group_5_2__0 )* ) )
+            // InternalOCLstdlib.g:6547:1: ( ( rule__LibClassCS__Group_5_2__0 )* )
             {
-            // InternalOCLstdlib.g:6545:1: ( ( rule__LibClassCS__Group_5_2__0 )* )
-            // InternalOCLstdlib.g:6546:1: ( rule__LibClassCS__Group_5_2__0 )*
+            // InternalOCLstdlib.g:6547:1: ( ( rule__LibClassCS__Group_5_2__0 )* )
+            // InternalOCLstdlib.g:6548:1: ( rule__LibClassCS__Group_5_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getGroup_5_2());
             }
-            // InternalOCLstdlib.g:6547:1: ( rule__LibClassCS__Group_5_2__0 )*
+            // InternalOCLstdlib.g:6549:1: ( rule__LibClassCS__Group_5_2__0 )*
             loop67:
             do {
                 int alt67=2;
@@ -21324,7 +21324,7 @@
 
                 switch (alt67) {
             	case 1 :
-            	    // InternalOCLstdlib.g:6547:2: rule__LibClassCS__Group_5_2__0
+            	    // InternalOCLstdlib.g:6549:2: rule__LibClassCS__Group_5_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__LibClassCS__Group_5_2__0();
@@ -21365,14 +21365,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_5_2__0"
-    // InternalOCLstdlib.g:6563:1: rule__LibClassCS__Group_5_2__0 : rule__LibClassCS__Group_5_2__0__Impl rule__LibClassCS__Group_5_2__1 ;
+    // InternalOCLstdlib.g:6565:1: rule__LibClassCS__Group_5_2__0 : rule__LibClassCS__Group_5_2__0__Impl rule__LibClassCS__Group_5_2__1 ;
     public final void rule__LibClassCS__Group_5_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6567:1: ( rule__LibClassCS__Group_5_2__0__Impl rule__LibClassCS__Group_5_2__1 )
-            // InternalOCLstdlib.g:6568:2: rule__LibClassCS__Group_5_2__0__Impl rule__LibClassCS__Group_5_2__1
+            // InternalOCLstdlib.g:6569:1: ( rule__LibClassCS__Group_5_2__0__Impl rule__LibClassCS__Group_5_2__1 )
+            // InternalOCLstdlib.g:6570:2: rule__LibClassCS__Group_5_2__0__Impl rule__LibClassCS__Group_5_2__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__LibClassCS__Group_5_2__0__Impl();
@@ -21403,17 +21403,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_5_2__0__Impl"
-    // InternalOCLstdlib.g:6575:1: rule__LibClassCS__Group_5_2__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:6577:1: rule__LibClassCS__Group_5_2__0__Impl : ( ',' ) ;
     public final void rule__LibClassCS__Group_5_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6579:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:6580:1: ( ',' )
+            // InternalOCLstdlib.g:6581:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:6582:1: ( ',' )
             {
-            // InternalOCLstdlib.g:6580:1: ( ',' )
-            // InternalOCLstdlib.g:6581:1: ','
+            // InternalOCLstdlib.g:6582:1: ( ',' )
+            // InternalOCLstdlib.g:6583:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getCommaKeyword_5_2_0());
@@ -21444,14 +21444,14 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_5_2__1"
-    // InternalOCLstdlib.g:6594:1: rule__LibClassCS__Group_5_2__1 : rule__LibClassCS__Group_5_2__1__Impl ;
+    // InternalOCLstdlib.g:6596:1: rule__LibClassCS__Group_5_2__1 : rule__LibClassCS__Group_5_2__1__Impl ;
     public final void rule__LibClassCS__Group_5_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6598:1: ( rule__LibClassCS__Group_5_2__1__Impl )
-            // InternalOCLstdlib.g:6599:2: rule__LibClassCS__Group_5_2__1__Impl
+            // InternalOCLstdlib.g:6600:1: ( rule__LibClassCS__Group_5_2__1__Impl )
+            // InternalOCLstdlib.g:6601:2: rule__LibClassCS__Group_5_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibClassCS__Group_5_2__1__Impl();
@@ -21477,23 +21477,23 @@
 
 
     // $ANTLR start "rule__LibClassCS__Group_5_2__1__Impl"
-    // InternalOCLstdlib.g:6605:1: rule__LibClassCS__Group_5_2__1__Impl : ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 ) ) ;
+    // InternalOCLstdlib.g:6607:1: rule__LibClassCS__Group_5_2__1__Impl : ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 ) ) ;
     public final void rule__LibClassCS__Group_5_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6609:1: ( ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 ) ) )
-            // InternalOCLstdlib.g:6610:1: ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 ) )
+            // InternalOCLstdlib.g:6611:1: ( ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 ) ) )
+            // InternalOCLstdlib.g:6612:1: ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 ) )
             {
-            // InternalOCLstdlib.g:6610:1: ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 ) )
-            // InternalOCLstdlib.g:6611:1: ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 )
+            // InternalOCLstdlib.g:6612:1: ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 ) )
+            // InternalOCLstdlib.g:6613:1: ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesAssignment_5_2_1());
             }
-            // InternalOCLstdlib.g:6612:1: ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 )
-            // InternalOCLstdlib.g:6612:2: rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1
+            // InternalOCLstdlib.g:6614:1: ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 )
+            // InternalOCLstdlib.g:6614:2: rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1();
@@ -21528,14 +21528,14 @@
 
 
     // $ANTLR start "rule__DetailCS__Group__0"
-    // InternalOCLstdlib.g:6626:1: rule__DetailCS__Group__0 : rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1 ;
+    // InternalOCLstdlib.g:6628:1: rule__DetailCS__Group__0 : rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1 ;
     public final void rule__DetailCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6630:1: ( rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1 )
-            // InternalOCLstdlib.g:6631:2: rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1
+            // InternalOCLstdlib.g:6632:1: ( rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1 )
+            // InternalOCLstdlib.g:6633:2: rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__DetailCS__Group__0__Impl();
@@ -21566,23 +21566,23 @@
 
 
     // $ANTLR start "rule__DetailCS__Group__0__Impl"
-    // InternalOCLstdlib.g:6638:1: rule__DetailCS__Group__0__Impl : ( ( rule__DetailCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:6640:1: rule__DetailCS__Group__0__Impl : ( ( rule__DetailCS__NameAssignment_0 ) ) ;
     public final void rule__DetailCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6642:1: ( ( ( rule__DetailCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:6643:1: ( ( rule__DetailCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:6644:1: ( ( ( rule__DetailCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:6645:1: ( ( rule__DetailCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:6643:1: ( ( rule__DetailCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:6644:1: ( rule__DetailCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:6645:1: ( ( rule__DetailCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:6646:1: ( rule__DetailCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDetailCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:6645:1: ( rule__DetailCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:6645:2: rule__DetailCS__NameAssignment_0
+            // InternalOCLstdlib.g:6647:1: ( rule__DetailCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:6647:2: rule__DetailCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DetailCS__NameAssignment_0();
@@ -21617,14 +21617,14 @@
 
 
     // $ANTLR start "rule__DetailCS__Group__1"
-    // InternalOCLstdlib.g:6655:1: rule__DetailCS__Group__1 : rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2 ;
+    // InternalOCLstdlib.g:6657:1: rule__DetailCS__Group__1 : rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2 ;
     public final void rule__DetailCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6659:1: ( rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2 )
-            // InternalOCLstdlib.g:6660:2: rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2
+            // InternalOCLstdlib.g:6661:1: ( rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2 )
+            // InternalOCLstdlib.g:6662:2: rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_27);
             rule__DetailCS__Group__1__Impl();
@@ -21655,17 +21655,17 @@
 
 
     // $ANTLR start "rule__DetailCS__Group__1__Impl"
-    // InternalOCLstdlib.g:6667:1: rule__DetailCS__Group__1__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:6669:1: rule__DetailCS__Group__1__Impl : ( '=' ) ;
     public final void rule__DetailCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6671:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:6672:1: ( '=' )
+            // InternalOCLstdlib.g:6673:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:6674:1: ( '=' )
             {
-            // InternalOCLstdlib.g:6672:1: ( '=' )
-            // InternalOCLstdlib.g:6673:1: '='
+            // InternalOCLstdlib.g:6674:1: ( '=' )
+            // InternalOCLstdlib.g:6675:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1());
@@ -21696,14 +21696,14 @@
 
 
     // $ANTLR start "rule__DetailCS__Group__2"
-    // InternalOCLstdlib.g:6686:1: rule__DetailCS__Group__2 : rule__DetailCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:6688:1: rule__DetailCS__Group__2 : rule__DetailCS__Group__2__Impl ;
     public final void rule__DetailCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6690:1: ( rule__DetailCS__Group__2__Impl )
-            // InternalOCLstdlib.g:6691:2: rule__DetailCS__Group__2__Impl
+            // InternalOCLstdlib.g:6692:1: ( rule__DetailCS__Group__2__Impl )
+            // InternalOCLstdlib.g:6693:2: rule__DetailCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DetailCS__Group__2__Impl();
@@ -21729,22 +21729,22 @@
 
 
     // $ANTLR start "rule__DetailCS__Group__2__Impl"
-    // InternalOCLstdlib.g:6697:1: rule__DetailCS__Group__2__Impl : ( ( rule__DetailCS__ValuesAssignment_2 )* ) ;
+    // InternalOCLstdlib.g:6699:1: rule__DetailCS__Group__2__Impl : ( ( rule__DetailCS__ValuesAssignment_2 )* ) ;
     public final void rule__DetailCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6701:1: ( ( ( rule__DetailCS__ValuesAssignment_2 )* ) )
-            // InternalOCLstdlib.g:6702:1: ( ( rule__DetailCS__ValuesAssignment_2 )* )
+            // InternalOCLstdlib.g:6703:1: ( ( ( rule__DetailCS__ValuesAssignment_2 )* ) )
+            // InternalOCLstdlib.g:6704:1: ( ( rule__DetailCS__ValuesAssignment_2 )* )
             {
-            // InternalOCLstdlib.g:6702:1: ( ( rule__DetailCS__ValuesAssignment_2 )* )
-            // InternalOCLstdlib.g:6703:1: ( rule__DetailCS__ValuesAssignment_2 )*
+            // InternalOCLstdlib.g:6704:1: ( ( rule__DetailCS__ValuesAssignment_2 )* )
+            // InternalOCLstdlib.g:6705:1: ( rule__DetailCS__ValuesAssignment_2 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDetailCSAccess().getValuesAssignment_2());
             }
-            // InternalOCLstdlib.g:6704:1: ( rule__DetailCS__ValuesAssignment_2 )*
+            // InternalOCLstdlib.g:6706:1: ( rule__DetailCS__ValuesAssignment_2 )*
             loop68:
             do {
                 int alt68=2;
@@ -21757,7 +21757,7 @@
 
                 switch (alt68) {
             	case 1 :
-            	    // InternalOCLstdlib.g:6704:2: rule__DetailCS__ValuesAssignment_2
+            	    // InternalOCLstdlib.g:6706:2: rule__DetailCS__ValuesAssignment_2
             	    {
             	    pushFollow(FollowSets000.FOLLOW_28);
             	    rule__DetailCS__ValuesAssignment_2();
@@ -21798,14 +21798,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__0"
-    // InternalOCLstdlib.g:6720:1: rule__DocumentationCS__Group__0 : rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1 ;
+    // InternalOCLstdlib.g:6722:1: rule__DocumentationCS__Group__0 : rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1 ;
     public final void rule__DocumentationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6724:1: ( rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1 )
-            // InternalOCLstdlib.g:6725:2: rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1
+            // InternalOCLstdlib.g:6726:1: ( rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1 )
+            // InternalOCLstdlib.g:6727:2: rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_18);
             rule__DocumentationCS__Group__0__Impl();
@@ -21836,23 +21836,23 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__0__Impl"
-    // InternalOCLstdlib.g:6732:1: rule__DocumentationCS__Group__0__Impl : ( () ) ;
+    // InternalOCLstdlib.g:6734:1: rule__DocumentationCS__Group__0__Impl : ( () ) ;
     public final void rule__DocumentationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6736:1: ( ( () ) )
-            // InternalOCLstdlib.g:6737:1: ( () )
+            // InternalOCLstdlib.g:6738:1: ( ( () ) )
+            // InternalOCLstdlib.g:6739:1: ( () )
             {
-            // InternalOCLstdlib.g:6737:1: ( () )
-            // InternalOCLstdlib.g:6738:1: ()
+            // InternalOCLstdlib.g:6739:1: ( () )
+            // InternalOCLstdlib.g:6740:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0());
             }
-            // InternalOCLstdlib.g:6739:1: ()
-            // InternalOCLstdlib.g:6741:1:
+            // InternalOCLstdlib.g:6741:1: ()
+            // InternalOCLstdlib.g:6743:1:
             {
             }
 
@@ -21877,14 +21877,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__1"
-    // InternalOCLstdlib.g:6751:1: rule__DocumentationCS__Group__1 : rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2 ;
+    // InternalOCLstdlib.g:6753:1: rule__DocumentationCS__Group__1 : rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2 ;
     public final void rule__DocumentationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6755:1: ( rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2 )
-            // InternalOCLstdlib.g:6756:2: rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2
+            // InternalOCLstdlib.g:6757:1: ( rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2 )
+            // InternalOCLstdlib.g:6758:2: rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_29);
             rule__DocumentationCS__Group__1__Impl();
@@ -21915,17 +21915,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__1__Impl"
-    // InternalOCLstdlib.g:6763:1: rule__DocumentationCS__Group__1__Impl : ( 'documentation' ) ;
+    // InternalOCLstdlib.g:6765:1: rule__DocumentationCS__Group__1__Impl : ( 'documentation' ) ;
     public final void rule__DocumentationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6767:1: ( ( 'documentation' ) )
-            // InternalOCLstdlib.g:6768:1: ( 'documentation' )
+            // InternalOCLstdlib.g:6769:1: ( ( 'documentation' ) )
+            // InternalOCLstdlib.g:6770:1: ( 'documentation' )
             {
-            // InternalOCLstdlib.g:6768:1: ( 'documentation' )
-            // InternalOCLstdlib.g:6769:1: 'documentation'
+            // InternalOCLstdlib.g:6770:1: ( 'documentation' )
+            // InternalOCLstdlib.g:6771:1: 'documentation'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1());
@@ -21956,14 +21956,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__2"
-    // InternalOCLstdlib.g:6782:1: rule__DocumentationCS__Group__2 : rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3 ;
+    // InternalOCLstdlib.g:6784:1: rule__DocumentationCS__Group__2 : rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3 ;
     public final void rule__DocumentationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6786:1: ( rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3 )
-            // InternalOCLstdlib.g:6787:2: rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3
+            // InternalOCLstdlib.g:6788:1: ( rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3 )
+            // InternalOCLstdlib.g:6789:2: rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_29);
             rule__DocumentationCS__Group__2__Impl();
@@ -21994,22 +21994,22 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__2__Impl"
-    // InternalOCLstdlib.g:6794:1: rule__DocumentationCS__Group__2__Impl : ( ( rule__DocumentationCS__ValueAssignment_2 )? ) ;
+    // InternalOCLstdlib.g:6796:1: rule__DocumentationCS__Group__2__Impl : ( ( rule__DocumentationCS__ValueAssignment_2 )? ) ;
     public final void rule__DocumentationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6798:1: ( ( ( rule__DocumentationCS__ValueAssignment_2 )? ) )
-            // InternalOCLstdlib.g:6799:1: ( ( rule__DocumentationCS__ValueAssignment_2 )? )
+            // InternalOCLstdlib.g:6800:1: ( ( ( rule__DocumentationCS__ValueAssignment_2 )? ) )
+            // InternalOCLstdlib.g:6801:1: ( ( rule__DocumentationCS__ValueAssignment_2 )? )
             {
-            // InternalOCLstdlib.g:6799:1: ( ( rule__DocumentationCS__ValueAssignment_2 )? )
-            // InternalOCLstdlib.g:6800:1: ( rule__DocumentationCS__ValueAssignment_2 )?
+            // InternalOCLstdlib.g:6801:1: ( ( rule__DocumentationCS__ValueAssignment_2 )? )
+            // InternalOCLstdlib.g:6802:1: ( rule__DocumentationCS__ValueAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getValueAssignment_2());
             }
-            // InternalOCLstdlib.g:6801:1: ( rule__DocumentationCS__ValueAssignment_2 )?
+            // InternalOCLstdlib.g:6803:1: ( rule__DocumentationCS__ValueAssignment_2 )?
             int alt69=2;
             int LA69_0 = input.LA(1);
 
@@ -22018,7 +22018,7 @@
             }
             switch (alt69) {
                 case 1 :
-                    // InternalOCLstdlib.g:6801:2: rule__DocumentationCS__ValueAssignment_2
+                    // InternalOCLstdlib.g:6803:2: rule__DocumentationCS__ValueAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DocumentationCS__ValueAssignment_2();
@@ -22056,14 +22056,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__3"
-    // InternalOCLstdlib.g:6811:1: rule__DocumentationCS__Group__3 : rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4 ;
+    // InternalOCLstdlib.g:6813:1: rule__DocumentationCS__Group__3 : rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4 ;
     public final void rule__DocumentationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6815:1: ( rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4 )
-            // InternalOCLstdlib.g:6816:2: rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4
+            // InternalOCLstdlib.g:6817:1: ( rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4 )
+            // InternalOCLstdlib.g:6818:2: rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_29);
             rule__DocumentationCS__Group__3__Impl();
@@ -22094,22 +22094,22 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__3__Impl"
-    // InternalOCLstdlib.g:6823:1: rule__DocumentationCS__Group__3__Impl : ( ( rule__DocumentationCS__Group_3__0 )? ) ;
+    // InternalOCLstdlib.g:6825:1: rule__DocumentationCS__Group__3__Impl : ( ( rule__DocumentationCS__Group_3__0 )? ) ;
     public final void rule__DocumentationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6827:1: ( ( ( rule__DocumentationCS__Group_3__0 )? ) )
-            // InternalOCLstdlib.g:6828:1: ( ( rule__DocumentationCS__Group_3__0 )? )
+            // InternalOCLstdlib.g:6829:1: ( ( ( rule__DocumentationCS__Group_3__0 )? ) )
+            // InternalOCLstdlib.g:6830:1: ( ( rule__DocumentationCS__Group_3__0 )? )
             {
-            // InternalOCLstdlib.g:6828:1: ( ( rule__DocumentationCS__Group_3__0 )? )
-            // InternalOCLstdlib.g:6829:1: ( rule__DocumentationCS__Group_3__0 )?
+            // InternalOCLstdlib.g:6830:1: ( ( rule__DocumentationCS__Group_3__0 )? )
+            // InternalOCLstdlib.g:6831:1: ( rule__DocumentationCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getGroup_3());
             }
-            // InternalOCLstdlib.g:6830:1: ( rule__DocumentationCS__Group_3__0 )?
+            // InternalOCLstdlib.g:6832:1: ( rule__DocumentationCS__Group_3__0 )?
             int alt70=2;
             int LA70_0 = input.LA(1);
 
@@ -22118,7 +22118,7 @@
             }
             switch (alt70) {
                 case 1 :
-                    // InternalOCLstdlib.g:6830:2: rule__DocumentationCS__Group_3__0
+                    // InternalOCLstdlib.g:6832:2: rule__DocumentationCS__Group_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__DocumentationCS__Group_3__0();
@@ -22156,14 +22156,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__4"
-    // InternalOCLstdlib.g:6840:1: rule__DocumentationCS__Group__4 : rule__DocumentationCS__Group__4__Impl ;
+    // InternalOCLstdlib.g:6842:1: rule__DocumentationCS__Group__4 : rule__DocumentationCS__Group__4__Impl ;
     public final void rule__DocumentationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6844:1: ( rule__DocumentationCS__Group__4__Impl )
-            // InternalOCLstdlib.g:6845:2: rule__DocumentationCS__Group__4__Impl
+            // InternalOCLstdlib.g:6846:1: ( rule__DocumentationCS__Group__4__Impl )
+            // InternalOCLstdlib.g:6847:2: rule__DocumentationCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DocumentationCS__Group__4__Impl();
@@ -22189,17 +22189,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group__4__Impl"
-    // InternalOCLstdlib.g:6851:1: rule__DocumentationCS__Group__4__Impl : ( ';' ) ;
+    // InternalOCLstdlib.g:6853:1: rule__DocumentationCS__Group__4__Impl : ( ';' ) ;
     public final void rule__DocumentationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6855:1: ( ( ';' ) )
-            // InternalOCLstdlib.g:6856:1: ( ';' )
+            // InternalOCLstdlib.g:6857:1: ( ( ';' ) )
+            // InternalOCLstdlib.g:6858:1: ( ';' )
             {
-            // InternalOCLstdlib.g:6856:1: ( ';' )
-            // InternalOCLstdlib.g:6857:1: ';'
+            // InternalOCLstdlib.g:6858:1: ( ';' )
+            // InternalOCLstdlib.g:6859:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4());
@@ -22230,14 +22230,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__0"
-    // InternalOCLstdlib.g:6880:1: rule__DocumentationCS__Group_3__0 : rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1 ;
+    // InternalOCLstdlib.g:6882:1: rule__DocumentationCS__Group_3__0 : rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1 ;
     public final void rule__DocumentationCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6884:1: ( rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1 )
-            // InternalOCLstdlib.g:6885:2: rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1
+            // InternalOCLstdlib.g:6886:1: ( rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1 )
+            // InternalOCLstdlib.g:6887:2: rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__DocumentationCS__Group_3__0__Impl();
@@ -22268,17 +22268,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__0__Impl"
-    // InternalOCLstdlib.g:6892:1: rule__DocumentationCS__Group_3__0__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:6894:1: rule__DocumentationCS__Group_3__0__Impl : ( '(' ) ;
     public final void rule__DocumentationCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6896:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:6897:1: ( '(' )
+            // InternalOCLstdlib.g:6898:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:6899:1: ( '(' )
             {
-            // InternalOCLstdlib.g:6897:1: ( '(' )
-            // InternalOCLstdlib.g:6898:1: '('
+            // InternalOCLstdlib.g:6899:1: ( '(' )
+            // InternalOCLstdlib.g:6900:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0());
@@ -22309,14 +22309,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__1"
-    // InternalOCLstdlib.g:6911:1: rule__DocumentationCS__Group_3__1 : rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2 ;
+    // InternalOCLstdlib.g:6913:1: rule__DocumentationCS__Group_3__1 : rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2 ;
     public final void rule__DocumentationCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6915:1: ( rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2 )
-            // InternalOCLstdlib.g:6916:2: rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2
+            // InternalOCLstdlib.g:6917:1: ( rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2 )
+            // InternalOCLstdlib.g:6918:2: rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__DocumentationCS__Group_3__1__Impl();
@@ -22347,23 +22347,23 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__1__Impl"
-    // InternalOCLstdlib.g:6923:1: rule__DocumentationCS__Group_3__1__Impl : ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) ) ;
+    // InternalOCLstdlib.g:6925:1: rule__DocumentationCS__Group_3__1__Impl : ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) ) ;
     public final void rule__DocumentationCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6927:1: ( ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) ) )
-            // InternalOCLstdlib.g:6928:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) )
+            // InternalOCLstdlib.g:6929:1: ( ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) ) )
+            // InternalOCLstdlib.g:6930:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) )
             {
-            // InternalOCLstdlib.g:6928:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) )
-            // InternalOCLstdlib.g:6929:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 )
+            // InternalOCLstdlib.g:6930:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) )
+            // InternalOCLstdlib.g:6931:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_1());
             }
-            // InternalOCLstdlib.g:6930:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 )
-            // InternalOCLstdlib.g:6930:2: rule__DocumentationCS__OwnedDetailsAssignment_3_1
+            // InternalOCLstdlib.g:6932:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 )
+            // InternalOCLstdlib.g:6932:2: rule__DocumentationCS__OwnedDetailsAssignment_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DocumentationCS__OwnedDetailsAssignment_3_1();
@@ -22398,14 +22398,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__2"
-    // InternalOCLstdlib.g:6940:1: rule__DocumentationCS__Group_3__2 : rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3 ;
+    // InternalOCLstdlib.g:6942:1: rule__DocumentationCS__Group_3__2 : rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3 ;
     public final void rule__DocumentationCS__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6944:1: ( rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3 )
-            // InternalOCLstdlib.g:6945:2: rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3
+            // InternalOCLstdlib.g:6946:1: ( rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3 )
+            // InternalOCLstdlib.g:6947:2: rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__DocumentationCS__Group_3__2__Impl();
@@ -22436,22 +22436,22 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__2__Impl"
-    // InternalOCLstdlib.g:6952:1: rule__DocumentationCS__Group_3__2__Impl : ( ( rule__DocumentationCS__Group_3_2__0 )* ) ;
+    // InternalOCLstdlib.g:6954:1: rule__DocumentationCS__Group_3__2__Impl : ( ( rule__DocumentationCS__Group_3_2__0 )* ) ;
     public final void rule__DocumentationCS__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6956:1: ( ( ( rule__DocumentationCS__Group_3_2__0 )* ) )
-            // InternalOCLstdlib.g:6957:1: ( ( rule__DocumentationCS__Group_3_2__0 )* )
+            // InternalOCLstdlib.g:6958:1: ( ( ( rule__DocumentationCS__Group_3_2__0 )* ) )
+            // InternalOCLstdlib.g:6959:1: ( ( rule__DocumentationCS__Group_3_2__0 )* )
             {
-            // InternalOCLstdlib.g:6957:1: ( ( rule__DocumentationCS__Group_3_2__0 )* )
-            // InternalOCLstdlib.g:6958:1: ( rule__DocumentationCS__Group_3_2__0 )*
+            // InternalOCLstdlib.g:6959:1: ( ( rule__DocumentationCS__Group_3_2__0 )* )
+            // InternalOCLstdlib.g:6960:1: ( rule__DocumentationCS__Group_3_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getGroup_3_2());
             }
-            // InternalOCLstdlib.g:6959:1: ( rule__DocumentationCS__Group_3_2__0 )*
+            // InternalOCLstdlib.g:6961:1: ( rule__DocumentationCS__Group_3_2__0 )*
             loop71:
             do {
                 int alt71=2;
@@ -22464,7 +22464,7 @@
 
                 switch (alt71) {
             	case 1 :
-            	    // InternalOCLstdlib.g:6959:2: rule__DocumentationCS__Group_3_2__0
+            	    // InternalOCLstdlib.g:6961:2: rule__DocumentationCS__Group_3_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__DocumentationCS__Group_3_2__0();
@@ -22505,14 +22505,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__3"
-    // InternalOCLstdlib.g:6969:1: rule__DocumentationCS__Group_3__3 : rule__DocumentationCS__Group_3__3__Impl ;
+    // InternalOCLstdlib.g:6971:1: rule__DocumentationCS__Group_3__3 : rule__DocumentationCS__Group_3__3__Impl ;
     public final void rule__DocumentationCS__Group_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6973:1: ( rule__DocumentationCS__Group_3__3__Impl )
-            // InternalOCLstdlib.g:6974:2: rule__DocumentationCS__Group_3__3__Impl
+            // InternalOCLstdlib.g:6975:1: ( rule__DocumentationCS__Group_3__3__Impl )
+            // InternalOCLstdlib.g:6976:2: rule__DocumentationCS__Group_3__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DocumentationCS__Group_3__3__Impl();
@@ -22538,17 +22538,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3__3__Impl"
-    // InternalOCLstdlib.g:6980:1: rule__DocumentationCS__Group_3__3__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:6982:1: rule__DocumentationCS__Group_3__3__Impl : ( ')' ) ;
     public final void rule__DocumentationCS__Group_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:6984:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:6985:1: ( ')' )
+            // InternalOCLstdlib.g:6986:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:6987:1: ( ')' )
             {
-            // InternalOCLstdlib.g:6985:1: ( ')' )
-            // InternalOCLstdlib.g:6986:1: ')'
+            // InternalOCLstdlib.g:6987:1: ( ')' )
+            // InternalOCLstdlib.g:6988:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3());
@@ -22579,14 +22579,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3_2__0"
-    // InternalOCLstdlib.g:7007:1: rule__DocumentationCS__Group_3_2__0 : rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1 ;
+    // InternalOCLstdlib.g:7009:1: rule__DocumentationCS__Group_3_2__0 : rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1 ;
     public final void rule__DocumentationCS__Group_3_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7011:1: ( rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1 )
-            // InternalOCLstdlib.g:7012:2: rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1
+            // InternalOCLstdlib.g:7013:1: ( rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1 )
+            // InternalOCLstdlib.g:7014:2: rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1
             {
             pushFollow(FollowSets000.FOLLOW_15);
             rule__DocumentationCS__Group_3_2__0__Impl();
@@ -22617,17 +22617,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3_2__0__Impl"
-    // InternalOCLstdlib.g:7019:1: rule__DocumentationCS__Group_3_2__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:7021:1: rule__DocumentationCS__Group_3_2__0__Impl : ( ',' ) ;
     public final void rule__DocumentationCS__Group_3_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7023:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:7024:1: ( ',' )
+            // InternalOCLstdlib.g:7025:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:7026:1: ( ',' )
             {
-            // InternalOCLstdlib.g:7024:1: ( ',' )
-            // InternalOCLstdlib.g:7025:1: ','
+            // InternalOCLstdlib.g:7026:1: ( ',' )
+            // InternalOCLstdlib.g:7027:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0());
@@ -22658,14 +22658,14 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3_2__1"
-    // InternalOCLstdlib.g:7038:1: rule__DocumentationCS__Group_3_2__1 : rule__DocumentationCS__Group_3_2__1__Impl ;
+    // InternalOCLstdlib.g:7040:1: rule__DocumentationCS__Group_3_2__1 : rule__DocumentationCS__Group_3_2__1__Impl ;
     public final void rule__DocumentationCS__Group_3_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7042:1: ( rule__DocumentationCS__Group_3_2__1__Impl )
-            // InternalOCLstdlib.g:7043:2: rule__DocumentationCS__Group_3_2__1__Impl
+            // InternalOCLstdlib.g:7044:1: ( rule__DocumentationCS__Group_3_2__1__Impl )
+            // InternalOCLstdlib.g:7045:2: rule__DocumentationCS__Group_3_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DocumentationCS__Group_3_2__1__Impl();
@@ -22691,23 +22691,23 @@
 
 
     // $ANTLR start "rule__DocumentationCS__Group_3_2__1__Impl"
-    // InternalOCLstdlib.g:7049:1: rule__DocumentationCS__Group_3_2__1__Impl : ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) ) ;
+    // InternalOCLstdlib.g:7051:1: rule__DocumentationCS__Group_3_2__1__Impl : ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) ) ;
     public final void rule__DocumentationCS__Group_3_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7053:1: ( ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) ) )
-            // InternalOCLstdlib.g:7054:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) )
+            // InternalOCLstdlib.g:7055:1: ( ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) ) )
+            // InternalOCLstdlib.g:7056:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) )
             {
-            // InternalOCLstdlib.g:7054:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) )
-            // InternalOCLstdlib.g:7055:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 )
+            // InternalOCLstdlib.g:7056:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) )
+            // InternalOCLstdlib.g:7057:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_2_1());
             }
-            // InternalOCLstdlib.g:7056:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 )
-            // InternalOCLstdlib.g:7056:2: rule__DocumentationCS__OwnedDetailsAssignment_3_2_1
+            // InternalOCLstdlib.g:7058:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 )
+            // InternalOCLstdlib.g:7058:2: rule__DocumentationCS__OwnedDetailsAssignment_3_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DocumentationCS__OwnedDetailsAssignment_3_2_1();
@@ -22742,14 +22742,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__0"
-    // InternalOCLstdlib.g:7070:1: rule__ImportCS__Group__0 : rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 ;
+    // InternalOCLstdlib.g:7072:1: rule__ImportCS__Group__0 : rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 ;
     public final void rule__ImportCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7074:1: ( rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 )
-            // InternalOCLstdlib.g:7075:2: rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1
+            // InternalOCLstdlib.g:7076:1: ( rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 )
+            // InternalOCLstdlib.g:7077:2: rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__ImportCS__Group__0__Impl();
@@ -22780,17 +22780,17 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__0__Impl"
-    // InternalOCLstdlib.g:7082:1: rule__ImportCS__Group__0__Impl : ( 'import' ) ;
+    // InternalOCLstdlib.g:7084:1: rule__ImportCS__Group__0__Impl : ( 'import' ) ;
     public final void rule__ImportCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7086:1: ( ( 'import' ) )
-            // InternalOCLstdlib.g:7087:1: ( 'import' )
+            // InternalOCLstdlib.g:7088:1: ( ( 'import' ) )
+            // InternalOCLstdlib.g:7089:1: ( 'import' )
             {
-            // InternalOCLstdlib.g:7087:1: ( 'import' )
-            // InternalOCLstdlib.g:7088:1: 'import'
+            // InternalOCLstdlib.g:7089:1: ( 'import' )
+            // InternalOCLstdlib.g:7090:1: 'import'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getImportKeyword_0());
@@ -22821,14 +22821,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__1"
-    // InternalOCLstdlib.g:7101:1: rule__ImportCS__Group__1 : rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 ;
+    // InternalOCLstdlib.g:7103:1: rule__ImportCS__Group__1 : rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 ;
     public final void rule__ImportCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7105:1: ( rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 )
-            // InternalOCLstdlib.g:7106:2: rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2
+            // InternalOCLstdlib.g:7107:1: ( rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 )
+            // InternalOCLstdlib.g:7108:2: rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__ImportCS__Group__1__Impl();
@@ -22859,27 +22859,27 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__1__Impl"
-    // InternalOCLstdlib.g:7113:1: rule__ImportCS__Group__1__Impl : ( ( rule__ImportCS__Group_1__0 )? ) ;
+    // InternalOCLstdlib.g:7115:1: rule__ImportCS__Group__1__Impl : ( ( rule__ImportCS__Group_1__0 )? ) ;
     public final void rule__ImportCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7117:1: ( ( ( rule__ImportCS__Group_1__0 )? ) )
-            // InternalOCLstdlib.g:7118:1: ( ( rule__ImportCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:7119:1: ( ( ( rule__ImportCS__Group_1__0 )? ) )
+            // InternalOCLstdlib.g:7120:1: ( ( rule__ImportCS__Group_1__0 )? )
             {
-            // InternalOCLstdlib.g:7118:1: ( ( rule__ImportCS__Group_1__0 )? )
-            // InternalOCLstdlib.g:7119:1: ( rule__ImportCS__Group_1__0 )?
+            // InternalOCLstdlib.g:7120:1: ( ( rule__ImportCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:7121:1: ( rule__ImportCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:7120:1: ( rule__ImportCS__Group_1__0 )?
+            // InternalOCLstdlib.g:7122:1: ( rule__ImportCS__Group_1__0 )?
             int alt72=2;
             alt72 = dfa72.predict(input);
             switch (alt72) {
                 case 1 :
-                    // InternalOCLstdlib.g:7120:2: rule__ImportCS__Group_1__0
+                    // InternalOCLstdlib.g:7122:2: rule__ImportCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ImportCS__Group_1__0();
@@ -22917,14 +22917,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__2"
-    // InternalOCLstdlib.g:7130:1: rule__ImportCS__Group__2 : rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 ;
+    // InternalOCLstdlib.g:7132:1: rule__ImportCS__Group__2 : rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 ;
     public final void rule__ImportCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7134:1: ( rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 )
-            // InternalOCLstdlib.g:7135:2: rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3
+            // InternalOCLstdlib.g:7136:1: ( rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 )
+            // InternalOCLstdlib.g:7137:2: rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_30);
             rule__ImportCS__Group__2__Impl();
@@ -22955,23 +22955,23 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__2__Impl"
-    // InternalOCLstdlib.g:7142:1: rule__ImportCS__Group__2__Impl : ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:7144:1: rule__ImportCS__Group__2__Impl : ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) ;
     public final void rule__ImportCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7146:1: ( ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) )
-            // InternalOCLstdlib.g:7147:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
+            // InternalOCLstdlib.g:7148:1: ( ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) )
+            // InternalOCLstdlib.g:7149:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:7147:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
-            // InternalOCLstdlib.g:7148:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
+            // InternalOCLstdlib.g:7149:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
+            // InternalOCLstdlib.g:7150:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2());
             }
-            // InternalOCLstdlib.g:7149:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
-            // InternalOCLstdlib.g:7149:2: rule__ImportCS__OwnedPathNameAssignment_2
+            // InternalOCLstdlib.g:7151:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
+            // InternalOCLstdlib.g:7151:2: rule__ImportCS__OwnedPathNameAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__OwnedPathNameAssignment_2();
@@ -23006,14 +23006,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__3"
-    // InternalOCLstdlib.g:7159:1: rule__ImportCS__Group__3 : rule__ImportCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:7161:1: rule__ImportCS__Group__3 : rule__ImportCS__Group__3__Impl ;
     public final void rule__ImportCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7163:1: ( rule__ImportCS__Group__3__Impl )
-            // InternalOCLstdlib.g:7164:2: rule__ImportCS__Group__3__Impl
+            // InternalOCLstdlib.g:7165:1: ( rule__ImportCS__Group__3__Impl )
+            // InternalOCLstdlib.g:7166:2: rule__ImportCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__Group__3__Impl();
@@ -23039,22 +23039,22 @@
 
 
     // $ANTLR start "rule__ImportCS__Group__3__Impl"
-    // InternalOCLstdlib.g:7170:1: rule__ImportCS__Group__3__Impl : ( ( rule__ImportCS__IsAllAssignment_3 )? ) ;
+    // InternalOCLstdlib.g:7172:1: rule__ImportCS__Group__3__Impl : ( ( rule__ImportCS__IsAllAssignment_3 )? ) ;
     public final void rule__ImportCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7174:1: ( ( ( rule__ImportCS__IsAllAssignment_3 )? ) )
-            // InternalOCLstdlib.g:7175:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
+            // InternalOCLstdlib.g:7176:1: ( ( ( rule__ImportCS__IsAllAssignment_3 )? ) )
+            // InternalOCLstdlib.g:7177:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
             {
-            // InternalOCLstdlib.g:7175:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
-            // InternalOCLstdlib.g:7176:1: ( rule__ImportCS__IsAllAssignment_3 )?
+            // InternalOCLstdlib.g:7177:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
+            // InternalOCLstdlib.g:7178:1: ( rule__ImportCS__IsAllAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getIsAllAssignment_3());
             }
-            // InternalOCLstdlib.g:7177:1: ( rule__ImportCS__IsAllAssignment_3 )?
+            // InternalOCLstdlib.g:7179:1: ( rule__ImportCS__IsAllAssignment_3 )?
             int alt73=2;
             int LA73_0 = input.LA(1);
 
@@ -23063,7 +23063,7 @@
             }
             switch (alt73) {
                 case 1 :
-                    // InternalOCLstdlib.g:7177:2: rule__ImportCS__IsAllAssignment_3
+                    // InternalOCLstdlib.g:7179:2: rule__ImportCS__IsAllAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ImportCS__IsAllAssignment_3();
@@ -23101,14 +23101,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group_1__0"
-    // InternalOCLstdlib.g:7195:1: rule__ImportCS__Group_1__0 : rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 ;
+    // InternalOCLstdlib.g:7197:1: rule__ImportCS__Group_1__0 : rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 ;
     public final void rule__ImportCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7199:1: ( rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 )
-            // InternalOCLstdlib.g:7200:2: rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1
+            // InternalOCLstdlib.g:7201:1: ( rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 )
+            // InternalOCLstdlib.g:7202:2: rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__ImportCS__Group_1__0__Impl();
@@ -23139,23 +23139,23 @@
 
 
     // $ANTLR start "rule__ImportCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:7207:1: rule__ImportCS__Group_1__0__Impl : ( ( rule__ImportCS__NameAssignment_1_0 ) ) ;
+    // InternalOCLstdlib.g:7209:1: rule__ImportCS__Group_1__0__Impl : ( ( rule__ImportCS__NameAssignment_1_0 ) ) ;
     public final void rule__ImportCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7211:1: ( ( ( rule__ImportCS__NameAssignment_1_0 ) ) )
-            // InternalOCLstdlib.g:7212:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
+            // InternalOCLstdlib.g:7213:1: ( ( ( rule__ImportCS__NameAssignment_1_0 ) ) )
+            // InternalOCLstdlib.g:7214:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
             {
-            // InternalOCLstdlib.g:7212:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
-            // InternalOCLstdlib.g:7213:1: ( rule__ImportCS__NameAssignment_1_0 )
+            // InternalOCLstdlib.g:7214:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
+            // InternalOCLstdlib.g:7215:1: ( rule__ImportCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getNameAssignment_1_0());
             }
-            // InternalOCLstdlib.g:7214:1: ( rule__ImportCS__NameAssignment_1_0 )
-            // InternalOCLstdlib.g:7214:2: rule__ImportCS__NameAssignment_1_0
+            // InternalOCLstdlib.g:7216:1: ( rule__ImportCS__NameAssignment_1_0 )
+            // InternalOCLstdlib.g:7216:2: rule__ImportCS__NameAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__NameAssignment_1_0();
@@ -23190,14 +23190,14 @@
 
 
     // $ANTLR start "rule__ImportCS__Group_1__1"
-    // InternalOCLstdlib.g:7224:1: rule__ImportCS__Group_1__1 : rule__ImportCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:7226:1: rule__ImportCS__Group_1__1 : rule__ImportCS__Group_1__1__Impl ;
     public final void rule__ImportCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7228:1: ( rule__ImportCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:7229:2: rule__ImportCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:7230:1: ( rule__ImportCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:7231:2: rule__ImportCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ImportCS__Group_1__1__Impl();
@@ -23223,17 +23223,17 @@
 
 
     // $ANTLR start "rule__ImportCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:7235:1: rule__ImportCS__Group_1__1__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:7237:1: rule__ImportCS__Group_1__1__Impl : ( ':' ) ;
     public final void rule__ImportCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7239:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:7240:1: ( ':' )
+            // InternalOCLstdlib.g:7241:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:7242:1: ( ':' )
             {
-            // InternalOCLstdlib.g:7240:1: ( ':' )
-            // InternalOCLstdlib.g:7241:1: ':'
+            // InternalOCLstdlib.g:7242:1: ( ':' )
+            // InternalOCLstdlib.g:7243:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getColonKeyword_1_1());
@@ -23264,14 +23264,14 @@
 
 
     // $ANTLR start "rule__InvCS__Group__0"
-    // InternalOCLstdlib.g:7258:1: rule__InvCS__Group__0 : rule__InvCS__Group__0__Impl rule__InvCS__Group__1 ;
+    // InternalOCLstdlib.g:7260:1: rule__InvCS__Group__0 : rule__InvCS__Group__0__Impl rule__InvCS__Group__1 ;
     public final void rule__InvCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7262:1: ( rule__InvCS__Group__0__Impl rule__InvCS__Group__1 )
-            // InternalOCLstdlib.g:7263:2: rule__InvCS__Group__0__Impl rule__InvCS__Group__1
+            // InternalOCLstdlib.g:7264:1: ( rule__InvCS__Group__0__Impl rule__InvCS__Group__1 )
+            // InternalOCLstdlib.g:7265:2: rule__InvCS__Group__0__Impl rule__InvCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_31);
             rule__InvCS__Group__0__Impl();
@@ -23302,23 +23302,23 @@
 
 
     // $ANTLR start "rule__InvCS__Group__0__Impl"
-    // InternalOCLstdlib.g:7270:1: rule__InvCS__Group__0__Impl : ( ( rule__InvCS__StereotypeAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:7272:1: rule__InvCS__Group__0__Impl : ( ( rule__InvCS__StereotypeAssignment_0 ) ) ;
     public final void rule__InvCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7274:1: ( ( ( rule__InvCS__StereotypeAssignment_0 ) ) )
-            // InternalOCLstdlib.g:7275:1: ( ( rule__InvCS__StereotypeAssignment_0 ) )
+            // InternalOCLstdlib.g:7276:1: ( ( ( rule__InvCS__StereotypeAssignment_0 ) ) )
+            // InternalOCLstdlib.g:7277:1: ( ( rule__InvCS__StereotypeAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:7275:1: ( ( rule__InvCS__StereotypeAssignment_0 ) )
-            // InternalOCLstdlib.g:7276:1: ( rule__InvCS__StereotypeAssignment_0 )
+            // InternalOCLstdlib.g:7277:1: ( ( rule__InvCS__StereotypeAssignment_0 ) )
+            // InternalOCLstdlib.g:7278:1: ( rule__InvCS__StereotypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getStereotypeAssignment_0());
             }
-            // InternalOCLstdlib.g:7277:1: ( rule__InvCS__StereotypeAssignment_0 )
-            // InternalOCLstdlib.g:7277:2: rule__InvCS__StereotypeAssignment_0
+            // InternalOCLstdlib.g:7279:1: ( rule__InvCS__StereotypeAssignment_0 )
+            // InternalOCLstdlib.g:7279:2: rule__InvCS__StereotypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvCS__StereotypeAssignment_0();
@@ -23353,14 +23353,14 @@
 
 
     // $ANTLR start "rule__InvCS__Group__1"
-    // InternalOCLstdlib.g:7287:1: rule__InvCS__Group__1 : rule__InvCS__Group__1__Impl rule__InvCS__Group__2 ;
+    // InternalOCLstdlib.g:7289:1: rule__InvCS__Group__1 : rule__InvCS__Group__1__Impl rule__InvCS__Group__2 ;
     public final void rule__InvCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7291:1: ( rule__InvCS__Group__1__Impl rule__InvCS__Group__2 )
-            // InternalOCLstdlib.g:7292:2: rule__InvCS__Group__1__Impl rule__InvCS__Group__2
+            // InternalOCLstdlib.g:7293:1: ( rule__InvCS__Group__1__Impl rule__InvCS__Group__2 )
+            // InternalOCLstdlib.g:7294:2: rule__InvCS__Group__1__Impl rule__InvCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_31);
             rule__InvCS__Group__1__Impl();
@@ -23391,22 +23391,22 @@
 
 
     // $ANTLR start "rule__InvCS__Group__1__Impl"
-    // InternalOCLstdlib.g:7299:1: rule__InvCS__Group__1__Impl : ( ( rule__InvCS__Group_1__0 )? ) ;
+    // InternalOCLstdlib.g:7301:1: rule__InvCS__Group__1__Impl : ( ( rule__InvCS__Group_1__0 )? ) ;
     public final void rule__InvCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7303:1: ( ( ( rule__InvCS__Group_1__0 )? ) )
-            // InternalOCLstdlib.g:7304:1: ( ( rule__InvCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:7305:1: ( ( ( rule__InvCS__Group_1__0 )? ) )
+            // InternalOCLstdlib.g:7306:1: ( ( rule__InvCS__Group_1__0 )? )
             {
-            // InternalOCLstdlib.g:7304:1: ( ( rule__InvCS__Group_1__0 )? )
-            // InternalOCLstdlib.g:7305:1: ( rule__InvCS__Group_1__0 )?
+            // InternalOCLstdlib.g:7306:1: ( ( rule__InvCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:7307:1: ( rule__InvCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:7306:1: ( rule__InvCS__Group_1__0 )?
+            // InternalOCLstdlib.g:7308:1: ( rule__InvCS__Group_1__0 )?
             int alt74=2;
             int LA74_0 = input.LA(1);
 
@@ -23415,7 +23415,7 @@
             }
             switch (alt74) {
                 case 1 :
-                    // InternalOCLstdlib.g:7306:2: rule__InvCS__Group_1__0
+                    // InternalOCLstdlib.g:7308:2: rule__InvCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__InvCS__Group_1__0();
@@ -23453,14 +23453,14 @@
 
 
     // $ANTLR start "rule__InvCS__Group__2"
-    // InternalOCLstdlib.g:7316:1: rule__InvCS__Group__2 : rule__InvCS__Group__2__Impl rule__InvCS__Group__3 ;
+    // InternalOCLstdlib.g:7318:1: rule__InvCS__Group__2 : rule__InvCS__Group__2__Impl rule__InvCS__Group__3 ;
     public final void rule__InvCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7320:1: ( rule__InvCS__Group__2__Impl rule__InvCS__Group__3 )
-            // InternalOCLstdlib.g:7321:2: rule__InvCS__Group__2__Impl rule__InvCS__Group__3
+            // InternalOCLstdlib.g:7322:1: ( rule__InvCS__Group__2__Impl rule__InvCS__Group__3 )
+            // InternalOCLstdlib.g:7323:2: rule__InvCS__Group__2__Impl rule__InvCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__InvCS__Group__2__Impl();
@@ -23491,17 +23491,17 @@
 
 
     // $ANTLR start "rule__InvCS__Group__2__Impl"
-    // InternalOCLstdlib.g:7328:1: rule__InvCS__Group__2__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:7330:1: rule__InvCS__Group__2__Impl : ( ':' ) ;
     public final void rule__InvCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7332:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:7333:1: ( ':' )
+            // InternalOCLstdlib.g:7334:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:7335:1: ( ':' )
             {
-            // InternalOCLstdlib.g:7333:1: ( ':' )
-            // InternalOCLstdlib.g:7334:1: ':'
+            // InternalOCLstdlib.g:7335:1: ( ':' )
+            // InternalOCLstdlib.g:7336:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getColonKeyword_2());
@@ -23532,14 +23532,14 @@
 
 
     // $ANTLR start "rule__InvCS__Group__3"
-    // InternalOCLstdlib.g:7347:1: rule__InvCS__Group__3 : rule__InvCS__Group__3__Impl rule__InvCS__Group__4 ;
+    // InternalOCLstdlib.g:7349:1: rule__InvCS__Group__3 : rule__InvCS__Group__3__Impl rule__InvCS__Group__4 ;
     public final void rule__InvCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7351:1: ( rule__InvCS__Group__3__Impl rule__InvCS__Group__4 )
-            // InternalOCLstdlib.g:7352:2: rule__InvCS__Group__3__Impl rule__InvCS__Group__4
+            // InternalOCLstdlib.g:7353:1: ( rule__InvCS__Group__3__Impl rule__InvCS__Group__4 )
+            // InternalOCLstdlib.g:7354:2: rule__InvCS__Group__3__Impl rule__InvCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__InvCS__Group__3__Impl();
@@ -23570,23 +23570,23 @@
 
 
     // $ANTLR start "rule__InvCS__Group__3__Impl"
-    // InternalOCLstdlib.g:7359:1: rule__InvCS__Group__3__Impl : ( ( rule__InvCS__OwnedSpecificationAssignment_3 ) ) ;
+    // InternalOCLstdlib.g:7361:1: rule__InvCS__Group__3__Impl : ( ( rule__InvCS__OwnedSpecificationAssignment_3 ) ) ;
     public final void rule__InvCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7363:1: ( ( ( rule__InvCS__OwnedSpecificationAssignment_3 ) ) )
-            // InternalOCLstdlib.g:7364:1: ( ( rule__InvCS__OwnedSpecificationAssignment_3 ) )
+            // InternalOCLstdlib.g:7365:1: ( ( ( rule__InvCS__OwnedSpecificationAssignment_3 ) ) )
+            // InternalOCLstdlib.g:7366:1: ( ( rule__InvCS__OwnedSpecificationAssignment_3 ) )
             {
-            // InternalOCLstdlib.g:7364:1: ( ( rule__InvCS__OwnedSpecificationAssignment_3 ) )
-            // InternalOCLstdlib.g:7365:1: ( rule__InvCS__OwnedSpecificationAssignment_3 )
+            // InternalOCLstdlib.g:7366:1: ( ( rule__InvCS__OwnedSpecificationAssignment_3 ) )
+            // InternalOCLstdlib.g:7367:1: ( rule__InvCS__OwnedSpecificationAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getOwnedSpecificationAssignment_3());
             }
-            // InternalOCLstdlib.g:7366:1: ( rule__InvCS__OwnedSpecificationAssignment_3 )
-            // InternalOCLstdlib.g:7366:2: rule__InvCS__OwnedSpecificationAssignment_3
+            // InternalOCLstdlib.g:7368:1: ( rule__InvCS__OwnedSpecificationAssignment_3 )
+            // InternalOCLstdlib.g:7368:2: rule__InvCS__OwnedSpecificationAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvCS__OwnedSpecificationAssignment_3();
@@ -23621,14 +23621,14 @@
 
 
     // $ANTLR start "rule__InvCS__Group__4"
-    // InternalOCLstdlib.g:7376:1: rule__InvCS__Group__4 : rule__InvCS__Group__4__Impl ;
+    // InternalOCLstdlib.g:7378:1: rule__InvCS__Group__4 : rule__InvCS__Group__4__Impl ;
     public final void rule__InvCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7380:1: ( rule__InvCS__Group__4__Impl )
-            // InternalOCLstdlib.g:7381:2: rule__InvCS__Group__4__Impl
+            // InternalOCLstdlib.g:7382:1: ( rule__InvCS__Group__4__Impl )
+            // InternalOCLstdlib.g:7383:2: rule__InvCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvCS__Group__4__Impl();
@@ -23654,17 +23654,17 @@
 
 
     // $ANTLR start "rule__InvCS__Group__4__Impl"
-    // InternalOCLstdlib.g:7387:1: rule__InvCS__Group__4__Impl : ( ';' ) ;
+    // InternalOCLstdlib.g:7389:1: rule__InvCS__Group__4__Impl : ( ';' ) ;
     public final void rule__InvCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7391:1: ( ( ';' ) )
-            // InternalOCLstdlib.g:7392:1: ( ';' )
+            // InternalOCLstdlib.g:7393:1: ( ( ';' ) )
+            // InternalOCLstdlib.g:7394:1: ( ';' )
             {
-            // InternalOCLstdlib.g:7392:1: ( ';' )
-            // InternalOCLstdlib.g:7393:1: ';'
+            // InternalOCLstdlib.g:7394:1: ( ';' )
+            // InternalOCLstdlib.g:7395:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getSemicolonKeyword_4());
@@ -23695,14 +23695,14 @@
 
 
     // $ANTLR start "rule__InvCS__Group_1__0"
-    // InternalOCLstdlib.g:7416:1: rule__InvCS__Group_1__0 : rule__InvCS__Group_1__0__Impl rule__InvCS__Group_1__1 ;
+    // InternalOCLstdlib.g:7418:1: rule__InvCS__Group_1__0 : rule__InvCS__Group_1__0__Impl rule__InvCS__Group_1__1 ;
     public final void rule__InvCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7420:1: ( rule__InvCS__Group_1__0__Impl rule__InvCS__Group_1__1 )
-            // InternalOCLstdlib.g:7421:2: rule__InvCS__Group_1__0__Impl rule__InvCS__Group_1__1
+            // InternalOCLstdlib.g:7422:1: ( rule__InvCS__Group_1__0__Impl rule__InvCS__Group_1__1 )
+            // InternalOCLstdlib.g:7423:2: rule__InvCS__Group_1__0__Impl rule__InvCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__InvCS__Group_1__0__Impl();
@@ -23733,23 +23733,23 @@
 
 
     // $ANTLR start "rule__InvCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:7428:1: rule__InvCS__Group_1__0__Impl : ( ( rule__InvCS__NameAssignment_1_0 ) ) ;
+    // InternalOCLstdlib.g:7430:1: rule__InvCS__Group_1__0__Impl : ( ( rule__InvCS__NameAssignment_1_0 ) ) ;
     public final void rule__InvCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7432:1: ( ( ( rule__InvCS__NameAssignment_1_0 ) ) )
-            // InternalOCLstdlib.g:7433:1: ( ( rule__InvCS__NameAssignment_1_0 ) )
+            // InternalOCLstdlib.g:7434:1: ( ( ( rule__InvCS__NameAssignment_1_0 ) ) )
+            // InternalOCLstdlib.g:7435:1: ( ( rule__InvCS__NameAssignment_1_0 ) )
             {
-            // InternalOCLstdlib.g:7433:1: ( ( rule__InvCS__NameAssignment_1_0 ) )
-            // InternalOCLstdlib.g:7434:1: ( rule__InvCS__NameAssignment_1_0 )
+            // InternalOCLstdlib.g:7435:1: ( ( rule__InvCS__NameAssignment_1_0 ) )
+            // InternalOCLstdlib.g:7436:1: ( rule__InvCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getNameAssignment_1_0());
             }
-            // InternalOCLstdlib.g:7435:1: ( rule__InvCS__NameAssignment_1_0 )
-            // InternalOCLstdlib.g:7435:2: rule__InvCS__NameAssignment_1_0
+            // InternalOCLstdlib.g:7437:1: ( rule__InvCS__NameAssignment_1_0 )
+            // InternalOCLstdlib.g:7437:2: rule__InvCS__NameAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvCS__NameAssignment_1_0();
@@ -23784,14 +23784,14 @@
 
 
     // $ANTLR start "rule__InvCS__Group_1__1"
-    // InternalOCLstdlib.g:7445:1: rule__InvCS__Group_1__1 : rule__InvCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:7447:1: rule__InvCS__Group_1__1 : rule__InvCS__Group_1__1__Impl ;
     public final void rule__InvCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7449:1: ( rule__InvCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:7450:2: rule__InvCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:7451:1: ( rule__InvCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:7452:2: rule__InvCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvCS__Group_1__1__Impl();
@@ -23817,22 +23817,22 @@
 
 
     // $ANTLR start "rule__InvCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:7456:1: rule__InvCS__Group_1__1__Impl : ( ( rule__InvCS__Group_1_1__0 )? ) ;
+    // InternalOCLstdlib.g:7458:1: rule__InvCS__Group_1__1__Impl : ( ( rule__InvCS__Group_1_1__0 )? ) ;
     public final void rule__InvCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7460:1: ( ( ( rule__InvCS__Group_1_1__0 )? ) )
-            // InternalOCLstdlib.g:7461:1: ( ( rule__InvCS__Group_1_1__0 )? )
+            // InternalOCLstdlib.g:7462:1: ( ( ( rule__InvCS__Group_1_1__0 )? ) )
+            // InternalOCLstdlib.g:7463:1: ( ( rule__InvCS__Group_1_1__0 )? )
             {
-            // InternalOCLstdlib.g:7461:1: ( ( rule__InvCS__Group_1_1__0 )? )
-            // InternalOCLstdlib.g:7462:1: ( rule__InvCS__Group_1_1__0 )?
+            // InternalOCLstdlib.g:7463:1: ( ( rule__InvCS__Group_1_1__0 )? )
+            // InternalOCLstdlib.g:7464:1: ( rule__InvCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getGroup_1_1());
             }
-            // InternalOCLstdlib.g:7463:1: ( rule__InvCS__Group_1_1__0 )?
+            // InternalOCLstdlib.g:7465:1: ( rule__InvCS__Group_1_1__0 )?
             int alt75=2;
             int LA75_0 = input.LA(1);
 
@@ -23841,7 +23841,7 @@
             }
             switch (alt75) {
                 case 1 :
-                    // InternalOCLstdlib.g:7463:2: rule__InvCS__Group_1_1__0
+                    // InternalOCLstdlib.g:7465:2: rule__InvCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__InvCS__Group_1_1__0();
@@ -23879,14 +23879,14 @@
 
 
     // $ANTLR start "rule__InvCS__Group_1_1__0"
-    // InternalOCLstdlib.g:7477:1: rule__InvCS__Group_1_1__0 : rule__InvCS__Group_1_1__0__Impl rule__InvCS__Group_1_1__1 ;
+    // InternalOCLstdlib.g:7479:1: rule__InvCS__Group_1_1__0 : rule__InvCS__Group_1_1__0__Impl rule__InvCS__Group_1_1__1 ;
     public final void rule__InvCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7481:1: ( rule__InvCS__Group_1_1__0__Impl rule__InvCS__Group_1_1__1 )
-            // InternalOCLstdlib.g:7482:2: rule__InvCS__Group_1_1__0__Impl rule__InvCS__Group_1_1__1
+            // InternalOCLstdlib.g:7483:1: ( rule__InvCS__Group_1_1__0__Impl rule__InvCS__Group_1_1__1 )
+            // InternalOCLstdlib.g:7484:2: rule__InvCS__Group_1_1__0__Impl rule__InvCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__InvCS__Group_1_1__0__Impl();
@@ -23917,17 +23917,17 @@
 
 
     // $ANTLR start "rule__InvCS__Group_1_1__0__Impl"
-    // InternalOCLstdlib.g:7489:1: rule__InvCS__Group_1_1__0__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:7491:1: rule__InvCS__Group_1_1__0__Impl : ( '(' ) ;
     public final void rule__InvCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7493:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:7494:1: ( '(' )
+            // InternalOCLstdlib.g:7495:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:7496:1: ( '(' )
             {
-            // InternalOCLstdlib.g:7494:1: ( '(' )
-            // InternalOCLstdlib.g:7495:1: '('
+            // InternalOCLstdlib.g:7496:1: ( '(' )
+            // InternalOCLstdlib.g:7497:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getLeftParenthesisKeyword_1_1_0());
@@ -23958,14 +23958,14 @@
 
 
     // $ANTLR start "rule__InvCS__Group_1_1__1"
-    // InternalOCLstdlib.g:7508:1: rule__InvCS__Group_1_1__1 : rule__InvCS__Group_1_1__1__Impl rule__InvCS__Group_1_1__2 ;
+    // InternalOCLstdlib.g:7510:1: rule__InvCS__Group_1_1__1 : rule__InvCS__Group_1_1__1__Impl rule__InvCS__Group_1_1__2 ;
     public final void rule__InvCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7512:1: ( rule__InvCS__Group_1_1__1__Impl rule__InvCS__Group_1_1__2 )
-            // InternalOCLstdlib.g:7513:2: rule__InvCS__Group_1_1__1__Impl rule__InvCS__Group_1_1__2
+            // InternalOCLstdlib.g:7514:1: ( rule__InvCS__Group_1_1__1__Impl rule__InvCS__Group_1_1__2 )
+            // InternalOCLstdlib.g:7515:2: rule__InvCS__Group_1_1__1__Impl rule__InvCS__Group_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_34);
             rule__InvCS__Group_1_1__1__Impl();
@@ -23996,23 +23996,23 @@
 
 
     // $ANTLR start "rule__InvCS__Group_1_1__1__Impl"
-    // InternalOCLstdlib.g:7520:1: rule__InvCS__Group_1_1__1__Impl : ( ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) ;
+    // InternalOCLstdlib.g:7522:1: rule__InvCS__Group_1_1__1__Impl : ( ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) ;
     public final void rule__InvCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7524:1: ( ( ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
-            // InternalOCLstdlib.g:7525:1: ( ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
+            // InternalOCLstdlib.g:7526:1: ( ( ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
+            // InternalOCLstdlib.g:7527:1: ( ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
             {
-            // InternalOCLstdlib.g:7525:1: ( ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
-            // InternalOCLstdlib.g:7526:1: ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 )
+            // InternalOCLstdlib.g:7527:1: ( ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
+            // InternalOCLstdlib.g:7528:1: ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
-            // InternalOCLstdlib.g:7527:1: ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 )
-            // InternalOCLstdlib.g:7527:2: rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1
+            // InternalOCLstdlib.g:7529:1: ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 )
+            // InternalOCLstdlib.g:7529:2: rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1();
@@ -24047,14 +24047,14 @@
 
 
     // $ANTLR start "rule__InvCS__Group_1_1__2"
-    // InternalOCLstdlib.g:7537:1: rule__InvCS__Group_1_1__2 : rule__InvCS__Group_1_1__2__Impl ;
+    // InternalOCLstdlib.g:7539:1: rule__InvCS__Group_1_1__2 : rule__InvCS__Group_1_1__2__Impl ;
     public final void rule__InvCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7541:1: ( rule__InvCS__Group_1_1__2__Impl )
-            // InternalOCLstdlib.g:7542:2: rule__InvCS__Group_1_1__2__Impl
+            // InternalOCLstdlib.g:7543:1: ( rule__InvCS__Group_1_1__2__Impl )
+            // InternalOCLstdlib.g:7544:2: rule__InvCS__Group_1_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvCS__Group_1_1__2__Impl();
@@ -24080,17 +24080,17 @@
 
 
     // $ANTLR start "rule__InvCS__Group_1_1__2__Impl"
-    // InternalOCLstdlib.g:7548:1: rule__InvCS__Group_1_1__2__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:7550:1: rule__InvCS__Group_1_1__2__Impl : ( ')' ) ;
     public final void rule__InvCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7552:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:7553:1: ( ')' )
+            // InternalOCLstdlib.g:7554:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:7555:1: ( ')' )
             {
-            // InternalOCLstdlib.g:7553:1: ( ')' )
-            // InternalOCLstdlib.g:7554:1: ')'
+            // InternalOCLstdlib.g:7555:1: ( ')' )
+            // InternalOCLstdlib.g:7556:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getRightParenthesisKeyword_1_1_2());
@@ -24121,14 +24121,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__0"
-    // InternalOCLstdlib.g:7573:1: rule__LibCoercionCS__Group__0 : rule__LibCoercionCS__Group__0__Impl rule__LibCoercionCS__Group__1 ;
+    // InternalOCLstdlib.g:7575:1: rule__LibCoercionCS__Group__0 : rule__LibCoercionCS__Group__0__Impl rule__LibCoercionCS__Group__1 ;
     public final void rule__LibCoercionCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7577:1: ( rule__LibCoercionCS__Group__0__Impl rule__LibCoercionCS__Group__1 )
-            // InternalOCLstdlib.g:7578:2: rule__LibCoercionCS__Group__0__Impl rule__LibCoercionCS__Group__1
+            // InternalOCLstdlib.g:7579:1: ( rule__LibCoercionCS__Group__0__Impl rule__LibCoercionCS__Group__1 )
+            // InternalOCLstdlib.g:7580:2: rule__LibCoercionCS__Group__0__Impl rule__LibCoercionCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__LibCoercionCS__Group__0__Impl();
@@ -24159,17 +24159,17 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__0__Impl"
-    // InternalOCLstdlib.g:7585:1: rule__LibCoercionCS__Group__0__Impl : ( 'coercion' ) ;
+    // InternalOCLstdlib.g:7587:1: rule__LibCoercionCS__Group__0__Impl : ( 'coercion' ) ;
     public final void rule__LibCoercionCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7589:1: ( ( 'coercion' ) )
-            // InternalOCLstdlib.g:7590:1: ( 'coercion' )
+            // InternalOCLstdlib.g:7591:1: ( ( 'coercion' ) )
+            // InternalOCLstdlib.g:7592:1: ( 'coercion' )
             {
-            // InternalOCLstdlib.g:7590:1: ( 'coercion' )
-            // InternalOCLstdlib.g:7591:1: 'coercion'
+            // InternalOCLstdlib.g:7592:1: ( 'coercion' )
+            // InternalOCLstdlib.g:7593:1: 'coercion'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getCoercionKeyword_0());
@@ -24200,14 +24200,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__1"
-    // InternalOCLstdlib.g:7604:1: rule__LibCoercionCS__Group__1 : rule__LibCoercionCS__Group__1__Impl rule__LibCoercionCS__Group__2 ;
+    // InternalOCLstdlib.g:7606:1: rule__LibCoercionCS__Group__1 : rule__LibCoercionCS__Group__1__Impl rule__LibCoercionCS__Group__2 ;
     public final void rule__LibCoercionCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7608:1: ( rule__LibCoercionCS__Group__1__Impl rule__LibCoercionCS__Group__2 )
-            // InternalOCLstdlib.g:7609:2: rule__LibCoercionCS__Group__1__Impl rule__LibCoercionCS__Group__2
+            // InternalOCLstdlib.g:7610:1: ( rule__LibCoercionCS__Group__1__Impl rule__LibCoercionCS__Group__2 )
+            // InternalOCLstdlib.g:7611:2: rule__LibCoercionCS__Group__1__Impl rule__LibCoercionCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__LibCoercionCS__Group__1__Impl();
@@ -24238,23 +24238,23 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__1__Impl"
-    // InternalOCLstdlib.g:7616:1: rule__LibCoercionCS__Group__1__Impl : ( ( rule__LibCoercionCS__NameAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:7618:1: rule__LibCoercionCS__Group__1__Impl : ( ( rule__LibCoercionCS__NameAssignment_1 ) ) ;
     public final void rule__LibCoercionCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7620:1: ( ( ( rule__LibCoercionCS__NameAssignment_1 ) ) )
-            // InternalOCLstdlib.g:7621:1: ( ( rule__LibCoercionCS__NameAssignment_1 ) )
+            // InternalOCLstdlib.g:7622:1: ( ( ( rule__LibCoercionCS__NameAssignment_1 ) ) )
+            // InternalOCLstdlib.g:7623:1: ( ( rule__LibCoercionCS__NameAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:7621:1: ( ( rule__LibCoercionCS__NameAssignment_1 ) )
-            // InternalOCLstdlib.g:7622:1: ( rule__LibCoercionCS__NameAssignment_1 )
+            // InternalOCLstdlib.g:7623:1: ( ( rule__LibCoercionCS__NameAssignment_1 ) )
+            // InternalOCLstdlib.g:7624:1: ( rule__LibCoercionCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getNameAssignment_1());
             }
-            // InternalOCLstdlib.g:7623:1: ( rule__LibCoercionCS__NameAssignment_1 )
-            // InternalOCLstdlib.g:7623:2: rule__LibCoercionCS__NameAssignment_1
+            // InternalOCLstdlib.g:7625:1: ( rule__LibCoercionCS__NameAssignment_1 )
+            // InternalOCLstdlib.g:7625:2: rule__LibCoercionCS__NameAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibCoercionCS__NameAssignment_1();
@@ -24289,14 +24289,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__2"
-    // InternalOCLstdlib.g:7633:1: rule__LibCoercionCS__Group__2 : rule__LibCoercionCS__Group__2__Impl rule__LibCoercionCS__Group__3 ;
+    // InternalOCLstdlib.g:7635:1: rule__LibCoercionCS__Group__2 : rule__LibCoercionCS__Group__2__Impl rule__LibCoercionCS__Group__3 ;
     public final void rule__LibCoercionCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7637:1: ( rule__LibCoercionCS__Group__2__Impl rule__LibCoercionCS__Group__3 )
-            // InternalOCLstdlib.g:7638:2: rule__LibCoercionCS__Group__2__Impl rule__LibCoercionCS__Group__3
+            // InternalOCLstdlib.g:7639:1: ( rule__LibCoercionCS__Group__2__Impl rule__LibCoercionCS__Group__3 )
+            // InternalOCLstdlib.g:7640:2: rule__LibCoercionCS__Group__2__Impl rule__LibCoercionCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_34);
             rule__LibCoercionCS__Group__2__Impl();
@@ -24327,17 +24327,17 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__2__Impl"
-    // InternalOCLstdlib.g:7645:1: rule__LibCoercionCS__Group__2__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:7647:1: rule__LibCoercionCS__Group__2__Impl : ( '(' ) ;
     public final void rule__LibCoercionCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7649:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:7650:1: ( '(' )
+            // InternalOCLstdlib.g:7651:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:7652:1: ( '(' )
             {
-            // InternalOCLstdlib.g:7650:1: ( '(' )
-            // InternalOCLstdlib.g:7651:1: '('
+            // InternalOCLstdlib.g:7652:1: ( '(' )
+            // InternalOCLstdlib.g:7653:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getLeftParenthesisKeyword_2());
@@ -24368,14 +24368,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__3"
-    // InternalOCLstdlib.g:7664:1: rule__LibCoercionCS__Group__3 : rule__LibCoercionCS__Group__3__Impl rule__LibCoercionCS__Group__4 ;
+    // InternalOCLstdlib.g:7666:1: rule__LibCoercionCS__Group__3 : rule__LibCoercionCS__Group__3__Impl rule__LibCoercionCS__Group__4 ;
     public final void rule__LibCoercionCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7668:1: ( rule__LibCoercionCS__Group__3__Impl rule__LibCoercionCS__Group__4 )
-            // InternalOCLstdlib.g:7669:2: rule__LibCoercionCS__Group__3__Impl rule__LibCoercionCS__Group__4
+            // InternalOCLstdlib.g:7670:1: ( rule__LibCoercionCS__Group__3__Impl rule__LibCoercionCS__Group__4 )
+            // InternalOCLstdlib.g:7671:2: rule__LibCoercionCS__Group__3__Impl rule__LibCoercionCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__LibCoercionCS__Group__3__Impl();
@@ -24406,17 +24406,17 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__3__Impl"
-    // InternalOCLstdlib.g:7676:1: rule__LibCoercionCS__Group__3__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:7678:1: rule__LibCoercionCS__Group__3__Impl : ( ')' ) ;
     public final void rule__LibCoercionCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7680:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:7681:1: ( ')' )
+            // InternalOCLstdlib.g:7682:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:7683:1: ( ')' )
             {
-            // InternalOCLstdlib.g:7681:1: ( ')' )
-            // InternalOCLstdlib.g:7682:1: ')'
+            // InternalOCLstdlib.g:7683:1: ( ')' )
+            // InternalOCLstdlib.g:7684:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getRightParenthesisKeyword_3());
@@ -24447,14 +24447,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__4"
-    // InternalOCLstdlib.g:7695:1: rule__LibCoercionCS__Group__4 : rule__LibCoercionCS__Group__4__Impl rule__LibCoercionCS__Group__5 ;
+    // InternalOCLstdlib.g:7697:1: rule__LibCoercionCS__Group__4 : rule__LibCoercionCS__Group__4__Impl rule__LibCoercionCS__Group__5 ;
     public final void rule__LibCoercionCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7699:1: ( rule__LibCoercionCS__Group__4__Impl rule__LibCoercionCS__Group__5 )
-            // InternalOCLstdlib.g:7700:2: rule__LibCoercionCS__Group__4__Impl rule__LibCoercionCS__Group__5
+            // InternalOCLstdlib.g:7701:1: ( rule__LibCoercionCS__Group__4__Impl rule__LibCoercionCS__Group__5 )
+            // InternalOCLstdlib.g:7702:2: rule__LibCoercionCS__Group__4__Impl rule__LibCoercionCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__LibCoercionCS__Group__4__Impl();
@@ -24485,17 +24485,17 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__4__Impl"
-    // InternalOCLstdlib.g:7707:1: rule__LibCoercionCS__Group__4__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:7709:1: rule__LibCoercionCS__Group__4__Impl : ( ':' ) ;
     public final void rule__LibCoercionCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7711:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:7712:1: ( ':' )
+            // InternalOCLstdlib.g:7713:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:7714:1: ( ':' )
             {
-            // InternalOCLstdlib.g:7712:1: ( ':' )
-            // InternalOCLstdlib.g:7713:1: ':'
+            // InternalOCLstdlib.g:7714:1: ( ':' )
+            // InternalOCLstdlib.g:7715:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getColonKeyword_4());
@@ -24526,14 +24526,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__5"
-    // InternalOCLstdlib.g:7726:1: rule__LibCoercionCS__Group__5 : rule__LibCoercionCS__Group__5__Impl rule__LibCoercionCS__Group__6 ;
+    // InternalOCLstdlib.g:7728:1: rule__LibCoercionCS__Group__5 : rule__LibCoercionCS__Group__5__Impl rule__LibCoercionCS__Group__6 ;
     public final void rule__LibCoercionCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7730:1: ( rule__LibCoercionCS__Group__5__Impl rule__LibCoercionCS__Group__6 )
-            // InternalOCLstdlib.g:7731:2: rule__LibCoercionCS__Group__5__Impl rule__LibCoercionCS__Group__6
+            // InternalOCLstdlib.g:7732:1: ( rule__LibCoercionCS__Group__5__Impl rule__LibCoercionCS__Group__6 )
+            // InternalOCLstdlib.g:7733:2: rule__LibCoercionCS__Group__5__Impl rule__LibCoercionCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_35);
             rule__LibCoercionCS__Group__5__Impl();
@@ -24564,23 +24564,23 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__5__Impl"
-    // InternalOCLstdlib.g:7738:1: rule__LibCoercionCS__Group__5__Impl : ( ( rule__LibCoercionCS__OwnedTypeAssignment_5 ) ) ;
+    // InternalOCLstdlib.g:7740:1: rule__LibCoercionCS__Group__5__Impl : ( ( rule__LibCoercionCS__OwnedTypeAssignment_5 ) ) ;
     public final void rule__LibCoercionCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7742:1: ( ( ( rule__LibCoercionCS__OwnedTypeAssignment_5 ) ) )
-            // InternalOCLstdlib.g:7743:1: ( ( rule__LibCoercionCS__OwnedTypeAssignment_5 ) )
+            // InternalOCLstdlib.g:7744:1: ( ( ( rule__LibCoercionCS__OwnedTypeAssignment_5 ) ) )
+            // InternalOCLstdlib.g:7745:1: ( ( rule__LibCoercionCS__OwnedTypeAssignment_5 ) )
             {
-            // InternalOCLstdlib.g:7743:1: ( ( rule__LibCoercionCS__OwnedTypeAssignment_5 ) )
-            // InternalOCLstdlib.g:7744:1: ( rule__LibCoercionCS__OwnedTypeAssignment_5 )
+            // InternalOCLstdlib.g:7745:1: ( ( rule__LibCoercionCS__OwnedTypeAssignment_5 ) )
+            // InternalOCLstdlib.g:7746:1: ( rule__LibCoercionCS__OwnedTypeAssignment_5 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getOwnedTypeAssignment_5());
             }
-            // InternalOCLstdlib.g:7745:1: ( rule__LibCoercionCS__OwnedTypeAssignment_5 )
-            // InternalOCLstdlib.g:7745:2: rule__LibCoercionCS__OwnedTypeAssignment_5
+            // InternalOCLstdlib.g:7747:1: ( rule__LibCoercionCS__OwnedTypeAssignment_5 )
+            // InternalOCLstdlib.g:7747:2: rule__LibCoercionCS__OwnedTypeAssignment_5
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibCoercionCS__OwnedTypeAssignment_5();
@@ -24615,14 +24615,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__6"
-    // InternalOCLstdlib.g:7755:1: rule__LibCoercionCS__Group__6 : rule__LibCoercionCS__Group__6__Impl rule__LibCoercionCS__Group__7 ;
+    // InternalOCLstdlib.g:7757:1: rule__LibCoercionCS__Group__6 : rule__LibCoercionCS__Group__6__Impl rule__LibCoercionCS__Group__7 ;
     public final void rule__LibCoercionCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7759:1: ( rule__LibCoercionCS__Group__6__Impl rule__LibCoercionCS__Group__7 )
-            // InternalOCLstdlib.g:7760:2: rule__LibCoercionCS__Group__6__Impl rule__LibCoercionCS__Group__7
+            // InternalOCLstdlib.g:7761:1: ( rule__LibCoercionCS__Group__6__Impl rule__LibCoercionCS__Group__7 )
+            // InternalOCLstdlib.g:7762:2: rule__LibCoercionCS__Group__6__Impl rule__LibCoercionCS__Group__7
             {
             pushFollow(FollowSets000.FOLLOW_35);
             rule__LibCoercionCS__Group__6__Impl();
@@ -24653,22 +24653,22 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__6__Impl"
-    // InternalOCLstdlib.g:7767:1: rule__LibCoercionCS__Group__6__Impl : ( ( rule__LibCoercionCS__Group_6__0 )? ) ;
+    // InternalOCLstdlib.g:7769:1: rule__LibCoercionCS__Group__6__Impl : ( ( rule__LibCoercionCS__Group_6__0 )? ) ;
     public final void rule__LibCoercionCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7771:1: ( ( ( rule__LibCoercionCS__Group_6__0 )? ) )
-            // InternalOCLstdlib.g:7772:1: ( ( rule__LibCoercionCS__Group_6__0 )? )
+            // InternalOCLstdlib.g:7773:1: ( ( ( rule__LibCoercionCS__Group_6__0 )? ) )
+            // InternalOCLstdlib.g:7774:1: ( ( rule__LibCoercionCS__Group_6__0 )? )
             {
-            // InternalOCLstdlib.g:7772:1: ( ( rule__LibCoercionCS__Group_6__0 )? )
-            // InternalOCLstdlib.g:7773:1: ( rule__LibCoercionCS__Group_6__0 )?
+            // InternalOCLstdlib.g:7774:1: ( ( rule__LibCoercionCS__Group_6__0 )? )
+            // InternalOCLstdlib.g:7775:1: ( rule__LibCoercionCS__Group_6__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getGroup_6());
             }
-            // InternalOCLstdlib.g:7774:1: ( rule__LibCoercionCS__Group_6__0 )?
+            // InternalOCLstdlib.g:7776:1: ( rule__LibCoercionCS__Group_6__0 )?
             int alt76=2;
             int LA76_0 = input.LA(1);
 
@@ -24677,7 +24677,7 @@
             }
             switch (alt76) {
                 case 1 :
-                    // InternalOCLstdlib.g:7774:2: rule__LibCoercionCS__Group_6__0
+                    // InternalOCLstdlib.g:7776:2: rule__LibCoercionCS__Group_6__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibCoercionCS__Group_6__0();
@@ -24715,14 +24715,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__7"
-    // InternalOCLstdlib.g:7784:1: rule__LibCoercionCS__Group__7 : rule__LibCoercionCS__Group__7__Impl ;
+    // InternalOCLstdlib.g:7786:1: rule__LibCoercionCS__Group__7 : rule__LibCoercionCS__Group__7__Impl ;
     public final void rule__LibCoercionCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7788:1: ( rule__LibCoercionCS__Group__7__Impl )
-            // InternalOCLstdlib.g:7789:2: rule__LibCoercionCS__Group__7__Impl
+            // InternalOCLstdlib.g:7790:1: ( rule__LibCoercionCS__Group__7__Impl )
+            // InternalOCLstdlib.g:7791:2: rule__LibCoercionCS__Group__7__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibCoercionCS__Group__7__Impl();
@@ -24748,23 +24748,23 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group__7__Impl"
-    // InternalOCLstdlib.g:7795:1: rule__LibCoercionCS__Group__7__Impl : ( ( rule__LibCoercionCS__Alternatives_7 ) ) ;
+    // InternalOCLstdlib.g:7797:1: rule__LibCoercionCS__Group__7__Impl : ( ( rule__LibCoercionCS__Alternatives_7 ) ) ;
     public final void rule__LibCoercionCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7799:1: ( ( ( rule__LibCoercionCS__Alternatives_7 ) ) )
-            // InternalOCLstdlib.g:7800:1: ( ( rule__LibCoercionCS__Alternatives_7 ) )
+            // InternalOCLstdlib.g:7801:1: ( ( ( rule__LibCoercionCS__Alternatives_7 ) ) )
+            // InternalOCLstdlib.g:7802:1: ( ( rule__LibCoercionCS__Alternatives_7 ) )
             {
-            // InternalOCLstdlib.g:7800:1: ( ( rule__LibCoercionCS__Alternatives_7 ) )
-            // InternalOCLstdlib.g:7801:1: ( rule__LibCoercionCS__Alternatives_7 )
+            // InternalOCLstdlib.g:7802:1: ( ( rule__LibCoercionCS__Alternatives_7 ) )
+            // InternalOCLstdlib.g:7803:1: ( rule__LibCoercionCS__Alternatives_7 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getAlternatives_7());
             }
-            // InternalOCLstdlib.g:7802:1: ( rule__LibCoercionCS__Alternatives_7 )
-            // InternalOCLstdlib.g:7802:2: rule__LibCoercionCS__Alternatives_7
+            // InternalOCLstdlib.g:7804:1: ( rule__LibCoercionCS__Alternatives_7 )
+            // InternalOCLstdlib.g:7804:2: rule__LibCoercionCS__Alternatives_7
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibCoercionCS__Alternatives_7();
@@ -24799,14 +24799,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group_6__0"
-    // InternalOCLstdlib.g:7828:1: rule__LibCoercionCS__Group_6__0 : rule__LibCoercionCS__Group_6__0__Impl rule__LibCoercionCS__Group_6__1 ;
+    // InternalOCLstdlib.g:7830:1: rule__LibCoercionCS__Group_6__0 : rule__LibCoercionCS__Group_6__0__Impl rule__LibCoercionCS__Group_6__1 ;
     public final void rule__LibCoercionCS__Group_6__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7832:1: ( rule__LibCoercionCS__Group_6__0__Impl rule__LibCoercionCS__Group_6__1 )
-            // InternalOCLstdlib.g:7833:2: rule__LibCoercionCS__Group_6__0__Impl rule__LibCoercionCS__Group_6__1
+            // InternalOCLstdlib.g:7834:1: ( rule__LibCoercionCS__Group_6__0__Impl rule__LibCoercionCS__Group_6__1 )
+            // InternalOCLstdlib.g:7835:2: rule__LibCoercionCS__Group_6__0__Impl rule__LibCoercionCS__Group_6__1
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__LibCoercionCS__Group_6__0__Impl();
@@ -24837,17 +24837,17 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group_6__0__Impl"
-    // InternalOCLstdlib.g:7840:1: rule__LibCoercionCS__Group_6__0__Impl : ( '=>' ) ;
+    // InternalOCLstdlib.g:7842:1: rule__LibCoercionCS__Group_6__0__Impl : ( '=>' ) ;
     public final void rule__LibCoercionCS__Group_6__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7844:1: ( ( '=>' ) )
-            // InternalOCLstdlib.g:7845:1: ( '=>' )
+            // InternalOCLstdlib.g:7846:1: ( ( '=>' ) )
+            // InternalOCLstdlib.g:7847:1: ( '=>' )
             {
-            // InternalOCLstdlib.g:7845:1: ( '=>' )
-            // InternalOCLstdlib.g:7846:1: '=>'
+            // InternalOCLstdlib.g:7847:1: ( '=>' )
+            // InternalOCLstdlib.g:7848:1: '=>'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getEqualsSignGreaterThanSignKeyword_6_0());
@@ -24878,14 +24878,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group_6__1"
-    // InternalOCLstdlib.g:7859:1: rule__LibCoercionCS__Group_6__1 : rule__LibCoercionCS__Group_6__1__Impl ;
+    // InternalOCLstdlib.g:7861:1: rule__LibCoercionCS__Group_6__1 : rule__LibCoercionCS__Group_6__1__Impl ;
     public final void rule__LibCoercionCS__Group_6__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7863:1: ( rule__LibCoercionCS__Group_6__1__Impl )
-            // InternalOCLstdlib.g:7864:2: rule__LibCoercionCS__Group_6__1__Impl
+            // InternalOCLstdlib.g:7865:1: ( rule__LibCoercionCS__Group_6__1__Impl )
+            // InternalOCLstdlib.g:7866:2: rule__LibCoercionCS__Group_6__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibCoercionCS__Group_6__1__Impl();
@@ -24911,23 +24911,23 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group_6__1__Impl"
-    // InternalOCLstdlib.g:7870:1: rule__LibCoercionCS__Group_6__1__Impl : ( ( rule__LibCoercionCS__ImplementationAssignment_6_1 ) ) ;
+    // InternalOCLstdlib.g:7872:1: rule__LibCoercionCS__Group_6__1__Impl : ( ( rule__LibCoercionCS__ImplementationAssignment_6_1 ) ) ;
     public final void rule__LibCoercionCS__Group_6__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7874:1: ( ( ( rule__LibCoercionCS__ImplementationAssignment_6_1 ) ) )
-            // InternalOCLstdlib.g:7875:1: ( ( rule__LibCoercionCS__ImplementationAssignment_6_1 ) )
+            // InternalOCLstdlib.g:7876:1: ( ( ( rule__LibCoercionCS__ImplementationAssignment_6_1 ) ) )
+            // InternalOCLstdlib.g:7877:1: ( ( rule__LibCoercionCS__ImplementationAssignment_6_1 ) )
             {
-            // InternalOCLstdlib.g:7875:1: ( ( rule__LibCoercionCS__ImplementationAssignment_6_1 ) )
-            // InternalOCLstdlib.g:7876:1: ( rule__LibCoercionCS__ImplementationAssignment_6_1 )
+            // InternalOCLstdlib.g:7877:1: ( ( rule__LibCoercionCS__ImplementationAssignment_6_1 ) )
+            // InternalOCLstdlib.g:7878:1: ( rule__LibCoercionCS__ImplementationAssignment_6_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getImplementationAssignment_6_1());
             }
-            // InternalOCLstdlib.g:7877:1: ( rule__LibCoercionCS__ImplementationAssignment_6_1 )
-            // InternalOCLstdlib.g:7877:2: rule__LibCoercionCS__ImplementationAssignment_6_1
+            // InternalOCLstdlib.g:7879:1: ( rule__LibCoercionCS__ImplementationAssignment_6_1 )
+            // InternalOCLstdlib.g:7879:2: rule__LibCoercionCS__ImplementationAssignment_6_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibCoercionCS__ImplementationAssignment_6_1();
@@ -24962,14 +24962,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group_7_0__0"
-    // InternalOCLstdlib.g:7891:1: rule__LibCoercionCS__Group_7_0__0 : rule__LibCoercionCS__Group_7_0__0__Impl rule__LibCoercionCS__Group_7_0__1 ;
+    // InternalOCLstdlib.g:7893:1: rule__LibCoercionCS__Group_7_0__0 : rule__LibCoercionCS__Group_7_0__0__Impl rule__LibCoercionCS__Group_7_0__1 ;
     public final void rule__LibCoercionCS__Group_7_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7895:1: ( rule__LibCoercionCS__Group_7_0__0__Impl rule__LibCoercionCS__Group_7_0__1 )
-            // InternalOCLstdlib.g:7896:2: rule__LibCoercionCS__Group_7_0__0__Impl rule__LibCoercionCS__Group_7_0__1
+            // InternalOCLstdlib.g:7897:1: ( rule__LibCoercionCS__Group_7_0__0__Impl rule__LibCoercionCS__Group_7_0__1 )
+            // InternalOCLstdlib.g:7898:2: rule__LibCoercionCS__Group_7_0__0__Impl rule__LibCoercionCS__Group_7_0__1
             {
             pushFollow(FollowSets000.FOLLOW_37);
             rule__LibCoercionCS__Group_7_0__0__Impl();
@@ -25000,17 +25000,17 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group_7_0__0__Impl"
-    // InternalOCLstdlib.g:7903:1: rule__LibCoercionCS__Group_7_0__0__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:7905:1: rule__LibCoercionCS__Group_7_0__0__Impl : ( '{' ) ;
     public final void rule__LibCoercionCS__Group_7_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7907:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:7908:1: ( '{' )
+            // InternalOCLstdlib.g:7909:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:7910:1: ( '{' )
             {
-            // InternalOCLstdlib.g:7908:1: ( '{' )
-            // InternalOCLstdlib.g:7909:1: '{'
+            // InternalOCLstdlib.g:7910:1: ( '{' )
+            // InternalOCLstdlib.g:7911:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getLeftCurlyBracketKeyword_7_0_0());
@@ -25041,14 +25041,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group_7_0__1"
-    // InternalOCLstdlib.g:7922:1: rule__LibCoercionCS__Group_7_0__1 : rule__LibCoercionCS__Group_7_0__1__Impl rule__LibCoercionCS__Group_7_0__2 ;
+    // InternalOCLstdlib.g:7924:1: rule__LibCoercionCS__Group_7_0__1 : rule__LibCoercionCS__Group_7_0__1__Impl rule__LibCoercionCS__Group_7_0__2 ;
     public final void rule__LibCoercionCS__Group_7_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7926:1: ( rule__LibCoercionCS__Group_7_0__1__Impl rule__LibCoercionCS__Group_7_0__2 )
-            // InternalOCLstdlib.g:7927:2: rule__LibCoercionCS__Group_7_0__1__Impl rule__LibCoercionCS__Group_7_0__2
+            // InternalOCLstdlib.g:7928:1: ( rule__LibCoercionCS__Group_7_0__1__Impl rule__LibCoercionCS__Group_7_0__2 )
+            // InternalOCLstdlib.g:7929:2: rule__LibCoercionCS__Group_7_0__1__Impl rule__LibCoercionCS__Group_7_0__2
             {
             pushFollow(FollowSets000.FOLLOW_37);
             rule__LibCoercionCS__Group_7_0__1__Impl();
@@ -25079,22 +25079,22 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group_7_0__1__Impl"
-    // InternalOCLstdlib.g:7934:1: rule__LibCoercionCS__Group_7_0__1__Impl : ( ( rule__LibCoercionCS__Alternatives_7_0_1 )* ) ;
+    // InternalOCLstdlib.g:7936:1: rule__LibCoercionCS__Group_7_0__1__Impl : ( ( rule__LibCoercionCS__Alternatives_7_0_1 )* ) ;
     public final void rule__LibCoercionCS__Group_7_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7938:1: ( ( ( rule__LibCoercionCS__Alternatives_7_0_1 )* ) )
-            // InternalOCLstdlib.g:7939:1: ( ( rule__LibCoercionCS__Alternatives_7_0_1 )* )
+            // InternalOCLstdlib.g:7940:1: ( ( ( rule__LibCoercionCS__Alternatives_7_0_1 )* ) )
+            // InternalOCLstdlib.g:7941:1: ( ( rule__LibCoercionCS__Alternatives_7_0_1 )* )
             {
-            // InternalOCLstdlib.g:7939:1: ( ( rule__LibCoercionCS__Alternatives_7_0_1 )* )
-            // InternalOCLstdlib.g:7940:1: ( rule__LibCoercionCS__Alternatives_7_0_1 )*
+            // InternalOCLstdlib.g:7941:1: ( ( rule__LibCoercionCS__Alternatives_7_0_1 )* )
+            // InternalOCLstdlib.g:7942:1: ( rule__LibCoercionCS__Alternatives_7_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getAlternatives_7_0_1());
             }
-            // InternalOCLstdlib.g:7941:1: ( rule__LibCoercionCS__Alternatives_7_0_1 )*
+            // InternalOCLstdlib.g:7943:1: ( rule__LibCoercionCS__Alternatives_7_0_1 )*
             loop77:
             do {
                 int alt77=2;
@@ -25107,7 +25107,7 @@
 
                 switch (alt77) {
             	case 1 :
-            	    // InternalOCLstdlib.g:7941:2: rule__LibCoercionCS__Alternatives_7_0_1
+            	    // InternalOCLstdlib.g:7943:2: rule__LibCoercionCS__Alternatives_7_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_38);
             	    rule__LibCoercionCS__Alternatives_7_0_1();
@@ -25148,14 +25148,14 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group_7_0__2"
-    // InternalOCLstdlib.g:7951:1: rule__LibCoercionCS__Group_7_0__2 : rule__LibCoercionCS__Group_7_0__2__Impl ;
+    // InternalOCLstdlib.g:7953:1: rule__LibCoercionCS__Group_7_0__2 : rule__LibCoercionCS__Group_7_0__2__Impl ;
     public final void rule__LibCoercionCS__Group_7_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7955:1: ( rule__LibCoercionCS__Group_7_0__2__Impl )
-            // InternalOCLstdlib.g:7956:2: rule__LibCoercionCS__Group_7_0__2__Impl
+            // InternalOCLstdlib.g:7957:1: ( rule__LibCoercionCS__Group_7_0__2__Impl )
+            // InternalOCLstdlib.g:7958:2: rule__LibCoercionCS__Group_7_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibCoercionCS__Group_7_0__2__Impl();
@@ -25181,17 +25181,17 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__Group_7_0__2__Impl"
-    // InternalOCLstdlib.g:7962:1: rule__LibCoercionCS__Group_7_0__2__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:7964:1: rule__LibCoercionCS__Group_7_0__2__Impl : ( '}' ) ;
     public final void rule__LibCoercionCS__Group_7_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7966:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:7967:1: ( '}' )
+            // InternalOCLstdlib.g:7968:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:7969:1: ( '}' )
             {
-            // InternalOCLstdlib.g:7967:1: ( '}' )
-            // InternalOCLstdlib.g:7968:1: '}'
+            // InternalOCLstdlib.g:7969:1: ( '}' )
+            // InternalOCLstdlib.g:7970:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getRightCurlyBracketKeyword_7_0_2());
@@ -25222,14 +25222,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__0"
-    // InternalOCLstdlib.g:7987:1: rule__LibIterationCS__Group__0 : rule__LibIterationCS__Group__0__Impl rule__LibIterationCS__Group__1 ;
+    // InternalOCLstdlib.g:7989:1: rule__LibIterationCS__Group__0 : rule__LibIterationCS__Group__0__Impl rule__LibIterationCS__Group__1 ;
     public final void rule__LibIterationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:7991:1: ( rule__LibIterationCS__Group__0__Impl rule__LibIterationCS__Group__1 )
-            // InternalOCLstdlib.g:7992:2: rule__LibIterationCS__Group__0__Impl rule__LibIterationCS__Group__1
+            // InternalOCLstdlib.g:7993:1: ( rule__LibIterationCS__Group__0__Impl rule__LibIterationCS__Group__1 )
+            // InternalOCLstdlib.g:7994:2: rule__LibIterationCS__Group__0__Impl rule__LibIterationCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__LibIterationCS__Group__0__Impl();
@@ -25260,17 +25260,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__0__Impl"
-    // InternalOCLstdlib.g:7999:1: rule__LibIterationCS__Group__0__Impl : ( 'iteration' ) ;
+    // InternalOCLstdlib.g:8001:1: rule__LibIterationCS__Group__0__Impl : ( 'iteration' ) ;
     public final void rule__LibIterationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8003:1: ( ( 'iteration' ) )
-            // InternalOCLstdlib.g:8004:1: ( 'iteration' )
+            // InternalOCLstdlib.g:8005:1: ( ( 'iteration' ) )
+            // InternalOCLstdlib.g:8006:1: ( 'iteration' )
             {
-            // InternalOCLstdlib.g:8004:1: ( 'iteration' )
-            // InternalOCLstdlib.g:8005:1: 'iteration'
+            // InternalOCLstdlib.g:8006:1: ( 'iteration' )
+            // InternalOCLstdlib.g:8007:1: 'iteration'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getIterationKeyword_0());
@@ -25301,14 +25301,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__1"
-    // InternalOCLstdlib.g:8018:1: rule__LibIterationCS__Group__1 : rule__LibIterationCS__Group__1__Impl rule__LibIterationCS__Group__2 ;
+    // InternalOCLstdlib.g:8020:1: rule__LibIterationCS__Group__1 : rule__LibIterationCS__Group__1__Impl rule__LibIterationCS__Group__2 ;
     public final void rule__LibIterationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8022:1: ( rule__LibIterationCS__Group__1__Impl rule__LibIterationCS__Group__2 )
-            // InternalOCLstdlib.g:8023:2: rule__LibIterationCS__Group__1__Impl rule__LibIterationCS__Group__2
+            // InternalOCLstdlib.g:8024:1: ( rule__LibIterationCS__Group__1__Impl rule__LibIterationCS__Group__2 )
+            // InternalOCLstdlib.g:8025:2: rule__LibIterationCS__Group__1__Impl rule__LibIterationCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__LibIterationCS__Group__1__Impl();
@@ -25339,23 +25339,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__1__Impl"
-    // InternalOCLstdlib.g:8030:1: rule__LibIterationCS__Group__1__Impl : ( ( rule__LibIterationCS__NameAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:8032:1: rule__LibIterationCS__Group__1__Impl : ( ( rule__LibIterationCS__NameAssignment_1 ) ) ;
     public final void rule__LibIterationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8034:1: ( ( ( rule__LibIterationCS__NameAssignment_1 ) ) )
-            // InternalOCLstdlib.g:8035:1: ( ( rule__LibIterationCS__NameAssignment_1 ) )
+            // InternalOCLstdlib.g:8036:1: ( ( ( rule__LibIterationCS__NameAssignment_1 ) ) )
+            // InternalOCLstdlib.g:8037:1: ( ( rule__LibIterationCS__NameAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:8035:1: ( ( rule__LibIterationCS__NameAssignment_1 ) )
-            // InternalOCLstdlib.g:8036:1: ( rule__LibIterationCS__NameAssignment_1 )
+            // InternalOCLstdlib.g:8037:1: ( ( rule__LibIterationCS__NameAssignment_1 ) )
+            // InternalOCLstdlib.g:8038:1: ( rule__LibIterationCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getNameAssignment_1());
             }
-            // InternalOCLstdlib.g:8037:1: ( rule__LibIterationCS__NameAssignment_1 )
-            // InternalOCLstdlib.g:8037:2: rule__LibIterationCS__NameAssignment_1
+            // InternalOCLstdlib.g:8039:1: ( rule__LibIterationCS__NameAssignment_1 )
+            // InternalOCLstdlib.g:8039:2: rule__LibIterationCS__NameAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__NameAssignment_1();
@@ -25390,14 +25390,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__2"
-    // InternalOCLstdlib.g:8047:1: rule__LibIterationCS__Group__2 : rule__LibIterationCS__Group__2__Impl rule__LibIterationCS__Group__3 ;
+    // InternalOCLstdlib.g:8049:1: rule__LibIterationCS__Group__2 : rule__LibIterationCS__Group__2__Impl rule__LibIterationCS__Group__3 ;
     public final void rule__LibIterationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8051:1: ( rule__LibIterationCS__Group__2__Impl rule__LibIterationCS__Group__3 )
-            // InternalOCLstdlib.g:8052:2: rule__LibIterationCS__Group__2__Impl rule__LibIterationCS__Group__3
+            // InternalOCLstdlib.g:8053:1: ( rule__LibIterationCS__Group__2__Impl rule__LibIterationCS__Group__3 )
+            // InternalOCLstdlib.g:8054:2: rule__LibIterationCS__Group__2__Impl rule__LibIterationCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__LibIterationCS__Group__2__Impl();
@@ -25428,27 +25428,27 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__2__Impl"
-    // InternalOCLstdlib.g:8059:1: rule__LibIterationCS__Group__2__Impl : ( ( rule__LibIterationCS__OwnedSignatureAssignment_2 )? ) ;
+    // InternalOCLstdlib.g:8061:1: rule__LibIterationCS__Group__2__Impl : ( ( rule__LibIterationCS__OwnedSignatureAssignment_2 )? ) ;
     public final void rule__LibIterationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8063:1: ( ( ( rule__LibIterationCS__OwnedSignatureAssignment_2 )? ) )
-            // InternalOCLstdlib.g:8064:1: ( ( rule__LibIterationCS__OwnedSignatureAssignment_2 )? )
+            // InternalOCLstdlib.g:8065:1: ( ( ( rule__LibIterationCS__OwnedSignatureAssignment_2 )? ) )
+            // InternalOCLstdlib.g:8066:1: ( ( rule__LibIterationCS__OwnedSignatureAssignment_2 )? )
             {
-            // InternalOCLstdlib.g:8064:1: ( ( rule__LibIterationCS__OwnedSignatureAssignment_2 )? )
-            // InternalOCLstdlib.g:8065:1: ( rule__LibIterationCS__OwnedSignatureAssignment_2 )?
+            // InternalOCLstdlib.g:8066:1: ( ( rule__LibIterationCS__OwnedSignatureAssignment_2 )? )
+            // InternalOCLstdlib.g:8067:1: ( rule__LibIterationCS__OwnedSignatureAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedSignatureAssignment_2());
             }
-            // InternalOCLstdlib.g:8066:1: ( rule__LibIterationCS__OwnedSignatureAssignment_2 )?
+            // InternalOCLstdlib.g:8068:1: ( rule__LibIterationCS__OwnedSignatureAssignment_2 )?
             int alt78=2;
             alt78 = dfa78.predict(input);
             switch (alt78) {
                 case 1 :
-                    // InternalOCLstdlib.g:8066:2: rule__LibIterationCS__OwnedSignatureAssignment_2
+                    // InternalOCLstdlib.g:8068:2: rule__LibIterationCS__OwnedSignatureAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibIterationCS__OwnedSignatureAssignment_2();
@@ -25486,14 +25486,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__3"
-    // InternalOCLstdlib.g:8076:1: rule__LibIterationCS__Group__3 : rule__LibIterationCS__Group__3__Impl rule__LibIterationCS__Group__4 ;
+    // InternalOCLstdlib.g:8078:1: rule__LibIterationCS__Group__3 : rule__LibIterationCS__Group__3__Impl rule__LibIterationCS__Group__4 ;
     public final void rule__LibIterationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8080:1: ( rule__LibIterationCS__Group__3__Impl rule__LibIterationCS__Group__4 )
-            // InternalOCLstdlib.g:8081:2: rule__LibIterationCS__Group__3__Impl rule__LibIterationCS__Group__4
+            // InternalOCLstdlib.g:8082:1: ( rule__LibIterationCS__Group__3__Impl rule__LibIterationCS__Group__4 )
+            // InternalOCLstdlib.g:8083:2: rule__LibIterationCS__Group__3__Impl rule__LibIterationCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__LibIterationCS__Group__3__Impl();
@@ -25524,17 +25524,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__3__Impl"
-    // InternalOCLstdlib.g:8088:1: rule__LibIterationCS__Group__3__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:8090:1: rule__LibIterationCS__Group__3__Impl : ( '(' ) ;
     public final void rule__LibIterationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8092:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:8093:1: ( '(' )
+            // InternalOCLstdlib.g:8094:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:8095:1: ( '(' )
             {
-            // InternalOCLstdlib.g:8093:1: ( '(' )
-            // InternalOCLstdlib.g:8094:1: '('
+            // InternalOCLstdlib.g:8095:1: ( '(' )
+            // InternalOCLstdlib.g:8096:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getLeftParenthesisKeyword_3());
@@ -25565,14 +25565,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__4"
-    // InternalOCLstdlib.g:8107:1: rule__LibIterationCS__Group__4 : rule__LibIterationCS__Group__4__Impl rule__LibIterationCS__Group__5 ;
+    // InternalOCLstdlib.g:8109:1: rule__LibIterationCS__Group__4 : rule__LibIterationCS__Group__4__Impl rule__LibIterationCS__Group__5 ;
     public final void rule__LibIterationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8111:1: ( rule__LibIterationCS__Group__4__Impl rule__LibIterationCS__Group__5 )
-            // InternalOCLstdlib.g:8112:2: rule__LibIterationCS__Group__4__Impl rule__LibIterationCS__Group__5
+            // InternalOCLstdlib.g:8113:1: ( rule__LibIterationCS__Group__4__Impl rule__LibIterationCS__Group__5 )
+            // InternalOCLstdlib.g:8114:2: rule__LibIterationCS__Group__4__Impl rule__LibIterationCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__LibIterationCS__Group__4__Impl();
@@ -25603,23 +25603,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__4__Impl"
-    // InternalOCLstdlib.g:8119:1: rule__LibIterationCS__Group__4__Impl : ( ( rule__LibIterationCS__OwnedIteratorsAssignment_4 ) ) ;
+    // InternalOCLstdlib.g:8121:1: rule__LibIterationCS__Group__4__Impl : ( ( rule__LibIterationCS__OwnedIteratorsAssignment_4 ) ) ;
     public final void rule__LibIterationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8123:1: ( ( ( rule__LibIterationCS__OwnedIteratorsAssignment_4 ) ) )
-            // InternalOCLstdlib.g:8124:1: ( ( rule__LibIterationCS__OwnedIteratorsAssignment_4 ) )
+            // InternalOCLstdlib.g:8125:1: ( ( ( rule__LibIterationCS__OwnedIteratorsAssignment_4 ) ) )
+            // InternalOCLstdlib.g:8126:1: ( ( rule__LibIterationCS__OwnedIteratorsAssignment_4 ) )
             {
-            // InternalOCLstdlib.g:8124:1: ( ( rule__LibIterationCS__OwnedIteratorsAssignment_4 ) )
-            // InternalOCLstdlib.g:8125:1: ( rule__LibIterationCS__OwnedIteratorsAssignment_4 )
+            // InternalOCLstdlib.g:8126:1: ( ( rule__LibIterationCS__OwnedIteratorsAssignment_4 ) )
+            // InternalOCLstdlib.g:8127:1: ( rule__LibIterationCS__OwnedIteratorsAssignment_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsAssignment_4());
             }
-            // InternalOCLstdlib.g:8126:1: ( rule__LibIterationCS__OwnedIteratorsAssignment_4 )
-            // InternalOCLstdlib.g:8126:2: rule__LibIterationCS__OwnedIteratorsAssignment_4
+            // InternalOCLstdlib.g:8128:1: ( rule__LibIterationCS__OwnedIteratorsAssignment_4 )
+            // InternalOCLstdlib.g:8128:2: rule__LibIterationCS__OwnedIteratorsAssignment_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__OwnedIteratorsAssignment_4();
@@ -25654,14 +25654,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__5"
-    // InternalOCLstdlib.g:8136:1: rule__LibIterationCS__Group__5 : rule__LibIterationCS__Group__5__Impl rule__LibIterationCS__Group__6 ;
+    // InternalOCLstdlib.g:8138:1: rule__LibIterationCS__Group__5 : rule__LibIterationCS__Group__5__Impl rule__LibIterationCS__Group__6 ;
     public final void rule__LibIterationCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8140:1: ( rule__LibIterationCS__Group__5__Impl rule__LibIterationCS__Group__6 )
-            // InternalOCLstdlib.g:8141:2: rule__LibIterationCS__Group__5__Impl rule__LibIterationCS__Group__6
+            // InternalOCLstdlib.g:8142:1: ( rule__LibIterationCS__Group__5__Impl rule__LibIterationCS__Group__6 )
+            // InternalOCLstdlib.g:8143:2: rule__LibIterationCS__Group__5__Impl rule__LibIterationCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__LibIterationCS__Group__5__Impl();
@@ -25692,22 +25692,22 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__5__Impl"
-    // InternalOCLstdlib.g:8148:1: rule__LibIterationCS__Group__5__Impl : ( ( rule__LibIterationCS__Group_5__0 )* ) ;
+    // InternalOCLstdlib.g:8150:1: rule__LibIterationCS__Group__5__Impl : ( ( rule__LibIterationCS__Group_5__0 )* ) ;
     public final void rule__LibIterationCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8152:1: ( ( ( rule__LibIterationCS__Group_5__0 )* ) )
-            // InternalOCLstdlib.g:8153:1: ( ( rule__LibIterationCS__Group_5__0 )* )
+            // InternalOCLstdlib.g:8154:1: ( ( ( rule__LibIterationCS__Group_5__0 )* ) )
+            // InternalOCLstdlib.g:8155:1: ( ( rule__LibIterationCS__Group_5__0 )* )
             {
-            // InternalOCLstdlib.g:8153:1: ( ( rule__LibIterationCS__Group_5__0 )* )
-            // InternalOCLstdlib.g:8154:1: ( rule__LibIterationCS__Group_5__0 )*
+            // InternalOCLstdlib.g:8155:1: ( ( rule__LibIterationCS__Group_5__0 )* )
+            // InternalOCLstdlib.g:8156:1: ( rule__LibIterationCS__Group_5__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getGroup_5());
             }
-            // InternalOCLstdlib.g:8155:1: ( rule__LibIterationCS__Group_5__0 )*
+            // InternalOCLstdlib.g:8157:1: ( rule__LibIterationCS__Group_5__0 )*
             loop79:
             do {
                 int alt79=2;
@@ -25720,7 +25720,7 @@
 
                 switch (alt79) {
             	case 1 :
-            	    // InternalOCLstdlib.g:8155:2: rule__LibIterationCS__Group_5__0
+            	    // InternalOCLstdlib.g:8157:2: rule__LibIterationCS__Group_5__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__LibIterationCS__Group_5__0();
@@ -25761,14 +25761,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__6"
-    // InternalOCLstdlib.g:8165:1: rule__LibIterationCS__Group__6 : rule__LibIterationCS__Group__6__Impl rule__LibIterationCS__Group__7 ;
+    // InternalOCLstdlib.g:8167:1: rule__LibIterationCS__Group__6 : rule__LibIterationCS__Group__6__Impl rule__LibIterationCS__Group__7 ;
     public final void rule__LibIterationCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8169:1: ( rule__LibIterationCS__Group__6__Impl rule__LibIterationCS__Group__7 )
-            // InternalOCLstdlib.g:8170:2: rule__LibIterationCS__Group__6__Impl rule__LibIterationCS__Group__7
+            // InternalOCLstdlib.g:8171:1: ( rule__LibIterationCS__Group__6__Impl rule__LibIterationCS__Group__7 )
+            // InternalOCLstdlib.g:8172:2: rule__LibIterationCS__Group__6__Impl rule__LibIterationCS__Group__7
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__LibIterationCS__Group__6__Impl();
@@ -25799,22 +25799,22 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__6__Impl"
-    // InternalOCLstdlib.g:8177:1: rule__LibIterationCS__Group__6__Impl : ( ( rule__LibIterationCS__Group_6__0 )? ) ;
+    // InternalOCLstdlib.g:8179:1: rule__LibIterationCS__Group__6__Impl : ( ( rule__LibIterationCS__Group_6__0 )? ) ;
     public final void rule__LibIterationCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8181:1: ( ( ( rule__LibIterationCS__Group_6__0 )? ) )
-            // InternalOCLstdlib.g:8182:1: ( ( rule__LibIterationCS__Group_6__0 )? )
+            // InternalOCLstdlib.g:8183:1: ( ( ( rule__LibIterationCS__Group_6__0 )? ) )
+            // InternalOCLstdlib.g:8184:1: ( ( rule__LibIterationCS__Group_6__0 )? )
             {
-            // InternalOCLstdlib.g:8182:1: ( ( rule__LibIterationCS__Group_6__0 )? )
-            // InternalOCLstdlib.g:8183:1: ( rule__LibIterationCS__Group_6__0 )?
+            // InternalOCLstdlib.g:8184:1: ( ( rule__LibIterationCS__Group_6__0 )? )
+            // InternalOCLstdlib.g:8185:1: ( rule__LibIterationCS__Group_6__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getGroup_6());
             }
-            // InternalOCLstdlib.g:8184:1: ( rule__LibIterationCS__Group_6__0 )?
+            // InternalOCLstdlib.g:8186:1: ( rule__LibIterationCS__Group_6__0 )?
             int alt80=2;
             int LA80_0 = input.LA(1);
 
@@ -25823,7 +25823,7 @@
             }
             switch (alt80) {
                 case 1 :
-                    // InternalOCLstdlib.g:8184:2: rule__LibIterationCS__Group_6__0
+                    // InternalOCLstdlib.g:8186:2: rule__LibIterationCS__Group_6__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibIterationCS__Group_6__0();
@@ -25861,14 +25861,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__7"
-    // InternalOCLstdlib.g:8194:1: rule__LibIterationCS__Group__7 : rule__LibIterationCS__Group__7__Impl rule__LibIterationCS__Group__8 ;
+    // InternalOCLstdlib.g:8196:1: rule__LibIterationCS__Group__7 : rule__LibIterationCS__Group__7__Impl rule__LibIterationCS__Group__8 ;
     public final void rule__LibIterationCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8198:1: ( rule__LibIterationCS__Group__7__Impl rule__LibIterationCS__Group__8 )
-            // InternalOCLstdlib.g:8199:2: rule__LibIterationCS__Group__7__Impl rule__LibIterationCS__Group__8
+            // InternalOCLstdlib.g:8200:1: ( rule__LibIterationCS__Group__7__Impl rule__LibIterationCS__Group__8 )
+            // InternalOCLstdlib.g:8201:2: rule__LibIterationCS__Group__7__Impl rule__LibIterationCS__Group__8
             {
             pushFollow(FollowSets000.FOLLOW_40);
             rule__LibIterationCS__Group__7__Impl();
@@ -25899,22 +25899,22 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__7__Impl"
-    // InternalOCLstdlib.g:8206:1: rule__LibIterationCS__Group__7__Impl : ( ( rule__LibIterationCS__Group_7__0 )? ) ;
+    // InternalOCLstdlib.g:8208:1: rule__LibIterationCS__Group__7__Impl : ( ( rule__LibIterationCS__Group_7__0 )? ) ;
     public final void rule__LibIterationCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8210:1: ( ( ( rule__LibIterationCS__Group_7__0 )? ) )
-            // InternalOCLstdlib.g:8211:1: ( ( rule__LibIterationCS__Group_7__0 )? )
+            // InternalOCLstdlib.g:8212:1: ( ( ( rule__LibIterationCS__Group_7__0 )? ) )
+            // InternalOCLstdlib.g:8213:1: ( ( rule__LibIterationCS__Group_7__0 )? )
             {
-            // InternalOCLstdlib.g:8211:1: ( ( rule__LibIterationCS__Group_7__0 )? )
-            // InternalOCLstdlib.g:8212:1: ( rule__LibIterationCS__Group_7__0 )?
+            // InternalOCLstdlib.g:8213:1: ( ( rule__LibIterationCS__Group_7__0 )? )
+            // InternalOCLstdlib.g:8214:1: ( rule__LibIterationCS__Group_7__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getGroup_7());
             }
-            // InternalOCLstdlib.g:8213:1: ( rule__LibIterationCS__Group_7__0 )?
+            // InternalOCLstdlib.g:8215:1: ( rule__LibIterationCS__Group_7__0 )?
             int alt81=2;
             int LA81_0 = input.LA(1);
 
@@ -25923,7 +25923,7 @@
             }
             switch (alt81) {
                 case 1 :
-                    // InternalOCLstdlib.g:8213:2: rule__LibIterationCS__Group_7__0
+                    // InternalOCLstdlib.g:8215:2: rule__LibIterationCS__Group_7__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibIterationCS__Group_7__0();
@@ -25961,14 +25961,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__8"
-    // InternalOCLstdlib.g:8223:1: rule__LibIterationCS__Group__8 : rule__LibIterationCS__Group__8__Impl rule__LibIterationCS__Group__9 ;
+    // InternalOCLstdlib.g:8225:1: rule__LibIterationCS__Group__8 : rule__LibIterationCS__Group__8__Impl rule__LibIterationCS__Group__9 ;
     public final void rule__LibIterationCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8227:1: ( rule__LibIterationCS__Group__8__Impl rule__LibIterationCS__Group__9 )
-            // InternalOCLstdlib.g:8228:2: rule__LibIterationCS__Group__8__Impl rule__LibIterationCS__Group__9
+            // InternalOCLstdlib.g:8229:1: ( rule__LibIterationCS__Group__8__Impl rule__LibIterationCS__Group__9 )
+            // InternalOCLstdlib.g:8230:2: rule__LibIterationCS__Group__8__Impl rule__LibIterationCS__Group__9
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__LibIterationCS__Group__8__Impl();
@@ -25999,17 +25999,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__8__Impl"
-    // InternalOCLstdlib.g:8235:1: rule__LibIterationCS__Group__8__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:8237:1: rule__LibIterationCS__Group__8__Impl : ( ')' ) ;
     public final void rule__LibIterationCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8239:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:8240:1: ( ')' )
+            // InternalOCLstdlib.g:8241:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:8242:1: ( ')' )
             {
-            // InternalOCLstdlib.g:8240:1: ( ')' )
-            // InternalOCLstdlib.g:8241:1: ')'
+            // InternalOCLstdlib.g:8242:1: ( ')' )
+            // InternalOCLstdlib.g:8243:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getRightParenthesisKeyword_8());
@@ -26040,14 +26040,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__9"
-    // InternalOCLstdlib.g:8254:1: rule__LibIterationCS__Group__9 : rule__LibIterationCS__Group__9__Impl rule__LibIterationCS__Group__10 ;
+    // InternalOCLstdlib.g:8256:1: rule__LibIterationCS__Group__9 : rule__LibIterationCS__Group__9__Impl rule__LibIterationCS__Group__10 ;
     public final void rule__LibIterationCS__Group__9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8258:1: ( rule__LibIterationCS__Group__9__Impl rule__LibIterationCS__Group__10 )
-            // InternalOCLstdlib.g:8259:2: rule__LibIterationCS__Group__9__Impl rule__LibIterationCS__Group__10
+            // InternalOCLstdlib.g:8260:1: ( rule__LibIterationCS__Group__9__Impl rule__LibIterationCS__Group__10 )
+            // InternalOCLstdlib.g:8261:2: rule__LibIterationCS__Group__9__Impl rule__LibIterationCS__Group__10
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__LibIterationCS__Group__9__Impl();
@@ -26078,17 +26078,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__9__Impl"
-    // InternalOCLstdlib.g:8266:1: rule__LibIterationCS__Group__9__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:8268:1: rule__LibIterationCS__Group__9__Impl : ( ':' ) ;
     public final void rule__LibIterationCS__Group__9__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8270:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:8271:1: ( ':' )
+            // InternalOCLstdlib.g:8272:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:8273:1: ( ':' )
             {
-            // InternalOCLstdlib.g:8271:1: ( ':' )
-            // InternalOCLstdlib.g:8272:1: ':'
+            // InternalOCLstdlib.g:8273:1: ( ':' )
+            // InternalOCLstdlib.g:8274:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getColonKeyword_9());
@@ -26119,14 +26119,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__10"
-    // InternalOCLstdlib.g:8285:1: rule__LibIterationCS__Group__10 : rule__LibIterationCS__Group__10__Impl rule__LibIterationCS__Group__11 ;
+    // InternalOCLstdlib.g:8287:1: rule__LibIterationCS__Group__10 : rule__LibIterationCS__Group__10__Impl rule__LibIterationCS__Group__11 ;
     public final void rule__LibIterationCS__Group__10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8289:1: ( rule__LibIterationCS__Group__10__Impl rule__LibIterationCS__Group__11 )
-            // InternalOCLstdlib.g:8290:2: rule__LibIterationCS__Group__10__Impl rule__LibIterationCS__Group__11
+            // InternalOCLstdlib.g:8291:1: ( rule__LibIterationCS__Group__10__Impl rule__LibIterationCS__Group__11 )
+            // InternalOCLstdlib.g:8292:2: rule__LibIterationCS__Group__10__Impl rule__LibIterationCS__Group__11
             {
             pushFollow(FollowSets000.FOLLOW_41);
             rule__LibIterationCS__Group__10__Impl();
@@ -26157,23 +26157,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__10__Impl"
-    // InternalOCLstdlib.g:8297:1: rule__LibIterationCS__Group__10__Impl : ( ( rule__LibIterationCS__OwnedTypeAssignment_10 ) ) ;
+    // InternalOCLstdlib.g:8299:1: rule__LibIterationCS__Group__10__Impl : ( ( rule__LibIterationCS__OwnedTypeAssignment_10 ) ) ;
     public final void rule__LibIterationCS__Group__10__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8301:1: ( ( ( rule__LibIterationCS__OwnedTypeAssignment_10 ) ) )
-            // InternalOCLstdlib.g:8302:1: ( ( rule__LibIterationCS__OwnedTypeAssignment_10 ) )
+            // InternalOCLstdlib.g:8303:1: ( ( ( rule__LibIterationCS__OwnedTypeAssignment_10 ) ) )
+            // InternalOCLstdlib.g:8304:1: ( ( rule__LibIterationCS__OwnedTypeAssignment_10 ) )
             {
-            // InternalOCLstdlib.g:8302:1: ( ( rule__LibIterationCS__OwnedTypeAssignment_10 ) )
-            // InternalOCLstdlib.g:8303:1: ( rule__LibIterationCS__OwnedTypeAssignment_10 )
+            // InternalOCLstdlib.g:8304:1: ( ( rule__LibIterationCS__OwnedTypeAssignment_10 ) )
+            // InternalOCLstdlib.g:8305:1: ( rule__LibIterationCS__OwnedTypeAssignment_10 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedTypeAssignment_10());
             }
-            // InternalOCLstdlib.g:8304:1: ( rule__LibIterationCS__OwnedTypeAssignment_10 )
-            // InternalOCLstdlib.g:8304:2: rule__LibIterationCS__OwnedTypeAssignment_10
+            // InternalOCLstdlib.g:8306:1: ( rule__LibIterationCS__OwnedTypeAssignment_10 )
+            // InternalOCLstdlib.g:8306:2: rule__LibIterationCS__OwnedTypeAssignment_10
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__OwnedTypeAssignment_10();
@@ -26208,14 +26208,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__11"
-    // InternalOCLstdlib.g:8314:1: rule__LibIterationCS__Group__11 : rule__LibIterationCS__Group__11__Impl rule__LibIterationCS__Group__12 ;
+    // InternalOCLstdlib.g:8316:1: rule__LibIterationCS__Group__11 : rule__LibIterationCS__Group__11__Impl rule__LibIterationCS__Group__12 ;
     public final void rule__LibIterationCS__Group__11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8318:1: ( rule__LibIterationCS__Group__11__Impl rule__LibIterationCS__Group__12 )
-            // InternalOCLstdlib.g:8319:2: rule__LibIterationCS__Group__11__Impl rule__LibIterationCS__Group__12
+            // InternalOCLstdlib.g:8320:1: ( rule__LibIterationCS__Group__11__Impl rule__LibIterationCS__Group__12 )
+            // InternalOCLstdlib.g:8321:2: rule__LibIterationCS__Group__11__Impl rule__LibIterationCS__Group__12
             {
             pushFollow(FollowSets000.FOLLOW_41);
             rule__LibIterationCS__Group__11__Impl();
@@ -26246,22 +26246,22 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__11__Impl"
-    // InternalOCLstdlib.g:8326:1: rule__LibIterationCS__Group__11__Impl : ( ( rule__LibIterationCS__IsInvalidatingAssignment_11 )? ) ;
+    // InternalOCLstdlib.g:8328:1: rule__LibIterationCS__Group__11__Impl : ( ( rule__LibIterationCS__IsInvalidatingAssignment_11 )? ) ;
     public final void rule__LibIterationCS__Group__11__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8330:1: ( ( ( rule__LibIterationCS__IsInvalidatingAssignment_11 )? ) )
-            // InternalOCLstdlib.g:8331:1: ( ( rule__LibIterationCS__IsInvalidatingAssignment_11 )? )
+            // InternalOCLstdlib.g:8332:1: ( ( ( rule__LibIterationCS__IsInvalidatingAssignment_11 )? ) )
+            // InternalOCLstdlib.g:8333:1: ( ( rule__LibIterationCS__IsInvalidatingAssignment_11 )? )
             {
-            // InternalOCLstdlib.g:8331:1: ( ( rule__LibIterationCS__IsInvalidatingAssignment_11 )? )
-            // InternalOCLstdlib.g:8332:1: ( rule__LibIterationCS__IsInvalidatingAssignment_11 )?
+            // InternalOCLstdlib.g:8333:1: ( ( rule__LibIterationCS__IsInvalidatingAssignment_11 )? )
+            // InternalOCLstdlib.g:8334:1: ( rule__LibIterationCS__IsInvalidatingAssignment_11 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getIsInvalidatingAssignment_11());
             }
-            // InternalOCLstdlib.g:8333:1: ( rule__LibIterationCS__IsInvalidatingAssignment_11 )?
+            // InternalOCLstdlib.g:8335:1: ( rule__LibIterationCS__IsInvalidatingAssignment_11 )?
             int alt82=2;
             int LA82_0 = input.LA(1);
 
@@ -26270,7 +26270,7 @@
             }
             switch (alt82) {
                 case 1 :
-                    // InternalOCLstdlib.g:8333:2: rule__LibIterationCS__IsInvalidatingAssignment_11
+                    // InternalOCLstdlib.g:8335:2: rule__LibIterationCS__IsInvalidatingAssignment_11
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibIterationCS__IsInvalidatingAssignment_11();
@@ -26308,14 +26308,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__12"
-    // InternalOCLstdlib.g:8343:1: rule__LibIterationCS__Group__12 : rule__LibIterationCS__Group__12__Impl rule__LibIterationCS__Group__13 ;
+    // InternalOCLstdlib.g:8345:1: rule__LibIterationCS__Group__12 : rule__LibIterationCS__Group__12__Impl rule__LibIterationCS__Group__13 ;
     public final void rule__LibIterationCS__Group__12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8347:1: ( rule__LibIterationCS__Group__12__Impl rule__LibIterationCS__Group__13 )
-            // InternalOCLstdlib.g:8348:2: rule__LibIterationCS__Group__12__Impl rule__LibIterationCS__Group__13
+            // InternalOCLstdlib.g:8349:1: ( rule__LibIterationCS__Group__12__Impl rule__LibIterationCS__Group__13 )
+            // InternalOCLstdlib.g:8350:2: rule__LibIterationCS__Group__12__Impl rule__LibIterationCS__Group__13
             {
             pushFollow(FollowSets000.FOLLOW_41);
             rule__LibIterationCS__Group__12__Impl();
@@ -26346,22 +26346,22 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__12__Impl"
-    // InternalOCLstdlib.g:8355:1: rule__LibIterationCS__Group__12__Impl : ( ( rule__LibIterationCS__IsValidatingAssignment_12 )? ) ;
+    // InternalOCLstdlib.g:8357:1: rule__LibIterationCS__Group__12__Impl : ( ( rule__LibIterationCS__IsValidatingAssignment_12 )? ) ;
     public final void rule__LibIterationCS__Group__12__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8359:1: ( ( ( rule__LibIterationCS__IsValidatingAssignment_12 )? ) )
-            // InternalOCLstdlib.g:8360:1: ( ( rule__LibIterationCS__IsValidatingAssignment_12 )? )
+            // InternalOCLstdlib.g:8361:1: ( ( ( rule__LibIterationCS__IsValidatingAssignment_12 )? ) )
+            // InternalOCLstdlib.g:8362:1: ( ( rule__LibIterationCS__IsValidatingAssignment_12 )? )
             {
-            // InternalOCLstdlib.g:8360:1: ( ( rule__LibIterationCS__IsValidatingAssignment_12 )? )
-            // InternalOCLstdlib.g:8361:1: ( rule__LibIterationCS__IsValidatingAssignment_12 )?
+            // InternalOCLstdlib.g:8362:1: ( ( rule__LibIterationCS__IsValidatingAssignment_12 )? )
+            // InternalOCLstdlib.g:8363:1: ( rule__LibIterationCS__IsValidatingAssignment_12 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getIsValidatingAssignment_12());
             }
-            // InternalOCLstdlib.g:8362:1: ( rule__LibIterationCS__IsValidatingAssignment_12 )?
+            // InternalOCLstdlib.g:8364:1: ( rule__LibIterationCS__IsValidatingAssignment_12 )?
             int alt83=2;
             int LA83_0 = input.LA(1);
 
@@ -26370,7 +26370,7 @@
             }
             switch (alt83) {
                 case 1 :
-                    // InternalOCLstdlib.g:8362:2: rule__LibIterationCS__IsValidatingAssignment_12
+                    // InternalOCLstdlib.g:8364:2: rule__LibIterationCS__IsValidatingAssignment_12
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibIterationCS__IsValidatingAssignment_12();
@@ -26408,14 +26408,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__13"
-    // InternalOCLstdlib.g:8372:1: rule__LibIterationCS__Group__13 : rule__LibIterationCS__Group__13__Impl rule__LibIterationCS__Group__14 ;
+    // InternalOCLstdlib.g:8374:1: rule__LibIterationCS__Group__13 : rule__LibIterationCS__Group__13__Impl rule__LibIterationCS__Group__14 ;
     public final void rule__LibIterationCS__Group__13() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8376:1: ( rule__LibIterationCS__Group__13__Impl rule__LibIterationCS__Group__14 )
-            // InternalOCLstdlib.g:8377:2: rule__LibIterationCS__Group__13__Impl rule__LibIterationCS__Group__14
+            // InternalOCLstdlib.g:8378:1: ( rule__LibIterationCS__Group__13__Impl rule__LibIterationCS__Group__14 )
+            // InternalOCLstdlib.g:8379:2: rule__LibIterationCS__Group__13__Impl rule__LibIterationCS__Group__14
             {
             pushFollow(FollowSets000.FOLLOW_41);
             rule__LibIterationCS__Group__13__Impl();
@@ -26446,22 +26446,22 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__13__Impl"
-    // InternalOCLstdlib.g:8384:1: rule__LibIterationCS__Group__13__Impl : ( ( rule__LibIterationCS__Group_13__0 )? ) ;
+    // InternalOCLstdlib.g:8386:1: rule__LibIterationCS__Group__13__Impl : ( ( rule__LibIterationCS__Group_13__0 )? ) ;
     public final void rule__LibIterationCS__Group__13__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8388:1: ( ( ( rule__LibIterationCS__Group_13__0 )? ) )
-            // InternalOCLstdlib.g:8389:1: ( ( rule__LibIterationCS__Group_13__0 )? )
+            // InternalOCLstdlib.g:8390:1: ( ( ( rule__LibIterationCS__Group_13__0 )? ) )
+            // InternalOCLstdlib.g:8391:1: ( ( rule__LibIterationCS__Group_13__0 )? )
             {
-            // InternalOCLstdlib.g:8389:1: ( ( rule__LibIterationCS__Group_13__0 )? )
-            // InternalOCLstdlib.g:8390:1: ( rule__LibIterationCS__Group_13__0 )?
+            // InternalOCLstdlib.g:8391:1: ( ( rule__LibIterationCS__Group_13__0 )? )
+            // InternalOCLstdlib.g:8392:1: ( rule__LibIterationCS__Group_13__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getGroup_13());
             }
-            // InternalOCLstdlib.g:8391:1: ( rule__LibIterationCS__Group_13__0 )?
+            // InternalOCLstdlib.g:8393:1: ( rule__LibIterationCS__Group_13__0 )?
             int alt84=2;
             int LA84_0 = input.LA(1);
 
@@ -26470,7 +26470,7 @@
             }
             switch (alt84) {
                 case 1 :
-                    // InternalOCLstdlib.g:8391:2: rule__LibIterationCS__Group_13__0
+                    // InternalOCLstdlib.g:8393:2: rule__LibIterationCS__Group_13__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibIterationCS__Group_13__0();
@@ -26508,14 +26508,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__14"
-    // InternalOCLstdlib.g:8401:1: rule__LibIterationCS__Group__14 : rule__LibIterationCS__Group__14__Impl ;
+    // InternalOCLstdlib.g:8403:1: rule__LibIterationCS__Group__14 : rule__LibIterationCS__Group__14__Impl ;
     public final void rule__LibIterationCS__Group__14() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8405:1: ( rule__LibIterationCS__Group__14__Impl )
-            // InternalOCLstdlib.g:8406:2: rule__LibIterationCS__Group__14__Impl
+            // InternalOCLstdlib.g:8407:1: ( rule__LibIterationCS__Group__14__Impl )
+            // InternalOCLstdlib.g:8408:2: rule__LibIterationCS__Group__14__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__Group__14__Impl();
@@ -26541,23 +26541,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group__14__Impl"
-    // InternalOCLstdlib.g:8412:1: rule__LibIterationCS__Group__14__Impl : ( ( rule__LibIterationCS__Alternatives_14 ) ) ;
+    // InternalOCLstdlib.g:8414:1: rule__LibIterationCS__Group__14__Impl : ( ( rule__LibIterationCS__Alternatives_14 ) ) ;
     public final void rule__LibIterationCS__Group__14__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8416:1: ( ( ( rule__LibIterationCS__Alternatives_14 ) ) )
-            // InternalOCLstdlib.g:8417:1: ( ( rule__LibIterationCS__Alternatives_14 ) )
+            // InternalOCLstdlib.g:8418:1: ( ( ( rule__LibIterationCS__Alternatives_14 ) ) )
+            // InternalOCLstdlib.g:8419:1: ( ( rule__LibIterationCS__Alternatives_14 ) )
             {
-            // InternalOCLstdlib.g:8417:1: ( ( rule__LibIterationCS__Alternatives_14 ) )
-            // InternalOCLstdlib.g:8418:1: ( rule__LibIterationCS__Alternatives_14 )
+            // InternalOCLstdlib.g:8419:1: ( ( rule__LibIterationCS__Alternatives_14 ) )
+            // InternalOCLstdlib.g:8420:1: ( rule__LibIterationCS__Alternatives_14 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getAlternatives_14());
             }
-            // InternalOCLstdlib.g:8419:1: ( rule__LibIterationCS__Alternatives_14 )
-            // InternalOCLstdlib.g:8419:2: rule__LibIterationCS__Alternatives_14
+            // InternalOCLstdlib.g:8421:1: ( rule__LibIterationCS__Alternatives_14 )
+            // InternalOCLstdlib.g:8421:2: rule__LibIterationCS__Alternatives_14
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__Alternatives_14();
@@ -26592,14 +26592,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_5__0"
-    // InternalOCLstdlib.g:8459:1: rule__LibIterationCS__Group_5__0 : rule__LibIterationCS__Group_5__0__Impl rule__LibIterationCS__Group_5__1 ;
+    // InternalOCLstdlib.g:8461:1: rule__LibIterationCS__Group_5__0 : rule__LibIterationCS__Group_5__0__Impl rule__LibIterationCS__Group_5__1 ;
     public final void rule__LibIterationCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8463:1: ( rule__LibIterationCS__Group_5__0__Impl rule__LibIterationCS__Group_5__1 )
-            // InternalOCLstdlib.g:8464:2: rule__LibIterationCS__Group_5__0__Impl rule__LibIterationCS__Group_5__1
+            // InternalOCLstdlib.g:8465:1: ( rule__LibIterationCS__Group_5__0__Impl rule__LibIterationCS__Group_5__1 )
+            // InternalOCLstdlib.g:8466:2: rule__LibIterationCS__Group_5__0__Impl rule__LibIterationCS__Group_5__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__LibIterationCS__Group_5__0__Impl();
@@ -26630,17 +26630,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_5__0__Impl"
-    // InternalOCLstdlib.g:8471:1: rule__LibIterationCS__Group_5__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:8473:1: rule__LibIterationCS__Group_5__0__Impl : ( ',' ) ;
     public final void rule__LibIterationCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8475:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:8476:1: ( ',' )
+            // InternalOCLstdlib.g:8477:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:8478:1: ( ',' )
             {
-            // InternalOCLstdlib.g:8476:1: ( ',' )
-            // InternalOCLstdlib.g:8477:1: ','
+            // InternalOCLstdlib.g:8478:1: ( ',' )
+            // InternalOCLstdlib.g:8479:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getCommaKeyword_5_0());
@@ -26671,14 +26671,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_5__1"
-    // InternalOCLstdlib.g:8490:1: rule__LibIterationCS__Group_5__1 : rule__LibIterationCS__Group_5__1__Impl ;
+    // InternalOCLstdlib.g:8492:1: rule__LibIterationCS__Group_5__1 : rule__LibIterationCS__Group_5__1__Impl ;
     public final void rule__LibIterationCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8494:1: ( rule__LibIterationCS__Group_5__1__Impl )
-            // InternalOCLstdlib.g:8495:2: rule__LibIterationCS__Group_5__1__Impl
+            // InternalOCLstdlib.g:8496:1: ( rule__LibIterationCS__Group_5__1__Impl )
+            // InternalOCLstdlib.g:8497:2: rule__LibIterationCS__Group_5__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__Group_5__1__Impl();
@@ -26704,23 +26704,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_5__1__Impl"
-    // InternalOCLstdlib.g:8501:1: rule__LibIterationCS__Group_5__1__Impl : ( ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 ) ) ;
+    // InternalOCLstdlib.g:8503:1: rule__LibIterationCS__Group_5__1__Impl : ( ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 ) ) ;
     public final void rule__LibIterationCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8505:1: ( ( ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 ) ) )
-            // InternalOCLstdlib.g:8506:1: ( ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 ) )
+            // InternalOCLstdlib.g:8507:1: ( ( ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 ) ) )
+            // InternalOCLstdlib.g:8508:1: ( ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 ) )
             {
-            // InternalOCLstdlib.g:8506:1: ( ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 ) )
-            // InternalOCLstdlib.g:8507:1: ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 )
+            // InternalOCLstdlib.g:8508:1: ( ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 ) )
+            // InternalOCLstdlib.g:8509:1: ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsAssignment_5_1());
             }
-            // InternalOCLstdlib.g:8508:1: ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 )
-            // InternalOCLstdlib.g:8508:2: rule__LibIterationCS__OwnedIteratorsAssignment_5_1
+            // InternalOCLstdlib.g:8510:1: ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 )
+            // InternalOCLstdlib.g:8510:2: rule__LibIterationCS__OwnedIteratorsAssignment_5_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__OwnedIteratorsAssignment_5_1();
@@ -26755,14 +26755,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_6__0"
-    // InternalOCLstdlib.g:8522:1: rule__LibIterationCS__Group_6__0 : rule__LibIterationCS__Group_6__0__Impl rule__LibIterationCS__Group_6__1 ;
+    // InternalOCLstdlib.g:8524:1: rule__LibIterationCS__Group_6__0 : rule__LibIterationCS__Group_6__0__Impl rule__LibIterationCS__Group_6__1 ;
     public final void rule__LibIterationCS__Group_6__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8526:1: ( rule__LibIterationCS__Group_6__0__Impl rule__LibIterationCS__Group_6__1 )
-            // InternalOCLstdlib.g:8527:2: rule__LibIterationCS__Group_6__0__Impl rule__LibIterationCS__Group_6__1
+            // InternalOCLstdlib.g:8528:1: ( rule__LibIterationCS__Group_6__0__Impl rule__LibIterationCS__Group_6__1 )
+            // InternalOCLstdlib.g:8529:2: rule__LibIterationCS__Group_6__0__Impl rule__LibIterationCS__Group_6__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__LibIterationCS__Group_6__0__Impl();
@@ -26793,17 +26793,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_6__0__Impl"
-    // InternalOCLstdlib.g:8534:1: rule__LibIterationCS__Group_6__0__Impl : ( ';' ) ;
+    // InternalOCLstdlib.g:8536:1: rule__LibIterationCS__Group_6__0__Impl : ( ';' ) ;
     public final void rule__LibIterationCS__Group_6__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8538:1: ( ( ';' ) )
-            // InternalOCLstdlib.g:8539:1: ( ';' )
+            // InternalOCLstdlib.g:8540:1: ( ( ';' ) )
+            // InternalOCLstdlib.g:8541:1: ( ';' )
             {
-            // InternalOCLstdlib.g:8539:1: ( ';' )
-            // InternalOCLstdlib.g:8540:1: ';'
+            // InternalOCLstdlib.g:8541:1: ( ';' )
+            // InternalOCLstdlib.g:8542:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_6_0());
@@ -26834,14 +26834,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_6__1"
-    // InternalOCLstdlib.g:8553:1: rule__LibIterationCS__Group_6__1 : rule__LibIterationCS__Group_6__1__Impl rule__LibIterationCS__Group_6__2 ;
+    // InternalOCLstdlib.g:8555:1: rule__LibIterationCS__Group_6__1 : rule__LibIterationCS__Group_6__1__Impl rule__LibIterationCS__Group_6__2 ;
     public final void rule__LibIterationCS__Group_6__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8557:1: ( rule__LibIterationCS__Group_6__1__Impl rule__LibIterationCS__Group_6__2 )
-            // InternalOCLstdlib.g:8558:2: rule__LibIterationCS__Group_6__1__Impl rule__LibIterationCS__Group_6__2
+            // InternalOCLstdlib.g:8559:1: ( rule__LibIterationCS__Group_6__1__Impl rule__LibIterationCS__Group_6__2 )
+            // InternalOCLstdlib.g:8560:2: rule__LibIterationCS__Group_6__1__Impl rule__LibIterationCS__Group_6__2
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__LibIterationCS__Group_6__1__Impl();
@@ -26872,23 +26872,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_6__1__Impl"
-    // InternalOCLstdlib.g:8565:1: rule__LibIterationCS__Group_6__1__Impl : ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 ) ) ;
+    // InternalOCLstdlib.g:8567:1: rule__LibIterationCS__Group_6__1__Impl : ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 ) ) ;
     public final void rule__LibIterationCS__Group_6__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8569:1: ( ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 ) ) )
-            // InternalOCLstdlib.g:8570:1: ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 ) )
+            // InternalOCLstdlib.g:8571:1: ( ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 ) ) )
+            // InternalOCLstdlib.g:8572:1: ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 ) )
             {
-            // InternalOCLstdlib.g:8570:1: ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 ) )
-            // InternalOCLstdlib.g:8571:1: ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 )
+            // InternalOCLstdlib.g:8572:1: ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 ) )
+            // InternalOCLstdlib.g:8573:1: ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAssignment_6_1());
             }
-            // InternalOCLstdlib.g:8572:1: ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 )
-            // InternalOCLstdlib.g:8572:2: rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1
+            // InternalOCLstdlib.g:8574:1: ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 )
+            // InternalOCLstdlib.g:8574:2: rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1();
@@ -26923,14 +26923,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_6__2"
-    // InternalOCLstdlib.g:8582:1: rule__LibIterationCS__Group_6__2 : rule__LibIterationCS__Group_6__2__Impl ;
+    // InternalOCLstdlib.g:8584:1: rule__LibIterationCS__Group_6__2 : rule__LibIterationCS__Group_6__2__Impl ;
     public final void rule__LibIterationCS__Group_6__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8586:1: ( rule__LibIterationCS__Group_6__2__Impl )
-            // InternalOCLstdlib.g:8587:2: rule__LibIterationCS__Group_6__2__Impl
+            // InternalOCLstdlib.g:8588:1: ( rule__LibIterationCS__Group_6__2__Impl )
+            // InternalOCLstdlib.g:8589:2: rule__LibIterationCS__Group_6__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__Group_6__2__Impl();
@@ -26956,22 +26956,22 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_6__2__Impl"
-    // InternalOCLstdlib.g:8593:1: rule__LibIterationCS__Group_6__2__Impl : ( ( rule__LibIterationCS__Group_6_2__0 )* ) ;
+    // InternalOCLstdlib.g:8595:1: rule__LibIterationCS__Group_6__2__Impl : ( ( rule__LibIterationCS__Group_6_2__0 )* ) ;
     public final void rule__LibIterationCS__Group_6__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8597:1: ( ( ( rule__LibIterationCS__Group_6_2__0 )* ) )
-            // InternalOCLstdlib.g:8598:1: ( ( rule__LibIterationCS__Group_6_2__0 )* )
+            // InternalOCLstdlib.g:8599:1: ( ( ( rule__LibIterationCS__Group_6_2__0 )* ) )
+            // InternalOCLstdlib.g:8600:1: ( ( rule__LibIterationCS__Group_6_2__0 )* )
             {
-            // InternalOCLstdlib.g:8598:1: ( ( rule__LibIterationCS__Group_6_2__0 )* )
-            // InternalOCLstdlib.g:8599:1: ( rule__LibIterationCS__Group_6_2__0 )*
+            // InternalOCLstdlib.g:8600:1: ( ( rule__LibIterationCS__Group_6_2__0 )* )
+            // InternalOCLstdlib.g:8601:1: ( rule__LibIterationCS__Group_6_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getGroup_6_2());
             }
-            // InternalOCLstdlib.g:8600:1: ( rule__LibIterationCS__Group_6_2__0 )*
+            // InternalOCLstdlib.g:8602:1: ( rule__LibIterationCS__Group_6_2__0 )*
             loop85:
             do {
                 int alt85=2;
@@ -26984,7 +26984,7 @@
 
                 switch (alt85) {
             	case 1 :
-            	    // InternalOCLstdlib.g:8600:2: rule__LibIterationCS__Group_6_2__0
+            	    // InternalOCLstdlib.g:8602:2: rule__LibIterationCS__Group_6_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__LibIterationCS__Group_6_2__0();
@@ -27025,14 +27025,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_6_2__0"
-    // InternalOCLstdlib.g:8616:1: rule__LibIterationCS__Group_6_2__0 : rule__LibIterationCS__Group_6_2__0__Impl rule__LibIterationCS__Group_6_2__1 ;
+    // InternalOCLstdlib.g:8618:1: rule__LibIterationCS__Group_6_2__0 : rule__LibIterationCS__Group_6_2__0__Impl rule__LibIterationCS__Group_6_2__1 ;
     public final void rule__LibIterationCS__Group_6_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8620:1: ( rule__LibIterationCS__Group_6_2__0__Impl rule__LibIterationCS__Group_6_2__1 )
-            // InternalOCLstdlib.g:8621:2: rule__LibIterationCS__Group_6_2__0__Impl rule__LibIterationCS__Group_6_2__1
+            // InternalOCLstdlib.g:8622:1: ( rule__LibIterationCS__Group_6_2__0__Impl rule__LibIterationCS__Group_6_2__1 )
+            // InternalOCLstdlib.g:8623:2: rule__LibIterationCS__Group_6_2__0__Impl rule__LibIterationCS__Group_6_2__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__LibIterationCS__Group_6_2__0__Impl();
@@ -27063,17 +27063,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_6_2__0__Impl"
-    // InternalOCLstdlib.g:8628:1: rule__LibIterationCS__Group_6_2__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:8630:1: rule__LibIterationCS__Group_6_2__0__Impl : ( ',' ) ;
     public final void rule__LibIterationCS__Group_6_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8632:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:8633:1: ( ',' )
+            // InternalOCLstdlib.g:8634:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:8635:1: ( ',' )
             {
-            // InternalOCLstdlib.g:8633:1: ( ',' )
-            // InternalOCLstdlib.g:8634:1: ','
+            // InternalOCLstdlib.g:8635:1: ( ',' )
+            // InternalOCLstdlib.g:8636:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getCommaKeyword_6_2_0());
@@ -27104,14 +27104,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_6_2__1"
-    // InternalOCLstdlib.g:8647:1: rule__LibIterationCS__Group_6_2__1 : rule__LibIterationCS__Group_6_2__1__Impl ;
+    // InternalOCLstdlib.g:8649:1: rule__LibIterationCS__Group_6_2__1 : rule__LibIterationCS__Group_6_2__1__Impl ;
     public final void rule__LibIterationCS__Group_6_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8651:1: ( rule__LibIterationCS__Group_6_2__1__Impl )
-            // InternalOCLstdlib.g:8652:2: rule__LibIterationCS__Group_6_2__1__Impl
+            // InternalOCLstdlib.g:8653:1: ( rule__LibIterationCS__Group_6_2__1__Impl )
+            // InternalOCLstdlib.g:8654:2: rule__LibIterationCS__Group_6_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__Group_6_2__1__Impl();
@@ -27137,23 +27137,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_6_2__1__Impl"
-    // InternalOCLstdlib.g:8658:1: rule__LibIterationCS__Group_6_2__1__Impl : ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 ) ) ;
+    // InternalOCLstdlib.g:8660:1: rule__LibIterationCS__Group_6_2__1__Impl : ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 ) ) ;
     public final void rule__LibIterationCS__Group_6_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8662:1: ( ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 ) ) )
-            // InternalOCLstdlib.g:8663:1: ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 ) )
+            // InternalOCLstdlib.g:8664:1: ( ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 ) ) )
+            // InternalOCLstdlib.g:8665:1: ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 ) )
             {
-            // InternalOCLstdlib.g:8663:1: ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 ) )
-            // InternalOCLstdlib.g:8664:1: ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 )
+            // InternalOCLstdlib.g:8665:1: ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 ) )
+            // InternalOCLstdlib.g:8666:1: ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAssignment_6_2_1());
             }
-            // InternalOCLstdlib.g:8665:1: ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 )
-            // InternalOCLstdlib.g:8665:2: rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1
+            // InternalOCLstdlib.g:8667:1: ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 )
+            // InternalOCLstdlib.g:8667:2: rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1();
@@ -27188,14 +27188,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_7__0"
-    // InternalOCLstdlib.g:8679:1: rule__LibIterationCS__Group_7__0 : rule__LibIterationCS__Group_7__0__Impl rule__LibIterationCS__Group_7__1 ;
+    // InternalOCLstdlib.g:8681:1: rule__LibIterationCS__Group_7__0 : rule__LibIterationCS__Group_7__0__Impl rule__LibIterationCS__Group_7__1 ;
     public final void rule__LibIterationCS__Group_7__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8683:1: ( rule__LibIterationCS__Group_7__0__Impl rule__LibIterationCS__Group_7__1 )
-            // InternalOCLstdlib.g:8684:2: rule__LibIterationCS__Group_7__0__Impl rule__LibIterationCS__Group_7__1
+            // InternalOCLstdlib.g:8685:1: ( rule__LibIterationCS__Group_7__0__Impl rule__LibIterationCS__Group_7__1 )
+            // InternalOCLstdlib.g:8686:2: rule__LibIterationCS__Group_7__0__Impl rule__LibIterationCS__Group_7__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__LibIterationCS__Group_7__0__Impl();
@@ -27226,17 +27226,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_7__0__Impl"
-    // InternalOCLstdlib.g:8691:1: rule__LibIterationCS__Group_7__0__Impl : ( '|' ) ;
+    // InternalOCLstdlib.g:8693:1: rule__LibIterationCS__Group_7__0__Impl : ( '|' ) ;
     public final void rule__LibIterationCS__Group_7__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8695:1: ( ( '|' ) )
-            // InternalOCLstdlib.g:8696:1: ( '|' )
+            // InternalOCLstdlib.g:8697:1: ( ( '|' ) )
+            // InternalOCLstdlib.g:8698:1: ( '|' )
             {
-            // InternalOCLstdlib.g:8696:1: ( '|' )
-            // InternalOCLstdlib.g:8697:1: '|'
+            // InternalOCLstdlib.g:8698:1: ( '|' )
+            // InternalOCLstdlib.g:8699:1: '|'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getVerticalLineKeyword_7_0());
@@ -27267,14 +27267,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_7__1"
-    // InternalOCLstdlib.g:8710:1: rule__LibIterationCS__Group_7__1 : rule__LibIterationCS__Group_7__1__Impl rule__LibIterationCS__Group_7__2 ;
+    // InternalOCLstdlib.g:8712:1: rule__LibIterationCS__Group_7__1 : rule__LibIterationCS__Group_7__1__Impl rule__LibIterationCS__Group_7__2 ;
     public final void rule__LibIterationCS__Group_7__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8714:1: ( rule__LibIterationCS__Group_7__1__Impl rule__LibIterationCS__Group_7__2 )
-            // InternalOCLstdlib.g:8715:2: rule__LibIterationCS__Group_7__1__Impl rule__LibIterationCS__Group_7__2
+            // InternalOCLstdlib.g:8716:1: ( rule__LibIterationCS__Group_7__1__Impl rule__LibIterationCS__Group_7__2 )
+            // InternalOCLstdlib.g:8717:2: rule__LibIterationCS__Group_7__1__Impl rule__LibIterationCS__Group_7__2
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__LibIterationCS__Group_7__1__Impl();
@@ -27305,23 +27305,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_7__1__Impl"
-    // InternalOCLstdlib.g:8722:1: rule__LibIterationCS__Group_7__1__Impl : ( ( rule__LibIterationCS__OwnedParametersAssignment_7_1 ) ) ;
+    // InternalOCLstdlib.g:8724:1: rule__LibIterationCS__Group_7__1__Impl : ( ( rule__LibIterationCS__OwnedParametersAssignment_7_1 ) ) ;
     public final void rule__LibIterationCS__Group_7__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8726:1: ( ( ( rule__LibIterationCS__OwnedParametersAssignment_7_1 ) ) )
-            // InternalOCLstdlib.g:8727:1: ( ( rule__LibIterationCS__OwnedParametersAssignment_7_1 ) )
+            // InternalOCLstdlib.g:8728:1: ( ( ( rule__LibIterationCS__OwnedParametersAssignment_7_1 ) ) )
+            // InternalOCLstdlib.g:8729:1: ( ( rule__LibIterationCS__OwnedParametersAssignment_7_1 ) )
             {
-            // InternalOCLstdlib.g:8727:1: ( ( rule__LibIterationCS__OwnedParametersAssignment_7_1 ) )
-            // InternalOCLstdlib.g:8728:1: ( rule__LibIterationCS__OwnedParametersAssignment_7_1 )
+            // InternalOCLstdlib.g:8729:1: ( ( rule__LibIterationCS__OwnedParametersAssignment_7_1 ) )
+            // InternalOCLstdlib.g:8730:1: ( rule__LibIterationCS__OwnedParametersAssignment_7_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedParametersAssignment_7_1());
             }
-            // InternalOCLstdlib.g:8729:1: ( rule__LibIterationCS__OwnedParametersAssignment_7_1 )
-            // InternalOCLstdlib.g:8729:2: rule__LibIterationCS__OwnedParametersAssignment_7_1
+            // InternalOCLstdlib.g:8731:1: ( rule__LibIterationCS__OwnedParametersAssignment_7_1 )
+            // InternalOCLstdlib.g:8731:2: rule__LibIterationCS__OwnedParametersAssignment_7_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__OwnedParametersAssignment_7_1();
@@ -27356,14 +27356,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_7__2"
-    // InternalOCLstdlib.g:8739:1: rule__LibIterationCS__Group_7__2 : rule__LibIterationCS__Group_7__2__Impl ;
+    // InternalOCLstdlib.g:8741:1: rule__LibIterationCS__Group_7__2 : rule__LibIterationCS__Group_7__2__Impl ;
     public final void rule__LibIterationCS__Group_7__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8743:1: ( rule__LibIterationCS__Group_7__2__Impl )
-            // InternalOCLstdlib.g:8744:2: rule__LibIterationCS__Group_7__2__Impl
+            // InternalOCLstdlib.g:8745:1: ( rule__LibIterationCS__Group_7__2__Impl )
+            // InternalOCLstdlib.g:8746:2: rule__LibIterationCS__Group_7__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__Group_7__2__Impl();
@@ -27389,22 +27389,22 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_7__2__Impl"
-    // InternalOCLstdlib.g:8750:1: rule__LibIterationCS__Group_7__2__Impl : ( ( rule__LibIterationCS__Group_7_2__0 )* ) ;
+    // InternalOCLstdlib.g:8752:1: rule__LibIterationCS__Group_7__2__Impl : ( ( rule__LibIterationCS__Group_7_2__0 )* ) ;
     public final void rule__LibIterationCS__Group_7__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8754:1: ( ( ( rule__LibIterationCS__Group_7_2__0 )* ) )
-            // InternalOCLstdlib.g:8755:1: ( ( rule__LibIterationCS__Group_7_2__0 )* )
+            // InternalOCLstdlib.g:8756:1: ( ( ( rule__LibIterationCS__Group_7_2__0 )* ) )
+            // InternalOCLstdlib.g:8757:1: ( ( rule__LibIterationCS__Group_7_2__0 )* )
             {
-            // InternalOCLstdlib.g:8755:1: ( ( rule__LibIterationCS__Group_7_2__0 )* )
-            // InternalOCLstdlib.g:8756:1: ( rule__LibIterationCS__Group_7_2__0 )*
+            // InternalOCLstdlib.g:8757:1: ( ( rule__LibIterationCS__Group_7_2__0 )* )
+            // InternalOCLstdlib.g:8758:1: ( rule__LibIterationCS__Group_7_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getGroup_7_2());
             }
-            // InternalOCLstdlib.g:8757:1: ( rule__LibIterationCS__Group_7_2__0 )*
+            // InternalOCLstdlib.g:8759:1: ( rule__LibIterationCS__Group_7_2__0 )*
             loop86:
             do {
                 int alt86=2;
@@ -27417,7 +27417,7 @@
 
                 switch (alt86) {
             	case 1 :
-            	    // InternalOCLstdlib.g:8757:2: rule__LibIterationCS__Group_7_2__0
+            	    // InternalOCLstdlib.g:8759:2: rule__LibIterationCS__Group_7_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__LibIterationCS__Group_7_2__0();
@@ -27458,14 +27458,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_7_2__0"
-    // InternalOCLstdlib.g:8773:1: rule__LibIterationCS__Group_7_2__0 : rule__LibIterationCS__Group_7_2__0__Impl rule__LibIterationCS__Group_7_2__1 ;
+    // InternalOCLstdlib.g:8775:1: rule__LibIterationCS__Group_7_2__0 : rule__LibIterationCS__Group_7_2__0__Impl rule__LibIterationCS__Group_7_2__1 ;
     public final void rule__LibIterationCS__Group_7_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8777:1: ( rule__LibIterationCS__Group_7_2__0__Impl rule__LibIterationCS__Group_7_2__1 )
-            // InternalOCLstdlib.g:8778:2: rule__LibIterationCS__Group_7_2__0__Impl rule__LibIterationCS__Group_7_2__1
+            // InternalOCLstdlib.g:8779:1: ( rule__LibIterationCS__Group_7_2__0__Impl rule__LibIterationCS__Group_7_2__1 )
+            // InternalOCLstdlib.g:8780:2: rule__LibIterationCS__Group_7_2__0__Impl rule__LibIterationCS__Group_7_2__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__LibIterationCS__Group_7_2__0__Impl();
@@ -27496,17 +27496,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_7_2__0__Impl"
-    // InternalOCLstdlib.g:8785:1: rule__LibIterationCS__Group_7_2__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:8787:1: rule__LibIterationCS__Group_7_2__0__Impl : ( ',' ) ;
     public final void rule__LibIterationCS__Group_7_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8789:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:8790:1: ( ',' )
+            // InternalOCLstdlib.g:8791:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:8792:1: ( ',' )
             {
-            // InternalOCLstdlib.g:8790:1: ( ',' )
-            // InternalOCLstdlib.g:8791:1: ','
+            // InternalOCLstdlib.g:8792:1: ( ',' )
+            // InternalOCLstdlib.g:8793:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getCommaKeyword_7_2_0());
@@ -27537,14 +27537,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_7_2__1"
-    // InternalOCLstdlib.g:8804:1: rule__LibIterationCS__Group_7_2__1 : rule__LibIterationCS__Group_7_2__1__Impl ;
+    // InternalOCLstdlib.g:8806:1: rule__LibIterationCS__Group_7_2__1 : rule__LibIterationCS__Group_7_2__1__Impl ;
     public final void rule__LibIterationCS__Group_7_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8808:1: ( rule__LibIterationCS__Group_7_2__1__Impl )
-            // InternalOCLstdlib.g:8809:2: rule__LibIterationCS__Group_7_2__1__Impl
+            // InternalOCLstdlib.g:8810:1: ( rule__LibIterationCS__Group_7_2__1__Impl )
+            // InternalOCLstdlib.g:8811:2: rule__LibIterationCS__Group_7_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__Group_7_2__1__Impl();
@@ -27570,23 +27570,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_7_2__1__Impl"
-    // InternalOCLstdlib.g:8815:1: rule__LibIterationCS__Group_7_2__1__Impl : ( ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 ) ) ;
+    // InternalOCLstdlib.g:8817:1: rule__LibIterationCS__Group_7_2__1__Impl : ( ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 ) ) ;
     public final void rule__LibIterationCS__Group_7_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8819:1: ( ( ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 ) ) )
-            // InternalOCLstdlib.g:8820:1: ( ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 ) )
+            // InternalOCLstdlib.g:8821:1: ( ( ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 ) ) )
+            // InternalOCLstdlib.g:8822:1: ( ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 ) )
             {
-            // InternalOCLstdlib.g:8820:1: ( ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 ) )
-            // InternalOCLstdlib.g:8821:1: ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 )
+            // InternalOCLstdlib.g:8822:1: ( ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 ) )
+            // InternalOCLstdlib.g:8823:1: ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedParametersAssignment_7_2_1());
             }
-            // InternalOCLstdlib.g:8822:1: ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 )
-            // InternalOCLstdlib.g:8822:2: rule__LibIterationCS__OwnedParametersAssignment_7_2_1
+            // InternalOCLstdlib.g:8824:1: ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 )
+            // InternalOCLstdlib.g:8824:2: rule__LibIterationCS__OwnedParametersAssignment_7_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__OwnedParametersAssignment_7_2_1();
@@ -27621,14 +27621,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_13__0"
-    // InternalOCLstdlib.g:8836:1: rule__LibIterationCS__Group_13__0 : rule__LibIterationCS__Group_13__0__Impl rule__LibIterationCS__Group_13__1 ;
+    // InternalOCLstdlib.g:8838:1: rule__LibIterationCS__Group_13__0 : rule__LibIterationCS__Group_13__0__Impl rule__LibIterationCS__Group_13__1 ;
     public final void rule__LibIterationCS__Group_13__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8840:1: ( rule__LibIterationCS__Group_13__0__Impl rule__LibIterationCS__Group_13__1 )
-            // InternalOCLstdlib.g:8841:2: rule__LibIterationCS__Group_13__0__Impl rule__LibIterationCS__Group_13__1
+            // InternalOCLstdlib.g:8842:1: ( rule__LibIterationCS__Group_13__0__Impl rule__LibIterationCS__Group_13__1 )
+            // InternalOCLstdlib.g:8843:2: rule__LibIterationCS__Group_13__0__Impl rule__LibIterationCS__Group_13__1
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__LibIterationCS__Group_13__0__Impl();
@@ -27659,17 +27659,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_13__0__Impl"
-    // InternalOCLstdlib.g:8848:1: rule__LibIterationCS__Group_13__0__Impl : ( '=>' ) ;
+    // InternalOCLstdlib.g:8850:1: rule__LibIterationCS__Group_13__0__Impl : ( '=>' ) ;
     public final void rule__LibIterationCS__Group_13__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8852:1: ( ( '=>' ) )
-            // InternalOCLstdlib.g:8853:1: ( '=>' )
+            // InternalOCLstdlib.g:8854:1: ( ( '=>' ) )
+            // InternalOCLstdlib.g:8855:1: ( '=>' )
             {
-            // InternalOCLstdlib.g:8853:1: ( '=>' )
-            // InternalOCLstdlib.g:8854:1: '=>'
+            // InternalOCLstdlib.g:8855:1: ( '=>' )
+            // InternalOCLstdlib.g:8856:1: '=>'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getEqualsSignGreaterThanSignKeyword_13_0());
@@ -27700,14 +27700,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_13__1"
-    // InternalOCLstdlib.g:8867:1: rule__LibIterationCS__Group_13__1 : rule__LibIterationCS__Group_13__1__Impl ;
+    // InternalOCLstdlib.g:8869:1: rule__LibIterationCS__Group_13__1 : rule__LibIterationCS__Group_13__1__Impl ;
     public final void rule__LibIterationCS__Group_13__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8871:1: ( rule__LibIterationCS__Group_13__1__Impl )
-            // InternalOCLstdlib.g:8872:2: rule__LibIterationCS__Group_13__1__Impl
+            // InternalOCLstdlib.g:8873:1: ( rule__LibIterationCS__Group_13__1__Impl )
+            // InternalOCLstdlib.g:8874:2: rule__LibIterationCS__Group_13__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__Group_13__1__Impl();
@@ -27733,23 +27733,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_13__1__Impl"
-    // InternalOCLstdlib.g:8878:1: rule__LibIterationCS__Group_13__1__Impl : ( ( rule__LibIterationCS__ImplementationAssignment_13_1 ) ) ;
+    // InternalOCLstdlib.g:8880:1: rule__LibIterationCS__Group_13__1__Impl : ( ( rule__LibIterationCS__ImplementationAssignment_13_1 ) ) ;
     public final void rule__LibIterationCS__Group_13__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8882:1: ( ( ( rule__LibIterationCS__ImplementationAssignment_13_1 ) ) )
-            // InternalOCLstdlib.g:8883:1: ( ( rule__LibIterationCS__ImplementationAssignment_13_1 ) )
+            // InternalOCLstdlib.g:8884:1: ( ( ( rule__LibIterationCS__ImplementationAssignment_13_1 ) ) )
+            // InternalOCLstdlib.g:8885:1: ( ( rule__LibIterationCS__ImplementationAssignment_13_1 ) )
             {
-            // InternalOCLstdlib.g:8883:1: ( ( rule__LibIterationCS__ImplementationAssignment_13_1 ) )
-            // InternalOCLstdlib.g:8884:1: ( rule__LibIterationCS__ImplementationAssignment_13_1 )
+            // InternalOCLstdlib.g:8885:1: ( ( rule__LibIterationCS__ImplementationAssignment_13_1 ) )
+            // InternalOCLstdlib.g:8886:1: ( rule__LibIterationCS__ImplementationAssignment_13_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getImplementationAssignment_13_1());
             }
-            // InternalOCLstdlib.g:8885:1: ( rule__LibIterationCS__ImplementationAssignment_13_1 )
-            // InternalOCLstdlib.g:8885:2: rule__LibIterationCS__ImplementationAssignment_13_1
+            // InternalOCLstdlib.g:8887:1: ( rule__LibIterationCS__ImplementationAssignment_13_1 )
+            // InternalOCLstdlib.g:8887:2: rule__LibIterationCS__ImplementationAssignment_13_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__ImplementationAssignment_13_1();
@@ -27784,14 +27784,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_14_0__0"
-    // InternalOCLstdlib.g:8899:1: rule__LibIterationCS__Group_14_0__0 : rule__LibIterationCS__Group_14_0__0__Impl rule__LibIterationCS__Group_14_0__1 ;
+    // InternalOCLstdlib.g:8901:1: rule__LibIterationCS__Group_14_0__0 : rule__LibIterationCS__Group_14_0__0__Impl rule__LibIterationCS__Group_14_0__1 ;
     public final void rule__LibIterationCS__Group_14_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8903:1: ( rule__LibIterationCS__Group_14_0__0__Impl rule__LibIterationCS__Group_14_0__1 )
-            // InternalOCLstdlib.g:8904:2: rule__LibIterationCS__Group_14_0__0__Impl rule__LibIterationCS__Group_14_0__1
+            // InternalOCLstdlib.g:8905:1: ( rule__LibIterationCS__Group_14_0__0__Impl rule__LibIterationCS__Group_14_0__1 )
+            // InternalOCLstdlib.g:8906:2: rule__LibIterationCS__Group_14_0__0__Impl rule__LibIterationCS__Group_14_0__1
             {
             pushFollow(FollowSets000.FOLLOW_37);
             rule__LibIterationCS__Group_14_0__0__Impl();
@@ -27822,17 +27822,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_14_0__0__Impl"
-    // InternalOCLstdlib.g:8911:1: rule__LibIterationCS__Group_14_0__0__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:8913:1: rule__LibIterationCS__Group_14_0__0__Impl : ( '{' ) ;
     public final void rule__LibIterationCS__Group_14_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8915:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:8916:1: ( '{' )
+            // InternalOCLstdlib.g:8917:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:8918:1: ( '{' )
             {
-            // InternalOCLstdlib.g:8916:1: ( '{' )
-            // InternalOCLstdlib.g:8917:1: '{'
+            // InternalOCLstdlib.g:8918:1: ( '{' )
+            // InternalOCLstdlib.g:8919:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getLeftCurlyBracketKeyword_14_0_0());
@@ -27863,14 +27863,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_14_0__1"
-    // InternalOCLstdlib.g:8930:1: rule__LibIterationCS__Group_14_0__1 : rule__LibIterationCS__Group_14_0__1__Impl rule__LibIterationCS__Group_14_0__2 ;
+    // InternalOCLstdlib.g:8932:1: rule__LibIterationCS__Group_14_0__1 : rule__LibIterationCS__Group_14_0__1__Impl rule__LibIterationCS__Group_14_0__2 ;
     public final void rule__LibIterationCS__Group_14_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8934:1: ( rule__LibIterationCS__Group_14_0__1__Impl rule__LibIterationCS__Group_14_0__2 )
-            // InternalOCLstdlib.g:8935:2: rule__LibIterationCS__Group_14_0__1__Impl rule__LibIterationCS__Group_14_0__2
+            // InternalOCLstdlib.g:8936:1: ( rule__LibIterationCS__Group_14_0__1__Impl rule__LibIterationCS__Group_14_0__2 )
+            // InternalOCLstdlib.g:8937:2: rule__LibIterationCS__Group_14_0__1__Impl rule__LibIterationCS__Group_14_0__2
             {
             pushFollow(FollowSets000.FOLLOW_37);
             rule__LibIterationCS__Group_14_0__1__Impl();
@@ -27901,22 +27901,22 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_14_0__1__Impl"
-    // InternalOCLstdlib.g:8942:1: rule__LibIterationCS__Group_14_0__1__Impl : ( ( rule__LibIterationCS__Alternatives_14_0_1 )* ) ;
+    // InternalOCLstdlib.g:8944:1: rule__LibIterationCS__Group_14_0__1__Impl : ( ( rule__LibIterationCS__Alternatives_14_0_1 )* ) ;
     public final void rule__LibIterationCS__Group_14_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8946:1: ( ( ( rule__LibIterationCS__Alternatives_14_0_1 )* ) )
-            // InternalOCLstdlib.g:8947:1: ( ( rule__LibIterationCS__Alternatives_14_0_1 )* )
+            // InternalOCLstdlib.g:8948:1: ( ( ( rule__LibIterationCS__Alternatives_14_0_1 )* ) )
+            // InternalOCLstdlib.g:8949:1: ( ( rule__LibIterationCS__Alternatives_14_0_1 )* )
             {
-            // InternalOCLstdlib.g:8947:1: ( ( rule__LibIterationCS__Alternatives_14_0_1 )* )
-            // InternalOCLstdlib.g:8948:1: ( rule__LibIterationCS__Alternatives_14_0_1 )*
+            // InternalOCLstdlib.g:8949:1: ( ( rule__LibIterationCS__Alternatives_14_0_1 )* )
+            // InternalOCLstdlib.g:8950:1: ( rule__LibIterationCS__Alternatives_14_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getAlternatives_14_0_1());
             }
-            // InternalOCLstdlib.g:8949:1: ( rule__LibIterationCS__Alternatives_14_0_1 )*
+            // InternalOCLstdlib.g:8951:1: ( rule__LibIterationCS__Alternatives_14_0_1 )*
             loop87:
             do {
                 int alt87=2;
@@ -27929,7 +27929,7 @@
 
                 switch (alt87) {
             	case 1 :
-            	    // InternalOCLstdlib.g:8949:2: rule__LibIterationCS__Alternatives_14_0_1
+            	    // InternalOCLstdlib.g:8951:2: rule__LibIterationCS__Alternatives_14_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_38);
             	    rule__LibIterationCS__Alternatives_14_0_1();
@@ -27970,14 +27970,14 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_14_0__2"
-    // InternalOCLstdlib.g:8959:1: rule__LibIterationCS__Group_14_0__2 : rule__LibIterationCS__Group_14_0__2__Impl ;
+    // InternalOCLstdlib.g:8961:1: rule__LibIterationCS__Group_14_0__2 : rule__LibIterationCS__Group_14_0__2__Impl ;
     public final void rule__LibIterationCS__Group_14_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8963:1: ( rule__LibIterationCS__Group_14_0__2__Impl )
-            // InternalOCLstdlib.g:8964:2: rule__LibIterationCS__Group_14_0__2__Impl
+            // InternalOCLstdlib.g:8965:1: ( rule__LibIterationCS__Group_14_0__2__Impl )
+            // InternalOCLstdlib.g:8966:2: rule__LibIterationCS__Group_14_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibIterationCS__Group_14_0__2__Impl();
@@ -28003,17 +28003,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__Group_14_0__2__Impl"
-    // InternalOCLstdlib.g:8970:1: rule__LibIterationCS__Group_14_0__2__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:8972:1: rule__LibIterationCS__Group_14_0__2__Impl : ( '}' ) ;
     public final void rule__LibIterationCS__Group_14_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8974:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:8975:1: ( '}' )
+            // InternalOCLstdlib.g:8976:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:8977:1: ( '}' )
             {
-            // InternalOCLstdlib.g:8975:1: ( '}' )
-            // InternalOCLstdlib.g:8976:1: '}'
+            // InternalOCLstdlib.g:8977:1: ( '}' )
+            // InternalOCLstdlib.g:8978:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getRightCurlyBracketKeyword_14_0_2());
@@ -28044,14 +28044,14 @@
 
 
     // $ANTLR start "rule__IteratorCS__Group__0"
-    // InternalOCLstdlib.g:8995:1: rule__IteratorCS__Group__0 : rule__IteratorCS__Group__0__Impl rule__IteratorCS__Group__1 ;
+    // InternalOCLstdlib.g:8997:1: rule__IteratorCS__Group__0 : rule__IteratorCS__Group__0__Impl rule__IteratorCS__Group__1 ;
     public final void rule__IteratorCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:8999:1: ( rule__IteratorCS__Group__0__Impl rule__IteratorCS__Group__1 )
-            // InternalOCLstdlib.g:9000:2: rule__IteratorCS__Group__0__Impl rule__IteratorCS__Group__1
+            // InternalOCLstdlib.g:9001:1: ( rule__IteratorCS__Group__0__Impl rule__IteratorCS__Group__1 )
+            // InternalOCLstdlib.g:9002:2: rule__IteratorCS__Group__0__Impl rule__IteratorCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__IteratorCS__Group__0__Impl();
@@ -28082,23 +28082,23 @@
 
 
     // $ANTLR start "rule__IteratorCS__Group__0__Impl"
-    // InternalOCLstdlib.g:9007:1: rule__IteratorCS__Group__0__Impl : ( ( rule__IteratorCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:9009:1: rule__IteratorCS__Group__0__Impl : ( ( rule__IteratorCS__NameAssignment_0 ) ) ;
     public final void rule__IteratorCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9011:1: ( ( ( rule__IteratorCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:9012:1: ( ( rule__IteratorCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:9013:1: ( ( ( rule__IteratorCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:9014:1: ( ( rule__IteratorCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:9012:1: ( ( rule__IteratorCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:9013:1: ( rule__IteratorCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:9014:1: ( ( rule__IteratorCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:9015:1: ( rule__IteratorCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIteratorCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:9014:1: ( rule__IteratorCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:9014:2: rule__IteratorCS__NameAssignment_0
+            // InternalOCLstdlib.g:9016:1: ( rule__IteratorCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:9016:2: rule__IteratorCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IteratorCS__NameAssignment_0();
@@ -28133,14 +28133,14 @@
 
 
     // $ANTLR start "rule__IteratorCS__Group__1"
-    // InternalOCLstdlib.g:9024:1: rule__IteratorCS__Group__1 : rule__IteratorCS__Group__1__Impl rule__IteratorCS__Group__2 ;
+    // InternalOCLstdlib.g:9026:1: rule__IteratorCS__Group__1 : rule__IteratorCS__Group__1__Impl rule__IteratorCS__Group__2 ;
     public final void rule__IteratorCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9028:1: ( rule__IteratorCS__Group__1__Impl rule__IteratorCS__Group__2 )
-            // InternalOCLstdlib.g:9029:2: rule__IteratorCS__Group__1__Impl rule__IteratorCS__Group__2
+            // InternalOCLstdlib.g:9030:1: ( rule__IteratorCS__Group__1__Impl rule__IteratorCS__Group__2 )
+            // InternalOCLstdlib.g:9031:2: rule__IteratorCS__Group__1__Impl rule__IteratorCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__IteratorCS__Group__1__Impl();
@@ -28171,17 +28171,17 @@
 
 
     // $ANTLR start "rule__IteratorCS__Group__1__Impl"
-    // InternalOCLstdlib.g:9036:1: rule__IteratorCS__Group__1__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:9038:1: rule__IteratorCS__Group__1__Impl : ( ':' ) ;
     public final void rule__IteratorCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9040:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:9041:1: ( ':' )
+            // InternalOCLstdlib.g:9042:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:9043:1: ( ':' )
             {
-            // InternalOCLstdlib.g:9041:1: ( ':' )
-            // InternalOCLstdlib.g:9042:1: ':'
+            // InternalOCLstdlib.g:9043:1: ( ':' )
+            // InternalOCLstdlib.g:9044:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIteratorCSAccess().getColonKeyword_1());
@@ -28212,14 +28212,14 @@
 
 
     // $ANTLR start "rule__IteratorCS__Group__2"
-    // InternalOCLstdlib.g:9055:1: rule__IteratorCS__Group__2 : rule__IteratorCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:9057:1: rule__IteratorCS__Group__2 : rule__IteratorCS__Group__2__Impl ;
     public final void rule__IteratorCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9059:1: ( rule__IteratorCS__Group__2__Impl )
-            // InternalOCLstdlib.g:9060:2: rule__IteratorCS__Group__2__Impl
+            // InternalOCLstdlib.g:9061:1: ( rule__IteratorCS__Group__2__Impl )
+            // InternalOCLstdlib.g:9062:2: rule__IteratorCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IteratorCS__Group__2__Impl();
@@ -28245,23 +28245,23 @@
 
 
     // $ANTLR start "rule__IteratorCS__Group__2__Impl"
-    // InternalOCLstdlib.g:9066:1: rule__IteratorCS__Group__2__Impl : ( ( rule__IteratorCS__OwnedTypeAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:9068:1: rule__IteratorCS__Group__2__Impl : ( ( rule__IteratorCS__OwnedTypeAssignment_2 ) ) ;
     public final void rule__IteratorCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9070:1: ( ( ( rule__IteratorCS__OwnedTypeAssignment_2 ) ) )
-            // InternalOCLstdlib.g:9071:1: ( ( rule__IteratorCS__OwnedTypeAssignment_2 ) )
+            // InternalOCLstdlib.g:9072:1: ( ( ( rule__IteratorCS__OwnedTypeAssignment_2 ) ) )
+            // InternalOCLstdlib.g:9073:1: ( ( rule__IteratorCS__OwnedTypeAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:9071:1: ( ( rule__IteratorCS__OwnedTypeAssignment_2 ) )
-            // InternalOCLstdlib.g:9072:1: ( rule__IteratorCS__OwnedTypeAssignment_2 )
+            // InternalOCLstdlib.g:9073:1: ( ( rule__IteratorCS__OwnedTypeAssignment_2 ) )
+            // InternalOCLstdlib.g:9074:1: ( rule__IteratorCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIteratorCSAccess().getOwnedTypeAssignment_2());
             }
-            // InternalOCLstdlib.g:9073:1: ( rule__IteratorCS__OwnedTypeAssignment_2 )
-            // InternalOCLstdlib.g:9073:2: rule__IteratorCS__OwnedTypeAssignment_2
+            // InternalOCLstdlib.g:9075:1: ( rule__IteratorCS__OwnedTypeAssignment_2 )
+            // InternalOCLstdlib.g:9075:2: rule__IteratorCS__OwnedTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IteratorCS__OwnedTypeAssignment_2();
@@ -28296,14 +28296,14 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__0"
-    // InternalOCLstdlib.g:9089:1: rule__LambdaTypeCS__Group__0 : rule__LambdaTypeCS__Group__0__Impl rule__LambdaTypeCS__Group__1 ;
+    // InternalOCLstdlib.g:9091:1: rule__LambdaTypeCS__Group__0 : rule__LambdaTypeCS__Group__0__Impl rule__LambdaTypeCS__Group__1 ;
     public final void rule__LambdaTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9093:1: ( rule__LambdaTypeCS__Group__0__Impl rule__LambdaTypeCS__Group__1 )
-            // InternalOCLstdlib.g:9094:2: rule__LambdaTypeCS__Group__0__Impl rule__LambdaTypeCS__Group__1
+            // InternalOCLstdlib.g:9095:1: ( rule__LambdaTypeCS__Group__0__Impl rule__LambdaTypeCS__Group__1 )
+            // InternalOCLstdlib.g:9096:2: rule__LambdaTypeCS__Group__0__Impl rule__LambdaTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_42);
             rule__LambdaTypeCS__Group__0__Impl();
@@ -28334,23 +28334,23 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__0__Impl"
-    // InternalOCLstdlib.g:9101:1: rule__LambdaTypeCS__Group__0__Impl : ( ( rule__LambdaTypeCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:9103:1: rule__LambdaTypeCS__Group__0__Impl : ( ( rule__LambdaTypeCS__NameAssignment_0 ) ) ;
     public final void rule__LambdaTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9105:1: ( ( ( rule__LambdaTypeCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:9106:1: ( ( rule__LambdaTypeCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:9107:1: ( ( ( rule__LambdaTypeCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:9108:1: ( ( rule__LambdaTypeCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:9106:1: ( ( rule__LambdaTypeCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:9107:1: ( rule__LambdaTypeCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:9108:1: ( ( rule__LambdaTypeCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:9109:1: ( rule__LambdaTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:9108:1: ( rule__LambdaTypeCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:9108:2: rule__LambdaTypeCS__NameAssignment_0
+            // InternalOCLstdlib.g:9110:1: ( rule__LambdaTypeCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:9110:2: rule__LambdaTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaTypeCS__NameAssignment_0();
@@ -28385,14 +28385,14 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__1"
-    // InternalOCLstdlib.g:9118:1: rule__LambdaTypeCS__Group__1 : rule__LambdaTypeCS__Group__1__Impl rule__LambdaTypeCS__Group__2 ;
+    // InternalOCLstdlib.g:9120:1: rule__LambdaTypeCS__Group__1 : rule__LambdaTypeCS__Group__1__Impl rule__LambdaTypeCS__Group__2 ;
     public final void rule__LambdaTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9122:1: ( rule__LambdaTypeCS__Group__1__Impl rule__LambdaTypeCS__Group__2 )
-            // InternalOCLstdlib.g:9123:2: rule__LambdaTypeCS__Group__1__Impl rule__LambdaTypeCS__Group__2
+            // InternalOCLstdlib.g:9124:1: ( rule__LambdaTypeCS__Group__1__Impl rule__LambdaTypeCS__Group__2 )
+            // InternalOCLstdlib.g:9125:2: rule__LambdaTypeCS__Group__1__Impl rule__LambdaTypeCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_42);
             rule__LambdaTypeCS__Group__1__Impl();
@@ -28423,22 +28423,22 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__1__Impl"
-    // InternalOCLstdlib.g:9130:1: rule__LambdaTypeCS__Group__1__Impl : ( ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )? ) ;
+    // InternalOCLstdlib.g:9132:1: rule__LambdaTypeCS__Group__1__Impl : ( ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )? ) ;
     public final void rule__LambdaTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9134:1: ( ( ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )? ) )
-            // InternalOCLstdlib.g:9135:1: ( ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )? )
+            // InternalOCLstdlib.g:9136:1: ( ( ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )? ) )
+            // InternalOCLstdlib.g:9137:1: ( ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )? )
             {
-            // InternalOCLstdlib.g:9135:1: ( ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )? )
-            // InternalOCLstdlib.g:9136:1: ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )?
+            // InternalOCLstdlib.g:9137:1: ( ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )? )
+            // InternalOCLstdlib.g:9138:1: ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureAssignment_1());
             }
-            // InternalOCLstdlib.g:9137:1: ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )?
+            // InternalOCLstdlib.g:9139:1: ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )?
             int alt88=2;
             int LA88_0 = input.LA(1);
 
@@ -28447,7 +28447,7 @@
             }
             switch (alt88) {
                 case 1 :
-                    // InternalOCLstdlib.g:9137:2: rule__LambdaTypeCS__OwnedSignatureAssignment_1
+                    // InternalOCLstdlib.g:9139:2: rule__LambdaTypeCS__OwnedSignatureAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LambdaTypeCS__OwnedSignatureAssignment_1();
@@ -28485,14 +28485,14 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__2"
-    // InternalOCLstdlib.g:9147:1: rule__LambdaTypeCS__Group__2 : rule__LambdaTypeCS__Group__2__Impl rule__LambdaTypeCS__Group__3 ;
+    // InternalOCLstdlib.g:9149:1: rule__LambdaTypeCS__Group__2 : rule__LambdaTypeCS__Group__2__Impl rule__LambdaTypeCS__Group__3 ;
     public final void rule__LambdaTypeCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9151:1: ( rule__LambdaTypeCS__Group__2__Impl rule__LambdaTypeCS__Group__3 )
-            // InternalOCLstdlib.g:9152:2: rule__LambdaTypeCS__Group__2__Impl rule__LambdaTypeCS__Group__3
+            // InternalOCLstdlib.g:9153:1: ( rule__LambdaTypeCS__Group__2__Impl rule__LambdaTypeCS__Group__3 )
+            // InternalOCLstdlib.g:9154:2: rule__LambdaTypeCS__Group__2__Impl rule__LambdaTypeCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__LambdaTypeCS__Group__2__Impl();
@@ -28523,23 +28523,23 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__2__Impl"
-    // InternalOCLstdlib.g:9159:1: rule__LambdaTypeCS__Group__2__Impl : ( ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:9161:1: rule__LambdaTypeCS__Group__2__Impl : ( ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 ) ) ;
     public final void rule__LambdaTypeCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9163:1: ( ( ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 ) ) )
-            // InternalOCLstdlib.g:9164:1: ( ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 ) )
+            // InternalOCLstdlib.g:9165:1: ( ( ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 ) ) )
+            // InternalOCLstdlib.g:9166:1: ( ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:9164:1: ( ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 ) )
-            // InternalOCLstdlib.g:9165:1: ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 )
+            // InternalOCLstdlib.g:9166:1: ( ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 ) )
+            // InternalOCLstdlib.g:9167:1: ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeAssignment_2());
             }
-            // InternalOCLstdlib.g:9166:1: ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 )
-            // InternalOCLstdlib.g:9166:2: rule__LambdaTypeCS__OwnedContextTypeAssignment_2
+            // InternalOCLstdlib.g:9168:1: ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 )
+            // InternalOCLstdlib.g:9168:2: rule__LambdaTypeCS__OwnedContextTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaTypeCS__OwnedContextTypeAssignment_2();
@@ -28574,14 +28574,14 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__3"
-    // InternalOCLstdlib.g:9176:1: rule__LambdaTypeCS__Group__3 : rule__LambdaTypeCS__Group__3__Impl rule__LambdaTypeCS__Group__4 ;
+    // InternalOCLstdlib.g:9178:1: rule__LambdaTypeCS__Group__3 : rule__LambdaTypeCS__Group__3__Impl rule__LambdaTypeCS__Group__4 ;
     public final void rule__LambdaTypeCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9180:1: ( rule__LambdaTypeCS__Group__3__Impl rule__LambdaTypeCS__Group__4 )
-            // InternalOCLstdlib.g:9181:2: rule__LambdaTypeCS__Group__3__Impl rule__LambdaTypeCS__Group__4
+            // InternalOCLstdlib.g:9182:1: ( rule__LambdaTypeCS__Group__3__Impl rule__LambdaTypeCS__Group__4 )
+            // InternalOCLstdlib.g:9183:2: rule__LambdaTypeCS__Group__3__Impl rule__LambdaTypeCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__LambdaTypeCS__Group__3__Impl();
@@ -28612,17 +28612,17 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__3__Impl"
-    // InternalOCLstdlib.g:9188:1: rule__LambdaTypeCS__Group__3__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:9190:1: rule__LambdaTypeCS__Group__3__Impl : ( '(' ) ;
     public final void rule__LambdaTypeCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9192:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:9193:1: ( '(' )
+            // InternalOCLstdlib.g:9194:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:9195:1: ( '(' )
             {
-            // InternalOCLstdlib.g:9193:1: ( '(' )
-            // InternalOCLstdlib.g:9194:1: '('
+            // InternalOCLstdlib.g:9195:1: ( '(' )
+            // InternalOCLstdlib.g:9196:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getLeftParenthesisKeyword_3());
@@ -28653,14 +28653,14 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__4"
-    // InternalOCLstdlib.g:9207:1: rule__LambdaTypeCS__Group__4 : rule__LambdaTypeCS__Group__4__Impl rule__LambdaTypeCS__Group__5 ;
+    // InternalOCLstdlib.g:9209:1: rule__LambdaTypeCS__Group__4 : rule__LambdaTypeCS__Group__4__Impl rule__LambdaTypeCS__Group__5 ;
     public final void rule__LambdaTypeCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9211:1: ( rule__LambdaTypeCS__Group__4__Impl rule__LambdaTypeCS__Group__5 )
-            // InternalOCLstdlib.g:9212:2: rule__LambdaTypeCS__Group__4__Impl rule__LambdaTypeCS__Group__5
+            // InternalOCLstdlib.g:9213:1: ( rule__LambdaTypeCS__Group__4__Impl rule__LambdaTypeCS__Group__5 )
+            // InternalOCLstdlib.g:9214:2: rule__LambdaTypeCS__Group__4__Impl rule__LambdaTypeCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_43);
             rule__LambdaTypeCS__Group__4__Impl();
@@ -28691,22 +28691,22 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__4__Impl"
-    // InternalOCLstdlib.g:9219:1: rule__LambdaTypeCS__Group__4__Impl : ( ( rule__LambdaTypeCS__Group_4__0 )? ) ;
+    // InternalOCLstdlib.g:9221:1: rule__LambdaTypeCS__Group__4__Impl : ( ( rule__LambdaTypeCS__Group_4__0 )? ) ;
     public final void rule__LambdaTypeCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9223:1: ( ( ( rule__LambdaTypeCS__Group_4__0 )? ) )
-            // InternalOCLstdlib.g:9224:1: ( ( rule__LambdaTypeCS__Group_4__0 )? )
+            // InternalOCLstdlib.g:9225:1: ( ( ( rule__LambdaTypeCS__Group_4__0 )? ) )
+            // InternalOCLstdlib.g:9226:1: ( ( rule__LambdaTypeCS__Group_4__0 )? )
             {
-            // InternalOCLstdlib.g:9224:1: ( ( rule__LambdaTypeCS__Group_4__0 )? )
-            // InternalOCLstdlib.g:9225:1: ( rule__LambdaTypeCS__Group_4__0 )?
+            // InternalOCLstdlib.g:9226:1: ( ( rule__LambdaTypeCS__Group_4__0 )? )
+            // InternalOCLstdlib.g:9227:1: ( rule__LambdaTypeCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getGroup_4());
             }
-            // InternalOCLstdlib.g:9226:1: ( rule__LambdaTypeCS__Group_4__0 )?
+            // InternalOCLstdlib.g:9228:1: ( rule__LambdaTypeCS__Group_4__0 )?
             int alt89=2;
             int LA89_0 = input.LA(1);
 
@@ -28715,7 +28715,7 @@
             }
             switch (alt89) {
                 case 1 :
-                    // InternalOCLstdlib.g:9226:2: rule__LambdaTypeCS__Group_4__0
+                    // InternalOCLstdlib.g:9228:2: rule__LambdaTypeCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LambdaTypeCS__Group_4__0();
@@ -28753,14 +28753,14 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__5"
-    // InternalOCLstdlib.g:9236:1: rule__LambdaTypeCS__Group__5 : rule__LambdaTypeCS__Group__5__Impl rule__LambdaTypeCS__Group__6 ;
+    // InternalOCLstdlib.g:9238:1: rule__LambdaTypeCS__Group__5 : rule__LambdaTypeCS__Group__5__Impl rule__LambdaTypeCS__Group__6 ;
     public final void rule__LambdaTypeCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9240:1: ( rule__LambdaTypeCS__Group__5__Impl rule__LambdaTypeCS__Group__6 )
-            // InternalOCLstdlib.g:9241:2: rule__LambdaTypeCS__Group__5__Impl rule__LambdaTypeCS__Group__6
+            // InternalOCLstdlib.g:9242:1: ( rule__LambdaTypeCS__Group__5__Impl rule__LambdaTypeCS__Group__6 )
+            // InternalOCLstdlib.g:9243:2: rule__LambdaTypeCS__Group__5__Impl rule__LambdaTypeCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__LambdaTypeCS__Group__5__Impl();
@@ -28791,17 +28791,17 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__5__Impl"
-    // InternalOCLstdlib.g:9248:1: rule__LambdaTypeCS__Group__5__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:9250:1: rule__LambdaTypeCS__Group__5__Impl : ( ')' ) ;
     public final void rule__LambdaTypeCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9252:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:9253:1: ( ')' )
+            // InternalOCLstdlib.g:9254:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:9255:1: ( ')' )
             {
-            // InternalOCLstdlib.g:9253:1: ( ')' )
-            // InternalOCLstdlib.g:9254:1: ')'
+            // InternalOCLstdlib.g:9255:1: ( ')' )
+            // InternalOCLstdlib.g:9256:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getRightParenthesisKeyword_5());
@@ -28832,14 +28832,14 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__6"
-    // InternalOCLstdlib.g:9267:1: rule__LambdaTypeCS__Group__6 : rule__LambdaTypeCS__Group__6__Impl rule__LambdaTypeCS__Group__7 ;
+    // InternalOCLstdlib.g:9269:1: rule__LambdaTypeCS__Group__6 : rule__LambdaTypeCS__Group__6__Impl rule__LambdaTypeCS__Group__7 ;
     public final void rule__LambdaTypeCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9271:1: ( rule__LambdaTypeCS__Group__6__Impl rule__LambdaTypeCS__Group__7 )
-            // InternalOCLstdlib.g:9272:2: rule__LambdaTypeCS__Group__6__Impl rule__LambdaTypeCS__Group__7
+            // InternalOCLstdlib.g:9273:1: ( rule__LambdaTypeCS__Group__6__Impl rule__LambdaTypeCS__Group__7 )
+            // InternalOCLstdlib.g:9274:2: rule__LambdaTypeCS__Group__6__Impl rule__LambdaTypeCS__Group__7
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__LambdaTypeCS__Group__6__Impl();
@@ -28870,17 +28870,17 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__6__Impl"
-    // InternalOCLstdlib.g:9279:1: rule__LambdaTypeCS__Group__6__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:9281:1: rule__LambdaTypeCS__Group__6__Impl : ( ':' ) ;
     public final void rule__LambdaTypeCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9283:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:9284:1: ( ':' )
+            // InternalOCLstdlib.g:9285:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:9286:1: ( ':' )
             {
-            // InternalOCLstdlib.g:9284:1: ( ':' )
-            // InternalOCLstdlib.g:9285:1: ':'
+            // InternalOCLstdlib.g:9286:1: ( ':' )
+            // InternalOCLstdlib.g:9287:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getColonKeyword_6());
@@ -28911,14 +28911,14 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__7"
-    // InternalOCLstdlib.g:9298:1: rule__LambdaTypeCS__Group__7 : rule__LambdaTypeCS__Group__7__Impl ;
+    // InternalOCLstdlib.g:9300:1: rule__LambdaTypeCS__Group__7 : rule__LambdaTypeCS__Group__7__Impl ;
     public final void rule__LambdaTypeCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9302:1: ( rule__LambdaTypeCS__Group__7__Impl )
-            // InternalOCLstdlib.g:9303:2: rule__LambdaTypeCS__Group__7__Impl
+            // InternalOCLstdlib.g:9304:1: ( rule__LambdaTypeCS__Group__7__Impl )
+            // InternalOCLstdlib.g:9305:2: rule__LambdaTypeCS__Group__7__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaTypeCS__Group__7__Impl();
@@ -28944,23 +28944,23 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group__7__Impl"
-    // InternalOCLstdlib.g:9309:1: rule__LambdaTypeCS__Group__7__Impl : ( ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 ) ) ;
+    // InternalOCLstdlib.g:9311:1: rule__LambdaTypeCS__Group__7__Impl : ( ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 ) ) ;
     public final void rule__LambdaTypeCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9313:1: ( ( ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 ) ) )
-            // InternalOCLstdlib.g:9314:1: ( ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 ) )
+            // InternalOCLstdlib.g:9315:1: ( ( ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 ) ) )
+            // InternalOCLstdlib.g:9316:1: ( ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 ) )
             {
-            // InternalOCLstdlib.g:9314:1: ( ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 ) )
-            // InternalOCLstdlib.g:9315:1: ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 )
+            // InternalOCLstdlib.g:9316:1: ( ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 ) )
+            // InternalOCLstdlib.g:9317:1: ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeAssignment_7());
             }
-            // InternalOCLstdlib.g:9316:1: ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 )
-            // InternalOCLstdlib.g:9316:2: rule__LambdaTypeCS__OwnedResultTypeAssignment_7
+            // InternalOCLstdlib.g:9318:1: ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 )
+            // InternalOCLstdlib.g:9318:2: rule__LambdaTypeCS__OwnedResultTypeAssignment_7
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaTypeCS__OwnedResultTypeAssignment_7();
@@ -28995,14 +28995,14 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group_4__0"
-    // InternalOCLstdlib.g:9342:1: rule__LambdaTypeCS__Group_4__0 : rule__LambdaTypeCS__Group_4__0__Impl rule__LambdaTypeCS__Group_4__1 ;
+    // InternalOCLstdlib.g:9344:1: rule__LambdaTypeCS__Group_4__0 : rule__LambdaTypeCS__Group_4__0__Impl rule__LambdaTypeCS__Group_4__1 ;
     public final void rule__LambdaTypeCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9346:1: ( rule__LambdaTypeCS__Group_4__0__Impl rule__LambdaTypeCS__Group_4__1 )
-            // InternalOCLstdlib.g:9347:2: rule__LambdaTypeCS__Group_4__0__Impl rule__LambdaTypeCS__Group_4__1
+            // InternalOCLstdlib.g:9348:1: ( rule__LambdaTypeCS__Group_4__0__Impl rule__LambdaTypeCS__Group_4__1 )
+            // InternalOCLstdlib.g:9349:2: rule__LambdaTypeCS__Group_4__0__Impl rule__LambdaTypeCS__Group_4__1
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__LambdaTypeCS__Group_4__0__Impl();
@@ -29033,23 +29033,23 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group_4__0__Impl"
-    // InternalOCLstdlib.g:9354:1: rule__LambdaTypeCS__Group_4__0__Impl : ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 ) ) ;
+    // InternalOCLstdlib.g:9356:1: rule__LambdaTypeCS__Group_4__0__Impl : ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 ) ) ;
     public final void rule__LambdaTypeCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9358:1: ( ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 ) ) )
-            // InternalOCLstdlib.g:9359:1: ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 ) )
+            // InternalOCLstdlib.g:9360:1: ( ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 ) ) )
+            // InternalOCLstdlib.g:9361:1: ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 ) )
             {
-            // InternalOCLstdlib.g:9359:1: ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 ) )
-            // InternalOCLstdlib.g:9360:1: ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 )
+            // InternalOCLstdlib.g:9361:1: ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 ) )
+            // InternalOCLstdlib.g:9362:1: ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesAssignment_4_0());
             }
-            // InternalOCLstdlib.g:9361:1: ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 )
-            // InternalOCLstdlib.g:9361:2: rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0
+            // InternalOCLstdlib.g:9363:1: ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 )
+            // InternalOCLstdlib.g:9363:2: rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0();
@@ -29084,14 +29084,14 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group_4__1"
-    // InternalOCLstdlib.g:9371:1: rule__LambdaTypeCS__Group_4__1 : rule__LambdaTypeCS__Group_4__1__Impl ;
+    // InternalOCLstdlib.g:9373:1: rule__LambdaTypeCS__Group_4__1 : rule__LambdaTypeCS__Group_4__1__Impl ;
     public final void rule__LambdaTypeCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9375:1: ( rule__LambdaTypeCS__Group_4__1__Impl )
-            // InternalOCLstdlib.g:9376:2: rule__LambdaTypeCS__Group_4__1__Impl
+            // InternalOCLstdlib.g:9377:1: ( rule__LambdaTypeCS__Group_4__1__Impl )
+            // InternalOCLstdlib.g:9378:2: rule__LambdaTypeCS__Group_4__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaTypeCS__Group_4__1__Impl();
@@ -29117,22 +29117,22 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group_4__1__Impl"
-    // InternalOCLstdlib.g:9382:1: rule__LambdaTypeCS__Group_4__1__Impl : ( ( rule__LambdaTypeCS__Group_4_1__0 )* ) ;
+    // InternalOCLstdlib.g:9384:1: rule__LambdaTypeCS__Group_4__1__Impl : ( ( rule__LambdaTypeCS__Group_4_1__0 )* ) ;
     public final void rule__LambdaTypeCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9386:1: ( ( ( rule__LambdaTypeCS__Group_4_1__0 )* ) )
-            // InternalOCLstdlib.g:9387:1: ( ( rule__LambdaTypeCS__Group_4_1__0 )* )
+            // InternalOCLstdlib.g:9388:1: ( ( ( rule__LambdaTypeCS__Group_4_1__0 )* ) )
+            // InternalOCLstdlib.g:9389:1: ( ( rule__LambdaTypeCS__Group_4_1__0 )* )
             {
-            // InternalOCLstdlib.g:9387:1: ( ( rule__LambdaTypeCS__Group_4_1__0 )* )
-            // InternalOCLstdlib.g:9388:1: ( rule__LambdaTypeCS__Group_4_1__0 )*
+            // InternalOCLstdlib.g:9389:1: ( ( rule__LambdaTypeCS__Group_4_1__0 )* )
+            // InternalOCLstdlib.g:9390:1: ( rule__LambdaTypeCS__Group_4_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getGroup_4_1());
             }
-            // InternalOCLstdlib.g:9389:1: ( rule__LambdaTypeCS__Group_4_1__0 )*
+            // InternalOCLstdlib.g:9391:1: ( rule__LambdaTypeCS__Group_4_1__0 )*
             loop90:
             do {
                 int alt90=2;
@@ -29145,7 +29145,7 @@
 
                 switch (alt90) {
             	case 1 :
-            	    // InternalOCLstdlib.g:9389:2: rule__LambdaTypeCS__Group_4_1__0
+            	    // InternalOCLstdlib.g:9391:2: rule__LambdaTypeCS__Group_4_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__LambdaTypeCS__Group_4_1__0();
@@ -29186,14 +29186,14 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group_4_1__0"
-    // InternalOCLstdlib.g:9403:1: rule__LambdaTypeCS__Group_4_1__0 : rule__LambdaTypeCS__Group_4_1__0__Impl rule__LambdaTypeCS__Group_4_1__1 ;
+    // InternalOCLstdlib.g:9405:1: rule__LambdaTypeCS__Group_4_1__0 : rule__LambdaTypeCS__Group_4_1__0__Impl rule__LambdaTypeCS__Group_4_1__1 ;
     public final void rule__LambdaTypeCS__Group_4_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9407:1: ( rule__LambdaTypeCS__Group_4_1__0__Impl rule__LambdaTypeCS__Group_4_1__1 )
-            // InternalOCLstdlib.g:9408:2: rule__LambdaTypeCS__Group_4_1__0__Impl rule__LambdaTypeCS__Group_4_1__1
+            // InternalOCLstdlib.g:9409:1: ( rule__LambdaTypeCS__Group_4_1__0__Impl rule__LambdaTypeCS__Group_4_1__1 )
+            // InternalOCLstdlib.g:9410:2: rule__LambdaTypeCS__Group_4_1__0__Impl rule__LambdaTypeCS__Group_4_1__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__LambdaTypeCS__Group_4_1__0__Impl();
@@ -29224,17 +29224,17 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group_4_1__0__Impl"
-    // InternalOCLstdlib.g:9415:1: rule__LambdaTypeCS__Group_4_1__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:9417:1: rule__LambdaTypeCS__Group_4_1__0__Impl : ( ',' ) ;
     public final void rule__LambdaTypeCS__Group_4_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9419:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:9420:1: ( ',' )
+            // InternalOCLstdlib.g:9421:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:9422:1: ( ',' )
             {
-            // InternalOCLstdlib.g:9420:1: ( ',' )
-            // InternalOCLstdlib.g:9421:1: ','
+            // InternalOCLstdlib.g:9422:1: ( ',' )
+            // InternalOCLstdlib.g:9423:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getCommaKeyword_4_1_0());
@@ -29265,14 +29265,14 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group_4_1__1"
-    // InternalOCLstdlib.g:9434:1: rule__LambdaTypeCS__Group_4_1__1 : rule__LambdaTypeCS__Group_4_1__1__Impl ;
+    // InternalOCLstdlib.g:9436:1: rule__LambdaTypeCS__Group_4_1__1 : rule__LambdaTypeCS__Group_4_1__1__Impl ;
     public final void rule__LambdaTypeCS__Group_4_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9438:1: ( rule__LambdaTypeCS__Group_4_1__1__Impl )
-            // InternalOCLstdlib.g:9439:2: rule__LambdaTypeCS__Group_4_1__1__Impl
+            // InternalOCLstdlib.g:9440:1: ( rule__LambdaTypeCS__Group_4_1__1__Impl )
+            // InternalOCLstdlib.g:9441:2: rule__LambdaTypeCS__Group_4_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaTypeCS__Group_4_1__1__Impl();
@@ -29298,23 +29298,23 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__Group_4_1__1__Impl"
-    // InternalOCLstdlib.g:9445:1: rule__LambdaTypeCS__Group_4_1__1__Impl : ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 ) ) ;
+    // InternalOCLstdlib.g:9447:1: rule__LambdaTypeCS__Group_4_1__1__Impl : ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 ) ) ;
     public final void rule__LambdaTypeCS__Group_4_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9449:1: ( ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 ) ) )
-            // InternalOCLstdlib.g:9450:1: ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 ) )
+            // InternalOCLstdlib.g:9451:1: ( ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 ) ) )
+            // InternalOCLstdlib.g:9452:1: ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 ) )
             {
-            // InternalOCLstdlib.g:9450:1: ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 ) )
-            // InternalOCLstdlib.g:9451:1: ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 )
+            // InternalOCLstdlib.g:9452:1: ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 ) )
+            // InternalOCLstdlib.g:9453:1: ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesAssignment_4_1_1());
             }
-            // InternalOCLstdlib.g:9452:1: ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 )
-            // InternalOCLstdlib.g:9452:2: rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1
+            // InternalOCLstdlib.g:9454:1: ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 )
+            // InternalOCLstdlib.g:9454:2: rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1();
@@ -29349,14 +29349,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__0"
-    // InternalOCLstdlib.g:9466:1: rule__LibOperationCS__Group__0 : rule__LibOperationCS__Group__0__Impl rule__LibOperationCS__Group__1 ;
+    // InternalOCLstdlib.g:9468:1: rule__LibOperationCS__Group__0 : rule__LibOperationCS__Group__0__Impl rule__LibOperationCS__Group__1 ;
     public final void rule__LibOperationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9470:1: ( rule__LibOperationCS__Group__0__Impl rule__LibOperationCS__Group__1 )
-            // InternalOCLstdlib.g:9471:2: rule__LibOperationCS__Group__0__Impl rule__LibOperationCS__Group__1
+            // InternalOCLstdlib.g:9472:1: ( rule__LibOperationCS__Group__0__Impl rule__LibOperationCS__Group__1 )
+            // InternalOCLstdlib.g:9473:2: rule__LibOperationCS__Group__0__Impl rule__LibOperationCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_44);
             rule__LibOperationCS__Group__0__Impl();
@@ -29387,22 +29387,22 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__0__Impl"
-    // InternalOCLstdlib.g:9478:1: rule__LibOperationCS__Group__0__Impl : ( ( rule__LibOperationCS__IsStaticAssignment_0 )? ) ;
+    // InternalOCLstdlib.g:9480:1: rule__LibOperationCS__Group__0__Impl : ( ( rule__LibOperationCS__IsStaticAssignment_0 )? ) ;
     public final void rule__LibOperationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9482:1: ( ( ( rule__LibOperationCS__IsStaticAssignment_0 )? ) )
-            // InternalOCLstdlib.g:9483:1: ( ( rule__LibOperationCS__IsStaticAssignment_0 )? )
+            // InternalOCLstdlib.g:9484:1: ( ( ( rule__LibOperationCS__IsStaticAssignment_0 )? ) )
+            // InternalOCLstdlib.g:9485:1: ( ( rule__LibOperationCS__IsStaticAssignment_0 )? )
             {
-            // InternalOCLstdlib.g:9483:1: ( ( rule__LibOperationCS__IsStaticAssignment_0 )? )
-            // InternalOCLstdlib.g:9484:1: ( rule__LibOperationCS__IsStaticAssignment_0 )?
+            // InternalOCLstdlib.g:9485:1: ( ( rule__LibOperationCS__IsStaticAssignment_0 )? )
+            // InternalOCLstdlib.g:9486:1: ( rule__LibOperationCS__IsStaticAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getIsStaticAssignment_0());
             }
-            // InternalOCLstdlib.g:9485:1: ( rule__LibOperationCS__IsStaticAssignment_0 )?
+            // InternalOCLstdlib.g:9487:1: ( rule__LibOperationCS__IsStaticAssignment_0 )?
             int alt91=2;
             int LA91_0 = input.LA(1);
 
@@ -29411,7 +29411,7 @@
             }
             switch (alt91) {
                 case 1 :
-                    // InternalOCLstdlib.g:9485:2: rule__LibOperationCS__IsStaticAssignment_0
+                    // InternalOCLstdlib.g:9487:2: rule__LibOperationCS__IsStaticAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibOperationCS__IsStaticAssignment_0();
@@ -29449,14 +29449,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__1"
-    // InternalOCLstdlib.g:9495:1: rule__LibOperationCS__Group__1 : rule__LibOperationCS__Group__1__Impl rule__LibOperationCS__Group__2 ;
+    // InternalOCLstdlib.g:9497:1: rule__LibOperationCS__Group__1 : rule__LibOperationCS__Group__1__Impl rule__LibOperationCS__Group__2 ;
     public final void rule__LibOperationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9499:1: ( rule__LibOperationCS__Group__1__Impl rule__LibOperationCS__Group__2 )
-            // InternalOCLstdlib.g:9500:2: rule__LibOperationCS__Group__1__Impl rule__LibOperationCS__Group__2
+            // InternalOCLstdlib.g:9501:1: ( rule__LibOperationCS__Group__1__Impl rule__LibOperationCS__Group__2 )
+            // InternalOCLstdlib.g:9502:2: rule__LibOperationCS__Group__1__Impl rule__LibOperationCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__LibOperationCS__Group__1__Impl();
@@ -29487,17 +29487,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__1__Impl"
-    // InternalOCLstdlib.g:9507:1: rule__LibOperationCS__Group__1__Impl : ( 'operation' ) ;
+    // InternalOCLstdlib.g:9509:1: rule__LibOperationCS__Group__1__Impl : ( 'operation' ) ;
     public final void rule__LibOperationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9511:1: ( ( 'operation' ) )
-            // InternalOCLstdlib.g:9512:1: ( 'operation' )
+            // InternalOCLstdlib.g:9513:1: ( ( 'operation' ) )
+            // InternalOCLstdlib.g:9514:1: ( 'operation' )
             {
-            // InternalOCLstdlib.g:9512:1: ( 'operation' )
-            // InternalOCLstdlib.g:9513:1: 'operation'
+            // InternalOCLstdlib.g:9514:1: ( 'operation' )
+            // InternalOCLstdlib.g:9515:1: 'operation'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOperationKeyword_1());
@@ -29528,14 +29528,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__2"
-    // InternalOCLstdlib.g:9526:1: rule__LibOperationCS__Group__2 : rule__LibOperationCS__Group__2__Impl rule__LibOperationCS__Group__3 ;
+    // InternalOCLstdlib.g:9528:1: rule__LibOperationCS__Group__2 : rule__LibOperationCS__Group__2__Impl rule__LibOperationCS__Group__3 ;
     public final void rule__LibOperationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9530:1: ( rule__LibOperationCS__Group__2__Impl rule__LibOperationCS__Group__3 )
-            // InternalOCLstdlib.g:9531:2: rule__LibOperationCS__Group__2__Impl rule__LibOperationCS__Group__3
+            // InternalOCLstdlib.g:9532:1: ( rule__LibOperationCS__Group__2__Impl rule__LibOperationCS__Group__3 )
+            // InternalOCLstdlib.g:9533:2: rule__LibOperationCS__Group__2__Impl rule__LibOperationCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__LibOperationCS__Group__2__Impl();
@@ -29566,23 +29566,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__2__Impl"
-    // InternalOCLstdlib.g:9538:1: rule__LibOperationCS__Group__2__Impl : ( ( rule__LibOperationCS__NameAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:9540:1: rule__LibOperationCS__Group__2__Impl : ( ( rule__LibOperationCS__NameAssignment_2 ) ) ;
     public final void rule__LibOperationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9542:1: ( ( ( rule__LibOperationCS__NameAssignment_2 ) ) )
-            // InternalOCLstdlib.g:9543:1: ( ( rule__LibOperationCS__NameAssignment_2 ) )
+            // InternalOCLstdlib.g:9544:1: ( ( ( rule__LibOperationCS__NameAssignment_2 ) ) )
+            // InternalOCLstdlib.g:9545:1: ( ( rule__LibOperationCS__NameAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:9543:1: ( ( rule__LibOperationCS__NameAssignment_2 ) )
-            // InternalOCLstdlib.g:9544:1: ( rule__LibOperationCS__NameAssignment_2 )
+            // InternalOCLstdlib.g:9545:1: ( ( rule__LibOperationCS__NameAssignment_2 ) )
+            // InternalOCLstdlib.g:9546:1: ( rule__LibOperationCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getNameAssignment_2());
             }
-            // InternalOCLstdlib.g:9545:1: ( rule__LibOperationCS__NameAssignment_2 )
-            // InternalOCLstdlib.g:9545:2: rule__LibOperationCS__NameAssignment_2
+            // InternalOCLstdlib.g:9547:1: ( rule__LibOperationCS__NameAssignment_2 )
+            // InternalOCLstdlib.g:9547:2: rule__LibOperationCS__NameAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__NameAssignment_2();
@@ -29617,14 +29617,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__3"
-    // InternalOCLstdlib.g:9555:1: rule__LibOperationCS__Group__3 : rule__LibOperationCS__Group__3__Impl rule__LibOperationCS__Group__4 ;
+    // InternalOCLstdlib.g:9557:1: rule__LibOperationCS__Group__3 : rule__LibOperationCS__Group__3__Impl rule__LibOperationCS__Group__4 ;
     public final void rule__LibOperationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9559:1: ( rule__LibOperationCS__Group__3__Impl rule__LibOperationCS__Group__4 )
-            // InternalOCLstdlib.g:9560:2: rule__LibOperationCS__Group__3__Impl rule__LibOperationCS__Group__4
+            // InternalOCLstdlib.g:9561:1: ( rule__LibOperationCS__Group__3__Impl rule__LibOperationCS__Group__4 )
+            // InternalOCLstdlib.g:9562:2: rule__LibOperationCS__Group__3__Impl rule__LibOperationCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__LibOperationCS__Group__3__Impl();
@@ -29655,27 +29655,27 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__3__Impl"
-    // InternalOCLstdlib.g:9567:1: rule__LibOperationCS__Group__3__Impl : ( ( rule__LibOperationCS__OwnedSignatureAssignment_3 )? ) ;
+    // InternalOCLstdlib.g:9569:1: rule__LibOperationCS__Group__3__Impl : ( ( rule__LibOperationCS__OwnedSignatureAssignment_3 )? ) ;
     public final void rule__LibOperationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9571:1: ( ( ( rule__LibOperationCS__OwnedSignatureAssignment_3 )? ) )
-            // InternalOCLstdlib.g:9572:1: ( ( rule__LibOperationCS__OwnedSignatureAssignment_3 )? )
+            // InternalOCLstdlib.g:9573:1: ( ( ( rule__LibOperationCS__OwnedSignatureAssignment_3 )? ) )
+            // InternalOCLstdlib.g:9574:1: ( ( rule__LibOperationCS__OwnedSignatureAssignment_3 )? )
             {
-            // InternalOCLstdlib.g:9572:1: ( ( rule__LibOperationCS__OwnedSignatureAssignment_3 )? )
-            // InternalOCLstdlib.g:9573:1: ( rule__LibOperationCS__OwnedSignatureAssignment_3 )?
+            // InternalOCLstdlib.g:9574:1: ( ( rule__LibOperationCS__OwnedSignatureAssignment_3 )? )
+            // InternalOCLstdlib.g:9575:1: ( rule__LibOperationCS__OwnedSignatureAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedSignatureAssignment_3());
             }
-            // InternalOCLstdlib.g:9574:1: ( rule__LibOperationCS__OwnedSignatureAssignment_3 )?
+            // InternalOCLstdlib.g:9576:1: ( rule__LibOperationCS__OwnedSignatureAssignment_3 )?
             int alt92=2;
             alt92 = dfa92.predict(input);
             switch (alt92) {
                 case 1 :
-                    // InternalOCLstdlib.g:9574:2: rule__LibOperationCS__OwnedSignatureAssignment_3
+                    // InternalOCLstdlib.g:9576:2: rule__LibOperationCS__OwnedSignatureAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibOperationCS__OwnedSignatureAssignment_3();
@@ -29713,14 +29713,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__4"
-    // InternalOCLstdlib.g:9584:1: rule__LibOperationCS__Group__4 : rule__LibOperationCS__Group__4__Impl rule__LibOperationCS__Group__5 ;
+    // InternalOCLstdlib.g:9586:1: rule__LibOperationCS__Group__4 : rule__LibOperationCS__Group__4__Impl rule__LibOperationCS__Group__5 ;
     public final void rule__LibOperationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9588:1: ( rule__LibOperationCS__Group__4__Impl rule__LibOperationCS__Group__5 )
-            // InternalOCLstdlib.g:9589:2: rule__LibOperationCS__Group__4__Impl rule__LibOperationCS__Group__5
+            // InternalOCLstdlib.g:9590:1: ( rule__LibOperationCS__Group__4__Impl rule__LibOperationCS__Group__5 )
+            // InternalOCLstdlib.g:9591:2: rule__LibOperationCS__Group__4__Impl rule__LibOperationCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_45);
             rule__LibOperationCS__Group__4__Impl();
@@ -29751,17 +29751,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__4__Impl"
-    // InternalOCLstdlib.g:9596:1: rule__LibOperationCS__Group__4__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:9598:1: rule__LibOperationCS__Group__4__Impl : ( '(' ) ;
     public final void rule__LibOperationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9600:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:9601:1: ( '(' )
+            // InternalOCLstdlib.g:9602:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:9603:1: ( '(' )
             {
-            // InternalOCLstdlib.g:9601:1: ( '(' )
-            // InternalOCLstdlib.g:9602:1: '('
+            // InternalOCLstdlib.g:9603:1: ( '(' )
+            // InternalOCLstdlib.g:9604:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getLeftParenthesisKeyword_4());
@@ -29792,14 +29792,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__5"
-    // InternalOCLstdlib.g:9615:1: rule__LibOperationCS__Group__5 : rule__LibOperationCS__Group__5__Impl rule__LibOperationCS__Group__6 ;
+    // InternalOCLstdlib.g:9617:1: rule__LibOperationCS__Group__5 : rule__LibOperationCS__Group__5__Impl rule__LibOperationCS__Group__6 ;
     public final void rule__LibOperationCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9619:1: ( rule__LibOperationCS__Group__5__Impl rule__LibOperationCS__Group__6 )
-            // InternalOCLstdlib.g:9620:2: rule__LibOperationCS__Group__5__Impl rule__LibOperationCS__Group__6
+            // InternalOCLstdlib.g:9621:1: ( rule__LibOperationCS__Group__5__Impl rule__LibOperationCS__Group__6 )
+            // InternalOCLstdlib.g:9622:2: rule__LibOperationCS__Group__5__Impl rule__LibOperationCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_45);
             rule__LibOperationCS__Group__5__Impl();
@@ -29830,22 +29830,22 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__5__Impl"
-    // InternalOCLstdlib.g:9627:1: rule__LibOperationCS__Group__5__Impl : ( ( rule__LibOperationCS__Group_5__0 )? ) ;
+    // InternalOCLstdlib.g:9629:1: rule__LibOperationCS__Group__5__Impl : ( ( rule__LibOperationCS__Group_5__0 )? ) ;
     public final void rule__LibOperationCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9631:1: ( ( ( rule__LibOperationCS__Group_5__0 )? ) )
-            // InternalOCLstdlib.g:9632:1: ( ( rule__LibOperationCS__Group_5__0 )? )
+            // InternalOCLstdlib.g:9633:1: ( ( ( rule__LibOperationCS__Group_5__0 )? ) )
+            // InternalOCLstdlib.g:9634:1: ( ( rule__LibOperationCS__Group_5__0 )? )
             {
-            // InternalOCLstdlib.g:9632:1: ( ( rule__LibOperationCS__Group_5__0 )? )
-            // InternalOCLstdlib.g:9633:1: ( rule__LibOperationCS__Group_5__0 )?
+            // InternalOCLstdlib.g:9634:1: ( ( rule__LibOperationCS__Group_5__0 )? )
+            // InternalOCLstdlib.g:9635:1: ( rule__LibOperationCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getGroup_5());
             }
-            // InternalOCLstdlib.g:9634:1: ( rule__LibOperationCS__Group_5__0 )?
+            // InternalOCLstdlib.g:9636:1: ( rule__LibOperationCS__Group_5__0 )?
             int alt93=2;
             int LA93_0 = input.LA(1);
 
@@ -29854,7 +29854,7 @@
             }
             switch (alt93) {
                 case 1 :
-                    // InternalOCLstdlib.g:9634:2: rule__LibOperationCS__Group_5__0
+                    // InternalOCLstdlib.g:9636:2: rule__LibOperationCS__Group_5__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibOperationCS__Group_5__0();
@@ -29892,14 +29892,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__6"
-    // InternalOCLstdlib.g:9644:1: rule__LibOperationCS__Group__6 : rule__LibOperationCS__Group__6__Impl rule__LibOperationCS__Group__7 ;
+    // InternalOCLstdlib.g:9646:1: rule__LibOperationCS__Group__6 : rule__LibOperationCS__Group__6__Impl rule__LibOperationCS__Group__7 ;
     public final void rule__LibOperationCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9648:1: ( rule__LibOperationCS__Group__6__Impl rule__LibOperationCS__Group__7 )
-            // InternalOCLstdlib.g:9649:2: rule__LibOperationCS__Group__6__Impl rule__LibOperationCS__Group__7
+            // InternalOCLstdlib.g:9650:1: ( rule__LibOperationCS__Group__6__Impl rule__LibOperationCS__Group__7 )
+            // InternalOCLstdlib.g:9651:2: rule__LibOperationCS__Group__6__Impl rule__LibOperationCS__Group__7
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__LibOperationCS__Group__6__Impl();
@@ -29930,17 +29930,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__6__Impl"
-    // InternalOCLstdlib.g:9656:1: rule__LibOperationCS__Group__6__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:9658:1: rule__LibOperationCS__Group__6__Impl : ( ')' ) ;
     public final void rule__LibOperationCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9660:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:9661:1: ( ')' )
+            // InternalOCLstdlib.g:9662:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:9663:1: ( ')' )
             {
-            // InternalOCLstdlib.g:9661:1: ( ')' )
-            // InternalOCLstdlib.g:9662:1: ')'
+            // InternalOCLstdlib.g:9663:1: ( ')' )
+            // InternalOCLstdlib.g:9664:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getRightParenthesisKeyword_6());
@@ -29971,14 +29971,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__7"
-    // InternalOCLstdlib.g:9675:1: rule__LibOperationCS__Group__7 : rule__LibOperationCS__Group__7__Impl rule__LibOperationCS__Group__8 ;
+    // InternalOCLstdlib.g:9677:1: rule__LibOperationCS__Group__7 : rule__LibOperationCS__Group__7__Impl rule__LibOperationCS__Group__8 ;
     public final void rule__LibOperationCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9679:1: ( rule__LibOperationCS__Group__7__Impl rule__LibOperationCS__Group__8 )
-            // InternalOCLstdlib.g:9680:2: rule__LibOperationCS__Group__7__Impl rule__LibOperationCS__Group__8
+            // InternalOCLstdlib.g:9681:1: ( rule__LibOperationCS__Group__7__Impl rule__LibOperationCS__Group__8 )
+            // InternalOCLstdlib.g:9682:2: rule__LibOperationCS__Group__7__Impl rule__LibOperationCS__Group__8
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__LibOperationCS__Group__7__Impl();
@@ -30009,17 +30009,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__7__Impl"
-    // InternalOCLstdlib.g:9687:1: rule__LibOperationCS__Group__7__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:9689:1: rule__LibOperationCS__Group__7__Impl : ( ':' ) ;
     public final void rule__LibOperationCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9691:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:9692:1: ( ':' )
+            // InternalOCLstdlib.g:9693:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:9694:1: ( ':' )
             {
-            // InternalOCLstdlib.g:9692:1: ( ':' )
-            // InternalOCLstdlib.g:9693:1: ':'
+            // InternalOCLstdlib.g:9694:1: ( ':' )
+            // InternalOCLstdlib.g:9695:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getColonKeyword_7());
@@ -30050,14 +30050,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__8"
-    // InternalOCLstdlib.g:9706:1: rule__LibOperationCS__Group__8 : rule__LibOperationCS__Group__8__Impl rule__LibOperationCS__Group__9 ;
+    // InternalOCLstdlib.g:9708:1: rule__LibOperationCS__Group__8 : rule__LibOperationCS__Group__8__Impl rule__LibOperationCS__Group__9 ;
     public final void rule__LibOperationCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9710:1: ( rule__LibOperationCS__Group__8__Impl rule__LibOperationCS__Group__9 )
-            // InternalOCLstdlib.g:9711:2: rule__LibOperationCS__Group__8__Impl rule__LibOperationCS__Group__9
+            // InternalOCLstdlib.g:9712:1: ( rule__LibOperationCS__Group__8__Impl rule__LibOperationCS__Group__9 )
+            // InternalOCLstdlib.g:9713:2: rule__LibOperationCS__Group__8__Impl rule__LibOperationCS__Group__9
             {
             pushFollow(FollowSets000.FOLLOW_46);
             rule__LibOperationCS__Group__8__Impl();
@@ -30088,23 +30088,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__8__Impl"
-    // InternalOCLstdlib.g:9718:1: rule__LibOperationCS__Group__8__Impl : ( ( rule__LibOperationCS__OwnedTypeAssignment_8 ) ) ;
+    // InternalOCLstdlib.g:9720:1: rule__LibOperationCS__Group__8__Impl : ( ( rule__LibOperationCS__OwnedTypeAssignment_8 ) ) ;
     public final void rule__LibOperationCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9722:1: ( ( ( rule__LibOperationCS__OwnedTypeAssignment_8 ) ) )
-            // InternalOCLstdlib.g:9723:1: ( ( rule__LibOperationCS__OwnedTypeAssignment_8 ) )
+            // InternalOCLstdlib.g:9724:1: ( ( ( rule__LibOperationCS__OwnedTypeAssignment_8 ) ) )
+            // InternalOCLstdlib.g:9725:1: ( ( rule__LibOperationCS__OwnedTypeAssignment_8 ) )
             {
-            // InternalOCLstdlib.g:9723:1: ( ( rule__LibOperationCS__OwnedTypeAssignment_8 ) )
-            // InternalOCLstdlib.g:9724:1: ( rule__LibOperationCS__OwnedTypeAssignment_8 )
+            // InternalOCLstdlib.g:9725:1: ( ( rule__LibOperationCS__OwnedTypeAssignment_8 ) )
+            // InternalOCLstdlib.g:9726:1: ( rule__LibOperationCS__OwnedTypeAssignment_8 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedTypeAssignment_8());
             }
-            // InternalOCLstdlib.g:9725:1: ( rule__LibOperationCS__OwnedTypeAssignment_8 )
-            // InternalOCLstdlib.g:9725:2: rule__LibOperationCS__OwnedTypeAssignment_8
+            // InternalOCLstdlib.g:9727:1: ( rule__LibOperationCS__OwnedTypeAssignment_8 )
+            // InternalOCLstdlib.g:9727:2: rule__LibOperationCS__OwnedTypeAssignment_8
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__OwnedTypeAssignment_8();
@@ -30139,14 +30139,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__9"
-    // InternalOCLstdlib.g:9735:1: rule__LibOperationCS__Group__9 : rule__LibOperationCS__Group__9__Impl rule__LibOperationCS__Group__10 ;
+    // InternalOCLstdlib.g:9737:1: rule__LibOperationCS__Group__9 : rule__LibOperationCS__Group__9__Impl rule__LibOperationCS__Group__10 ;
     public final void rule__LibOperationCS__Group__9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9739:1: ( rule__LibOperationCS__Group__9__Impl rule__LibOperationCS__Group__10 )
-            // InternalOCLstdlib.g:9740:2: rule__LibOperationCS__Group__9__Impl rule__LibOperationCS__Group__10
+            // InternalOCLstdlib.g:9741:1: ( rule__LibOperationCS__Group__9__Impl rule__LibOperationCS__Group__10 )
+            // InternalOCLstdlib.g:9742:2: rule__LibOperationCS__Group__9__Impl rule__LibOperationCS__Group__10
             {
             pushFollow(FollowSets000.FOLLOW_46);
             rule__LibOperationCS__Group__9__Impl();
@@ -30177,22 +30177,22 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__9__Impl"
-    // InternalOCLstdlib.g:9747:1: rule__LibOperationCS__Group__9__Impl : ( ( rule__LibOperationCS__IsValidatingAssignment_9 )? ) ;
+    // InternalOCLstdlib.g:9749:1: rule__LibOperationCS__Group__9__Impl : ( ( rule__LibOperationCS__IsValidatingAssignment_9 )? ) ;
     public final void rule__LibOperationCS__Group__9__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9751:1: ( ( ( rule__LibOperationCS__IsValidatingAssignment_9 )? ) )
-            // InternalOCLstdlib.g:9752:1: ( ( rule__LibOperationCS__IsValidatingAssignment_9 )? )
+            // InternalOCLstdlib.g:9753:1: ( ( ( rule__LibOperationCS__IsValidatingAssignment_9 )? ) )
+            // InternalOCLstdlib.g:9754:1: ( ( rule__LibOperationCS__IsValidatingAssignment_9 )? )
             {
-            // InternalOCLstdlib.g:9752:1: ( ( rule__LibOperationCS__IsValidatingAssignment_9 )? )
-            // InternalOCLstdlib.g:9753:1: ( rule__LibOperationCS__IsValidatingAssignment_9 )?
+            // InternalOCLstdlib.g:9754:1: ( ( rule__LibOperationCS__IsValidatingAssignment_9 )? )
+            // InternalOCLstdlib.g:9755:1: ( rule__LibOperationCS__IsValidatingAssignment_9 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getIsValidatingAssignment_9());
             }
-            // InternalOCLstdlib.g:9754:1: ( rule__LibOperationCS__IsValidatingAssignment_9 )?
+            // InternalOCLstdlib.g:9756:1: ( rule__LibOperationCS__IsValidatingAssignment_9 )?
             int alt94=2;
             int LA94_0 = input.LA(1);
 
@@ -30201,7 +30201,7 @@
             }
             switch (alt94) {
                 case 1 :
-                    // InternalOCLstdlib.g:9754:2: rule__LibOperationCS__IsValidatingAssignment_9
+                    // InternalOCLstdlib.g:9756:2: rule__LibOperationCS__IsValidatingAssignment_9
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibOperationCS__IsValidatingAssignment_9();
@@ -30239,14 +30239,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__10"
-    // InternalOCLstdlib.g:9764:1: rule__LibOperationCS__Group__10 : rule__LibOperationCS__Group__10__Impl rule__LibOperationCS__Group__11 ;
+    // InternalOCLstdlib.g:9766:1: rule__LibOperationCS__Group__10 : rule__LibOperationCS__Group__10__Impl rule__LibOperationCS__Group__11 ;
     public final void rule__LibOperationCS__Group__10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9768:1: ( rule__LibOperationCS__Group__10__Impl rule__LibOperationCS__Group__11 )
-            // InternalOCLstdlib.g:9769:2: rule__LibOperationCS__Group__10__Impl rule__LibOperationCS__Group__11
+            // InternalOCLstdlib.g:9770:1: ( rule__LibOperationCS__Group__10__Impl rule__LibOperationCS__Group__11 )
+            // InternalOCLstdlib.g:9771:2: rule__LibOperationCS__Group__10__Impl rule__LibOperationCS__Group__11
             {
             pushFollow(FollowSets000.FOLLOW_46);
             rule__LibOperationCS__Group__10__Impl();
@@ -30277,22 +30277,22 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__10__Impl"
-    // InternalOCLstdlib.g:9776:1: rule__LibOperationCS__Group__10__Impl : ( ( rule__LibOperationCS__IsInvalidatingAssignment_10 )? ) ;
+    // InternalOCLstdlib.g:9778:1: rule__LibOperationCS__Group__10__Impl : ( ( rule__LibOperationCS__IsInvalidatingAssignment_10 )? ) ;
     public final void rule__LibOperationCS__Group__10__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9780:1: ( ( ( rule__LibOperationCS__IsInvalidatingAssignment_10 )? ) )
-            // InternalOCLstdlib.g:9781:1: ( ( rule__LibOperationCS__IsInvalidatingAssignment_10 )? )
+            // InternalOCLstdlib.g:9782:1: ( ( ( rule__LibOperationCS__IsInvalidatingAssignment_10 )? ) )
+            // InternalOCLstdlib.g:9783:1: ( ( rule__LibOperationCS__IsInvalidatingAssignment_10 )? )
             {
-            // InternalOCLstdlib.g:9781:1: ( ( rule__LibOperationCS__IsInvalidatingAssignment_10 )? )
-            // InternalOCLstdlib.g:9782:1: ( rule__LibOperationCS__IsInvalidatingAssignment_10 )?
+            // InternalOCLstdlib.g:9783:1: ( ( rule__LibOperationCS__IsInvalidatingAssignment_10 )? )
+            // InternalOCLstdlib.g:9784:1: ( rule__LibOperationCS__IsInvalidatingAssignment_10 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getIsInvalidatingAssignment_10());
             }
-            // InternalOCLstdlib.g:9783:1: ( rule__LibOperationCS__IsInvalidatingAssignment_10 )?
+            // InternalOCLstdlib.g:9785:1: ( rule__LibOperationCS__IsInvalidatingAssignment_10 )?
             int alt95=2;
             int LA95_0 = input.LA(1);
 
@@ -30301,7 +30301,7 @@
             }
             switch (alt95) {
                 case 1 :
-                    // InternalOCLstdlib.g:9783:2: rule__LibOperationCS__IsInvalidatingAssignment_10
+                    // InternalOCLstdlib.g:9785:2: rule__LibOperationCS__IsInvalidatingAssignment_10
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibOperationCS__IsInvalidatingAssignment_10();
@@ -30339,14 +30339,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__11"
-    // InternalOCLstdlib.g:9793:1: rule__LibOperationCS__Group__11 : rule__LibOperationCS__Group__11__Impl rule__LibOperationCS__Group__12 ;
+    // InternalOCLstdlib.g:9795:1: rule__LibOperationCS__Group__11 : rule__LibOperationCS__Group__11__Impl rule__LibOperationCS__Group__12 ;
     public final void rule__LibOperationCS__Group__11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9797:1: ( rule__LibOperationCS__Group__11__Impl rule__LibOperationCS__Group__12 )
-            // InternalOCLstdlib.g:9798:2: rule__LibOperationCS__Group__11__Impl rule__LibOperationCS__Group__12
+            // InternalOCLstdlib.g:9799:1: ( rule__LibOperationCS__Group__11__Impl rule__LibOperationCS__Group__12 )
+            // InternalOCLstdlib.g:9800:2: rule__LibOperationCS__Group__11__Impl rule__LibOperationCS__Group__12
             {
             pushFollow(FollowSets000.FOLLOW_46);
             rule__LibOperationCS__Group__11__Impl();
@@ -30377,22 +30377,22 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__11__Impl"
-    // InternalOCLstdlib.g:9805:1: rule__LibOperationCS__Group__11__Impl : ( ( rule__LibOperationCS__Group_11__0 )? ) ;
+    // InternalOCLstdlib.g:9807:1: rule__LibOperationCS__Group__11__Impl : ( ( rule__LibOperationCS__Group_11__0 )? ) ;
     public final void rule__LibOperationCS__Group__11__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9809:1: ( ( ( rule__LibOperationCS__Group_11__0 )? ) )
-            // InternalOCLstdlib.g:9810:1: ( ( rule__LibOperationCS__Group_11__0 )? )
+            // InternalOCLstdlib.g:9811:1: ( ( ( rule__LibOperationCS__Group_11__0 )? ) )
+            // InternalOCLstdlib.g:9812:1: ( ( rule__LibOperationCS__Group_11__0 )? )
             {
-            // InternalOCLstdlib.g:9810:1: ( ( rule__LibOperationCS__Group_11__0 )? )
-            // InternalOCLstdlib.g:9811:1: ( rule__LibOperationCS__Group_11__0 )?
+            // InternalOCLstdlib.g:9812:1: ( ( rule__LibOperationCS__Group_11__0 )? )
+            // InternalOCLstdlib.g:9813:1: ( rule__LibOperationCS__Group_11__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getGroup_11());
             }
-            // InternalOCLstdlib.g:9812:1: ( rule__LibOperationCS__Group_11__0 )?
+            // InternalOCLstdlib.g:9814:1: ( rule__LibOperationCS__Group_11__0 )?
             int alt96=2;
             int LA96_0 = input.LA(1);
 
@@ -30401,7 +30401,7 @@
             }
             switch (alt96) {
                 case 1 :
-                    // InternalOCLstdlib.g:9812:2: rule__LibOperationCS__Group_11__0
+                    // InternalOCLstdlib.g:9814:2: rule__LibOperationCS__Group_11__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibOperationCS__Group_11__0();
@@ -30439,14 +30439,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__12"
-    // InternalOCLstdlib.g:9822:1: rule__LibOperationCS__Group__12 : rule__LibOperationCS__Group__12__Impl rule__LibOperationCS__Group__13 ;
+    // InternalOCLstdlib.g:9824:1: rule__LibOperationCS__Group__12 : rule__LibOperationCS__Group__12__Impl rule__LibOperationCS__Group__13 ;
     public final void rule__LibOperationCS__Group__12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9826:1: ( rule__LibOperationCS__Group__12__Impl rule__LibOperationCS__Group__13 )
-            // InternalOCLstdlib.g:9827:2: rule__LibOperationCS__Group__12__Impl rule__LibOperationCS__Group__13
+            // InternalOCLstdlib.g:9828:1: ( rule__LibOperationCS__Group__12__Impl rule__LibOperationCS__Group__13 )
+            // InternalOCLstdlib.g:9829:2: rule__LibOperationCS__Group__12__Impl rule__LibOperationCS__Group__13
             {
             pushFollow(FollowSets000.FOLLOW_46);
             rule__LibOperationCS__Group__12__Impl();
@@ -30477,22 +30477,22 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__12__Impl"
-    // InternalOCLstdlib.g:9834:1: rule__LibOperationCS__Group__12__Impl : ( ( rule__LibOperationCS__Group_12__0 )? ) ;
+    // InternalOCLstdlib.g:9836:1: rule__LibOperationCS__Group__12__Impl : ( ( rule__LibOperationCS__Group_12__0 )? ) ;
     public final void rule__LibOperationCS__Group__12__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9838:1: ( ( ( rule__LibOperationCS__Group_12__0 )? ) )
-            // InternalOCLstdlib.g:9839:1: ( ( rule__LibOperationCS__Group_12__0 )? )
+            // InternalOCLstdlib.g:9840:1: ( ( ( rule__LibOperationCS__Group_12__0 )? ) )
+            // InternalOCLstdlib.g:9841:1: ( ( rule__LibOperationCS__Group_12__0 )? )
             {
-            // InternalOCLstdlib.g:9839:1: ( ( rule__LibOperationCS__Group_12__0 )? )
-            // InternalOCLstdlib.g:9840:1: ( rule__LibOperationCS__Group_12__0 )?
+            // InternalOCLstdlib.g:9841:1: ( ( rule__LibOperationCS__Group_12__0 )? )
+            // InternalOCLstdlib.g:9842:1: ( rule__LibOperationCS__Group_12__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getGroup_12());
             }
-            // InternalOCLstdlib.g:9841:1: ( rule__LibOperationCS__Group_12__0 )?
+            // InternalOCLstdlib.g:9843:1: ( rule__LibOperationCS__Group_12__0 )?
             int alt97=2;
             int LA97_0 = input.LA(1);
 
@@ -30501,7 +30501,7 @@
             }
             switch (alt97) {
                 case 1 :
-                    // InternalOCLstdlib.g:9841:2: rule__LibOperationCS__Group_12__0
+                    // InternalOCLstdlib.g:9843:2: rule__LibOperationCS__Group_12__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibOperationCS__Group_12__0();
@@ -30539,14 +30539,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__13"
-    // InternalOCLstdlib.g:9851:1: rule__LibOperationCS__Group__13 : rule__LibOperationCS__Group__13__Impl ;
+    // InternalOCLstdlib.g:9853:1: rule__LibOperationCS__Group__13 : rule__LibOperationCS__Group__13__Impl ;
     public final void rule__LibOperationCS__Group__13() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9855:1: ( rule__LibOperationCS__Group__13__Impl )
-            // InternalOCLstdlib.g:9856:2: rule__LibOperationCS__Group__13__Impl
+            // InternalOCLstdlib.g:9857:1: ( rule__LibOperationCS__Group__13__Impl )
+            // InternalOCLstdlib.g:9858:2: rule__LibOperationCS__Group__13__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__Group__13__Impl();
@@ -30572,23 +30572,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group__13__Impl"
-    // InternalOCLstdlib.g:9862:1: rule__LibOperationCS__Group__13__Impl : ( ( rule__LibOperationCS__Alternatives_13 ) ) ;
+    // InternalOCLstdlib.g:9864:1: rule__LibOperationCS__Group__13__Impl : ( ( rule__LibOperationCS__Alternatives_13 ) ) ;
     public final void rule__LibOperationCS__Group__13__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9866:1: ( ( ( rule__LibOperationCS__Alternatives_13 ) ) )
-            // InternalOCLstdlib.g:9867:1: ( ( rule__LibOperationCS__Alternatives_13 ) )
+            // InternalOCLstdlib.g:9868:1: ( ( ( rule__LibOperationCS__Alternatives_13 ) ) )
+            // InternalOCLstdlib.g:9869:1: ( ( rule__LibOperationCS__Alternatives_13 ) )
             {
-            // InternalOCLstdlib.g:9867:1: ( ( rule__LibOperationCS__Alternatives_13 ) )
-            // InternalOCLstdlib.g:9868:1: ( rule__LibOperationCS__Alternatives_13 )
+            // InternalOCLstdlib.g:9869:1: ( ( rule__LibOperationCS__Alternatives_13 ) )
+            // InternalOCLstdlib.g:9870:1: ( rule__LibOperationCS__Alternatives_13 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getAlternatives_13());
             }
-            // InternalOCLstdlib.g:9869:1: ( rule__LibOperationCS__Alternatives_13 )
-            // InternalOCLstdlib.g:9869:2: rule__LibOperationCS__Alternatives_13
+            // InternalOCLstdlib.g:9871:1: ( rule__LibOperationCS__Alternatives_13 )
+            // InternalOCLstdlib.g:9871:2: rule__LibOperationCS__Alternatives_13
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__Alternatives_13();
@@ -30623,14 +30623,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_5__0"
-    // InternalOCLstdlib.g:9907:1: rule__LibOperationCS__Group_5__0 : rule__LibOperationCS__Group_5__0__Impl rule__LibOperationCS__Group_5__1 ;
+    // InternalOCLstdlib.g:9909:1: rule__LibOperationCS__Group_5__0 : rule__LibOperationCS__Group_5__0__Impl rule__LibOperationCS__Group_5__1 ;
     public final void rule__LibOperationCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9911:1: ( rule__LibOperationCS__Group_5__0__Impl rule__LibOperationCS__Group_5__1 )
-            // InternalOCLstdlib.g:9912:2: rule__LibOperationCS__Group_5__0__Impl rule__LibOperationCS__Group_5__1
+            // InternalOCLstdlib.g:9913:1: ( rule__LibOperationCS__Group_5__0__Impl rule__LibOperationCS__Group_5__1 )
+            // InternalOCLstdlib.g:9914:2: rule__LibOperationCS__Group_5__0__Impl rule__LibOperationCS__Group_5__1
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__LibOperationCS__Group_5__0__Impl();
@@ -30661,23 +30661,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_5__0__Impl"
-    // InternalOCLstdlib.g:9919:1: rule__LibOperationCS__Group_5__0__Impl : ( ( rule__LibOperationCS__OwnedParametersAssignment_5_0 ) ) ;
+    // InternalOCLstdlib.g:9921:1: rule__LibOperationCS__Group_5__0__Impl : ( ( rule__LibOperationCS__OwnedParametersAssignment_5_0 ) ) ;
     public final void rule__LibOperationCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9923:1: ( ( ( rule__LibOperationCS__OwnedParametersAssignment_5_0 ) ) )
-            // InternalOCLstdlib.g:9924:1: ( ( rule__LibOperationCS__OwnedParametersAssignment_5_0 ) )
+            // InternalOCLstdlib.g:9925:1: ( ( ( rule__LibOperationCS__OwnedParametersAssignment_5_0 ) ) )
+            // InternalOCLstdlib.g:9926:1: ( ( rule__LibOperationCS__OwnedParametersAssignment_5_0 ) )
             {
-            // InternalOCLstdlib.g:9924:1: ( ( rule__LibOperationCS__OwnedParametersAssignment_5_0 ) )
-            // InternalOCLstdlib.g:9925:1: ( rule__LibOperationCS__OwnedParametersAssignment_5_0 )
+            // InternalOCLstdlib.g:9926:1: ( ( rule__LibOperationCS__OwnedParametersAssignment_5_0 ) )
+            // InternalOCLstdlib.g:9927:1: ( rule__LibOperationCS__OwnedParametersAssignment_5_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedParametersAssignment_5_0());
             }
-            // InternalOCLstdlib.g:9926:1: ( rule__LibOperationCS__OwnedParametersAssignment_5_0 )
-            // InternalOCLstdlib.g:9926:2: rule__LibOperationCS__OwnedParametersAssignment_5_0
+            // InternalOCLstdlib.g:9928:1: ( rule__LibOperationCS__OwnedParametersAssignment_5_0 )
+            // InternalOCLstdlib.g:9928:2: rule__LibOperationCS__OwnedParametersAssignment_5_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__OwnedParametersAssignment_5_0();
@@ -30712,14 +30712,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_5__1"
-    // InternalOCLstdlib.g:9936:1: rule__LibOperationCS__Group_5__1 : rule__LibOperationCS__Group_5__1__Impl ;
+    // InternalOCLstdlib.g:9938:1: rule__LibOperationCS__Group_5__1 : rule__LibOperationCS__Group_5__1__Impl ;
     public final void rule__LibOperationCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9940:1: ( rule__LibOperationCS__Group_5__1__Impl )
-            // InternalOCLstdlib.g:9941:2: rule__LibOperationCS__Group_5__1__Impl
+            // InternalOCLstdlib.g:9942:1: ( rule__LibOperationCS__Group_5__1__Impl )
+            // InternalOCLstdlib.g:9943:2: rule__LibOperationCS__Group_5__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__Group_5__1__Impl();
@@ -30745,22 +30745,22 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_5__1__Impl"
-    // InternalOCLstdlib.g:9947:1: rule__LibOperationCS__Group_5__1__Impl : ( ( rule__LibOperationCS__Group_5_1__0 )* ) ;
+    // InternalOCLstdlib.g:9949:1: rule__LibOperationCS__Group_5__1__Impl : ( ( rule__LibOperationCS__Group_5_1__0 )* ) ;
     public final void rule__LibOperationCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9951:1: ( ( ( rule__LibOperationCS__Group_5_1__0 )* ) )
-            // InternalOCLstdlib.g:9952:1: ( ( rule__LibOperationCS__Group_5_1__0 )* )
+            // InternalOCLstdlib.g:9953:1: ( ( ( rule__LibOperationCS__Group_5_1__0 )* ) )
+            // InternalOCLstdlib.g:9954:1: ( ( rule__LibOperationCS__Group_5_1__0 )* )
             {
-            // InternalOCLstdlib.g:9952:1: ( ( rule__LibOperationCS__Group_5_1__0 )* )
-            // InternalOCLstdlib.g:9953:1: ( rule__LibOperationCS__Group_5_1__0 )*
+            // InternalOCLstdlib.g:9954:1: ( ( rule__LibOperationCS__Group_5_1__0 )* )
+            // InternalOCLstdlib.g:9955:1: ( rule__LibOperationCS__Group_5_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getGroup_5_1());
             }
-            // InternalOCLstdlib.g:9954:1: ( rule__LibOperationCS__Group_5_1__0 )*
+            // InternalOCLstdlib.g:9956:1: ( rule__LibOperationCS__Group_5_1__0 )*
             loop98:
             do {
                 int alt98=2;
@@ -30773,7 +30773,7 @@
 
                 switch (alt98) {
             	case 1 :
-            	    // InternalOCLstdlib.g:9954:2: rule__LibOperationCS__Group_5_1__0
+            	    // InternalOCLstdlib.g:9956:2: rule__LibOperationCS__Group_5_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__LibOperationCS__Group_5_1__0();
@@ -30814,14 +30814,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_5_1__0"
-    // InternalOCLstdlib.g:9968:1: rule__LibOperationCS__Group_5_1__0 : rule__LibOperationCS__Group_5_1__0__Impl rule__LibOperationCS__Group_5_1__1 ;
+    // InternalOCLstdlib.g:9970:1: rule__LibOperationCS__Group_5_1__0 : rule__LibOperationCS__Group_5_1__0__Impl rule__LibOperationCS__Group_5_1__1 ;
     public final void rule__LibOperationCS__Group_5_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9972:1: ( rule__LibOperationCS__Group_5_1__0__Impl rule__LibOperationCS__Group_5_1__1 )
-            // InternalOCLstdlib.g:9973:2: rule__LibOperationCS__Group_5_1__0__Impl rule__LibOperationCS__Group_5_1__1
+            // InternalOCLstdlib.g:9974:1: ( rule__LibOperationCS__Group_5_1__0__Impl rule__LibOperationCS__Group_5_1__1 )
+            // InternalOCLstdlib.g:9975:2: rule__LibOperationCS__Group_5_1__0__Impl rule__LibOperationCS__Group_5_1__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__LibOperationCS__Group_5_1__0__Impl();
@@ -30852,17 +30852,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_5_1__0__Impl"
-    // InternalOCLstdlib.g:9980:1: rule__LibOperationCS__Group_5_1__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:9982:1: rule__LibOperationCS__Group_5_1__0__Impl : ( ',' ) ;
     public final void rule__LibOperationCS__Group_5_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:9984:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:9985:1: ( ',' )
+            // InternalOCLstdlib.g:9986:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:9987:1: ( ',' )
             {
-            // InternalOCLstdlib.g:9985:1: ( ',' )
-            // InternalOCLstdlib.g:9986:1: ','
+            // InternalOCLstdlib.g:9987:1: ( ',' )
+            // InternalOCLstdlib.g:9988:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getCommaKeyword_5_1_0());
@@ -30893,14 +30893,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_5_1__1"
-    // InternalOCLstdlib.g:9999:1: rule__LibOperationCS__Group_5_1__1 : rule__LibOperationCS__Group_5_1__1__Impl ;
+    // InternalOCLstdlib.g:10001:1: rule__LibOperationCS__Group_5_1__1 : rule__LibOperationCS__Group_5_1__1__Impl ;
     public final void rule__LibOperationCS__Group_5_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10003:1: ( rule__LibOperationCS__Group_5_1__1__Impl )
-            // InternalOCLstdlib.g:10004:2: rule__LibOperationCS__Group_5_1__1__Impl
+            // InternalOCLstdlib.g:10005:1: ( rule__LibOperationCS__Group_5_1__1__Impl )
+            // InternalOCLstdlib.g:10006:2: rule__LibOperationCS__Group_5_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__Group_5_1__1__Impl();
@@ -30926,23 +30926,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_5_1__1__Impl"
-    // InternalOCLstdlib.g:10010:1: rule__LibOperationCS__Group_5_1__1__Impl : ( ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 ) ) ;
+    // InternalOCLstdlib.g:10012:1: rule__LibOperationCS__Group_5_1__1__Impl : ( ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 ) ) ;
     public final void rule__LibOperationCS__Group_5_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10014:1: ( ( ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 ) ) )
-            // InternalOCLstdlib.g:10015:1: ( ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 ) )
+            // InternalOCLstdlib.g:10016:1: ( ( ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 ) ) )
+            // InternalOCLstdlib.g:10017:1: ( ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 ) )
             {
-            // InternalOCLstdlib.g:10015:1: ( ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 ) )
-            // InternalOCLstdlib.g:10016:1: ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 )
+            // InternalOCLstdlib.g:10017:1: ( ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 ) )
+            // InternalOCLstdlib.g:10018:1: ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedParametersAssignment_5_1_1());
             }
-            // InternalOCLstdlib.g:10017:1: ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 )
-            // InternalOCLstdlib.g:10017:2: rule__LibOperationCS__OwnedParametersAssignment_5_1_1
+            // InternalOCLstdlib.g:10019:1: ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 )
+            // InternalOCLstdlib.g:10019:2: rule__LibOperationCS__OwnedParametersAssignment_5_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__OwnedParametersAssignment_5_1_1();
@@ -30977,14 +30977,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_11__0"
-    // InternalOCLstdlib.g:10031:1: rule__LibOperationCS__Group_11__0 : rule__LibOperationCS__Group_11__0__Impl rule__LibOperationCS__Group_11__1 ;
+    // InternalOCLstdlib.g:10033:1: rule__LibOperationCS__Group_11__0 : rule__LibOperationCS__Group_11__0__Impl rule__LibOperationCS__Group_11__1 ;
     public final void rule__LibOperationCS__Group_11__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10035:1: ( rule__LibOperationCS__Group_11__0__Impl rule__LibOperationCS__Group_11__1 )
-            // InternalOCLstdlib.g:10036:2: rule__LibOperationCS__Group_11__0__Impl rule__LibOperationCS__Group_11__1
+            // InternalOCLstdlib.g:10037:1: ( rule__LibOperationCS__Group_11__0__Impl rule__LibOperationCS__Group_11__1 )
+            // InternalOCLstdlib.g:10038:2: rule__LibOperationCS__Group_11__0__Impl rule__LibOperationCS__Group_11__1
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__LibOperationCS__Group_11__0__Impl();
@@ -31015,17 +31015,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_11__0__Impl"
-    // InternalOCLstdlib.g:10043:1: rule__LibOperationCS__Group_11__0__Impl : ( 'precedence' ) ;
+    // InternalOCLstdlib.g:10045:1: rule__LibOperationCS__Group_11__0__Impl : ( 'precedence' ) ;
     public final void rule__LibOperationCS__Group_11__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10047:1: ( ( 'precedence' ) )
-            // InternalOCLstdlib.g:10048:1: ( 'precedence' )
+            // InternalOCLstdlib.g:10049:1: ( ( 'precedence' ) )
+            // InternalOCLstdlib.g:10050:1: ( 'precedence' )
             {
-            // InternalOCLstdlib.g:10048:1: ( 'precedence' )
-            // InternalOCLstdlib.g:10049:1: 'precedence'
+            // InternalOCLstdlib.g:10050:1: ( 'precedence' )
+            // InternalOCLstdlib.g:10051:1: 'precedence'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getPrecedenceKeyword_11_0());
@@ -31056,14 +31056,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_11__1"
-    // InternalOCLstdlib.g:10062:1: rule__LibOperationCS__Group_11__1 : rule__LibOperationCS__Group_11__1__Impl rule__LibOperationCS__Group_11__2 ;
+    // InternalOCLstdlib.g:10064:1: rule__LibOperationCS__Group_11__1 : rule__LibOperationCS__Group_11__1__Impl rule__LibOperationCS__Group_11__2 ;
     public final void rule__LibOperationCS__Group_11__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10066:1: ( rule__LibOperationCS__Group_11__1__Impl rule__LibOperationCS__Group_11__2 )
-            // InternalOCLstdlib.g:10067:2: rule__LibOperationCS__Group_11__1__Impl rule__LibOperationCS__Group_11__2
+            // InternalOCLstdlib.g:10068:1: ( rule__LibOperationCS__Group_11__1__Impl rule__LibOperationCS__Group_11__2 )
+            // InternalOCLstdlib.g:10069:2: rule__LibOperationCS__Group_11__1__Impl rule__LibOperationCS__Group_11__2
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__LibOperationCS__Group_11__1__Impl();
@@ -31094,17 +31094,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_11__1__Impl"
-    // InternalOCLstdlib.g:10074:1: rule__LibOperationCS__Group_11__1__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:10076:1: rule__LibOperationCS__Group_11__1__Impl : ( '=' ) ;
     public final void rule__LibOperationCS__Group_11__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10078:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:10079:1: ( '=' )
+            // InternalOCLstdlib.g:10080:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:10081:1: ( '=' )
             {
-            // InternalOCLstdlib.g:10079:1: ( '=' )
-            // InternalOCLstdlib.g:10080:1: '='
+            // InternalOCLstdlib.g:10081:1: ( '=' )
+            // InternalOCLstdlib.g:10082:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getEqualsSignKeyword_11_1());
@@ -31135,14 +31135,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_11__2"
-    // InternalOCLstdlib.g:10093:1: rule__LibOperationCS__Group_11__2 : rule__LibOperationCS__Group_11__2__Impl ;
+    // InternalOCLstdlib.g:10095:1: rule__LibOperationCS__Group_11__2 : rule__LibOperationCS__Group_11__2__Impl ;
     public final void rule__LibOperationCS__Group_11__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10097:1: ( rule__LibOperationCS__Group_11__2__Impl )
-            // InternalOCLstdlib.g:10098:2: rule__LibOperationCS__Group_11__2__Impl
+            // InternalOCLstdlib.g:10099:1: ( rule__LibOperationCS__Group_11__2__Impl )
+            // InternalOCLstdlib.g:10100:2: rule__LibOperationCS__Group_11__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__Group_11__2__Impl();
@@ -31168,23 +31168,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_11__2__Impl"
-    // InternalOCLstdlib.g:10104:1: rule__LibOperationCS__Group_11__2__Impl : ( ( rule__LibOperationCS__PrecedenceAssignment_11_2 ) ) ;
+    // InternalOCLstdlib.g:10106:1: rule__LibOperationCS__Group_11__2__Impl : ( ( rule__LibOperationCS__PrecedenceAssignment_11_2 ) ) ;
     public final void rule__LibOperationCS__Group_11__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10108:1: ( ( ( rule__LibOperationCS__PrecedenceAssignment_11_2 ) ) )
-            // InternalOCLstdlib.g:10109:1: ( ( rule__LibOperationCS__PrecedenceAssignment_11_2 ) )
+            // InternalOCLstdlib.g:10110:1: ( ( ( rule__LibOperationCS__PrecedenceAssignment_11_2 ) ) )
+            // InternalOCLstdlib.g:10111:1: ( ( rule__LibOperationCS__PrecedenceAssignment_11_2 ) )
             {
-            // InternalOCLstdlib.g:10109:1: ( ( rule__LibOperationCS__PrecedenceAssignment_11_2 ) )
-            // InternalOCLstdlib.g:10110:1: ( rule__LibOperationCS__PrecedenceAssignment_11_2 )
+            // InternalOCLstdlib.g:10111:1: ( ( rule__LibOperationCS__PrecedenceAssignment_11_2 ) )
+            // InternalOCLstdlib.g:10112:1: ( rule__LibOperationCS__PrecedenceAssignment_11_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getPrecedenceAssignment_11_2());
             }
-            // InternalOCLstdlib.g:10111:1: ( rule__LibOperationCS__PrecedenceAssignment_11_2 )
-            // InternalOCLstdlib.g:10111:2: rule__LibOperationCS__PrecedenceAssignment_11_2
+            // InternalOCLstdlib.g:10113:1: ( rule__LibOperationCS__PrecedenceAssignment_11_2 )
+            // InternalOCLstdlib.g:10113:2: rule__LibOperationCS__PrecedenceAssignment_11_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__PrecedenceAssignment_11_2();
@@ -31219,14 +31219,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_12__0"
-    // InternalOCLstdlib.g:10127:1: rule__LibOperationCS__Group_12__0 : rule__LibOperationCS__Group_12__0__Impl rule__LibOperationCS__Group_12__1 ;
+    // InternalOCLstdlib.g:10129:1: rule__LibOperationCS__Group_12__0 : rule__LibOperationCS__Group_12__0__Impl rule__LibOperationCS__Group_12__1 ;
     public final void rule__LibOperationCS__Group_12__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10131:1: ( rule__LibOperationCS__Group_12__0__Impl rule__LibOperationCS__Group_12__1 )
-            // InternalOCLstdlib.g:10132:2: rule__LibOperationCS__Group_12__0__Impl rule__LibOperationCS__Group_12__1
+            // InternalOCLstdlib.g:10133:1: ( rule__LibOperationCS__Group_12__0__Impl rule__LibOperationCS__Group_12__1 )
+            // InternalOCLstdlib.g:10134:2: rule__LibOperationCS__Group_12__0__Impl rule__LibOperationCS__Group_12__1
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__LibOperationCS__Group_12__0__Impl();
@@ -31257,17 +31257,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_12__0__Impl"
-    // InternalOCLstdlib.g:10139:1: rule__LibOperationCS__Group_12__0__Impl : ( '=>' ) ;
+    // InternalOCLstdlib.g:10141:1: rule__LibOperationCS__Group_12__0__Impl : ( '=>' ) ;
     public final void rule__LibOperationCS__Group_12__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10143:1: ( ( '=>' ) )
-            // InternalOCLstdlib.g:10144:1: ( '=>' )
+            // InternalOCLstdlib.g:10145:1: ( ( '=>' ) )
+            // InternalOCLstdlib.g:10146:1: ( '=>' )
             {
-            // InternalOCLstdlib.g:10144:1: ( '=>' )
-            // InternalOCLstdlib.g:10145:1: '=>'
+            // InternalOCLstdlib.g:10146:1: ( '=>' )
+            // InternalOCLstdlib.g:10147:1: '=>'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getEqualsSignGreaterThanSignKeyword_12_0());
@@ -31298,14 +31298,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_12__1"
-    // InternalOCLstdlib.g:10158:1: rule__LibOperationCS__Group_12__1 : rule__LibOperationCS__Group_12__1__Impl ;
+    // InternalOCLstdlib.g:10160:1: rule__LibOperationCS__Group_12__1 : rule__LibOperationCS__Group_12__1__Impl ;
     public final void rule__LibOperationCS__Group_12__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10162:1: ( rule__LibOperationCS__Group_12__1__Impl )
-            // InternalOCLstdlib.g:10163:2: rule__LibOperationCS__Group_12__1__Impl
+            // InternalOCLstdlib.g:10164:1: ( rule__LibOperationCS__Group_12__1__Impl )
+            // InternalOCLstdlib.g:10165:2: rule__LibOperationCS__Group_12__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__Group_12__1__Impl();
@@ -31331,23 +31331,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_12__1__Impl"
-    // InternalOCLstdlib.g:10169:1: rule__LibOperationCS__Group_12__1__Impl : ( ( rule__LibOperationCS__ImplementationAssignment_12_1 ) ) ;
+    // InternalOCLstdlib.g:10171:1: rule__LibOperationCS__Group_12__1__Impl : ( ( rule__LibOperationCS__ImplementationAssignment_12_1 ) ) ;
     public final void rule__LibOperationCS__Group_12__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10173:1: ( ( ( rule__LibOperationCS__ImplementationAssignment_12_1 ) ) )
-            // InternalOCLstdlib.g:10174:1: ( ( rule__LibOperationCS__ImplementationAssignment_12_1 ) )
+            // InternalOCLstdlib.g:10175:1: ( ( ( rule__LibOperationCS__ImplementationAssignment_12_1 ) ) )
+            // InternalOCLstdlib.g:10176:1: ( ( rule__LibOperationCS__ImplementationAssignment_12_1 ) )
             {
-            // InternalOCLstdlib.g:10174:1: ( ( rule__LibOperationCS__ImplementationAssignment_12_1 ) )
-            // InternalOCLstdlib.g:10175:1: ( rule__LibOperationCS__ImplementationAssignment_12_1 )
+            // InternalOCLstdlib.g:10176:1: ( ( rule__LibOperationCS__ImplementationAssignment_12_1 ) )
+            // InternalOCLstdlib.g:10177:1: ( rule__LibOperationCS__ImplementationAssignment_12_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getImplementationAssignment_12_1());
             }
-            // InternalOCLstdlib.g:10176:1: ( rule__LibOperationCS__ImplementationAssignment_12_1 )
-            // InternalOCLstdlib.g:10176:2: rule__LibOperationCS__ImplementationAssignment_12_1
+            // InternalOCLstdlib.g:10178:1: ( rule__LibOperationCS__ImplementationAssignment_12_1 )
+            // InternalOCLstdlib.g:10178:2: rule__LibOperationCS__ImplementationAssignment_12_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__ImplementationAssignment_12_1();
@@ -31382,14 +31382,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0__0"
-    // InternalOCLstdlib.g:10190:1: rule__LibOperationCS__Group_13_0__0 : rule__LibOperationCS__Group_13_0__0__Impl rule__LibOperationCS__Group_13_0__1 ;
+    // InternalOCLstdlib.g:10192:1: rule__LibOperationCS__Group_13_0__0 : rule__LibOperationCS__Group_13_0__0__Impl rule__LibOperationCS__Group_13_0__1 ;
     public final void rule__LibOperationCS__Group_13_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10194:1: ( rule__LibOperationCS__Group_13_0__0__Impl rule__LibOperationCS__Group_13_0__1 )
-            // InternalOCLstdlib.g:10195:2: rule__LibOperationCS__Group_13_0__0__Impl rule__LibOperationCS__Group_13_0__1
+            // InternalOCLstdlib.g:10196:1: ( rule__LibOperationCS__Group_13_0__0__Impl rule__LibOperationCS__Group_13_0__1 )
+            // InternalOCLstdlib.g:10197:2: rule__LibOperationCS__Group_13_0__0__Impl rule__LibOperationCS__Group_13_0__1
             {
             pushFollow(FollowSets000.FOLLOW_47);
             rule__LibOperationCS__Group_13_0__0__Impl();
@@ -31420,17 +31420,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0__0__Impl"
-    // InternalOCLstdlib.g:10202:1: rule__LibOperationCS__Group_13_0__0__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:10204:1: rule__LibOperationCS__Group_13_0__0__Impl : ( '{' ) ;
     public final void rule__LibOperationCS__Group_13_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10206:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:10207:1: ( '{' )
+            // InternalOCLstdlib.g:10208:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:10209:1: ( '{' )
             {
-            // InternalOCLstdlib.g:10207:1: ( '{' )
-            // InternalOCLstdlib.g:10208:1: '{'
+            // InternalOCLstdlib.g:10209:1: ( '{' )
+            // InternalOCLstdlib.g:10210:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getLeftCurlyBracketKeyword_13_0_0());
@@ -31461,14 +31461,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0__1"
-    // InternalOCLstdlib.g:10221:1: rule__LibOperationCS__Group_13_0__1 : rule__LibOperationCS__Group_13_0__1__Impl rule__LibOperationCS__Group_13_0__2 ;
+    // InternalOCLstdlib.g:10223:1: rule__LibOperationCS__Group_13_0__1 : rule__LibOperationCS__Group_13_0__1__Impl rule__LibOperationCS__Group_13_0__2 ;
     public final void rule__LibOperationCS__Group_13_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10225:1: ( rule__LibOperationCS__Group_13_0__1__Impl rule__LibOperationCS__Group_13_0__2 )
-            // InternalOCLstdlib.g:10226:2: rule__LibOperationCS__Group_13_0__1__Impl rule__LibOperationCS__Group_13_0__2
+            // InternalOCLstdlib.g:10227:1: ( rule__LibOperationCS__Group_13_0__1__Impl rule__LibOperationCS__Group_13_0__2 )
+            // InternalOCLstdlib.g:10228:2: rule__LibOperationCS__Group_13_0__1__Impl rule__LibOperationCS__Group_13_0__2
             {
             pushFollow(FollowSets000.FOLLOW_47);
             rule__LibOperationCS__Group_13_0__1__Impl();
@@ -31499,22 +31499,22 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0__1__Impl"
-    // InternalOCLstdlib.g:10233:1: rule__LibOperationCS__Group_13_0__1__Impl : ( ( rule__LibOperationCS__Alternatives_13_0_1 )* ) ;
+    // InternalOCLstdlib.g:10235:1: rule__LibOperationCS__Group_13_0__1__Impl : ( ( rule__LibOperationCS__Alternatives_13_0_1 )* ) ;
     public final void rule__LibOperationCS__Group_13_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10237:1: ( ( ( rule__LibOperationCS__Alternatives_13_0_1 )* ) )
-            // InternalOCLstdlib.g:10238:1: ( ( rule__LibOperationCS__Alternatives_13_0_1 )* )
+            // InternalOCLstdlib.g:10239:1: ( ( ( rule__LibOperationCS__Alternatives_13_0_1 )* ) )
+            // InternalOCLstdlib.g:10240:1: ( ( rule__LibOperationCS__Alternatives_13_0_1 )* )
             {
-            // InternalOCLstdlib.g:10238:1: ( ( rule__LibOperationCS__Alternatives_13_0_1 )* )
-            // InternalOCLstdlib.g:10239:1: ( rule__LibOperationCS__Alternatives_13_0_1 )*
+            // InternalOCLstdlib.g:10240:1: ( ( rule__LibOperationCS__Alternatives_13_0_1 )* )
+            // InternalOCLstdlib.g:10241:1: ( rule__LibOperationCS__Alternatives_13_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getAlternatives_13_0_1());
             }
-            // InternalOCLstdlib.g:10240:1: ( rule__LibOperationCS__Alternatives_13_0_1 )*
+            // InternalOCLstdlib.g:10242:1: ( rule__LibOperationCS__Alternatives_13_0_1 )*
             loop99:
             do {
                 int alt99=2;
@@ -31527,7 +31527,7 @@
 
                 switch (alt99) {
             	case 1 :
-            	    // InternalOCLstdlib.g:10240:2: rule__LibOperationCS__Alternatives_13_0_1
+            	    // InternalOCLstdlib.g:10242:2: rule__LibOperationCS__Alternatives_13_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_48);
             	    rule__LibOperationCS__Alternatives_13_0_1();
@@ -31568,14 +31568,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0__2"
-    // InternalOCLstdlib.g:10250:1: rule__LibOperationCS__Group_13_0__2 : rule__LibOperationCS__Group_13_0__2__Impl ;
+    // InternalOCLstdlib.g:10252:1: rule__LibOperationCS__Group_13_0__2 : rule__LibOperationCS__Group_13_0__2__Impl ;
     public final void rule__LibOperationCS__Group_13_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10254:1: ( rule__LibOperationCS__Group_13_0__2__Impl )
-            // InternalOCLstdlib.g:10255:2: rule__LibOperationCS__Group_13_0__2__Impl
+            // InternalOCLstdlib.g:10256:1: ( rule__LibOperationCS__Group_13_0__2__Impl )
+            // InternalOCLstdlib.g:10257:2: rule__LibOperationCS__Group_13_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__Group_13_0__2__Impl();
@@ -31601,17 +31601,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0__2__Impl"
-    // InternalOCLstdlib.g:10261:1: rule__LibOperationCS__Group_13_0__2__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:10263:1: rule__LibOperationCS__Group_13_0__2__Impl : ( '}' ) ;
     public final void rule__LibOperationCS__Group_13_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10265:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:10266:1: ( '}' )
+            // InternalOCLstdlib.g:10267:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:10268:1: ( '}' )
             {
-            // InternalOCLstdlib.g:10266:1: ( '}' )
-            // InternalOCLstdlib.g:10267:1: '}'
+            // InternalOCLstdlib.g:10268:1: ( '}' )
+            // InternalOCLstdlib.g:10269:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getRightCurlyBracketKeyword_13_0_2());
@@ -31642,14 +31642,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0_1_1__0"
-    // InternalOCLstdlib.g:10286:1: rule__LibOperationCS__Group_13_0_1_1__0 : rule__LibOperationCS__Group_13_0_1_1__0__Impl rule__LibOperationCS__Group_13_0_1_1__1 ;
+    // InternalOCLstdlib.g:10288:1: rule__LibOperationCS__Group_13_0_1_1__0 : rule__LibOperationCS__Group_13_0_1_1__0__Impl rule__LibOperationCS__Group_13_0_1_1__1 ;
     public final void rule__LibOperationCS__Group_13_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10290:1: ( rule__LibOperationCS__Group_13_0_1_1__0__Impl rule__LibOperationCS__Group_13_0_1_1__1 )
-            // InternalOCLstdlib.g:10291:2: rule__LibOperationCS__Group_13_0_1_1__0__Impl rule__LibOperationCS__Group_13_0_1_1__1
+            // InternalOCLstdlib.g:10292:1: ( rule__LibOperationCS__Group_13_0_1_1__0__Impl rule__LibOperationCS__Group_13_0_1_1__1 )
+            // InternalOCLstdlib.g:10293:2: rule__LibOperationCS__Group_13_0_1_1__0__Impl rule__LibOperationCS__Group_13_0_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_31);
             rule__LibOperationCS__Group_13_0_1_1__0__Impl();
@@ -31680,17 +31680,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0_1_1__0__Impl"
-    // InternalOCLstdlib.g:10298:1: rule__LibOperationCS__Group_13_0_1_1__0__Impl : ( 'body' ) ;
+    // InternalOCLstdlib.g:10300:1: rule__LibOperationCS__Group_13_0_1_1__0__Impl : ( 'body' ) ;
     public final void rule__LibOperationCS__Group_13_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10302:1: ( ( 'body' ) )
-            // InternalOCLstdlib.g:10303:1: ( 'body' )
+            // InternalOCLstdlib.g:10304:1: ( ( 'body' ) )
+            // InternalOCLstdlib.g:10305:1: ( 'body' )
             {
-            // InternalOCLstdlib.g:10303:1: ( 'body' )
-            // InternalOCLstdlib.g:10304:1: 'body'
+            // InternalOCLstdlib.g:10305:1: ( 'body' )
+            // InternalOCLstdlib.g:10306:1: 'body'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getBodyKeyword_13_0_1_1_0());
@@ -31721,14 +31721,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0_1_1__1"
-    // InternalOCLstdlib.g:10317:1: rule__LibOperationCS__Group_13_0_1_1__1 : rule__LibOperationCS__Group_13_0_1_1__1__Impl rule__LibOperationCS__Group_13_0_1_1__2 ;
+    // InternalOCLstdlib.g:10319:1: rule__LibOperationCS__Group_13_0_1_1__1 : rule__LibOperationCS__Group_13_0_1_1__1__Impl rule__LibOperationCS__Group_13_0_1_1__2 ;
     public final void rule__LibOperationCS__Group_13_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10321:1: ( rule__LibOperationCS__Group_13_0_1_1__1__Impl rule__LibOperationCS__Group_13_0_1_1__2 )
-            // InternalOCLstdlib.g:10322:2: rule__LibOperationCS__Group_13_0_1_1__1__Impl rule__LibOperationCS__Group_13_0_1_1__2
+            // InternalOCLstdlib.g:10323:1: ( rule__LibOperationCS__Group_13_0_1_1__1__Impl rule__LibOperationCS__Group_13_0_1_1__2 )
+            // InternalOCLstdlib.g:10324:2: rule__LibOperationCS__Group_13_0_1_1__1__Impl rule__LibOperationCS__Group_13_0_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_31);
             rule__LibOperationCS__Group_13_0_1_1__1__Impl();
@@ -31759,22 +31759,22 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0_1_1__1__Impl"
-    // InternalOCLstdlib.g:10329:1: rule__LibOperationCS__Group_13_0_1_1__1__Impl : ( ( ruleUnrestrictedName )? ) ;
+    // InternalOCLstdlib.g:10331:1: rule__LibOperationCS__Group_13_0_1_1__1__Impl : ( ( ruleUnrestrictedName )? ) ;
     public final void rule__LibOperationCS__Group_13_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10333:1: ( ( ( ruleUnrestrictedName )? ) )
-            // InternalOCLstdlib.g:10334:1: ( ( ruleUnrestrictedName )? )
+            // InternalOCLstdlib.g:10335:1: ( ( ( ruleUnrestrictedName )? ) )
+            // InternalOCLstdlib.g:10336:1: ( ( ruleUnrestrictedName )? )
             {
-            // InternalOCLstdlib.g:10334:1: ( ( ruleUnrestrictedName )? )
-            // InternalOCLstdlib.g:10335:1: ( ruleUnrestrictedName )?
+            // InternalOCLstdlib.g:10336:1: ( ( ruleUnrestrictedName )? )
+            // InternalOCLstdlib.g:10337:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getUnrestrictedNameParserRuleCall_13_0_1_1_1());
             }
-            // InternalOCLstdlib.g:10336:1: ( ruleUnrestrictedName )?
+            // InternalOCLstdlib.g:10338:1: ( ruleUnrestrictedName )?
             int alt100=2;
             int LA100_0 = input.LA(1);
 
@@ -31783,7 +31783,7 @@
             }
             switch (alt100) {
                 case 1 :
-                    // InternalOCLstdlib.g:10336:3: ruleUnrestrictedName
+                    // InternalOCLstdlib.g:10338:3: ruleUnrestrictedName
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -31821,14 +31821,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0_1_1__2"
-    // InternalOCLstdlib.g:10346:1: rule__LibOperationCS__Group_13_0_1_1__2 : rule__LibOperationCS__Group_13_0_1_1__2__Impl rule__LibOperationCS__Group_13_0_1_1__3 ;
+    // InternalOCLstdlib.g:10348:1: rule__LibOperationCS__Group_13_0_1_1__2 : rule__LibOperationCS__Group_13_0_1_1__2__Impl rule__LibOperationCS__Group_13_0_1_1__3 ;
     public final void rule__LibOperationCS__Group_13_0_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10350:1: ( rule__LibOperationCS__Group_13_0_1_1__2__Impl rule__LibOperationCS__Group_13_0_1_1__3 )
-            // InternalOCLstdlib.g:10351:2: rule__LibOperationCS__Group_13_0_1_1__2__Impl rule__LibOperationCS__Group_13_0_1_1__3
+            // InternalOCLstdlib.g:10352:1: ( rule__LibOperationCS__Group_13_0_1_1__2__Impl rule__LibOperationCS__Group_13_0_1_1__3 )
+            // InternalOCLstdlib.g:10353:2: rule__LibOperationCS__Group_13_0_1_1__2__Impl rule__LibOperationCS__Group_13_0_1_1__3
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__LibOperationCS__Group_13_0_1_1__2__Impl();
@@ -31859,17 +31859,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0_1_1__2__Impl"
-    // InternalOCLstdlib.g:10358:1: rule__LibOperationCS__Group_13_0_1_1__2__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:10360:1: rule__LibOperationCS__Group_13_0_1_1__2__Impl : ( ':' ) ;
     public final void rule__LibOperationCS__Group_13_0_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10362:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:10363:1: ( ':' )
+            // InternalOCLstdlib.g:10364:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:10365:1: ( ':' )
             {
-            // InternalOCLstdlib.g:10363:1: ( ':' )
-            // InternalOCLstdlib.g:10364:1: ':'
+            // InternalOCLstdlib.g:10365:1: ( ':' )
+            // InternalOCLstdlib.g:10366:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getColonKeyword_13_0_1_1_2());
@@ -31900,14 +31900,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0_1_1__3"
-    // InternalOCLstdlib.g:10377:1: rule__LibOperationCS__Group_13_0_1_1__3 : rule__LibOperationCS__Group_13_0_1_1__3__Impl rule__LibOperationCS__Group_13_0_1_1__4 ;
+    // InternalOCLstdlib.g:10379:1: rule__LibOperationCS__Group_13_0_1_1__3 : rule__LibOperationCS__Group_13_0_1_1__3__Impl rule__LibOperationCS__Group_13_0_1_1__4 ;
     public final void rule__LibOperationCS__Group_13_0_1_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10381:1: ( rule__LibOperationCS__Group_13_0_1_1__3__Impl rule__LibOperationCS__Group_13_0_1_1__4 )
-            // InternalOCLstdlib.g:10382:2: rule__LibOperationCS__Group_13_0_1_1__3__Impl rule__LibOperationCS__Group_13_0_1_1__4
+            // InternalOCLstdlib.g:10383:1: ( rule__LibOperationCS__Group_13_0_1_1__3__Impl rule__LibOperationCS__Group_13_0_1_1__4 )
+            // InternalOCLstdlib.g:10384:2: rule__LibOperationCS__Group_13_0_1_1__3__Impl rule__LibOperationCS__Group_13_0_1_1__4
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__LibOperationCS__Group_13_0_1_1__3__Impl();
@@ -31938,23 +31938,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0_1_1__3__Impl"
-    // InternalOCLstdlib.g:10389:1: rule__LibOperationCS__Group_13_0_1_1__3__Impl : ( ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 ) ) ;
+    // InternalOCLstdlib.g:10391:1: rule__LibOperationCS__Group_13_0_1_1__3__Impl : ( ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 ) ) ;
     public final void rule__LibOperationCS__Group_13_0_1_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10393:1: ( ( ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 ) ) )
-            // InternalOCLstdlib.g:10394:1: ( ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 ) )
+            // InternalOCLstdlib.g:10395:1: ( ( ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 ) ) )
+            // InternalOCLstdlib.g:10396:1: ( ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 ) )
             {
-            // InternalOCLstdlib.g:10394:1: ( ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 ) )
-            // InternalOCLstdlib.g:10395:1: ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 )
+            // InternalOCLstdlib.g:10396:1: ( ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 ) )
+            // InternalOCLstdlib.g:10397:1: ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsAssignment_13_0_1_1_3());
             }
-            // InternalOCLstdlib.g:10396:1: ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 )
-            // InternalOCLstdlib.g:10396:2: rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3
+            // InternalOCLstdlib.g:10398:1: ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 )
+            // InternalOCLstdlib.g:10398:2: rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3();
@@ -31989,14 +31989,14 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0_1_1__4"
-    // InternalOCLstdlib.g:10406:1: rule__LibOperationCS__Group_13_0_1_1__4 : rule__LibOperationCS__Group_13_0_1_1__4__Impl ;
+    // InternalOCLstdlib.g:10408:1: rule__LibOperationCS__Group_13_0_1_1__4 : rule__LibOperationCS__Group_13_0_1_1__4__Impl ;
     public final void rule__LibOperationCS__Group_13_0_1_1__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10410:1: ( rule__LibOperationCS__Group_13_0_1_1__4__Impl )
-            // InternalOCLstdlib.g:10411:2: rule__LibOperationCS__Group_13_0_1_1__4__Impl
+            // InternalOCLstdlib.g:10412:1: ( rule__LibOperationCS__Group_13_0_1_1__4__Impl )
+            // InternalOCLstdlib.g:10413:2: rule__LibOperationCS__Group_13_0_1_1__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOperationCS__Group_13_0_1_1__4__Impl();
@@ -32022,17 +32022,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__Group_13_0_1_1__4__Impl"
-    // InternalOCLstdlib.g:10417:1: rule__LibOperationCS__Group_13_0_1_1__4__Impl : ( ';' ) ;
+    // InternalOCLstdlib.g:10419:1: rule__LibOperationCS__Group_13_0_1_1__4__Impl : ( ';' ) ;
     public final void rule__LibOperationCS__Group_13_0_1_1__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10421:1: ( ( ';' ) )
-            // InternalOCLstdlib.g:10422:1: ( ';' )
+            // InternalOCLstdlib.g:10423:1: ( ( ';' ) )
+            // InternalOCLstdlib.g:10424:1: ( ';' )
             {
-            // InternalOCLstdlib.g:10422:1: ( ';' )
-            // InternalOCLstdlib.g:10423:1: ';'
+            // InternalOCLstdlib.g:10424:1: ( ';' )
+            // InternalOCLstdlib.g:10425:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_0_1_1_4());
@@ -32063,14 +32063,14 @@
 
 
     // $ANTLR start "rule__LibOppositeCS__Group__0"
-    // InternalOCLstdlib.g:10446:1: rule__LibOppositeCS__Group__0 : rule__LibOppositeCS__Group__0__Impl rule__LibOppositeCS__Group__1 ;
+    // InternalOCLstdlib.g:10448:1: rule__LibOppositeCS__Group__0 : rule__LibOppositeCS__Group__0__Impl rule__LibOppositeCS__Group__1 ;
     public final void rule__LibOppositeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10450:1: ( rule__LibOppositeCS__Group__0__Impl rule__LibOppositeCS__Group__1 )
-            // InternalOCLstdlib.g:10451:2: rule__LibOppositeCS__Group__0__Impl rule__LibOppositeCS__Group__1
+            // InternalOCLstdlib.g:10452:1: ( rule__LibOppositeCS__Group__0__Impl rule__LibOppositeCS__Group__1 )
+            // InternalOCLstdlib.g:10453:2: rule__LibOppositeCS__Group__0__Impl rule__LibOppositeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__LibOppositeCS__Group__0__Impl();
@@ -32101,17 +32101,17 @@
 
 
     // $ANTLR start "rule__LibOppositeCS__Group__0__Impl"
-    // InternalOCLstdlib.g:10458:1: rule__LibOppositeCS__Group__0__Impl : ( 'opposite' ) ;
+    // InternalOCLstdlib.g:10460:1: rule__LibOppositeCS__Group__0__Impl : ( 'opposite' ) ;
     public final void rule__LibOppositeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10462:1: ( ( 'opposite' ) )
-            // InternalOCLstdlib.g:10463:1: ( 'opposite' )
+            // InternalOCLstdlib.g:10464:1: ( ( 'opposite' ) )
+            // InternalOCLstdlib.g:10465:1: ( 'opposite' )
             {
-            // InternalOCLstdlib.g:10463:1: ( 'opposite' )
-            // InternalOCLstdlib.g:10464:1: 'opposite'
+            // InternalOCLstdlib.g:10465:1: ( 'opposite' )
+            // InternalOCLstdlib.g:10466:1: 'opposite'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOppositeCSAccess().getOppositeKeyword_0());
@@ -32142,14 +32142,14 @@
 
 
     // $ANTLR start "rule__LibOppositeCS__Group__1"
-    // InternalOCLstdlib.g:10477:1: rule__LibOppositeCS__Group__1 : rule__LibOppositeCS__Group__1__Impl rule__LibOppositeCS__Group__2 ;
+    // InternalOCLstdlib.g:10479:1: rule__LibOppositeCS__Group__1 : rule__LibOppositeCS__Group__1__Impl rule__LibOppositeCS__Group__2 ;
     public final void rule__LibOppositeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10481:1: ( rule__LibOppositeCS__Group__1__Impl rule__LibOppositeCS__Group__2 )
-            // InternalOCLstdlib.g:10482:2: rule__LibOppositeCS__Group__1__Impl rule__LibOppositeCS__Group__2
+            // InternalOCLstdlib.g:10483:1: ( rule__LibOppositeCS__Group__1__Impl rule__LibOppositeCS__Group__2 )
+            // InternalOCLstdlib.g:10484:2: rule__LibOppositeCS__Group__1__Impl rule__LibOppositeCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__LibOppositeCS__Group__1__Impl();
@@ -32180,23 +32180,23 @@
 
 
     // $ANTLR start "rule__LibOppositeCS__Group__1__Impl"
-    // InternalOCLstdlib.g:10489:1: rule__LibOppositeCS__Group__1__Impl : ( ( rule__LibOppositeCS__NameAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:10491:1: rule__LibOppositeCS__Group__1__Impl : ( ( rule__LibOppositeCS__NameAssignment_1 ) ) ;
     public final void rule__LibOppositeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10493:1: ( ( ( rule__LibOppositeCS__NameAssignment_1 ) ) )
-            // InternalOCLstdlib.g:10494:1: ( ( rule__LibOppositeCS__NameAssignment_1 ) )
+            // InternalOCLstdlib.g:10495:1: ( ( ( rule__LibOppositeCS__NameAssignment_1 ) ) )
+            // InternalOCLstdlib.g:10496:1: ( ( rule__LibOppositeCS__NameAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:10494:1: ( ( rule__LibOppositeCS__NameAssignment_1 ) )
-            // InternalOCLstdlib.g:10495:1: ( rule__LibOppositeCS__NameAssignment_1 )
+            // InternalOCLstdlib.g:10496:1: ( ( rule__LibOppositeCS__NameAssignment_1 ) )
+            // InternalOCLstdlib.g:10497:1: ( rule__LibOppositeCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOppositeCSAccess().getNameAssignment_1());
             }
-            // InternalOCLstdlib.g:10496:1: ( rule__LibOppositeCS__NameAssignment_1 )
-            // InternalOCLstdlib.g:10496:2: rule__LibOppositeCS__NameAssignment_1
+            // InternalOCLstdlib.g:10498:1: ( rule__LibOppositeCS__NameAssignment_1 )
+            // InternalOCLstdlib.g:10498:2: rule__LibOppositeCS__NameAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOppositeCS__NameAssignment_1();
@@ -32231,14 +32231,14 @@
 
 
     // $ANTLR start "rule__LibOppositeCS__Group__2"
-    // InternalOCLstdlib.g:10506:1: rule__LibOppositeCS__Group__2 : rule__LibOppositeCS__Group__2__Impl rule__LibOppositeCS__Group__3 ;
+    // InternalOCLstdlib.g:10508:1: rule__LibOppositeCS__Group__2 : rule__LibOppositeCS__Group__2__Impl rule__LibOppositeCS__Group__3 ;
     public final void rule__LibOppositeCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10510:1: ( rule__LibOppositeCS__Group__2__Impl rule__LibOppositeCS__Group__3 )
-            // InternalOCLstdlib.g:10511:2: rule__LibOppositeCS__Group__2__Impl rule__LibOppositeCS__Group__3
+            // InternalOCLstdlib.g:10512:1: ( rule__LibOppositeCS__Group__2__Impl rule__LibOppositeCS__Group__3 )
+            // InternalOCLstdlib.g:10513:2: rule__LibOppositeCS__Group__2__Impl rule__LibOppositeCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__LibOppositeCS__Group__2__Impl();
@@ -32269,17 +32269,17 @@
 
 
     // $ANTLR start "rule__LibOppositeCS__Group__2__Impl"
-    // InternalOCLstdlib.g:10518:1: rule__LibOppositeCS__Group__2__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:10520:1: rule__LibOppositeCS__Group__2__Impl : ( ':' ) ;
     public final void rule__LibOppositeCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10522:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:10523:1: ( ':' )
+            // InternalOCLstdlib.g:10524:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:10525:1: ( ':' )
             {
-            // InternalOCLstdlib.g:10523:1: ( ':' )
-            // InternalOCLstdlib.g:10524:1: ':'
+            // InternalOCLstdlib.g:10525:1: ( ':' )
+            // InternalOCLstdlib.g:10526:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOppositeCSAccess().getColonKeyword_2());
@@ -32310,14 +32310,14 @@
 
 
     // $ANTLR start "rule__LibOppositeCS__Group__3"
-    // InternalOCLstdlib.g:10537:1: rule__LibOppositeCS__Group__3 : rule__LibOppositeCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:10539:1: rule__LibOppositeCS__Group__3 : rule__LibOppositeCS__Group__3__Impl ;
     public final void rule__LibOppositeCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10541:1: ( rule__LibOppositeCS__Group__3__Impl )
-            // InternalOCLstdlib.g:10542:2: rule__LibOppositeCS__Group__3__Impl
+            // InternalOCLstdlib.g:10543:1: ( rule__LibOppositeCS__Group__3__Impl )
+            // InternalOCLstdlib.g:10544:2: rule__LibOppositeCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOppositeCS__Group__3__Impl();
@@ -32343,23 +32343,23 @@
 
 
     // $ANTLR start "rule__LibOppositeCS__Group__3__Impl"
-    // InternalOCLstdlib.g:10548:1: rule__LibOppositeCS__Group__3__Impl : ( ( rule__LibOppositeCS__OwnedTypeAssignment_3 ) ) ;
+    // InternalOCLstdlib.g:10550:1: rule__LibOppositeCS__Group__3__Impl : ( ( rule__LibOppositeCS__OwnedTypeAssignment_3 ) ) ;
     public final void rule__LibOppositeCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10552:1: ( ( ( rule__LibOppositeCS__OwnedTypeAssignment_3 ) ) )
-            // InternalOCLstdlib.g:10553:1: ( ( rule__LibOppositeCS__OwnedTypeAssignment_3 ) )
+            // InternalOCLstdlib.g:10554:1: ( ( ( rule__LibOppositeCS__OwnedTypeAssignment_3 ) ) )
+            // InternalOCLstdlib.g:10555:1: ( ( rule__LibOppositeCS__OwnedTypeAssignment_3 ) )
             {
-            // InternalOCLstdlib.g:10553:1: ( ( rule__LibOppositeCS__OwnedTypeAssignment_3 ) )
-            // InternalOCLstdlib.g:10554:1: ( rule__LibOppositeCS__OwnedTypeAssignment_3 )
+            // InternalOCLstdlib.g:10555:1: ( ( rule__LibOppositeCS__OwnedTypeAssignment_3 ) )
+            // InternalOCLstdlib.g:10556:1: ( rule__LibOppositeCS__OwnedTypeAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOppositeCSAccess().getOwnedTypeAssignment_3());
             }
-            // InternalOCLstdlib.g:10555:1: ( rule__LibOppositeCS__OwnedTypeAssignment_3 )
-            // InternalOCLstdlib.g:10555:2: rule__LibOppositeCS__OwnedTypeAssignment_3
+            // InternalOCLstdlib.g:10557:1: ( rule__LibOppositeCS__OwnedTypeAssignment_3 )
+            // InternalOCLstdlib.g:10557:2: rule__LibOppositeCS__OwnedTypeAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibOppositeCS__OwnedTypeAssignment_3();
@@ -32394,14 +32394,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group__0"
-    // InternalOCLstdlib.g:10573:1: rule__LibPackageCS__Group__0 : rule__LibPackageCS__Group__0__Impl rule__LibPackageCS__Group__1 ;
+    // InternalOCLstdlib.g:10575:1: rule__LibPackageCS__Group__0 : rule__LibPackageCS__Group__0__Impl rule__LibPackageCS__Group__1 ;
     public final void rule__LibPackageCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10577:1: ( rule__LibPackageCS__Group__0__Impl rule__LibPackageCS__Group__1 )
-            // InternalOCLstdlib.g:10578:2: rule__LibPackageCS__Group__0__Impl rule__LibPackageCS__Group__1
+            // InternalOCLstdlib.g:10579:1: ( rule__LibPackageCS__Group__0__Impl rule__LibPackageCS__Group__1 )
+            // InternalOCLstdlib.g:10580:2: rule__LibPackageCS__Group__0__Impl rule__LibPackageCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__LibPackageCS__Group__0__Impl();
@@ -32432,17 +32432,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group__0__Impl"
-    // InternalOCLstdlib.g:10585:1: rule__LibPackageCS__Group__0__Impl : ( 'library' ) ;
+    // InternalOCLstdlib.g:10587:1: rule__LibPackageCS__Group__0__Impl : ( 'library' ) ;
     public final void rule__LibPackageCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10589:1: ( ( 'library' ) )
-            // InternalOCLstdlib.g:10590:1: ( 'library' )
+            // InternalOCLstdlib.g:10591:1: ( ( 'library' ) )
+            // InternalOCLstdlib.g:10592:1: ( 'library' )
             {
-            // InternalOCLstdlib.g:10590:1: ( 'library' )
-            // InternalOCLstdlib.g:10591:1: 'library'
+            // InternalOCLstdlib.g:10592:1: ( 'library' )
+            // InternalOCLstdlib.g:10593:1: 'library'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getLibraryKeyword_0());
@@ -32473,14 +32473,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group__1"
-    // InternalOCLstdlib.g:10604:1: rule__LibPackageCS__Group__1 : rule__LibPackageCS__Group__1__Impl rule__LibPackageCS__Group__2 ;
+    // InternalOCLstdlib.g:10606:1: rule__LibPackageCS__Group__1 : rule__LibPackageCS__Group__1__Impl rule__LibPackageCS__Group__2 ;
     public final void rule__LibPackageCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10608:1: ( rule__LibPackageCS__Group__1__Impl rule__LibPackageCS__Group__2 )
-            // InternalOCLstdlib.g:10609:2: rule__LibPackageCS__Group__1__Impl rule__LibPackageCS__Group__2
+            // InternalOCLstdlib.g:10610:1: ( rule__LibPackageCS__Group__1__Impl rule__LibPackageCS__Group__2 )
+            // InternalOCLstdlib.g:10611:2: rule__LibPackageCS__Group__1__Impl rule__LibPackageCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_49);
             rule__LibPackageCS__Group__1__Impl();
@@ -32511,23 +32511,23 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group__1__Impl"
-    // InternalOCLstdlib.g:10616:1: rule__LibPackageCS__Group__1__Impl : ( ( rule__LibPackageCS__NameAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:10618:1: rule__LibPackageCS__Group__1__Impl : ( ( rule__LibPackageCS__NameAssignment_1 ) ) ;
     public final void rule__LibPackageCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10620:1: ( ( ( rule__LibPackageCS__NameAssignment_1 ) ) )
-            // InternalOCLstdlib.g:10621:1: ( ( rule__LibPackageCS__NameAssignment_1 ) )
+            // InternalOCLstdlib.g:10622:1: ( ( ( rule__LibPackageCS__NameAssignment_1 ) ) )
+            // InternalOCLstdlib.g:10623:1: ( ( rule__LibPackageCS__NameAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:10621:1: ( ( rule__LibPackageCS__NameAssignment_1 ) )
-            // InternalOCLstdlib.g:10622:1: ( rule__LibPackageCS__NameAssignment_1 )
+            // InternalOCLstdlib.g:10623:1: ( ( rule__LibPackageCS__NameAssignment_1 ) )
+            // InternalOCLstdlib.g:10624:1: ( rule__LibPackageCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getNameAssignment_1());
             }
-            // InternalOCLstdlib.g:10623:1: ( rule__LibPackageCS__NameAssignment_1 )
-            // InternalOCLstdlib.g:10623:2: rule__LibPackageCS__NameAssignment_1
+            // InternalOCLstdlib.g:10625:1: ( rule__LibPackageCS__NameAssignment_1 )
+            // InternalOCLstdlib.g:10625:2: rule__LibPackageCS__NameAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPackageCS__NameAssignment_1();
@@ -32562,14 +32562,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group__2"
-    // InternalOCLstdlib.g:10633:1: rule__LibPackageCS__Group__2 : rule__LibPackageCS__Group__2__Impl rule__LibPackageCS__Group__3 ;
+    // InternalOCLstdlib.g:10635:1: rule__LibPackageCS__Group__2 : rule__LibPackageCS__Group__2__Impl rule__LibPackageCS__Group__3 ;
     public final void rule__LibPackageCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10637:1: ( rule__LibPackageCS__Group__2__Impl rule__LibPackageCS__Group__3 )
-            // InternalOCLstdlib.g:10638:2: rule__LibPackageCS__Group__2__Impl rule__LibPackageCS__Group__3
+            // InternalOCLstdlib.g:10639:1: ( rule__LibPackageCS__Group__2__Impl rule__LibPackageCS__Group__3 )
+            // InternalOCLstdlib.g:10640:2: rule__LibPackageCS__Group__2__Impl rule__LibPackageCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_49);
             rule__LibPackageCS__Group__2__Impl();
@@ -32600,22 +32600,22 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group__2__Impl"
-    // InternalOCLstdlib.g:10645:1: rule__LibPackageCS__Group__2__Impl : ( ( rule__LibPackageCS__Group_2__0 )? ) ;
+    // InternalOCLstdlib.g:10647:1: rule__LibPackageCS__Group__2__Impl : ( ( rule__LibPackageCS__Group_2__0 )? ) ;
     public final void rule__LibPackageCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10649:1: ( ( ( rule__LibPackageCS__Group_2__0 )? ) )
-            // InternalOCLstdlib.g:10650:1: ( ( rule__LibPackageCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:10651:1: ( ( ( rule__LibPackageCS__Group_2__0 )? ) )
+            // InternalOCLstdlib.g:10652:1: ( ( rule__LibPackageCS__Group_2__0 )? )
             {
-            // InternalOCLstdlib.g:10650:1: ( ( rule__LibPackageCS__Group_2__0 )? )
-            // InternalOCLstdlib.g:10651:1: ( rule__LibPackageCS__Group_2__0 )?
+            // InternalOCLstdlib.g:10652:1: ( ( rule__LibPackageCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:10653:1: ( rule__LibPackageCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:10652:1: ( rule__LibPackageCS__Group_2__0 )?
+            // InternalOCLstdlib.g:10654:1: ( rule__LibPackageCS__Group_2__0 )?
             int alt101=2;
             int LA101_0 = input.LA(1);
 
@@ -32624,7 +32624,7 @@
             }
             switch (alt101) {
                 case 1 :
-                    // InternalOCLstdlib.g:10652:2: rule__LibPackageCS__Group_2__0
+                    // InternalOCLstdlib.g:10654:2: rule__LibPackageCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibPackageCS__Group_2__0();
@@ -32662,14 +32662,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group__3"
-    // InternalOCLstdlib.g:10662:1: rule__LibPackageCS__Group__3 : rule__LibPackageCS__Group__3__Impl rule__LibPackageCS__Group__4 ;
+    // InternalOCLstdlib.g:10664:1: rule__LibPackageCS__Group__3 : rule__LibPackageCS__Group__3__Impl rule__LibPackageCS__Group__4 ;
     public final void rule__LibPackageCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10666:1: ( rule__LibPackageCS__Group__3__Impl rule__LibPackageCS__Group__4 )
-            // InternalOCLstdlib.g:10667:2: rule__LibPackageCS__Group__3__Impl rule__LibPackageCS__Group__4
+            // InternalOCLstdlib.g:10668:1: ( rule__LibPackageCS__Group__3__Impl rule__LibPackageCS__Group__4 )
+            // InternalOCLstdlib.g:10669:2: rule__LibPackageCS__Group__3__Impl rule__LibPackageCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_50);
             rule__LibPackageCS__Group__3__Impl();
@@ -32700,17 +32700,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group__3__Impl"
-    // InternalOCLstdlib.g:10674:1: rule__LibPackageCS__Group__3__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:10676:1: rule__LibPackageCS__Group__3__Impl : ( '{' ) ;
     public final void rule__LibPackageCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10678:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:10679:1: ( '{' )
+            // InternalOCLstdlib.g:10680:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:10681:1: ( '{' )
             {
-            // InternalOCLstdlib.g:10679:1: ( '{' )
-            // InternalOCLstdlib.g:10680:1: '{'
+            // InternalOCLstdlib.g:10681:1: ( '{' )
+            // InternalOCLstdlib.g:10682:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getLeftCurlyBracketKeyword_3());
@@ -32741,14 +32741,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group__4"
-    // InternalOCLstdlib.g:10693:1: rule__LibPackageCS__Group__4 : rule__LibPackageCS__Group__4__Impl rule__LibPackageCS__Group__5 ;
+    // InternalOCLstdlib.g:10695:1: rule__LibPackageCS__Group__4 : rule__LibPackageCS__Group__4__Impl rule__LibPackageCS__Group__5 ;
     public final void rule__LibPackageCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10697:1: ( rule__LibPackageCS__Group__4__Impl rule__LibPackageCS__Group__5 )
-            // InternalOCLstdlib.g:10698:2: rule__LibPackageCS__Group__4__Impl rule__LibPackageCS__Group__5
+            // InternalOCLstdlib.g:10699:1: ( rule__LibPackageCS__Group__4__Impl rule__LibPackageCS__Group__5 )
+            // InternalOCLstdlib.g:10700:2: rule__LibPackageCS__Group__4__Impl rule__LibPackageCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_50);
             rule__LibPackageCS__Group__4__Impl();
@@ -32779,22 +32779,22 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group__4__Impl"
-    // InternalOCLstdlib.g:10705:1: rule__LibPackageCS__Group__4__Impl : ( ( rule__LibPackageCS__Alternatives_4 )* ) ;
+    // InternalOCLstdlib.g:10707:1: rule__LibPackageCS__Group__4__Impl : ( ( rule__LibPackageCS__Alternatives_4 )* ) ;
     public final void rule__LibPackageCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10709:1: ( ( ( rule__LibPackageCS__Alternatives_4 )* ) )
-            // InternalOCLstdlib.g:10710:1: ( ( rule__LibPackageCS__Alternatives_4 )* )
+            // InternalOCLstdlib.g:10711:1: ( ( ( rule__LibPackageCS__Alternatives_4 )* ) )
+            // InternalOCLstdlib.g:10712:1: ( ( rule__LibPackageCS__Alternatives_4 )* )
             {
-            // InternalOCLstdlib.g:10710:1: ( ( rule__LibPackageCS__Alternatives_4 )* )
-            // InternalOCLstdlib.g:10711:1: ( rule__LibPackageCS__Alternatives_4 )*
+            // InternalOCLstdlib.g:10712:1: ( ( rule__LibPackageCS__Alternatives_4 )* )
+            // InternalOCLstdlib.g:10713:1: ( rule__LibPackageCS__Alternatives_4 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getAlternatives_4());
             }
-            // InternalOCLstdlib.g:10712:1: ( rule__LibPackageCS__Alternatives_4 )*
+            // InternalOCLstdlib.g:10714:1: ( rule__LibPackageCS__Alternatives_4 )*
             loop102:
             do {
                 int alt102=2;
@@ -32807,7 +32807,7 @@
 
                 switch (alt102) {
             	case 1 :
-            	    // InternalOCLstdlib.g:10712:2: rule__LibPackageCS__Alternatives_4
+            	    // InternalOCLstdlib.g:10714:2: rule__LibPackageCS__Alternatives_4
             	    {
             	    pushFollow(FollowSets000.FOLLOW_51);
             	    rule__LibPackageCS__Alternatives_4();
@@ -32848,14 +32848,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group__5"
-    // InternalOCLstdlib.g:10722:1: rule__LibPackageCS__Group__5 : rule__LibPackageCS__Group__5__Impl ;
+    // InternalOCLstdlib.g:10724:1: rule__LibPackageCS__Group__5 : rule__LibPackageCS__Group__5__Impl ;
     public final void rule__LibPackageCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10726:1: ( rule__LibPackageCS__Group__5__Impl )
-            // InternalOCLstdlib.g:10727:2: rule__LibPackageCS__Group__5__Impl
+            // InternalOCLstdlib.g:10728:1: ( rule__LibPackageCS__Group__5__Impl )
+            // InternalOCLstdlib.g:10729:2: rule__LibPackageCS__Group__5__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPackageCS__Group__5__Impl();
@@ -32881,17 +32881,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group__5__Impl"
-    // InternalOCLstdlib.g:10733:1: rule__LibPackageCS__Group__5__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:10735:1: rule__LibPackageCS__Group__5__Impl : ( '}' ) ;
     public final void rule__LibPackageCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10737:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:10738:1: ( '}' )
+            // InternalOCLstdlib.g:10739:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:10740:1: ( '}' )
             {
-            // InternalOCLstdlib.g:10738:1: ( '}' )
-            // InternalOCLstdlib.g:10739:1: '}'
+            // InternalOCLstdlib.g:10740:1: ( '}' )
+            // InternalOCLstdlib.g:10741:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getRightCurlyBracketKeyword_5());
@@ -32922,14 +32922,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_2__0"
-    // InternalOCLstdlib.g:10764:1: rule__LibPackageCS__Group_2__0 : rule__LibPackageCS__Group_2__0__Impl rule__LibPackageCS__Group_2__1 ;
+    // InternalOCLstdlib.g:10766:1: rule__LibPackageCS__Group_2__0 : rule__LibPackageCS__Group_2__0__Impl rule__LibPackageCS__Group_2__1 ;
     public final void rule__LibPackageCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10768:1: ( rule__LibPackageCS__Group_2__0__Impl rule__LibPackageCS__Group_2__1 )
-            // InternalOCLstdlib.g:10769:2: rule__LibPackageCS__Group_2__0__Impl rule__LibPackageCS__Group_2__1
+            // InternalOCLstdlib.g:10770:1: ( rule__LibPackageCS__Group_2__0__Impl rule__LibPackageCS__Group_2__1 )
+            // InternalOCLstdlib.g:10771:2: rule__LibPackageCS__Group_2__0__Impl rule__LibPackageCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__LibPackageCS__Group_2__0__Impl();
@@ -32960,17 +32960,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:10776:1: rule__LibPackageCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:10778:1: rule__LibPackageCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__LibPackageCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10780:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:10781:1: ( ':' )
+            // InternalOCLstdlib.g:10782:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:10783:1: ( ':' )
             {
-            // InternalOCLstdlib.g:10781:1: ( ':' )
-            // InternalOCLstdlib.g:10782:1: ':'
+            // InternalOCLstdlib.g:10783:1: ( ':' )
+            // InternalOCLstdlib.g:10784:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getColonKeyword_2_0());
@@ -33001,14 +33001,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_2__1"
-    // InternalOCLstdlib.g:10795:1: rule__LibPackageCS__Group_2__1 : rule__LibPackageCS__Group_2__1__Impl rule__LibPackageCS__Group_2__2 ;
+    // InternalOCLstdlib.g:10797:1: rule__LibPackageCS__Group_2__1 : rule__LibPackageCS__Group_2__1__Impl rule__LibPackageCS__Group_2__2 ;
     public final void rule__LibPackageCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10799:1: ( rule__LibPackageCS__Group_2__1__Impl rule__LibPackageCS__Group_2__2 )
-            // InternalOCLstdlib.g:10800:2: rule__LibPackageCS__Group_2__1__Impl rule__LibPackageCS__Group_2__2
+            // InternalOCLstdlib.g:10801:1: ( rule__LibPackageCS__Group_2__1__Impl rule__LibPackageCS__Group_2__2 )
+            // InternalOCLstdlib.g:10802:2: rule__LibPackageCS__Group_2__1__Impl rule__LibPackageCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__LibPackageCS__Group_2__1__Impl();
@@ -33039,23 +33039,23 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:10807:1: rule__LibPackageCS__Group_2__1__Impl : ( ( rule__LibPackageCS__NsPrefixAssignment_2_1 ) ) ;
+    // InternalOCLstdlib.g:10809:1: rule__LibPackageCS__Group_2__1__Impl : ( ( rule__LibPackageCS__NsPrefixAssignment_2_1 ) ) ;
     public final void rule__LibPackageCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10811:1: ( ( ( rule__LibPackageCS__NsPrefixAssignment_2_1 ) ) )
-            // InternalOCLstdlib.g:10812:1: ( ( rule__LibPackageCS__NsPrefixAssignment_2_1 ) )
+            // InternalOCLstdlib.g:10813:1: ( ( ( rule__LibPackageCS__NsPrefixAssignment_2_1 ) ) )
+            // InternalOCLstdlib.g:10814:1: ( ( rule__LibPackageCS__NsPrefixAssignment_2_1 ) )
             {
-            // InternalOCLstdlib.g:10812:1: ( ( rule__LibPackageCS__NsPrefixAssignment_2_1 ) )
-            // InternalOCLstdlib.g:10813:1: ( rule__LibPackageCS__NsPrefixAssignment_2_1 )
+            // InternalOCLstdlib.g:10814:1: ( ( rule__LibPackageCS__NsPrefixAssignment_2_1 ) )
+            // InternalOCLstdlib.g:10815:1: ( rule__LibPackageCS__NsPrefixAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getNsPrefixAssignment_2_1());
             }
-            // InternalOCLstdlib.g:10814:1: ( rule__LibPackageCS__NsPrefixAssignment_2_1 )
-            // InternalOCLstdlib.g:10814:2: rule__LibPackageCS__NsPrefixAssignment_2_1
+            // InternalOCLstdlib.g:10816:1: ( rule__LibPackageCS__NsPrefixAssignment_2_1 )
+            // InternalOCLstdlib.g:10816:2: rule__LibPackageCS__NsPrefixAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPackageCS__NsPrefixAssignment_2_1();
@@ -33090,14 +33090,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_2__2"
-    // InternalOCLstdlib.g:10824:1: rule__LibPackageCS__Group_2__2 : rule__LibPackageCS__Group_2__2__Impl rule__LibPackageCS__Group_2__3 ;
+    // InternalOCLstdlib.g:10826:1: rule__LibPackageCS__Group_2__2 : rule__LibPackageCS__Group_2__2__Impl rule__LibPackageCS__Group_2__3 ;
     public final void rule__LibPackageCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10828:1: ( rule__LibPackageCS__Group_2__2__Impl rule__LibPackageCS__Group_2__3 )
-            // InternalOCLstdlib.g:10829:2: rule__LibPackageCS__Group_2__2__Impl rule__LibPackageCS__Group_2__3
+            // InternalOCLstdlib.g:10830:1: ( rule__LibPackageCS__Group_2__2__Impl rule__LibPackageCS__Group_2__3 )
+            // InternalOCLstdlib.g:10831:2: rule__LibPackageCS__Group_2__2__Impl rule__LibPackageCS__Group_2__3
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__LibPackageCS__Group_2__2__Impl();
@@ -33128,17 +33128,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_2__2__Impl"
-    // InternalOCLstdlib.g:10836:1: rule__LibPackageCS__Group_2__2__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:10838:1: rule__LibPackageCS__Group_2__2__Impl : ( '=' ) ;
     public final void rule__LibPackageCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10840:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:10841:1: ( '=' )
+            // InternalOCLstdlib.g:10842:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:10843:1: ( '=' )
             {
-            // InternalOCLstdlib.g:10841:1: ( '=' )
-            // InternalOCLstdlib.g:10842:1: '='
+            // InternalOCLstdlib.g:10843:1: ( '=' )
+            // InternalOCLstdlib.g:10844:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getEqualsSignKeyword_2_2());
@@ -33169,14 +33169,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_2__3"
-    // InternalOCLstdlib.g:10855:1: rule__LibPackageCS__Group_2__3 : rule__LibPackageCS__Group_2__3__Impl ;
+    // InternalOCLstdlib.g:10857:1: rule__LibPackageCS__Group_2__3 : rule__LibPackageCS__Group_2__3__Impl ;
     public final void rule__LibPackageCS__Group_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10859:1: ( rule__LibPackageCS__Group_2__3__Impl )
-            // InternalOCLstdlib.g:10860:2: rule__LibPackageCS__Group_2__3__Impl
+            // InternalOCLstdlib.g:10861:1: ( rule__LibPackageCS__Group_2__3__Impl )
+            // InternalOCLstdlib.g:10862:2: rule__LibPackageCS__Group_2__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPackageCS__Group_2__3__Impl();
@@ -33202,23 +33202,23 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_2__3__Impl"
-    // InternalOCLstdlib.g:10866:1: rule__LibPackageCS__Group_2__3__Impl : ( ( rule__LibPackageCS__NsURIAssignment_2_3 ) ) ;
+    // InternalOCLstdlib.g:10868:1: rule__LibPackageCS__Group_2__3__Impl : ( ( rule__LibPackageCS__NsURIAssignment_2_3 ) ) ;
     public final void rule__LibPackageCS__Group_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10870:1: ( ( ( rule__LibPackageCS__NsURIAssignment_2_3 ) ) )
-            // InternalOCLstdlib.g:10871:1: ( ( rule__LibPackageCS__NsURIAssignment_2_3 ) )
+            // InternalOCLstdlib.g:10872:1: ( ( ( rule__LibPackageCS__NsURIAssignment_2_3 ) ) )
+            // InternalOCLstdlib.g:10873:1: ( ( rule__LibPackageCS__NsURIAssignment_2_3 ) )
             {
-            // InternalOCLstdlib.g:10871:1: ( ( rule__LibPackageCS__NsURIAssignment_2_3 ) )
-            // InternalOCLstdlib.g:10872:1: ( rule__LibPackageCS__NsURIAssignment_2_3 )
+            // InternalOCLstdlib.g:10873:1: ( ( rule__LibPackageCS__NsURIAssignment_2_3 ) )
+            // InternalOCLstdlib.g:10874:1: ( rule__LibPackageCS__NsURIAssignment_2_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getNsURIAssignment_2_3());
             }
-            // InternalOCLstdlib.g:10873:1: ( rule__LibPackageCS__NsURIAssignment_2_3 )
-            // InternalOCLstdlib.g:10873:2: rule__LibPackageCS__NsURIAssignment_2_3
+            // InternalOCLstdlib.g:10875:1: ( rule__LibPackageCS__NsURIAssignment_2_3 )
+            // InternalOCLstdlib.g:10875:2: rule__LibPackageCS__NsURIAssignment_2_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPackageCS__NsURIAssignment_2_3();
@@ -33253,14 +33253,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_4_1__0"
-    // InternalOCLstdlib.g:10891:1: rule__LibPackageCS__Group_4_1__0 : rule__LibPackageCS__Group_4_1__0__Impl rule__LibPackageCS__Group_4_1__1 ;
+    // InternalOCLstdlib.g:10893:1: rule__LibPackageCS__Group_4_1__0 : rule__LibPackageCS__Group_4_1__0__Impl rule__LibPackageCS__Group_4_1__1 ;
     public final void rule__LibPackageCS__Group_4_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10895:1: ( rule__LibPackageCS__Group_4_1__0__Impl rule__LibPackageCS__Group_4_1__1 )
-            // InternalOCLstdlib.g:10896:2: rule__LibPackageCS__Group_4_1__0__Impl rule__LibPackageCS__Group_4_1__1
+            // InternalOCLstdlib.g:10897:1: ( rule__LibPackageCS__Group_4_1__0__Impl rule__LibPackageCS__Group_4_1__1 )
+            // InternalOCLstdlib.g:10898:2: rule__LibPackageCS__Group_4_1__0__Impl rule__LibPackageCS__Group_4_1__1
             {
             pushFollow(FollowSets000.FOLLOW_52);
             rule__LibPackageCS__Group_4_1__0__Impl();
@@ -33291,17 +33291,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_4_1__0__Impl"
-    // InternalOCLstdlib.g:10903:1: rule__LibPackageCS__Group_4_1__0__Impl : ( 'precedence' ) ;
+    // InternalOCLstdlib.g:10905:1: rule__LibPackageCS__Group_4_1__0__Impl : ( 'precedence' ) ;
     public final void rule__LibPackageCS__Group_4_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10907:1: ( ( 'precedence' ) )
-            // InternalOCLstdlib.g:10908:1: ( 'precedence' )
+            // InternalOCLstdlib.g:10909:1: ( ( 'precedence' ) )
+            // InternalOCLstdlib.g:10910:1: ( 'precedence' )
             {
-            // InternalOCLstdlib.g:10908:1: ( 'precedence' )
-            // InternalOCLstdlib.g:10909:1: 'precedence'
+            // InternalOCLstdlib.g:10910:1: ( 'precedence' )
+            // InternalOCLstdlib.g:10911:1: 'precedence'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getPrecedenceKeyword_4_1_0());
@@ -33332,14 +33332,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_4_1__1"
-    // InternalOCLstdlib.g:10922:1: rule__LibPackageCS__Group_4_1__1 : rule__LibPackageCS__Group_4_1__1__Impl rule__LibPackageCS__Group_4_1__2 ;
+    // InternalOCLstdlib.g:10924:1: rule__LibPackageCS__Group_4_1__1 : rule__LibPackageCS__Group_4_1__1__Impl rule__LibPackageCS__Group_4_1__2 ;
     public final void rule__LibPackageCS__Group_4_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10926:1: ( rule__LibPackageCS__Group_4_1__1__Impl rule__LibPackageCS__Group_4_1__2 )
-            // InternalOCLstdlib.g:10927:2: rule__LibPackageCS__Group_4_1__1__Impl rule__LibPackageCS__Group_4_1__2
+            // InternalOCLstdlib.g:10928:1: ( rule__LibPackageCS__Group_4_1__1__Impl rule__LibPackageCS__Group_4_1__2 )
+            // InternalOCLstdlib.g:10929:2: rule__LibPackageCS__Group_4_1__1__Impl rule__LibPackageCS__Group_4_1__2
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__LibPackageCS__Group_4_1__1__Impl();
@@ -33370,26 +33370,26 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_4_1__1__Impl"
-    // InternalOCLstdlib.g:10934:1: rule__LibPackageCS__Group_4_1__1__Impl : ( ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) ) ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* ) ) ;
+    // InternalOCLstdlib.g:10936:1: rule__LibPackageCS__Group_4_1__1__Impl : ( ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) ) ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* ) ) ;
     public final void rule__LibPackageCS__Group_4_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10938:1: ( ( ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) ) ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* ) ) )
-            // InternalOCLstdlib.g:10939:1: ( ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) ) ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* ) )
+            // InternalOCLstdlib.g:10940:1: ( ( ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) ) ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* ) ) )
+            // InternalOCLstdlib.g:10941:1: ( ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) ) ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* ) )
             {
-            // InternalOCLstdlib.g:10939:1: ( ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) ) ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* ) )
-            // InternalOCLstdlib.g:10940:1: ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) ) ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* )
+            // InternalOCLstdlib.g:10941:1: ( ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) ) ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* ) )
+            // InternalOCLstdlib.g:10942:1: ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) ) ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* )
             {
-            // InternalOCLstdlib.g:10940:1: ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) )
-            // InternalOCLstdlib.g:10941:1: ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )
+            // InternalOCLstdlib.g:10942:1: ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) )
+            // InternalOCLstdlib.g:10943:1: ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesAssignment_4_1_1());
             }
-            // InternalOCLstdlib.g:10942:1: ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )
-            // InternalOCLstdlib.g:10942:2: rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1
+            // InternalOCLstdlib.g:10944:1: ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )
+            // InternalOCLstdlib.g:10944:2: rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1
             {
             pushFollow(FollowSets000.FOLLOW_53);
             rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1();
@@ -33405,13 +33405,13 @@
 
             }
 
-            // InternalOCLstdlib.g:10945:1: ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* )
-            // InternalOCLstdlib.g:10946:1: ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )*
+            // InternalOCLstdlib.g:10947:1: ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* )
+            // InternalOCLstdlib.g:10948:1: ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesAssignment_4_1_1());
             }
-            // InternalOCLstdlib.g:10947:1: ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )*
+            // InternalOCLstdlib.g:10949:1: ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )*
             loop103:
             do {
                 int alt103=2;
@@ -33424,7 +33424,7 @@
 
                 switch (alt103) {
             	case 1 :
-            	    // InternalOCLstdlib.g:10947:2: rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1
+            	    // InternalOCLstdlib.g:10949:2: rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_53);
             	    rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1();
@@ -33468,14 +33468,14 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_4_1__2"
-    // InternalOCLstdlib.g:10958:1: rule__LibPackageCS__Group_4_1__2 : rule__LibPackageCS__Group_4_1__2__Impl ;
+    // InternalOCLstdlib.g:10960:1: rule__LibPackageCS__Group_4_1__2 : rule__LibPackageCS__Group_4_1__2__Impl ;
     public final void rule__LibPackageCS__Group_4_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10962:1: ( rule__LibPackageCS__Group_4_1__2__Impl )
-            // InternalOCLstdlib.g:10963:2: rule__LibPackageCS__Group_4_1__2__Impl
+            // InternalOCLstdlib.g:10964:1: ( rule__LibPackageCS__Group_4_1__2__Impl )
+            // InternalOCLstdlib.g:10965:2: rule__LibPackageCS__Group_4_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPackageCS__Group_4_1__2__Impl();
@@ -33501,17 +33501,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__Group_4_1__2__Impl"
-    // InternalOCLstdlib.g:10969:1: rule__LibPackageCS__Group_4_1__2__Impl : ( ';' ) ;
+    // InternalOCLstdlib.g:10971:1: rule__LibPackageCS__Group_4_1__2__Impl : ( ';' ) ;
     public final void rule__LibPackageCS__Group_4_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10973:1: ( ( ';' ) )
-            // InternalOCLstdlib.g:10974:1: ( ';' )
+            // InternalOCLstdlib.g:10975:1: ( ( ';' ) )
+            // InternalOCLstdlib.g:10976:1: ( ';' )
             {
-            // InternalOCLstdlib.g:10974:1: ( ';' )
-            // InternalOCLstdlib.g:10975:1: ';'
+            // InternalOCLstdlib.g:10976:1: ( ';' )
+            // InternalOCLstdlib.g:10977:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getSemicolonKeyword_4_1_2());
@@ -33542,14 +33542,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__0"
-    // InternalOCLstdlib.g:10994:1: rule__PackageCS__Group__0 : rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1 ;
+    // InternalOCLstdlib.g:10996:1: rule__PackageCS__Group__0 : rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1 ;
     public final void rule__PackageCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:10998:1: ( rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1 )
-            // InternalOCLstdlib.g:10999:2: rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1
+            // InternalOCLstdlib.g:11000:1: ( rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1 )
+            // InternalOCLstdlib.g:11001:2: rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__PackageCS__Group__0__Impl();
@@ -33580,17 +33580,17 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__0__Impl"
-    // InternalOCLstdlib.g:11006:1: rule__PackageCS__Group__0__Impl : ( 'package' ) ;
+    // InternalOCLstdlib.g:11008:1: rule__PackageCS__Group__0__Impl : ( 'package' ) ;
     public final void rule__PackageCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11010:1: ( ( 'package' ) )
-            // InternalOCLstdlib.g:11011:1: ( 'package' )
+            // InternalOCLstdlib.g:11012:1: ( ( 'package' ) )
+            // InternalOCLstdlib.g:11013:1: ( 'package' )
             {
-            // InternalOCLstdlib.g:11011:1: ( 'package' )
-            // InternalOCLstdlib.g:11012:1: 'package'
+            // InternalOCLstdlib.g:11013:1: ( 'package' )
+            // InternalOCLstdlib.g:11014:1: 'package'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getPackageKeyword_0());
@@ -33621,14 +33621,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__1"
-    // InternalOCLstdlib.g:11025:1: rule__PackageCS__Group__1 : rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2 ;
+    // InternalOCLstdlib.g:11027:1: rule__PackageCS__Group__1 : rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2 ;
     public final void rule__PackageCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11029:1: ( rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2 )
-            // InternalOCLstdlib.g:11030:2: rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2
+            // InternalOCLstdlib.g:11031:1: ( rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2 )
+            // InternalOCLstdlib.g:11032:2: rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_49);
             rule__PackageCS__Group__1__Impl();
@@ -33659,23 +33659,23 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__1__Impl"
-    // InternalOCLstdlib.g:11037:1: rule__PackageCS__Group__1__Impl : ( ( rule__PackageCS__NameAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:11039:1: rule__PackageCS__Group__1__Impl : ( ( rule__PackageCS__NameAssignment_1 ) ) ;
     public final void rule__PackageCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11041:1: ( ( ( rule__PackageCS__NameAssignment_1 ) ) )
-            // InternalOCLstdlib.g:11042:1: ( ( rule__PackageCS__NameAssignment_1 ) )
+            // InternalOCLstdlib.g:11043:1: ( ( ( rule__PackageCS__NameAssignment_1 ) ) )
+            // InternalOCLstdlib.g:11044:1: ( ( rule__PackageCS__NameAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:11042:1: ( ( rule__PackageCS__NameAssignment_1 ) )
-            // InternalOCLstdlib.g:11043:1: ( rule__PackageCS__NameAssignment_1 )
+            // InternalOCLstdlib.g:11044:1: ( ( rule__PackageCS__NameAssignment_1 ) )
+            // InternalOCLstdlib.g:11045:1: ( rule__PackageCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getNameAssignment_1());
             }
-            // InternalOCLstdlib.g:11044:1: ( rule__PackageCS__NameAssignment_1 )
-            // InternalOCLstdlib.g:11044:2: rule__PackageCS__NameAssignment_1
+            // InternalOCLstdlib.g:11046:1: ( rule__PackageCS__NameAssignment_1 )
+            // InternalOCLstdlib.g:11046:2: rule__PackageCS__NameAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__NameAssignment_1();
@@ -33710,14 +33710,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__2"
-    // InternalOCLstdlib.g:11054:1: rule__PackageCS__Group__2 : rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3 ;
+    // InternalOCLstdlib.g:11056:1: rule__PackageCS__Group__2 : rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3 ;
     public final void rule__PackageCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11058:1: ( rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3 )
-            // InternalOCLstdlib.g:11059:2: rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3
+            // InternalOCLstdlib.g:11060:1: ( rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3 )
+            // InternalOCLstdlib.g:11061:2: rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_49);
             rule__PackageCS__Group__2__Impl();
@@ -33748,22 +33748,22 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__2__Impl"
-    // InternalOCLstdlib.g:11066:1: rule__PackageCS__Group__2__Impl : ( ( rule__PackageCS__Group_2__0 )? ) ;
+    // InternalOCLstdlib.g:11068:1: rule__PackageCS__Group__2__Impl : ( ( rule__PackageCS__Group_2__0 )? ) ;
     public final void rule__PackageCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11070:1: ( ( ( rule__PackageCS__Group_2__0 )? ) )
-            // InternalOCLstdlib.g:11071:1: ( ( rule__PackageCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:11072:1: ( ( ( rule__PackageCS__Group_2__0 )? ) )
+            // InternalOCLstdlib.g:11073:1: ( ( rule__PackageCS__Group_2__0 )? )
             {
-            // InternalOCLstdlib.g:11071:1: ( ( rule__PackageCS__Group_2__0 )? )
-            // InternalOCLstdlib.g:11072:1: ( rule__PackageCS__Group_2__0 )?
+            // InternalOCLstdlib.g:11073:1: ( ( rule__PackageCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:11074:1: ( rule__PackageCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:11073:1: ( rule__PackageCS__Group_2__0 )?
+            // InternalOCLstdlib.g:11075:1: ( rule__PackageCS__Group_2__0 )?
             int alt104=2;
             int LA104_0 = input.LA(1);
 
@@ -33772,7 +33772,7 @@
             }
             switch (alt104) {
                 case 1 :
-                    // InternalOCLstdlib.g:11073:2: rule__PackageCS__Group_2__0
+                    // InternalOCLstdlib.g:11075:2: rule__PackageCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PackageCS__Group_2__0();
@@ -33810,14 +33810,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__3"
-    // InternalOCLstdlib.g:11083:1: rule__PackageCS__Group__3 : rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4 ;
+    // InternalOCLstdlib.g:11085:1: rule__PackageCS__Group__3 : rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4 ;
     public final void rule__PackageCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11087:1: ( rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4 )
-            // InternalOCLstdlib.g:11088:2: rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4
+            // InternalOCLstdlib.g:11089:1: ( rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4 )
+            // InternalOCLstdlib.g:11090:2: rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_54);
             rule__PackageCS__Group__3__Impl();
@@ -33848,17 +33848,17 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__3__Impl"
-    // InternalOCLstdlib.g:11095:1: rule__PackageCS__Group__3__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:11097:1: rule__PackageCS__Group__3__Impl : ( '{' ) ;
     public final void rule__PackageCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11099:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:11100:1: ( '{' )
+            // InternalOCLstdlib.g:11101:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:11102:1: ( '{' )
             {
-            // InternalOCLstdlib.g:11100:1: ( '{' )
-            // InternalOCLstdlib.g:11101:1: '{'
+            // InternalOCLstdlib.g:11102:1: ( '{' )
+            // InternalOCLstdlib.g:11103:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_3());
@@ -33889,14 +33889,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__4"
-    // InternalOCLstdlib.g:11114:1: rule__PackageCS__Group__4 : rule__PackageCS__Group__4__Impl rule__PackageCS__Group__5 ;
+    // InternalOCLstdlib.g:11116:1: rule__PackageCS__Group__4 : rule__PackageCS__Group__4__Impl rule__PackageCS__Group__5 ;
     public final void rule__PackageCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11118:1: ( rule__PackageCS__Group__4__Impl rule__PackageCS__Group__5 )
-            // InternalOCLstdlib.g:11119:2: rule__PackageCS__Group__4__Impl rule__PackageCS__Group__5
+            // InternalOCLstdlib.g:11120:1: ( rule__PackageCS__Group__4__Impl rule__PackageCS__Group__5 )
+            // InternalOCLstdlib.g:11121:2: rule__PackageCS__Group__4__Impl rule__PackageCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_54);
             rule__PackageCS__Group__4__Impl();
@@ -33927,22 +33927,22 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__4__Impl"
-    // InternalOCLstdlib.g:11126:1: rule__PackageCS__Group__4__Impl : ( ( rule__PackageCS__Alternatives_4 )* ) ;
+    // InternalOCLstdlib.g:11128:1: rule__PackageCS__Group__4__Impl : ( ( rule__PackageCS__Alternatives_4 )* ) ;
     public final void rule__PackageCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11130:1: ( ( ( rule__PackageCS__Alternatives_4 )* ) )
-            // InternalOCLstdlib.g:11131:1: ( ( rule__PackageCS__Alternatives_4 )* )
+            // InternalOCLstdlib.g:11132:1: ( ( ( rule__PackageCS__Alternatives_4 )* ) )
+            // InternalOCLstdlib.g:11133:1: ( ( rule__PackageCS__Alternatives_4 )* )
             {
-            // InternalOCLstdlib.g:11131:1: ( ( rule__PackageCS__Alternatives_4 )* )
-            // InternalOCLstdlib.g:11132:1: ( rule__PackageCS__Alternatives_4 )*
+            // InternalOCLstdlib.g:11133:1: ( ( rule__PackageCS__Alternatives_4 )* )
+            // InternalOCLstdlib.g:11134:1: ( rule__PackageCS__Alternatives_4 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getAlternatives_4());
             }
-            // InternalOCLstdlib.g:11133:1: ( rule__PackageCS__Alternatives_4 )*
+            // InternalOCLstdlib.g:11135:1: ( rule__PackageCS__Alternatives_4 )*
             loop105:
             do {
                 int alt105=2;
@@ -33955,7 +33955,7 @@
 
                 switch (alt105) {
             	case 1 :
-            	    // InternalOCLstdlib.g:11133:2: rule__PackageCS__Alternatives_4
+            	    // InternalOCLstdlib.g:11135:2: rule__PackageCS__Alternatives_4
             	    {
             	    pushFollow(FollowSets000.FOLLOW_55);
             	    rule__PackageCS__Alternatives_4();
@@ -33996,14 +33996,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__5"
-    // InternalOCLstdlib.g:11143:1: rule__PackageCS__Group__5 : rule__PackageCS__Group__5__Impl ;
+    // InternalOCLstdlib.g:11145:1: rule__PackageCS__Group__5 : rule__PackageCS__Group__5__Impl ;
     public final void rule__PackageCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11147:1: ( rule__PackageCS__Group__5__Impl )
-            // InternalOCLstdlib.g:11148:2: rule__PackageCS__Group__5__Impl
+            // InternalOCLstdlib.g:11149:1: ( rule__PackageCS__Group__5__Impl )
+            // InternalOCLstdlib.g:11150:2: rule__PackageCS__Group__5__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__Group__5__Impl();
@@ -34029,17 +34029,17 @@
 
 
     // $ANTLR start "rule__PackageCS__Group__5__Impl"
-    // InternalOCLstdlib.g:11154:1: rule__PackageCS__Group__5__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:11156:1: rule__PackageCS__Group__5__Impl : ( '}' ) ;
     public final void rule__PackageCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11158:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:11159:1: ( '}' )
+            // InternalOCLstdlib.g:11160:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:11161:1: ( '}' )
             {
-            // InternalOCLstdlib.g:11159:1: ( '}' )
-            // InternalOCLstdlib.g:11160:1: '}'
+            // InternalOCLstdlib.g:11161:1: ( '}' )
+            // InternalOCLstdlib.g:11162:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_5());
@@ -34070,14 +34070,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_2__0"
-    // InternalOCLstdlib.g:11185:1: rule__PackageCS__Group_2__0 : rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1 ;
+    // InternalOCLstdlib.g:11187:1: rule__PackageCS__Group_2__0 : rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1 ;
     public final void rule__PackageCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11189:1: ( rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1 )
-            // InternalOCLstdlib.g:11190:2: rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1
+            // InternalOCLstdlib.g:11191:1: ( rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1 )
+            // InternalOCLstdlib.g:11192:2: rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__PackageCS__Group_2__0__Impl();
@@ -34108,17 +34108,17 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:11197:1: rule__PackageCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:11199:1: rule__PackageCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__PackageCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11201:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:11202:1: ( ':' )
+            // InternalOCLstdlib.g:11203:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:11204:1: ( ':' )
             {
-            // InternalOCLstdlib.g:11202:1: ( ':' )
-            // InternalOCLstdlib.g:11203:1: ':'
+            // InternalOCLstdlib.g:11204:1: ( ':' )
+            // InternalOCLstdlib.g:11205:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getColonKeyword_2_0());
@@ -34149,14 +34149,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_2__1"
-    // InternalOCLstdlib.g:11216:1: rule__PackageCS__Group_2__1 : rule__PackageCS__Group_2__1__Impl rule__PackageCS__Group_2__2 ;
+    // InternalOCLstdlib.g:11218:1: rule__PackageCS__Group_2__1 : rule__PackageCS__Group_2__1__Impl rule__PackageCS__Group_2__2 ;
     public final void rule__PackageCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11220:1: ( rule__PackageCS__Group_2__1__Impl rule__PackageCS__Group_2__2 )
-            // InternalOCLstdlib.g:11221:2: rule__PackageCS__Group_2__1__Impl rule__PackageCS__Group_2__2
+            // InternalOCLstdlib.g:11222:1: ( rule__PackageCS__Group_2__1__Impl rule__PackageCS__Group_2__2 )
+            // InternalOCLstdlib.g:11223:2: rule__PackageCS__Group_2__1__Impl rule__PackageCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__PackageCS__Group_2__1__Impl();
@@ -34187,23 +34187,23 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:11228:1: rule__PackageCS__Group_2__1__Impl : ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) ) ;
+    // InternalOCLstdlib.g:11230:1: rule__PackageCS__Group_2__1__Impl : ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) ) ;
     public final void rule__PackageCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11232:1: ( ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) ) )
-            // InternalOCLstdlib.g:11233:1: ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) )
+            // InternalOCLstdlib.g:11234:1: ( ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) ) )
+            // InternalOCLstdlib.g:11235:1: ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) )
             {
-            // InternalOCLstdlib.g:11233:1: ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) )
-            // InternalOCLstdlib.g:11234:1: ( rule__PackageCS__NsPrefixAssignment_2_1 )
+            // InternalOCLstdlib.g:11235:1: ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) )
+            // InternalOCLstdlib.g:11236:1: ( rule__PackageCS__NsPrefixAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getNsPrefixAssignment_2_1());
             }
-            // InternalOCLstdlib.g:11235:1: ( rule__PackageCS__NsPrefixAssignment_2_1 )
-            // InternalOCLstdlib.g:11235:2: rule__PackageCS__NsPrefixAssignment_2_1
+            // InternalOCLstdlib.g:11237:1: ( rule__PackageCS__NsPrefixAssignment_2_1 )
+            // InternalOCLstdlib.g:11237:2: rule__PackageCS__NsPrefixAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__NsPrefixAssignment_2_1();
@@ -34238,14 +34238,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_2__2"
-    // InternalOCLstdlib.g:11245:1: rule__PackageCS__Group_2__2 : rule__PackageCS__Group_2__2__Impl rule__PackageCS__Group_2__3 ;
+    // InternalOCLstdlib.g:11247:1: rule__PackageCS__Group_2__2 : rule__PackageCS__Group_2__2__Impl rule__PackageCS__Group_2__3 ;
     public final void rule__PackageCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11249:1: ( rule__PackageCS__Group_2__2__Impl rule__PackageCS__Group_2__3 )
-            // InternalOCLstdlib.g:11250:2: rule__PackageCS__Group_2__2__Impl rule__PackageCS__Group_2__3
+            // InternalOCLstdlib.g:11251:1: ( rule__PackageCS__Group_2__2__Impl rule__PackageCS__Group_2__3 )
+            // InternalOCLstdlib.g:11252:2: rule__PackageCS__Group_2__2__Impl rule__PackageCS__Group_2__3
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__PackageCS__Group_2__2__Impl();
@@ -34276,17 +34276,17 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_2__2__Impl"
-    // InternalOCLstdlib.g:11257:1: rule__PackageCS__Group_2__2__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:11259:1: rule__PackageCS__Group_2__2__Impl : ( '=' ) ;
     public final void rule__PackageCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11261:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:11262:1: ( '=' )
+            // InternalOCLstdlib.g:11263:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:11264:1: ( '=' )
             {
-            // InternalOCLstdlib.g:11262:1: ( '=' )
-            // InternalOCLstdlib.g:11263:1: '='
+            // InternalOCLstdlib.g:11264:1: ( '=' )
+            // InternalOCLstdlib.g:11265:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_2_2());
@@ -34317,14 +34317,14 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_2__3"
-    // InternalOCLstdlib.g:11276:1: rule__PackageCS__Group_2__3 : rule__PackageCS__Group_2__3__Impl ;
+    // InternalOCLstdlib.g:11278:1: rule__PackageCS__Group_2__3 : rule__PackageCS__Group_2__3__Impl ;
     public final void rule__PackageCS__Group_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11280:1: ( rule__PackageCS__Group_2__3__Impl )
-            // InternalOCLstdlib.g:11281:2: rule__PackageCS__Group_2__3__Impl
+            // InternalOCLstdlib.g:11282:1: ( rule__PackageCS__Group_2__3__Impl )
+            // InternalOCLstdlib.g:11283:2: rule__PackageCS__Group_2__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__Group_2__3__Impl();
@@ -34350,23 +34350,23 @@
 
 
     // $ANTLR start "rule__PackageCS__Group_2__3__Impl"
-    // InternalOCLstdlib.g:11287:1: rule__PackageCS__Group_2__3__Impl : ( ( rule__PackageCS__NsURIAssignment_2_3 ) ) ;
+    // InternalOCLstdlib.g:11289:1: rule__PackageCS__Group_2__3__Impl : ( ( rule__PackageCS__NsURIAssignment_2_3 ) ) ;
     public final void rule__PackageCS__Group_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11291:1: ( ( ( rule__PackageCS__NsURIAssignment_2_3 ) ) )
-            // InternalOCLstdlib.g:11292:1: ( ( rule__PackageCS__NsURIAssignment_2_3 ) )
+            // InternalOCLstdlib.g:11293:1: ( ( ( rule__PackageCS__NsURIAssignment_2_3 ) ) )
+            // InternalOCLstdlib.g:11294:1: ( ( rule__PackageCS__NsURIAssignment_2_3 ) )
             {
-            // InternalOCLstdlib.g:11292:1: ( ( rule__PackageCS__NsURIAssignment_2_3 ) )
-            // InternalOCLstdlib.g:11293:1: ( rule__PackageCS__NsURIAssignment_2_3 )
+            // InternalOCLstdlib.g:11294:1: ( ( rule__PackageCS__NsURIAssignment_2_3 ) )
+            // InternalOCLstdlib.g:11295:1: ( rule__PackageCS__NsURIAssignment_2_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getNsURIAssignment_2_3());
             }
-            // InternalOCLstdlib.g:11294:1: ( rule__PackageCS__NsURIAssignment_2_3 )
-            // InternalOCLstdlib.g:11294:2: rule__PackageCS__NsURIAssignment_2_3
+            // InternalOCLstdlib.g:11296:1: ( rule__PackageCS__NsURIAssignment_2_3 )
+            // InternalOCLstdlib.g:11296:2: rule__PackageCS__NsURIAssignment_2_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PackageCS__NsURIAssignment_2_3();
@@ -34401,14 +34401,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__0"
-    // InternalOCLstdlib.g:11312:1: rule__ParameterCS__Group__0 : rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 ;
+    // InternalOCLstdlib.g:11314:1: rule__ParameterCS__Group__0 : rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 ;
     public final void rule__ParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11316:1: ( rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 )
-            // InternalOCLstdlib.g:11317:2: rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1
+            // InternalOCLstdlib.g:11318:1: ( rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 )
+            // InternalOCLstdlib.g:11319:2: rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__ParameterCS__Group__0__Impl();
@@ -34439,23 +34439,23 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__0__Impl"
-    // InternalOCLstdlib.g:11324:1: rule__ParameterCS__Group__0__Impl : ( ( rule__ParameterCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:11326:1: rule__ParameterCS__Group__0__Impl : ( ( rule__ParameterCS__NameAssignment_0 ) ) ;
     public final void rule__ParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11328:1: ( ( ( rule__ParameterCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:11329:1: ( ( rule__ParameterCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:11330:1: ( ( ( rule__ParameterCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:11331:1: ( ( rule__ParameterCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:11329:1: ( ( rule__ParameterCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:11330:1: ( rule__ParameterCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:11331:1: ( ( rule__ParameterCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:11332:1: ( rule__ParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:11331:1: ( rule__ParameterCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:11331:2: rule__ParameterCS__NameAssignment_0
+            // InternalOCLstdlib.g:11333:1: ( rule__ParameterCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:11333:2: rule__ParameterCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__NameAssignment_0();
@@ -34490,14 +34490,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__1"
-    // InternalOCLstdlib.g:11341:1: rule__ParameterCS__Group__1 : rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2 ;
+    // InternalOCLstdlib.g:11343:1: rule__ParameterCS__Group__1 : rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2 ;
     public final void rule__ParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11345:1: ( rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2 )
-            // InternalOCLstdlib.g:11346:2: rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2
+            // InternalOCLstdlib.g:11347:1: ( rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2 )
+            // InternalOCLstdlib.g:11348:2: rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__ParameterCS__Group__1__Impl();
@@ -34528,17 +34528,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__1__Impl"
-    // InternalOCLstdlib.g:11353:1: rule__ParameterCS__Group__1__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:11355:1: rule__ParameterCS__Group__1__Impl : ( ':' ) ;
     public final void rule__ParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11357:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:11358:1: ( ':' )
+            // InternalOCLstdlib.g:11359:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:11360:1: ( ':' )
             {
-            // InternalOCLstdlib.g:11358:1: ( ':' )
-            // InternalOCLstdlib.g:11359:1: ':'
+            // InternalOCLstdlib.g:11360:1: ( ':' )
+            // InternalOCLstdlib.g:11361:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getColonKeyword_1());
@@ -34569,14 +34569,14 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__2"
-    // InternalOCLstdlib.g:11372:1: rule__ParameterCS__Group__2 : rule__ParameterCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:11374:1: rule__ParameterCS__Group__2 : rule__ParameterCS__Group__2__Impl ;
     public final void rule__ParameterCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11376:1: ( rule__ParameterCS__Group__2__Impl )
-            // InternalOCLstdlib.g:11377:2: rule__ParameterCS__Group__2__Impl
+            // InternalOCLstdlib.g:11378:1: ( rule__ParameterCS__Group__2__Impl )
+            // InternalOCLstdlib.g:11379:2: rule__ParameterCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__Group__2__Impl();
@@ -34602,23 +34602,23 @@
 
 
     // $ANTLR start "rule__ParameterCS__Group__2__Impl"
-    // InternalOCLstdlib.g:11383:1: rule__ParameterCS__Group__2__Impl : ( ( rule__ParameterCS__OwnedTypeAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:11385:1: rule__ParameterCS__Group__2__Impl : ( ( rule__ParameterCS__OwnedTypeAssignment_2 ) ) ;
     public final void rule__ParameterCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11387:1: ( ( ( rule__ParameterCS__OwnedTypeAssignment_2 ) ) )
-            // InternalOCLstdlib.g:11388:1: ( ( rule__ParameterCS__OwnedTypeAssignment_2 ) )
+            // InternalOCLstdlib.g:11389:1: ( ( ( rule__ParameterCS__OwnedTypeAssignment_2 ) ) )
+            // InternalOCLstdlib.g:11390:1: ( ( rule__ParameterCS__OwnedTypeAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:11388:1: ( ( rule__ParameterCS__OwnedTypeAssignment_2 ) )
-            // InternalOCLstdlib.g:11389:1: ( rule__ParameterCS__OwnedTypeAssignment_2 )
+            // InternalOCLstdlib.g:11390:1: ( ( rule__ParameterCS__OwnedTypeAssignment_2 ) )
+            // InternalOCLstdlib.g:11391:1: ( rule__ParameterCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_2());
             }
-            // InternalOCLstdlib.g:11390:1: ( rule__ParameterCS__OwnedTypeAssignment_2 )
-            // InternalOCLstdlib.g:11390:2: rule__ParameterCS__OwnedTypeAssignment_2
+            // InternalOCLstdlib.g:11392:1: ( rule__ParameterCS__OwnedTypeAssignment_2 )
+            // InternalOCLstdlib.g:11392:2: rule__ParameterCS__OwnedTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ParameterCS__OwnedTypeAssignment_2();
@@ -34653,14 +34653,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__0"
-    // InternalOCLstdlib.g:11406:1: rule__LibPropertyCS__Group__0 : rule__LibPropertyCS__Group__0__Impl rule__LibPropertyCS__Group__1 ;
+    // InternalOCLstdlib.g:11408:1: rule__LibPropertyCS__Group__0 : rule__LibPropertyCS__Group__0__Impl rule__LibPropertyCS__Group__1 ;
     public final void rule__LibPropertyCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11410:1: ( rule__LibPropertyCS__Group__0__Impl rule__LibPropertyCS__Group__1 )
-            // InternalOCLstdlib.g:11411:2: rule__LibPropertyCS__Group__0__Impl rule__LibPropertyCS__Group__1
+            // InternalOCLstdlib.g:11412:1: ( rule__LibPropertyCS__Group__0__Impl rule__LibPropertyCS__Group__1 )
+            // InternalOCLstdlib.g:11413:2: rule__LibPropertyCS__Group__0__Impl rule__LibPropertyCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_56);
             rule__LibPropertyCS__Group__0__Impl();
@@ -34691,22 +34691,22 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__0__Impl"
-    // InternalOCLstdlib.g:11418:1: rule__LibPropertyCS__Group__0__Impl : ( ( rule__LibPropertyCS__IsStaticAssignment_0 )? ) ;
+    // InternalOCLstdlib.g:11420:1: rule__LibPropertyCS__Group__0__Impl : ( ( rule__LibPropertyCS__IsStaticAssignment_0 )? ) ;
     public final void rule__LibPropertyCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11422:1: ( ( ( rule__LibPropertyCS__IsStaticAssignment_0 )? ) )
-            // InternalOCLstdlib.g:11423:1: ( ( rule__LibPropertyCS__IsStaticAssignment_0 )? )
+            // InternalOCLstdlib.g:11424:1: ( ( ( rule__LibPropertyCS__IsStaticAssignment_0 )? ) )
+            // InternalOCLstdlib.g:11425:1: ( ( rule__LibPropertyCS__IsStaticAssignment_0 )? )
             {
-            // InternalOCLstdlib.g:11423:1: ( ( rule__LibPropertyCS__IsStaticAssignment_0 )? )
-            // InternalOCLstdlib.g:11424:1: ( rule__LibPropertyCS__IsStaticAssignment_0 )?
+            // InternalOCLstdlib.g:11425:1: ( ( rule__LibPropertyCS__IsStaticAssignment_0 )? )
+            // InternalOCLstdlib.g:11426:1: ( rule__LibPropertyCS__IsStaticAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getIsStaticAssignment_0());
             }
-            // InternalOCLstdlib.g:11425:1: ( rule__LibPropertyCS__IsStaticAssignment_0 )?
+            // InternalOCLstdlib.g:11427:1: ( rule__LibPropertyCS__IsStaticAssignment_0 )?
             int alt106=2;
             int LA106_0 = input.LA(1);
 
@@ -34715,7 +34715,7 @@
             }
             switch (alt106) {
                 case 1 :
-                    // InternalOCLstdlib.g:11425:2: rule__LibPropertyCS__IsStaticAssignment_0
+                    // InternalOCLstdlib.g:11427:2: rule__LibPropertyCS__IsStaticAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibPropertyCS__IsStaticAssignment_0();
@@ -34753,14 +34753,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__1"
-    // InternalOCLstdlib.g:11435:1: rule__LibPropertyCS__Group__1 : rule__LibPropertyCS__Group__1__Impl rule__LibPropertyCS__Group__2 ;
+    // InternalOCLstdlib.g:11437:1: rule__LibPropertyCS__Group__1 : rule__LibPropertyCS__Group__1__Impl rule__LibPropertyCS__Group__2 ;
     public final void rule__LibPropertyCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11439:1: ( rule__LibPropertyCS__Group__1__Impl rule__LibPropertyCS__Group__2 )
-            // InternalOCLstdlib.g:11440:2: rule__LibPropertyCS__Group__1__Impl rule__LibPropertyCS__Group__2
+            // InternalOCLstdlib.g:11441:1: ( rule__LibPropertyCS__Group__1__Impl rule__LibPropertyCS__Group__2 )
+            // InternalOCLstdlib.g:11442:2: rule__LibPropertyCS__Group__1__Impl rule__LibPropertyCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__LibPropertyCS__Group__1__Impl();
@@ -34791,17 +34791,17 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__1__Impl"
-    // InternalOCLstdlib.g:11447:1: rule__LibPropertyCS__Group__1__Impl : ( 'property' ) ;
+    // InternalOCLstdlib.g:11449:1: rule__LibPropertyCS__Group__1__Impl : ( 'property' ) ;
     public final void rule__LibPropertyCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11451:1: ( ( 'property' ) )
-            // InternalOCLstdlib.g:11452:1: ( 'property' )
+            // InternalOCLstdlib.g:11453:1: ( ( 'property' ) )
+            // InternalOCLstdlib.g:11454:1: ( 'property' )
             {
-            // InternalOCLstdlib.g:11452:1: ( 'property' )
-            // InternalOCLstdlib.g:11453:1: 'property'
+            // InternalOCLstdlib.g:11454:1: ( 'property' )
+            // InternalOCLstdlib.g:11455:1: 'property'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getPropertyKeyword_1());
@@ -34832,14 +34832,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__2"
-    // InternalOCLstdlib.g:11466:1: rule__LibPropertyCS__Group__2 : rule__LibPropertyCS__Group__2__Impl rule__LibPropertyCS__Group__3 ;
+    // InternalOCLstdlib.g:11468:1: rule__LibPropertyCS__Group__2 : rule__LibPropertyCS__Group__2__Impl rule__LibPropertyCS__Group__3 ;
     public final void rule__LibPropertyCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11470:1: ( rule__LibPropertyCS__Group__2__Impl rule__LibPropertyCS__Group__3 )
-            // InternalOCLstdlib.g:11471:2: rule__LibPropertyCS__Group__2__Impl rule__LibPropertyCS__Group__3
+            // InternalOCLstdlib.g:11472:1: ( rule__LibPropertyCS__Group__2__Impl rule__LibPropertyCS__Group__3 )
+            // InternalOCLstdlib.g:11473:2: rule__LibPropertyCS__Group__2__Impl rule__LibPropertyCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__LibPropertyCS__Group__2__Impl();
@@ -34870,23 +34870,23 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__2__Impl"
-    // InternalOCLstdlib.g:11478:1: rule__LibPropertyCS__Group__2__Impl : ( ( rule__LibPropertyCS__NameAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:11480:1: rule__LibPropertyCS__Group__2__Impl : ( ( rule__LibPropertyCS__NameAssignment_2 ) ) ;
     public final void rule__LibPropertyCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11482:1: ( ( ( rule__LibPropertyCS__NameAssignment_2 ) ) )
-            // InternalOCLstdlib.g:11483:1: ( ( rule__LibPropertyCS__NameAssignment_2 ) )
+            // InternalOCLstdlib.g:11484:1: ( ( ( rule__LibPropertyCS__NameAssignment_2 ) ) )
+            // InternalOCLstdlib.g:11485:1: ( ( rule__LibPropertyCS__NameAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:11483:1: ( ( rule__LibPropertyCS__NameAssignment_2 ) )
-            // InternalOCLstdlib.g:11484:1: ( rule__LibPropertyCS__NameAssignment_2 )
+            // InternalOCLstdlib.g:11485:1: ( ( rule__LibPropertyCS__NameAssignment_2 ) )
+            // InternalOCLstdlib.g:11486:1: ( rule__LibPropertyCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getNameAssignment_2());
             }
-            // InternalOCLstdlib.g:11485:1: ( rule__LibPropertyCS__NameAssignment_2 )
-            // InternalOCLstdlib.g:11485:2: rule__LibPropertyCS__NameAssignment_2
+            // InternalOCLstdlib.g:11487:1: ( rule__LibPropertyCS__NameAssignment_2 )
+            // InternalOCLstdlib.g:11487:2: rule__LibPropertyCS__NameAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPropertyCS__NameAssignment_2();
@@ -34921,14 +34921,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__3"
-    // InternalOCLstdlib.g:11495:1: rule__LibPropertyCS__Group__3 : rule__LibPropertyCS__Group__3__Impl rule__LibPropertyCS__Group__4 ;
+    // InternalOCLstdlib.g:11497:1: rule__LibPropertyCS__Group__3 : rule__LibPropertyCS__Group__3__Impl rule__LibPropertyCS__Group__4 ;
     public final void rule__LibPropertyCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11499:1: ( rule__LibPropertyCS__Group__3__Impl rule__LibPropertyCS__Group__4 )
-            // InternalOCLstdlib.g:11500:2: rule__LibPropertyCS__Group__3__Impl rule__LibPropertyCS__Group__4
+            // InternalOCLstdlib.g:11501:1: ( rule__LibPropertyCS__Group__3__Impl rule__LibPropertyCS__Group__4 )
+            // InternalOCLstdlib.g:11502:2: rule__LibPropertyCS__Group__3__Impl rule__LibPropertyCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__LibPropertyCS__Group__3__Impl();
@@ -34959,17 +34959,17 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__3__Impl"
-    // InternalOCLstdlib.g:11507:1: rule__LibPropertyCS__Group__3__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:11509:1: rule__LibPropertyCS__Group__3__Impl : ( ':' ) ;
     public final void rule__LibPropertyCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11511:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:11512:1: ( ':' )
+            // InternalOCLstdlib.g:11513:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:11514:1: ( ':' )
             {
-            // InternalOCLstdlib.g:11512:1: ( ':' )
-            // InternalOCLstdlib.g:11513:1: ':'
+            // InternalOCLstdlib.g:11514:1: ( ':' )
+            // InternalOCLstdlib.g:11515:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getColonKeyword_3());
@@ -35000,14 +35000,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__4"
-    // InternalOCLstdlib.g:11526:1: rule__LibPropertyCS__Group__4 : rule__LibPropertyCS__Group__4__Impl rule__LibPropertyCS__Group__5 ;
+    // InternalOCLstdlib.g:11528:1: rule__LibPropertyCS__Group__4 : rule__LibPropertyCS__Group__4__Impl rule__LibPropertyCS__Group__5 ;
     public final void rule__LibPropertyCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11530:1: ( rule__LibPropertyCS__Group__4__Impl rule__LibPropertyCS__Group__5 )
-            // InternalOCLstdlib.g:11531:2: rule__LibPropertyCS__Group__4__Impl rule__LibPropertyCS__Group__5
+            // InternalOCLstdlib.g:11532:1: ( rule__LibPropertyCS__Group__4__Impl rule__LibPropertyCS__Group__5 )
+            // InternalOCLstdlib.g:11533:2: rule__LibPropertyCS__Group__4__Impl rule__LibPropertyCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_57);
             rule__LibPropertyCS__Group__4__Impl();
@@ -35038,23 +35038,23 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__4__Impl"
-    // InternalOCLstdlib.g:11538:1: rule__LibPropertyCS__Group__4__Impl : ( ( rule__LibPropertyCS__OwnedTypeAssignment_4 ) ) ;
+    // InternalOCLstdlib.g:11540:1: rule__LibPropertyCS__Group__4__Impl : ( ( rule__LibPropertyCS__OwnedTypeAssignment_4 ) ) ;
     public final void rule__LibPropertyCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11542:1: ( ( ( rule__LibPropertyCS__OwnedTypeAssignment_4 ) ) )
-            // InternalOCLstdlib.g:11543:1: ( ( rule__LibPropertyCS__OwnedTypeAssignment_4 ) )
+            // InternalOCLstdlib.g:11544:1: ( ( ( rule__LibPropertyCS__OwnedTypeAssignment_4 ) ) )
+            // InternalOCLstdlib.g:11545:1: ( ( rule__LibPropertyCS__OwnedTypeAssignment_4 ) )
             {
-            // InternalOCLstdlib.g:11543:1: ( ( rule__LibPropertyCS__OwnedTypeAssignment_4 ) )
-            // InternalOCLstdlib.g:11544:1: ( rule__LibPropertyCS__OwnedTypeAssignment_4 )
+            // InternalOCLstdlib.g:11545:1: ( ( rule__LibPropertyCS__OwnedTypeAssignment_4 ) )
+            // InternalOCLstdlib.g:11546:1: ( rule__LibPropertyCS__OwnedTypeAssignment_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getOwnedTypeAssignment_4());
             }
-            // InternalOCLstdlib.g:11545:1: ( rule__LibPropertyCS__OwnedTypeAssignment_4 )
-            // InternalOCLstdlib.g:11545:2: rule__LibPropertyCS__OwnedTypeAssignment_4
+            // InternalOCLstdlib.g:11547:1: ( rule__LibPropertyCS__OwnedTypeAssignment_4 )
+            // InternalOCLstdlib.g:11547:2: rule__LibPropertyCS__OwnedTypeAssignment_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPropertyCS__OwnedTypeAssignment_4();
@@ -35089,14 +35089,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__5"
-    // InternalOCLstdlib.g:11555:1: rule__LibPropertyCS__Group__5 : rule__LibPropertyCS__Group__5__Impl rule__LibPropertyCS__Group__6 ;
+    // InternalOCLstdlib.g:11557:1: rule__LibPropertyCS__Group__5 : rule__LibPropertyCS__Group__5__Impl rule__LibPropertyCS__Group__6 ;
     public final void rule__LibPropertyCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11559:1: ( rule__LibPropertyCS__Group__5__Impl rule__LibPropertyCS__Group__6 )
-            // InternalOCLstdlib.g:11560:2: rule__LibPropertyCS__Group__5__Impl rule__LibPropertyCS__Group__6
+            // InternalOCLstdlib.g:11561:1: ( rule__LibPropertyCS__Group__5__Impl rule__LibPropertyCS__Group__6 )
+            // InternalOCLstdlib.g:11562:2: rule__LibPropertyCS__Group__5__Impl rule__LibPropertyCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_57);
             rule__LibPropertyCS__Group__5__Impl();
@@ -35127,22 +35127,22 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__5__Impl"
-    // InternalOCLstdlib.g:11567:1: rule__LibPropertyCS__Group__5__Impl : ( ( rule__LibPropertyCS__OwnedOppositeAssignment_5 )? ) ;
+    // InternalOCLstdlib.g:11569:1: rule__LibPropertyCS__Group__5__Impl : ( ( rule__LibPropertyCS__OwnedOppositeAssignment_5 )? ) ;
     public final void rule__LibPropertyCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11571:1: ( ( ( rule__LibPropertyCS__OwnedOppositeAssignment_5 )? ) )
-            // InternalOCLstdlib.g:11572:1: ( ( rule__LibPropertyCS__OwnedOppositeAssignment_5 )? )
+            // InternalOCLstdlib.g:11573:1: ( ( ( rule__LibPropertyCS__OwnedOppositeAssignment_5 )? ) )
+            // InternalOCLstdlib.g:11574:1: ( ( rule__LibPropertyCS__OwnedOppositeAssignment_5 )? )
             {
-            // InternalOCLstdlib.g:11572:1: ( ( rule__LibPropertyCS__OwnedOppositeAssignment_5 )? )
-            // InternalOCLstdlib.g:11573:1: ( rule__LibPropertyCS__OwnedOppositeAssignment_5 )?
+            // InternalOCLstdlib.g:11574:1: ( ( rule__LibPropertyCS__OwnedOppositeAssignment_5 )? )
+            // InternalOCLstdlib.g:11575:1: ( rule__LibPropertyCS__OwnedOppositeAssignment_5 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getOwnedOppositeAssignment_5());
             }
-            // InternalOCLstdlib.g:11574:1: ( rule__LibPropertyCS__OwnedOppositeAssignment_5 )?
+            // InternalOCLstdlib.g:11576:1: ( rule__LibPropertyCS__OwnedOppositeAssignment_5 )?
             int alt107=2;
             int LA107_0 = input.LA(1);
 
@@ -35151,7 +35151,7 @@
             }
             switch (alt107) {
                 case 1 :
-                    // InternalOCLstdlib.g:11574:2: rule__LibPropertyCS__OwnedOppositeAssignment_5
+                    // InternalOCLstdlib.g:11576:2: rule__LibPropertyCS__OwnedOppositeAssignment_5
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibPropertyCS__OwnedOppositeAssignment_5();
@@ -35189,14 +35189,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__6"
-    // InternalOCLstdlib.g:11584:1: rule__LibPropertyCS__Group__6 : rule__LibPropertyCS__Group__6__Impl rule__LibPropertyCS__Group__7 ;
+    // InternalOCLstdlib.g:11586:1: rule__LibPropertyCS__Group__6 : rule__LibPropertyCS__Group__6__Impl rule__LibPropertyCS__Group__7 ;
     public final void rule__LibPropertyCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11588:1: ( rule__LibPropertyCS__Group__6__Impl rule__LibPropertyCS__Group__7 )
-            // InternalOCLstdlib.g:11589:2: rule__LibPropertyCS__Group__6__Impl rule__LibPropertyCS__Group__7
+            // InternalOCLstdlib.g:11590:1: ( rule__LibPropertyCS__Group__6__Impl rule__LibPropertyCS__Group__7 )
+            // InternalOCLstdlib.g:11591:2: rule__LibPropertyCS__Group__6__Impl rule__LibPropertyCS__Group__7
             {
             pushFollow(FollowSets000.FOLLOW_57);
             rule__LibPropertyCS__Group__6__Impl();
@@ -35227,22 +35227,22 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__6__Impl"
-    // InternalOCLstdlib.g:11596:1: rule__LibPropertyCS__Group__6__Impl : ( ( rule__LibPropertyCS__Group_6__0 )? ) ;
+    // InternalOCLstdlib.g:11598:1: rule__LibPropertyCS__Group__6__Impl : ( ( rule__LibPropertyCS__Group_6__0 )? ) ;
     public final void rule__LibPropertyCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11600:1: ( ( ( rule__LibPropertyCS__Group_6__0 )? ) )
-            // InternalOCLstdlib.g:11601:1: ( ( rule__LibPropertyCS__Group_6__0 )? )
+            // InternalOCLstdlib.g:11602:1: ( ( ( rule__LibPropertyCS__Group_6__0 )? ) )
+            // InternalOCLstdlib.g:11603:1: ( ( rule__LibPropertyCS__Group_6__0 )? )
             {
-            // InternalOCLstdlib.g:11601:1: ( ( rule__LibPropertyCS__Group_6__0 )? )
-            // InternalOCLstdlib.g:11602:1: ( rule__LibPropertyCS__Group_6__0 )?
+            // InternalOCLstdlib.g:11603:1: ( ( rule__LibPropertyCS__Group_6__0 )? )
+            // InternalOCLstdlib.g:11604:1: ( rule__LibPropertyCS__Group_6__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getGroup_6());
             }
-            // InternalOCLstdlib.g:11603:1: ( rule__LibPropertyCS__Group_6__0 )?
+            // InternalOCLstdlib.g:11605:1: ( rule__LibPropertyCS__Group_6__0 )?
             int alt108=2;
             int LA108_0 = input.LA(1);
 
@@ -35251,7 +35251,7 @@
             }
             switch (alt108) {
                 case 1 :
-                    // InternalOCLstdlib.g:11603:2: rule__LibPropertyCS__Group_6__0
+                    // InternalOCLstdlib.g:11605:2: rule__LibPropertyCS__Group_6__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LibPropertyCS__Group_6__0();
@@ -35289,14 +35289,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__7"
-    // InternalOCLstdlib.g:11613:1: rule__LibPropertyCS__Group__7 : rule__LibPropertyCS__Group__7__Impl ;
+    // InternalOCLstdlib.g:11615:1: rule__LibPropertyCS__Group__7 : rule__LibPropertyCS__Group__7__Impl ;
     public final void rule__LibPropertyCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11617:1: ( rule__LibPropertyCS__Group__7__Impl )
-            // InternalOCLstdlib.g:11618:2: rule__LibPropertyCS__Group__7__Impl
+            // InternalOCLstdlib.g:11619:1: ( rule__LibPropertyCS__Group__7__Impl )
+            // InternalOCLstdlib.g:11620:2: rule__LibPropertyCS__Group__7__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPropertyCS__Group__7__Impl();
@@ -35322,23 +35322,23 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group__7__Impl"
-    // InternalOCLstdlib.g:11624:1: rule__LibPropertyCS__Group__7__Impl : ( ( rule__LibPropertyCS__Alternatives_7 ) ) ;
+    // InternalOCLstdlib.g:11626:1: rule__LibPropertyCS__Group__7__Impl : ( ( rule__LibPropertyCS__Alternatives_7 ) ) ;
     public final void rule__LibPropertyCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11628:1: ( ( ( rule__LibPropertyCS__Alternatives_7 ) ) )
-            // InternalOCLstdlib.g:11629:1: ( ( rule__LibPropertyCS__Alternatives_7 ) )
+            // InternalOCLstdlib.g:11630:1: ( ( ( rule__LibPropertyCS__Alternatives_7 ) ) )
+            // InternalOCLstdlib.g:11631:1: ( ( rule__LibPropertyCS__Alternatives_7 ) )
             {
-            // InternalOCLstdlib.g:11629:1: ( ( rule__LibPropertyCS__Alternatives_7 ) )
-            // InternalOCLstdlib.g:11630:1: ( rule__LibPropertyCS__Alternatives_7 )
+            // InternalOCLstdlib.g:11631:1: ( ( rule__LibPropertyCS__Alternatives_7 ) )
+            // InternalOCLstdlib.g:11632:1: ( rule__LibPropertyCS__Alternatives_7 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getAlternatives_7());
             }
-            // InternalOCLstdlib.g:11631:1: ( rule__LibPropertyCS__Alternatives_7 )
-            // InternalOCLstdlib.g:11631:2: rule__LibPropertyCS__Alternatives_7
+            // InternalOCLstdlib.g:11633:1: ( rule__LibPropertyCS__Alternatives_7 )
+            // InternalOCLstdlib.g:11633:2: rule__LibPropertyCS__Alternatives_7
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPropertyCS__Alternatives_7();
@@ -35373,14 +35373,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group_6__0"
-    // InternalOCLstdlib.g:11657:1: rule__LibPropertyCS__Group_6__0 : rule__LibPropertyCS__Group_6__0__Impl rule__LibPropertyCS__Group_6__1 ;
+    // InternalOCLstdlib.g:11659:1: rule__LibPropertyCS__Group_6__0 : rule__LibPropertyCS__Group_6__0__Impl rule__LibPropertyCS__Group_6__1 ;
     public final void rule__LibPropertyCS__Group_6__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11661:1: ( rule__LibPropertyCS__Group_6__0__Impl rule__LibPropertyCS__Group_6__1 )
-            // InternalOCLstdlib.g:11662:2: rule__LibPropertyCS__Group_6__0__Impl rule__LibPropertyCS__Group_6__1
+            // InternalOCLstdlib.g:11663:1: ( rule__LibPropertyCS__Group_6__0__Impl rule__LibPropertyCS__Group_6__1 )
+            // InternalOCLstdlib.g:11664:2: rule__LibPropertyCS__Group_6__0__Impl rule__LibPropertyCS__Group_6__1
             {
             pushFollow(FollowSets000.FOLLOW_36);
             rule__LibPropertyCS__Group_6__0__Impl();
@@ -35411,17 +35411,17 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group_6__0__Impl"
-    // InternalOCLstdlib.g:11669:1: rule__LibPropertyCS__Group_6__0__Impl : ( '=>' ) ;
+    // InternalOCLstdlib.g:11671:1: rule__LibPropertyCS__Group_6__0__Impl : ( '=>' ) ;
     public final void rule__LibPropertyCS__Group_6__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11673:1: ( ( '=>' ) )
-            // InternalOCLstdlib.g:11674:1: ( '=>' )
+            // InternalOCLstdlib.g:11675:1: ( ( '=>' ) )
+            // InternalOCLstdlib.g:11676:1: ( '=>' )
             {
-            // InternalOCLstdlib.g:11674:1: ( '=>' )
-            // InternalOCLstdlib.g:11675:1: '=>'
+            // InternalOCLstdlib.g:11676:1: ( '=>' )
+            // InternalOCLstdlib.g:11677:1: '=>'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getEqualsSignGreaterThanSignKeyword_6_0());
@@ -35452,14 +35452,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group_6__1"
-    // InternalOCLstdlib.g:11688:1: rule__LibPropertyCS__Group_6__1 : rule__LibPropertyCS__Group_6__1__Impl ;
+    // InternalOCLstdlib.g:11690:1: rule__LibPropertyCS__Group_6__1 : rule__LibPropertyCS__Group_6__1__Impl ;
     public final void rule__LibPropertyCS__Group_6__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11692:1: ( rule__LibPropertyCS__Group_6__1__Impl )
-            // InternalOCLstdlib.g:11693:2: rule__LibPropertyCS__Group_6__1__Impl
+            // InternalOCLstdlib.g:11694:1: ( rule__LibPropertyCS__Group_6__1__Impl )
+            // InternalOCLstdlib.g:11695:2: rule__LibPropertyCS__Group_6__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPropertyCS__Group_6__1__Impl();
@@ -35485,23 +35485,23 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group_6__1__Impl"
-    // InternalOCLstdlib.g:11699:1: rule__LibPropertyCS__Group_6__1__Impl : ( ( rule__LibPropertyCS__ImplementationAssignment_6_1 ) ) ;
+    // InternalOCLstdlib.g:11701:1: rule__LibPropertyCS__Group_6__1__Impl : ( ( rule__LibPropertyCS__ImplementationAssignment_6_1 ) ) ;
     public final void rule__LibPropertyCS__Group_6__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11703:1: ( ( ( rule__LibPropertyCS__ImplementationAssignment_6_1 ) ) )
-            // InternalOCLstdlib.g:11704:1: ( ( rule__LibPropertyCS__ImplementationAssignment_6_1 ) )
+            // InternalOCLstdlib.g:11705:1: ( ( ( rule__LibPropertyCS__ImplementationAssignment_6_1 ) ) )
+            // InternalOCLstdlib.g:11706:1: ( ( rule__LibPropertyCS__ImplementationAssignment_6_1 ) )
             {
-            // InternalOCLstdlib.g:11704:1: ( ( rule__LibPropertyCS__ImplementationAssignment_6_1 ) )
-            // InternalOCLstdlib.g:11705:1: ( rule__LibPropertyCS__ImplementationAssignment_6_1 )
+            // InternalOCLstdlib.g:11706:1: ( ( rule__LibPropertyCS__ImplementationAssignment_6_1 ) )
+            // InternalOCLstdlib.g:11707:1: ( rule__LibPropertyCS__ImplementationAssignment_6_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getImplementationAssignment_6_1());
             }
-            // InternalOCLstdlib.g:11706:1: ( rule__LibPropertyCS__ImplementationAssignment_6_1 )
-            // InternalOCLstdlib.g:11706:2: rule__LibPropertyCS__ImplementationAssignment_6_1
+            // InternalOCLstdlib.g:11708:1: ( rule__LibPropertyCS__ImplementationAssignment_6_1 )
+            // InternalOCLstdlib.g:11708:2: rule__LibPropertyCS__ImplementationAssignment_6_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPropertyCS__ImplementationAssignment_6_1();
@@ -35536,14 +35536,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group_7_0__0"
-    // InternalOCLstdlib.g:11720:1: rule__LibPropertyCS__Group_7_0__0 : rule__LibPropertyCS__Group_7_0__0__Impl rule__LibPropertyCS__Group_7_0__1 ;
+    // InternalOCLstdlib.g:11722:1: rule__LibPropertyCS__Group_7_0__0 : rule__LibPropertyCS__Group_7_0__0__Impl rule__LibPropertyCS__Group_7_0__1 ;
     public final void rule__LibPropertyCS__Group_7_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11724:1: ( rule__LibPropertyCS__Group_7_0__0__Impl rule__LibPropertyCS__Group_7_0__1 )
-            // InternalOCLstdlib.g:11725:2: rule__LibPropertyCS__Group_7_0__0__Impl rule__LibPropertyCS__Group_7_0__1
+            // InternalOCLstdlib.g:11726:1: ( rule__LibPropertyCS__Group_7_0__0__Impl rule__LibPropertyCS__Group_7_0__1 )
+            // InternalOCLstdlib.g:11727:2: rule__LibPropertyCS__Group_7_0__0__Impl rule__LibPropertyCS__Group_7_0__1
             {
             pushFollow(FollowSets000.FOLLOW_58);
             rule__LibPropertyCS__Group_7_0__0__Impl();
@@ -35574,17 +35574,17 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group_7_0__0__Impl"
-    // InternalOCLstdlib.g:11732:1: rule__LibPropertyCS__Group_7_0__0__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:11734:1: rule__LibPropertyCS__Group_7_0__0__Impl : ( '{' ) ;
     public final void rule__LibPropertyCS__Group_7_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11736:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:11737:1: ( '{' )
+            // InternalOCLstdlib.g:11738:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:11739:1: ( '{' )
             {
-            // InternalOCLstdlib.g:11737:1: ( '{' )
-            // InternalOCLstdlib.g:11738:1: '{'
+            // InternalOCLstdlib.g:11739:1: ( '{' )
+            // InternalOCLstdlib.g:11740:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getLeftCurlyBracketKeyword_7_0_0());
@@ -35615,14 +35615,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group_7_0__1"
-    // InternalOCLstdlib.g:11751:1: rule__LibPropertyCS__Group_7_0__1 : rule__LibPropertyCS__Group_7_0__1__Impl rule__LibPropertyCS__Group_7_0__2 ;
+    // InternalOCLstdlib.g:11753:1: rule__LibPropertyCS__Group_7_0__1 : rule__LibPropertyCS__Group_7_0__1__Impl rule__LibPropertyCS__Group_7_0__2 ;
     public final void rule__LibPropertyCS__Group_7_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11755:1: ( rule__LibPropertyCS__Group_7_0__1__Impl rule__LibPropertyCS__Group_7_0__2 )
-            // InternalOCLstdlib.g:11756:2: rule__LibPropertyCS__Group_7_0__1__Impl rule__LibPropertyCS__Group_7_0__2
+            // InternalOCLstdlib.g:11757:1: ( rule__LibPropertyCS__Group_7_0__1__Impl rule__LibPropertyCS__Group_7_0__2 )
+            // InternalOCLstdlib.g:11758:2: rule__LibPropertyCS__Group_7_0__1__Impl rule__LibPropertyCS__Group_7_0__2
             {
             pushFollow(FollowSets000.FOLLOW_58);
             rule__LibPropertyCS__Group_7_0__1__Impl();
@@ -35653,22 +35653,22 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group_7_0__1__Impl"
-    // InternalOCLstdlib.g:11763:1: rule__LibPropertyCS__Group_7_0__1__Impl : ( ( rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 )* ) ;
+    // InternalOCLstdlib.g:11765:1: rule__LibPropertyCS__Group_7_0__1__Impl : ( ( rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 )* ) ;
     public final void rule__LibPropertyCS__Group_7_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11767:1: ( ( ( rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 )* ) )
-            // InternalOCLstdlib.g:11768:1: ( ( rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 )* )
+            // InternalOCLstdlib.g:11769:1: ( ( ( rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 )* ) )
+            // InternalOCLstdlib.g:11770:1: ( ( rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 )* )
             {
-            // InternalOCLstdlib.g:11768:1: ( ( rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 )* )
-            // InternalOCLstdlib.g:11769:1: ( rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 )*
+            // InternalOCLstdlib.g:11770:1: ( ( rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 )* )
+            // InternalOCLstdlib.g:11771:1: ( rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAssignment_7_0_1());
             }
-            // InternalOCLstdlib.g:11770:1: ( rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 )*
+            // InternalOCLstdlib.g:11772:1: ( rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 )*
             loop109:
             do {
                 int alt109=2;
@@ -35681,7 +35681,7 @@
 
                 switch (alt109) {
             	case 1 :
-            	    // InternalOCLstdlib.g:11770:2: rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1
+            	    // InternalOCLstdlib.g:11772:2: rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_59);
             	    rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1();
@@ -35722,14 +35722,14 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group_7_0__2"
-    // InternalOCLstdlib.g:11780:1: rule__LibPropertyCS__Group_7_0__2 : rule__LibPropertyCS__Group_7_0__2__Impl ;
+    // InternalOCLstdlib.g:11782:1: rule__LibPropertyCS__Group_7_0__2 : rule__LibPropertyCS__Group_7_0__2__Impl ;
     public final void rule__LibPropertyCS__Group_7_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11784:1: ( rule__LibPropertyCS__Group_7_0__2__Impl )
-            // InternalOCLstdlib.g:11785:2: rule__LibPropertyCS__Group_7_0__2__Impl
+            // InternalOCLstdlib.g:11786:1: ( rule__LibPropertyCS__Group_7_0__2__Impl )
+            // InternalOCLstdlib.g:11787:2: rule__LibPropertyCS__Group_7_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LibPropertyCS__Group_7_0__2__Impl();
@@ -35755,17 +35755,17 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__Group_7_0__2__Impl"
-    // InternalOCLstdlib.g:11791:1: rule__LibPropertyCS__Group_7_0__2__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:11793:1: rule__LibPropertyCS__Group_7_0__2__Impl : ( '}' ) ;
     public final void rule__LibPropertyCS__Group_7_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11795:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:11796:1: ( '}' )
+            // InternalOCLstdlib.g:11797:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:11798:1: ( '}' )
             {
-            // InternalOCLstdlib.g:11796:1: ( '}' )
-            // InternalOCLstdlib.g:11797:1: '}'
+            // InternalOCLstdlib.g:11798:1: ( '}' )
+            // InternalOCLstdlib.g:11799:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getRightCurlyBracketKeyword_7_0_2());
@@ -35796,14 +35796,14 @@
 
 
     // $ANTLR start "rule__PostCS__Group__0"
-    // InternalOCLstdlib.g:11816:1: rule__PostCS__Group__0 : rule__PostCS__Group__0__Impl rule__PostCS__Group__1 ;
+    // InternalOCLstdlib.g:11818:1: rule__PostCS__Group__0 : rule__PostCS__Group__0__Impl rule__PostCS__Group__1 ;
     public final void rule__PostCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11820:1: ( rule__PostCS__Group__0__Impl rule__PostCS__Group__1 )
-            // InternalOCLstdlib.g:11821:2: rule__PostCS__Group__0__Impl rule__PostCS__Group__1
+            // InternalOCLstdlib.g:11822:1: ( rule__PostCS__Group__0__Impl rule__PostCS__Group__1 )
+            // InternalOCLstdlib.g:11823:2: rule__PostCS__Group__0__Impl rule__PostCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_31);
             rule__PostCS__Group__0__Impl();
@@ -35834,23 +35834,23 @@
 
 
     // $ANTLR start "rule__PostCS__Group__0__Impl"
-    // InternalOCLstdlib.g:11828:1: rule__PostCS__Group__0__Impl : ( ( rule__PostCS__StereotypeAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:11830:1: rule__PostCS__Group__0__Impl : ( ( rule__PostCS__StereotypeAssignment_0 ) ) ;
     public final void rule__PostCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11832:1: ( ( ( rule__PostCS__StereotypeAssignment_0 ) ) )
-            // InternalOCLstdlib.g:11833:1: ( ( rule__PostCS__StereotypeAssignment_0 ) )
+            // InternalOCLstdlib.g:11834:1: ( ( ( rule__PostCS__StereotypeAssignment_0 ) ) )
+            // InternalOCLstdlib.g:11835:1: ( ( rule__PostCS__StereotypeAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:11833:1: ( ( rule__PostCS__StereotypeAssignment_0 ) )
-            // InternalOCLstdlib.g:11834:1: ( rule__PostCS__StereotypeAssignment_0 )
+            // InternalOCLstdlib.g:11835:1: ( ( rule__PostCS__StereotypeAssignment_0 ) )
+            // InternalOCLstdlib.g:11836:1: ( rule__PostCS__StereotypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getStereotypeAssignment_0());
             }
-            // InternalOCLstdlib.g:11835:1: ( rule__PostCS__StereotypeAssignment_0 )
-            // InternalOCLstdlib.g:11835:2: rule__PostCS__StereotypeAssignment_0
+            // InternalOCLstdlib.g:11837:1: ( rule__PostCS__StereotypeAssignment_0 )
+            // InternalOCLstdlib.g:11837:2: rule__PostCS__StereotypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostCS__StereotypeAssignment_0();
@@ -35885,14 +35885,14 @@
 
 
     // $ANTLR start "rule__PostCS__Group__1"
-    // InternalOCLstdlib.g:11845:1: rule__PostCS__Group__1 : rule__PostCS__Group__1__Impl rule__PostCS__Group__2 ;
+    // InternalOCLstdlib.g:11847:1: rule__PostCS__Group__1 : rule__PostCS__Group__1__Impl rule__PostCS__Group__2 ;
     public final void rule__PostCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11849:1: ( rule__PostCS__Group__1__Impl rule__PostCS__Group__2 )
-            // InternalOCLstdlib.g:11850:2: rule__PostCS__Group__1__Impl rule__PostCS__Group__2
+            // InternalOCLstdlib.g:11851:1: ( rule__PostCS__Group__1__Impl rule__PostCS__Group__2 )
+            // InternalOCLstdlib.g:11852:2: rule__PostCS__Group__1__Impl rule__PostCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_31);
             rule__PostCS__Group__1__Impl();
@@ -35923,22 +35923,22 @@
 
 
     // $ANTLR start "rule__PostCS__Group__1__Impl"
-    // InternalOCLstdlib.g:11857:1: rule__PostCS__Group__1__Impl : ( ( rule__PostCS__Group_1__0 )? ) ;
+    // InternalOCLstdlib.g:11859:1: rule__PostCS__Group__1__Impl : ( ( rule__PostCS__Group_1__0 )? ) ;
     public final void rule__PostCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11861:1: ( ( ( rule__PostCS__Group_1__0 )? ) )
-            // InternalOCLstdlib.g:11862:1: ( ( rule__PostCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:11863:1: ( ( ( rule__PostCS__Group_1__0 )? ) )
+            // InternalOCLstdlib.g:11864:1: ( ( rule__PostCS__Group_1__0 )? )
             {
-            // InternalOCLstdlib.g:11862:1: ( ( rule__PostCS__Group_1__0 )? )
-            // InternalOCLstdlib.g:11863:1: ( rule__PostCS__Group_1__0 )?
+            // InternalOCLstdlib.g:11864:1: ( ( rule__PostCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:11865:1: ( rule__PostCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:11864:1: ( rule__PostCS__Group_1__0 )?
+            // InternalOCLstdlib.g:11866:1: ( rule__PostCS__Group_1__0 )?
             int alt110=2;
             int LA110_0 = input.LA(1);
 
@@ -35947,7 +35947,7 @@
             }
             switch (alt110) {
                 case 1 :
-                    // InternalOCLstdlib.g:11864:2: rule__PostCS__Group_1__0
+                    // InternalOCLstdlib.g:11866:2: rule__PostCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PostCS__Group_1__0();
@@ -35985,14 +35985,14 @@
 
 
     // $ANTLR start "rule__PostCS__Group__2"
-    // InternalOCLstdlib.g:11874:1: rule__PostCS__Group__2 : rule__PostCS__Group__2__Impl rule__PostCS__Group__3 ;
+    // InternalOCLstdlib.g:11876:1: rule__PostCS__Group__2 : rule__PostCS__Group__2__Impl rule__PostCS__Group__3 ;
     public final void rule__PostCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11878:1: ( rule__PostCS__Group__2__Impl rule__PostCS__Group__3 )
-            // InternalOCLstdlib.g:11879:2: rule__PostCS__Group__2__Impl rule__PostCS__Group__3
+            // InternalOCLstdlib.g:11880:1: ( rule__PostCS__Group__2__Impl rule__PostCS__Group__3 )
+            // InternalOCLstdlib.g:11881:2: rule__PostCS__Group__2__Impl rule__PostCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__PostCS__Group__2__Impl();
@@ -36023,17 +36023,17 @@
 
 
     // $ANTLR start "rule__PostCS__Group__2__Impl"
-    // InternalOCLstdlib.g:11886:1: rule__PostCS__Group__2__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:11888:1: rule__PostCS__Group__2__Impl : ( ':' ) ;
     public final void rule__PostCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11890:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:11891:1: ( ':' )
+            // InternalOCLstdlib.g:11892:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:11893:1: ( ':' )
             {
-            // InternalOCLstdlib.g:11891:1: ( ':' )
-            // InternalOCLstdlib.g:11892:1: ':'
+            // InternalOCLstdlib.g:11893:1: ( ':' )
+            // InternalOCLstdlib.g:11894:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getColonKeyword_2());
@@ -36064,14 +36064,14 @@
 
 
     // $ANTLR start "rule__PostCS__Group__3"
-    // InternalOCLstdlib.g:11905:1: rule__PostCS__Group__3 : rule__PostCS__Group__3__Impl rule__PostCS__Group__4 ;
+    // InternalOCLstdlib.g:11907:1: rule__PostCS__Group__3 : rule__PostCS__Group__3__Impl rule__PostCS__Group__4 ;
     public final void rule__PostCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11909:1: ( rule__PostCS__Group__3__Impl rule__PostCS__Group__4 )
-            // InternalOCLstdlib.g:11910:2: rule__PostCS__Group__3__Impl rule__PostCS__Group__4
+            // InternalOCLstdlib.g:11911:1: ( rule__PostCS__Group__3__Impl rule__PostCS__Group__4 )
+            // InternalOCLstdlib.g:11912:2: rule__PostCS__Group__3__Impl rule__PostCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__PostCS__Group__3__Impl();
@@ -36102,23 +36102,23 @@
 
 
     // $ANTLR start "rule__PostCS__Group__3__Impl"
-    // InternalOCLstdlib.g:11917:1: rule__PostCS__Group__3__Impl : ( ( rule__PostCS__OwnedSpecificationAssignment_3 ) ) ;
+    // InternalOCLstdlib.g:11919:1: rule__PostCS__Group__3__Impl : ( ( rule__PostCS__OwnedSpecificationAssignment_3 ) ) ;
     public final void rule__PostCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11921:1: ( ( ( rule__PostCS__OwnedSpecificationAssignment_3 ) ) )
-            // InternalOCLstdlib.g:11922:1: ( ( rule__PostCS__OwnedSpecificationAssignment_3 ) )
+            // InternalOCLstdlib.g:11923:1: ( ( ( rule__PostCS__OwnedSpecificationAssignment_3 ) ) )
+            // InternalOCLstdlib.g:11924:1: ( ( rule__PostCS__OwnedSpecificationAssignment_3 ) )
             {
-            // InternalOCLstdlib.g:11922:1: ( ( rule__PostCS__OwnedSpecificationAssignment_3 ) )
-            // InternalOCLstdlib.g:11923:1: ( rule__PostCS__OwnedSpecificationAssignment_3 )
+            // InternalOCLstdlib.g:11924:1: ( ( rule__PostCS__OwnedSpecificationAssignment_3 ) )
+            // InternalOCLstdlib.g:11925:1: ( rule__PostCS__OwnedSpecificationAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getOwnedSpecificationAssignment_3());
             }
-            // InternalOCLstdlib.g:11924:1: ( rule__PostCS__OwnedSpecificationAssignment_3 )
-            // InternalOCLstdlib.g:11924:2: rule__PostCS__OwnedSpecificationAssignment_3
+            // InternalOCLstdlib.g:11926:1: ( rule__PostCS__OwnedSpecificationAssignment_3 )
+            // InternalOCLstdlib.g:11926:2: rule__PostCS__OwnedSpecificationAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostCS__OwnedSpecificationAssignment_3();
@@ -36153,14 +36153,14 @@
 
 
     // $ANTLR start "rule__PostCS__Group__4"
-    // InternalOCLstdlib.g:11934:1: rule__PostCS__Group__4 : rule__PostCS__Group__4__Impl ;
+    // InternalOCLstdlib.g:11936:1: rule__PostCS__Group__4 : rule__PostCS__Group__4__Impl ;
     public final void rule__PostCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11938:1: ( rule__PostCS__Group__4__Impl )
-            // InternalOCLstdlib.g:11939:2: rule__PostCS__Group__4__Impl
+            // InternalOCLstdlib.g:11940:1: ( rule__PostCS__Group__4__Impl )
+            // InternalOCLstdlib.g:11941:2: rule__PostCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostCS__Group__4__Impl();
@@ -36186,17 +36186,17 @@
 
 
     // $ANTLR start "rule__PostCS__Group__4__Impl"
-    // InternalOCLstdlib.g:11945:1: rule__PostCS__Group__4__Impl : ( ';' ) ;
+    // InternalOCLstdlib.g:11947:1: rule__PostCS__Group__4__Impl : ( ';' ) ;
     public final void rule__PostCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11949:1: ( ( ';' ) )
-            // InternalOCLstdlib.g:11950:1: ( ';' )
+            // InternalOCLstdlib.g:11951:1: ( ( ';' ) )
+            // InternalOCLstdlib.g:11952:1: ( ';' )
             {
-            // InternalOCLstdlib.g:11950:1: ( ';' )
-            // InternalOCLstdlib.g:11951:1: ';'
+            // InternalOCLstdlib.g:11952:1: ( ';' )
+            // InternalOCLstdlib.g:11953:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getSemicolonKeyword_4());
@@ -36227,14 +36227,14 @@
 
 
     // $ANTLR start "rule__PostCS__Group_1__0"
-    // InternalOCLstdlib.g:11974:1: rule__PostCS__Group_1__0 : rule__PostCS__Group_1__0__Impl rule__PostCS__Group_1__1 ;
+    // InternalOCLstdlib.g:11976:1: rule__PostCS__Group_1__0 : rule__PostCS__Group_1__0__Impl rule__PostCS__Group_1__1 ;
     public final void rule__PostCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11978:1: ( rule__PostCS__Group_1__0__Impl rule__PostCS__Group_1__1 )
-            // InternalOCLstdlib.g:11979:2: rule__PostCS__Group_1__0__Impl rule__PostCS__Group_1__1
+            // InternalOCLstdlib.g:11980:1: ( rule__PostCS__Group_1__0__Impl rule__PostCS__Group_1__1 )
+            // InternalOCLstdlib.g:11981:2: rule__PostCS__Group_1__0__Impl rule__PostCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__PostCS__Group_1__0__Impl();
@@ -36265,23 +36265,23 @@
 
 
     // $ANTLR start "rule__PostCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:11986:1: rule__PostCS__Group_1__0__Impl : ( ( rule__PostCS__NameAssignment_1_0 ) ) ;
+    // InternalOCLstdlib.g:11988:1: rule__PostCS__Group_1__0__Impl : ( ( rule__PostCS__NameAssignment_1_0 ) ) ;
     public final void rule__PostCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:11990:1: ( ( ( rule__PostCS__NameAssignment_1_0 ) ) )
-            // InternalOCLstdlib.g:11991:1: ( ( rule__PostCS__NameAssignment_1_0 ) )
+            // InternalOCLstdlib.g:11992:1: ( ( ( rule__PostCS__NameAssignment_1_0 ) ) )
+            // InternalOCLstdlib.g:11993:1: ( ( rule__PostCS__NameAssignment_1_0 ) )
             {
-            // InternalOCLstdlib.g:11991:1: ( ( rule__PostCS__NameAssignment_1_0 ) )
-            // InternalOCLstdlib.g:11992:1: ( rule__PostCS__NameAssignment_1_0 )
+            // InternalOCLstdlib.g:11993:1: ( ( rule__PostCS__NameAssignment_1_0 ) )
+            // InternalOCLstdlib.g:11994:1: ( rule__PostCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getNameAssignment_1_0());
             }
-            // InternalOCLstdlib.g:11993:1: ( rule__PostCS__NameAssignment_1_0 )
-            // InternalOCLstdlib.g:11993:2: rule__PostCS__NameAssignment_1_0
+            // InternalOCLstdlib.g:11995:1: ( rule__PostCS__NameAssignment_1_0 )
+            // InternalOCLstdlib.g:11995:2: rule__PostCS__NameAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostCS__NameAssignment_1_0();
@@ -36316,14 +36316,14 @@
 
 
     // $ANTLR start "rule__PostCS__Group_1__1"
-    // InternalOCLstdlib.g:12003:1: rule__PostCS__Group_1__1 : rule__PostCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:12005:1: rule__PostCS__Group_1__1 : rule__PostCS__Group_1__1__Impl ;
     public final void rule__PostCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12007:1: ( rule__PostCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:12008:2: rule__PostCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:12009:1: ( rule__PostCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:12010:2: rule__PostCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostCS__Group_1__1__Impl();
@@ -36349,22 +36349,22 @@
 
 
     // $ANTLR start "rule__PostCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:12014:1: rule__PostCS__Group_1__1__Impl : ( ( rule__PostCS__Group_1_1__0 )? ) ;
+    // InternalOCLstdlib.g:12016:1: rule__PostCS__Group_1__1__Impl : ( ( rule__PostCS__Group_1_1__0 )? ) ;
     public final void rule__PostCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12018:1: ( ( ( rule__PostCS__Group_1_1__0 )? ) )
-            // InternalOCLstdlib.g:12019:1: ( ( rule__PostCS__Group_1_1__0 )? )
+            // InternalOCLstdlib.g:12020:1: ( ( ( rule__PostCS__Group_1_1__0 )? ) )
+            // InternalOCLstdlib.g:12021:1: ( ( rule__PostCS__Group_1_1__0 )? )
             {
-            // InternalOCLstdlib.g:12019:1: ( ( rule__PostCS__Group_1_1__0 )? )
-            // InternalOCLstdlib.g:12020:1: ( rule__PostCS__Group_1_1__0 )?
+            // InternalOCLstdlib.g:12021:1: ( ( rule__PostCS__Group_1_1__0 )? )
+            // InternalOCLstdlib.g:12022:1: ( rule__PostCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getGroup_1_1());
             }
-            // InternalOCLstdlib.g:12021:1: ( rule__PostCS__Group_1_1__0 )?
+            // InternalOCLstdlib.g:12023:1: ( rule__PostCS__Group_1_1__0 )?
             int alt111=2;
             int LA111_0 = input.LA(1);
 
@@ -36373,7 +36373,7 @@
             }
             switch (alt111) {
                 case 1 :
-                    // InternalOCLstdlib.g:12021:2: rule__PostCS__Group_1_1__0
+                    // InternalOCLstdlib.g:12023:2: rule__PostCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PostCS__Group_1_1__0();
@@ -36411,14 +36411,14 @@
 
 
     // $ANTLR start "rule__PostCS__Group_1_1__0"
-    // InternalOCLstdlib.g:12035:1: rule__PostCS__Group_1_1__0 : rule__PostCS__Group_1_1__0__Impl rule__PostCS__Group_1_1__1 ;
+    // InternalOCLstdlib.g:12037:1: rule__PostCS__Group_1_1__0 : rule__PostCS__Group_1_1__0__Impl rule__PostCS__Group_1_1__1 ;
     public final void rule__PostCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12039:1: ( rule__PostCS__Group_1_1__0__Impl rule__PostCS__Group_1_1__1 )
-            // InternalOCLstdlib.g:12040:2: rule__PostCS__Group_1_1__0__Impl rule__PostCS__Group_1_1__1
+            // InternalOCLstdlib.g:12041:1: ( rule__PostCS__Group_1_1__0__Impl rule__PostCS__Group_1_1__1 )
+            // InternalOCLstdlib.g:12042:2: rule__PostCS__Group_1_1__0__Impl rule__PostCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__PostCS__Group_1_1__0__Impl();
@@ -36449,17 +36449,17 @@
 
 
     // $ANTLR start "rule__PostCS__Group_1_1__0__Impl"
-    // InternalOCLstdlib.g:12047:1: rule__PostCS__Group_1_1__0__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:12049:1: rule__PostCS__Group_1_1__0__Impl : ( '(' ) ;
     public final void rule__PostCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12051:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:12052:1: ( '(' )
+            // InternalOCLstdlib.g:12053:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:12054:1: ( '(' )
             {
-            // InternalOCLstdlib.g:12052:1: ( '(' )
-            // InternalOCLstdlib.g:12053:1: '('
+            // InternalOCLstdlib.g:12054:1: ( '(' )
+            // InternalOCLstdlib.g:12055:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getLeftParenthesisKeyword_1_1_0());
@@ -36490,14 +36490,14 @@
 
 
     // $ANTLR start "rule__PostCS__Group_1_1__1"
-    // InternalOCLstdlib.g:12066:1: rule__PostCS__Group_1_1__1 : rule__PostCS__Group_1_1__1__Impl rule__PostCS__Group_1_1__2 ;
+    // InternalOCLstdlib.g:12068:1: rule__PostCS__Group_1_1__1 : rule__PostCS__Group_1_1__1__Impl rule__PostCS__Group_1_1__2 ;
     public final void rule__PostCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12070:1: ( rule__PostCS__Group_1_1__1__Impl rule__PostCS__Group_1_1__2 )
-            // InternalOCLstdlib.g:12071:2: rule__PostCS__Group_1_1__1__Impl rule__PostCS__Group_1_1__2
+            // InternalOCLstdlib.g:12072:1: ( rule__PostCS__Group_1_1__1__Impl rule__PostCS__Group_1_1__2 )
+            // InternalOCLstdlib.g:12073:2: rule__PostCS__Group_1_1__1__Impl rule__PostCS__Group_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_34);
             rule__PostCS__Group_1_1__1__Impl();
@@ -36528,23 +36528,23 @@
 
 
     // $ANTLR start "rule__PostCS__Group_1_1__1__Impl"
-    // InternalOCLstdlib.g:12078:1: rule__PostCS__Group_1_1__1__Impl : ( ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) ;
+    // InternalOCLstdlib.g:12080:1: rule__PostCS__Group_1_1__1__Impl : ( ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) ;
     public final void rule__PostCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12082:1: ( ( ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
-            // InternalOCLstdlib.g:12083:1: ( ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
+            // InternalOCLstdlib.g:12084:1: ( ( ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
+            // InternalOCLstdlib.g:12085:1: ( ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
             {
-            // InternalOCLstdlib.g:12083:1: ( ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
-            // InternalOCLstdlib.g:12084:1: ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 )
+            // InternalOCLstdlib.g:12085:1: ( ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
+            // InternalOCLstdlib.g:12086:1: ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
-            // InternalOCLstdlib.g:12085:1: ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 )
-            // InternalOCLstdlib.g:12085:2: rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1
+            // InternalOCLstdlib.g:12087:1: ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 )
+            // InternalOCLstdlib.g:12087:2: rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1();
@@ -36579,14 +36579,14 @@
 
 
     // $ANTLR start "rule__PostCS__Group_1_1__2"
-    // InternalOCLstdlib.g:12095:1: rule__PostCS__Group_1_1__2 : rule__PostCS__Group_1_1__2__Impl ;
+    // InternalOCLstdlib.g:12097:1: rule__PostCS__Group_1_1__2 : rule__PostCS__Group_1_1__2__Impl ;
     public final void rule__PostCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12099:1: ( rule__PostCS__Group_1_1__2__Impl )
-            // InternalOCLstdlib.g:12100:2: rule__PostCS__Group_1_1__2__Impl
+            // InternalOCLstdlib.g:12101:1: ( rule__PostCS__Group_1_1__2__Impl )
+            // InternalOCLstdlib.g:12102:2: rule__PostCS__Group_1_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PostCS__Group_1_1__2__Impl();
@@ -36612,17 +36612,17 @@
 
 
     // $ANTLR start "rule__PostCS__Group_1_1__2__Impl"
-    // InternalOCLstdlib.g:12106:1: rule__PostCS__Group_1_1__2__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:12108:1: rule__PostCS__Group_1_1__2__Impl : ( ')' ) ;
     public final void rule__PostCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12110:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:12111:1: ( ')' )
+            // InternalOCLstdlib.g:12112:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:12113:1: ( ')' )
             {
-            // InternalOCLstdlib.g:12111:1: ( ')' )
-            // InternalOCLstdlib.g:12112:1: ')'
+            // InternalOCLstdlib.g:12113:1: ( ')' )
+            // InternalOCLstdlib.g:12114:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getRightParenthesisKeyword_1_1_2());
@@ -36653,14 +36653,14 @@
 
 
     // $ANTLR start "rule__PreCS__Group__0"
-    // InternalOCLstdlib.g:12131:1: rule__PreCS__Group__0 : rule__PreCS__Group__0__Impl rule__PreCS__Group__1 ;
+    // InternalOCLstdlib.g:12133:1: rule__PreCS__Group__0 : rule__PreCS__Group__0__Impl rule__PreCS__Group__1 ;
     public final void rule__PreCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12135:1: ( rule__PreCS__Group__0__Impl rule__PreCS__Group__1 )
-            // InternalOCLstdlib.g:12136:2: rule__PreCS__Group__0__Impl rule__PreCS__Group__1
+            // InternalOCLstdlib.g:12137:1: ( rule__PreCS__Group__0__Impl rule__PreCS__Group__1 )
+            // InternalOCLstdlib.g:12138:2: rule__PreCS__Group__0__Impl rule__PreCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_31);
             rule__PreCS__Group__0__Impl();
@@ -36691,23 +36691,23 @@
 
 
     // $ANTLR start "rule__PreCS__Group__0__Impl"
-    // InternalOCLstdlib.g:12143:1: rule__PreCS__Group__0__Impl : ( ( rule__PreCS__StereotypeAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:12145:1: rule__PreCS__Group__0__Impl : ( ( rule__PreCS__StereotypeAssignment_0 ) ) ;
     public final void rule__PreCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12147:1: ( ( ( rule__PreCS__StereotypeAssignment_0 ) ) )
-            // InternalOCLstdlib.g:12148:1: ( ( rule__PreCS__StereotypeAssignment_0 ) )
+            // InternalOCLstdlib.g:12149:1: ( ( ( rule__PreCS__StereotypeAssignment_0 ) ) )
+            // InternalOCLstdlib.g:12150:1: ( ( rule__PreCS__StereotypeAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:12148:1: ( ( rule__PreCS__StereotypeAssignment_0 ) )
-            // InternalOCLstdlib.g:12149:1: ( rule__PreCS__StereotypeAssignment_0 )
+            // InternalOCLstdlib.g:12150:1: ( ( rule__PreCS__StereotypeAssignment_0 ) )
+            // InternalOCLstdlib.g:12151:1: ( rule__PreCS__StereotypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getStereotypeAssignment_0());
             }
-            // InternalOCLstdlib.g:12150:1: ( rule__PreCS__StereotypeAssignment_0 )
-            // InternalOCLstdlib.g:12150:2: rule__PreCS__StereotypeAssignment_0
+            // InternalOCLstdlib.g:12152:1: ( rule__PreCS__StereotypeAssignment_0 )
+            // InternalOCLstdlib.g:12152:2: rule__PreCS__StereotypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreCS__StereotypeAssignment_0();
@@ -36742,14 +36742,14 @@
 
 
     // $ANTLR start "rule__PreCS__Group__1"
-    // InternalOCLstdlib.g:12160:1: rule__PreCS__Group__1 : rule__PreCS__Group__1__Impl rule__PreCS__Group__2 ;
+    // InternalOCLstdlib.g:12162:1: rule__PreCS__Group__1 : rule__PreCS__Group__1__Impl rule__PreCS__Group__2 ;
     public final void rule__PreCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12164:1: ( rule__PreCS__Group__1__Impl rule__PreCS__Group__2 )
-            // InternalOCLstdlib.g:12165:2: rule__PreCS__Group__1__Impl rule__PreCS__Group__2
+            // InternalOCLstdlib.g:12166:1: ( rule__PreCS__Group__1__Impl rule__PreCS__Group__2 )
+            // InternalOCLstdlib.g:12167:2: rule__PreCS__Group__1__Impl rule__PreCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_31);
             rule__PreCS__Group__1__Impl();
@@ -36780,22 +36780,22 @@
 
 
     // $ANTLR start "rule__PreCS__Group__1__Impl"
-    // InternalOCLstdlib.g:12172:1: rule__PreCS__Group__1__Impl : ( ( rule__PreCS__Group_1__0 )? ) ;
+    // InternalOCLstdlib.g:12174:1: rule__PreCS__Group__1__Impl : ( ( rule__PreCS__Group_1__0 )? ) ;
     public final void rule__PreCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12176:1: ( ( ( rule__PreCS__Group_1__0 )? ) )
-            // InternalOCLstdlib.g:12177:1: ( ( rule__PreCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:12178:1: ( ( ( rule__PreCS__Group_1__0 )? ) )
+            // InternalOCLstdlib.g:12179:1: ( ( rule__PreCS__Group_1__0 )? )
             {
-            // InternalOCLstdlib.g:12177:1: ( ( rule__PreCS__Group_1__0 )? )
-            // InternalOCLstdlib.g:12178:1: ( rule__PreCS__Group_1__0 )?
+            // InternalOCLstdlib.g:12179:1: ( ( rule__PreCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:12180:1: ( rule__PreCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:12179:1: ( rule__PreCS__Group_1__0 )?
+            // InternalOCLstdlib.g:12181:1: ( rule__PreCS__Group_1__0 )?
             int alt112=2;
             int LA112_0 = input.LA(1);
 
@@ -36804,7 +36804,7 @@
             }
             switch (alt112) {
                 case 1 :
-                    // InternalOCLstdlib.g:12179:2: rule__PreCS__Group_1__0
+                    // InternalOCLstdlib.g:12181:2: rule__PreCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PreCS__Group_1__0();
@@ -36842,14 +36842,14 @@
 
 
     // $ANTLR start "rule__PreCS__Group__2"
-    // InternalOCLstdlib.g:12189:1: rule__PreCS__Group__2 : rule__PreCS__Group__2__Impl rule__PreCS__Group__3 ;
+    // InternalOCLstdlib.g:12191:1: rule__PreCS__Group__2 : rule__PreCS__Group__2__Impl rule__PreCS__Group__3 ;
     public final void rule__PreCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12193:1: ( rule__PreCS__Group__2__Impl rule__PreCS__Group__3 )
-            // InternalOCLstdlib.g:12194:2: rule__PreCS__Group__2__Impl rule__PreCS__Group__3
+            // InternalOCLstdlib.g:12195:1: ( rule__PreCS__Group__2__Impl rule__PreCS__Group__3 )
+            // InternalOCLstdlib.g:12196:2: rule__PreCS__Group__2__Impl rule__PreCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__PreCS__Group__2__Impl();
@@ -36880,17 +36880,17 @@
 
 
     // $ANTLR start "rule__PreCS__Group__2__Impl"
-    // InternalOCLstdlib.g:12201:1: rule__PreCS__Group__2__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:12203:1: rule__PreCS__Group__2__Impl : ( ':' ) ;
     public final void rule__PreCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12205:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:12206:1: ( ':' )
+            // InternalOCLstdlib.g:12207:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:12208:1: ( ':' )
             {
-            // InternalOCLstdlib.g:12206:1: ( ':' )
-            // InternalOCLstdlib.g:12207:1: ':'
+            // InternalOCLstdlib.g:12208:1: ( ':' )
+            // InternalOCLstdlib.g:12209:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getColonKeyword_2());
@@ -36921,14 +36921,14 @@
 
 
     // $ANTLR start "rule__PreCS__Group__3"
-    // InternalOCLstdlib.g:12220:1: rule__PreCS__Group__3 : rule__PreCS__Group__3__Impl rule__PreCS__Group__4 ;
+    // InternalOCLstdlib.g:12222:1: rule__PreCS__Group__3 : rule__PreCS__Group__3__Impl rule__PreCS__Group__4 ;
     public final void rule__PreCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12224:1: ( rule__PreCS__Group__3__Impl rule__PreCS__Group__4 )
-            // InternalOCLstdlib.g:12225:2: rule__PreCS__Group__3__Impl rule__PreCS__Group__4
+            // InternalOCLstdlib.g:12226:1: ( rule__PreCS__Group__3__Impl rule__PreCS__Group__4 )
+            // InternalOCLstdlib.g:12227:2: rule__PreCS__Group__3__Impl rule__PreCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_7);
             rule__PreCS__Group__3__Impl();
@@ -36959,23 +36959,23 @@
 
 
     // $ANTLR start "rule__PreCS__Group__3__Impl"
-    // InternalOCLstdlib.g:12232:1: rule__PreCS__Group__3__Impl : ( ( rule__PreCS__OwnedSpecificationAssignment_3 ) ) ;
+    // InternalOCLstdlib.g:12234:1: rule__PreCS__Group__3__Impl : ( ( rule__PreCS__OwnedSpecificationAssignment_3 ) ) ;
     public final void rule__PreCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12236:1: ( ( ( rule__PreCS__OwnedSpecificationAssignment_3 ) ) )
-            // InternalOCLstdlib.g:12237:1: ( ( rule__PreCS__OwnedSpecificationAssignment_3 ) )
+            // InternalOCLstdlib.g:12238:1: ( ( ( rule__PreCS__OwnedSpecificationAssignment_3 ) ) )
+            // InternalOCLstdlib.g:12239:1: ( ( rule__PreCS__OwnedSpecificationAssignment_3 ) )
             {
-            // InternalOCLstdlib.g:12237:1: ( ( rule__PreCS__OwnedSpecificationAssignment_3 ) )
-            // InternalOCLstdlib.g:12238:1: ( rule__PreCS__OwnedSpecificationAssignment_3 )
+            // InternalOCLstdlib.g:12239:1: ( ( rule__PreCS__OwnedSpecificationAssignment_3 ) )
+            // InternalOCLstdlib.g:12240:1: ( rule__PreCS__OwnedSpecificationAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getOwnedSpecificationAssignment_3());
             }
-            // InternalOCLstdlib.g:12239:1: ( rule__PreCS__OwnedSpecificationAssignment_3 )
-            // InternalOCLstdlib.g:12239:2: rule__PreCS__OwnedSpecificationAssignment_3
+            // InternalOCLstdlib.g:12241:1: ( rule__PreCS__OwnedSpecificationAssignment_3 )
+            // InternalOCLstdlib.g:12241:2: rule__PreCS__OwnedSpecificationAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreCS__OwnedSpecificationAssignment_3();
@@ -37010,14 +37010,14 @@
 
 
     // $ANTLR start "rule__PreCS__Group__4"
-    // InternalOCLstdlib.g:12249:1: rule__PreCS__Group__4 : rule__PreCS__Group__4__Impl ;
+    // InternalOCLstdlib.g:12251:1: rule__PreCS__Group__4 : rule__PreCS__Group__4__Impl ;
     public final void rule__PreCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12253:1: ( rule__PreCS__Group__4__Impl )
-            // InternalOCLstdlib.g:12254:2: rule__PreCS__Group__4__Impl
+            // InternalOCLstdlib.g:12255:1: ( rule__PreCS__Group__4__Impl )
+            // InternalOCLstdlib.g:12256:2: rule__PreCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreCS__Group__4__Impl();
@@ -37043,17 +37043,17 @@
 
 
     // $ANTLR start "rule__PreCS__Group__4__Impl"
-    // InternalOCLstdlib.g:12260:1: rule__PreCS__Group__4__Impl : ( ';' ) ;
+    // InternalOCLstdlib.g:12262:1: rule__PreCS__Group__4__Impl : ( ';' ) ;
     public final void rule__PreCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12264:1: ( ( ';' ) )
-            // InternalOCLstdlib.g:12265:1: ( ';' )
+            // InternalOCLstdlib.g:12266:1: ( ( ';' ) )
+            // InternalOCLstdlib.g:12267:1: ( ';' )
             {
-            // InternalOCLstdlib.g:12265:1: ( ';' )
-            // InternalOCLstdlib.g:12266:1: ';'
+            // InternalOCLstdlib.g:12267:1: ( ';' )
+            // InternalOCLstdlib.g:12268:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getSemicolonKeyword_4());
@@ -37084,14 +37084,14 @@
 
 
     // $ANTLR start "rule__PreCS__Group_1__0"
-    // InternalOCLstdlib.g:12289:1: rule__PreCS__Group_1__0 : rule__PreCS__Group_1__0__Impl rule__PreCS__Group_1__1 ;
+    // InternalOCLstdlib.g:12291:1: rule__PreCS__Group_1__0 : rule__PreCS__Group_1__0__Impl rule__PreCS__Group_1__1 ;
     public final void rule__PreCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12293:1: ( rule__PreCS__Group_1__0__Impl rule__PreCS__Group_1__1 )
-            // InternalOCLstdlib.g:12294:2: rule__PreCS__Group_1__0__Impl rule__PreCS__Group_1__1
+            // InternalOCLstdlib.g:12295:1: ( rule__PreCS__Group_1__0__Impl rule__PreCS__Group_1__1 )
+            // InternalOCLstdlib.g:12296:2: rule__PreCS__Group_1__0__Impl rule__PreCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__PreCS__Group_1__0__Impl();
@@ -37122,23 +37122,23 @@
 
 
     // $ANTLR start "rule__PreCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:12301:1: rule__PreCS__Group_1__0__Impl : ( ( rule__PreCS__NameAssignment_1_0 ) ) ;
+    // InternalOCLstdlib.g:12303:1: rule__PreCS__Group_1__0__Impl : ( ( rule__PreCS__NameAssignment_1_0 ) ) ;
     public final void rule__PreCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12305:1: ( ( ( rule__PreCS__NameAssignment_1_0 ) ) )
-            // InternalOCLstdlib.g:12306:1: ( ( rule__PreCS__NameAssignment_1_0 ) )
+            // InternalOCLstdlib.g:12307:1: ( ( ( rule__PreCS__NameAssignment_1_0 ) ) )
+            // InternalOCLstdlib.g:12308:1: ( ( rule__PreCS__NameAssignment_1_0 ) )
             {
-            // InternalOCLstdlib.g:12306:1: ( ( rule__PreCS__NameAssignment_1_0 ) )
-            // InternalOCLstdlib.g:12307:1: ( rule__PreCS__NameAssignment_1_0 )
+            // InternalOCLstdlib.g:12308:1: ( ( rule__PreCS__NameAssignment_1_0 ) )
+            // InternalOCLstdlib.g:12309:1: ( rule__PreCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getNameAssignment_1_0());
             }
-            // InternalOCLstdlib.g:12308:1: ( rule__PreCS__NameAssignment_1_0 )
-            // InternalOCLstdlib.g:12308:2: rule__PreCS__NameAssignment_1_0
+            // InternalOCLstdlib.g:12310:1: ( rule__PreCS__NameAssignment_1_0 )
+            // InternalOCLstdlib.g:12310:2: rule__PreCS__NameAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreCS__NameAssignment_1_0();
@@ -37173,14 +37173,14 @@
 
 
     // $ANTLR start "rule__PreCS__Group_1__1"
-    // InternalOCLstdlib.g:12318:1: rule__PreCS__Group_1__1 : rule__PreCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:12320:1: rule__PreCS__Group_1__1 : rule__PreCS__Group_1__1__Impl ;
     public final void rule__PreCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12322:1: ( rule__PreCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:12323:2: rule__PreCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:12324:1: ( rule__PreCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:12325:2: rule__PreCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreCS__Group_1__1__Impl();
@@ -37206,22 +37206,22 @@
 
 
     // $ANTLR start "rule__PreCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:12329:1: rule__PreCS__Group_1__1__Impl : ( ( rule__PreCS__Group_1_1__0 )? ) ;
+    // InternalOCLstdlib.g:12331:1: rule__PreCS__Group_1__1__Impl : ( ( rule__PreCS__Group_1_1__0 )? ) ;
     public final void rule__PreCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12333:1: ( ( ( rule__PreCS__Group_1_1__0 )? ) )
-            // InternalOCLstdlib.g:12334:1: ( ( rule__PreCS__Group_1_1__0 )? )
+            // InternalOCLstdlib.g:12335:1: ( ( ( rule__PreCS__Group_1_1__0 )? ) )
+            // InternalOCLstdlib.g:12336:1: ( ( rule__PreCS__Group_1_1__0 )? )
             {
-            // InternalOCLstdlib.g:12334:1: ( ( rule__PreCS__Group_1_1__0 )? )
-            // InternalOCLstdlib.g:12335:1: ( rule__PreCS__Group_1_1__0 )?
+            // InternalOCLstdlib.g:12336:1: ( ( rule__PreCS__Group_1_1__0 )? )
+            // InternalOCLstdlib.g:12337:1: ( rule__PreCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getGroup_1_1());
             }
-            // InternalOCLstdlib.g:12336:1: ( rule__PreCS__Group_1_1__0 )?
+            // InternalOCLstdlib.g:12338:1: ( rule__PreCS__Group_1_1__0 )?
             int alt113=2;
             int LA113_0 = input.LA(1);
 
@@ -37230,7 +37230,7 @@
             }
             switch (alt113) {
                 case 1 :
-                    // InternalOCLstdlib.g:12336:2: rule__PreCS__Group_1_1__0
+                    // InternalOCLstdlib.g:12338:2: rule__PreCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PreCS__Group_1_1__0();
@@ -37268,14 +37268,14 @@
 
 
     // $ANTLR start "rule__PreCS__Group_1_1__0"
-    // InternalOCLstdlib.g:12350:1: rule__PreCS__Group_1_1__0 : rule__PreCS__Group_1_1__0__Impl rule__PreCS__Group_1_1__1 ;
+    // InternalOCLstdlib.g:12352:1: rule__PreCS__Group_1_1__0 : rule__PreCS__Group_1_1__0__Impl rule__PreCS__Group_1_1__1 ;
     public final void rule__PreCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12354:1: ( rule__PreCS__Group_1_1__0__Impl rule__PreCS__Group_1_1__1 )
-            // InternalOCLstdlib.g:12355:2: rule__PreCS__Group_1_1__0__Impl rule__PreCS__Group_1_1__1
+            // InternalOCLstdlib.g:12356:1: ( rule__PreCS__Group_1_1__0__Impl rule__PreCS__Group_1_1__1 )
+            // InternalOCLstdlib.g:12357:2: rule__PreCS__Group_1_1__0__Impl rule__PreCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__PreCS__Group_1_1__0__Impl();
@@ -37306,17 +37306,17 @@
 
 
     // $ANTLR start "rule__PreCS__Group_1_1__0__Impl"
-    // InternalOCLstdlib.g:12362:1: rule__PreCS__Group_1_1__0__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:12364:1: rule__PreCS__Group_1_1__0__Impl : ( '(' ) ;
     public final void rule__PreCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12366:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:12367:1: ( '(' )
+            // InternalOCLstdlib.g:12368:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:12369:1: ( '(' )
             {
-            // InternalOCLstdlib.g:12367:1: ( '(' )
-            // InternalOCLstdlib.g:12368:1: '('
+            // InternalOCLstdlib.g:12369:1: ( '(' )
+            // InternalOCLstdlib.g:12370:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getLeftParenthesisKeyword_1_1_0());
@@ -37347,14 +37347,14 @@
 
 
     // $ANTLR start "rule__PreCS__Group_1_1__1"
-    // InternalOCLstdlib.g:12381:1: rule__PreCS__Group_1_1__1 : rule__PreCS__Group_1_1__1__Impl rule__PreCS__Group_1_1__2 ;
+    // InternalOCLstdlib.g:12383:1: rule__PreCS__Group_1_1__1 : rule__PreCS__Group_1_1__1__Impl rule__PreCS__Group_1_1__2 ;
     public final void rule__PreCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12385:1: ( rule__PreCS__Group_1_1__1__Impl rule__PreCS__Group_1_1__2 )
-            // InternalOCLstdlib.g:12386:2: rule__PreCS__Group_1_1__1__Impl rule__PreCS__Group_1_1__2
+            // InternalOCLstdlib.g:12387:1: ( rule__PreCS__Group_1_1__1__Impl rule__PreCS__Group_1_1__2 )
+            // InternalOCLstdlib.g:12388:2: rule__PreCS__Group_1_1__1__Impl rule__PreCS__Group_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_34);
             rule__PreCS__Group_1_1__1__Impl();
@@ -37385,23 +37385,23 @@
 
 
     // $ANTLR start "rule__PreCS__Group_1_1__1__Impl"
-    // InternalOCLstdlib.g:12393:1: rule__PreCS__Group_1_1__1__Impl : ( ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) ;
+    // InternalOCLstdlib.g:12395:1: rule__PreCS__Group_1_1__1__Impl : ( ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) ;
     public final void rule__PreCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12397:1: ( ( ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
-            // InternalOCLstdlib.g:12398:1: ( ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
+            // InternalOCLstdlib.g:12399:1: ( ( ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
+            // InternalOCLstdlib.g:12400:1: ( ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
             {
-            // InternalOCLstdlib.g:12398:1: ( ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
-            // InternalOCLstdlib.g:12399:1: ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 )
+            // InternalOCLstdlib.g:12400:1: ( ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
+            // InternalOCLstdlib.g:12401:1: ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
-            // InternalOCLstdlib.g:12400:1: ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 )
-            // InternalOCLstdlib.g:12400:2: rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1
+            // InternalOCLstdlib.g:12402:1: ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 )
+            // InternalOCLstdlib.g:12402:2: rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1();
@@ -37436,14 +37436,14 @@
 
 
     // $ANTLR start "rule__PreCS__Group_1_1__2"
-    // InternalOCLstdlib.g:12410:1: rule__PreCS__Group_1_1__2 : rule__PreCS__Group_1_1__2__Impl ;
+    // InternalOCLstdlib.g:12412:1: rule__PreCS__Group_1_1__2 : rule__PreCS__Group_1_1__2__Impl ;
     public final void rule__PreCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12414:1: ( rule__PreCS__Group_1_1__2__Impl )
-            // InternalOCLstdlib.g:12415:2: rule__PreCS__Group_1_1__2__Impl
+            // InternalOCLstdlib.g:12416:1: ( rule__PreCS__Group_1_1__2__Impl )
+            // InternalOCLstdlib.g:12417:2: rule__PreCS__Group_1_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PreCS__Group_1_1__2__Impl();
@@ -37469,17 +37469,17 @@
 
 
     // $ANTLR start "rule__PreCS__Group_1_1__2__Impl"
-    // InternalOCLstdlib.g:12421:1: rule__PreCS__Group_1_1__2__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:12423:1: rule__PreCS__Group_1_1__2__Impl : ( ')' ) ;
     public final void rule__PreCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12425:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:12426:1: ( ')' )
+            // InternalOCLstdlib.g:12427:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:12428:1: ( ')' )
             {
-            // InternalOCLstdlib.g:12426:1: ( ')' )
-            // InternalOCLstdlib.g:12427:1: ')'
+            // InternalOCLstdlib.g:12428:1: ( ')' )
+            // InternalOCLstdlib.g:12429:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getRightParenthesisKeyword_1_1_2());
@@ -37510,14 +37510,14 @@
 
 
     // $ANTLR start "rule__PrecedenceCS__Group__0"
-    // InternalOCLstdlib.g:12446:1: rule__PrecedenceCS__Group__0 : rule__PrecedenceCS__Group__0__Impl rule__PrecedenceCS__Group__1 ;
+    // InternalOCLstdlib.g:12448:1: rule__PrecedenceCS__Group__0 : rule__PrecedenceCS__Group__0__Impl rule__PrecedenceCS__Group__1 ;
     public final void rule__PrecedenceCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12450:1: ( rule__PrecedenceCS__Group__0__Impl rule__PrecedenceCS__Group__1 )
-            // InternalOCLstdlib.g:12451:2: rule__PrecedenceCS__Group__0__Impl rule__PrecedenceCS__Group__1
+            // InternalOCLstdlib.g:12452:1: ( rule__PrecedenceCS__Group__0__Impl rule__PrecedenceCS__Group__1 )
+            // InternalOCLstdlib.g:12453:2: rule__PrecedenceCS__Group__0__Impl rule__PrecedenceCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__PrecedenceCS__Group__0__Impl();
@@ -37548,23 +37548,23 @@
 
 
     // $ANTLR start "rule__PrecedenceCS__Group__0__Impl"
-    // InternalOCLstdlib.g:12458:1: rule__PrecedenceCS__Group__0__Impl : ( ( rule__PrecedenceCS__Alternatives_0 ) ) ;
+    // InternalOCLstdlib.g:12460:1: rule__PrecedenceCS__Group__0__Impl : ( ( rule__PrecedenceCS__Alternatives_0 ) ) ;
     public final void rule__PrecedenceCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12462:1: ( ( ( rule__PrecedenceCS__Alternatives_0 ) ) )
-            // InternalOCLstdlib.g:12463:1: ( ( rule__PrecedenceCS__Alternatives_0 ) )
+            // InternalOCLstdlib.g:12464:1: ( ( ( rule__PrecedenceCS__Alternatives_0 ) ) )
+            // InternalOCLstdlib.g:12465:1: ( ( rule__PrecedenceCS__Alternatives_0 ) )
             {
-            // InternalOCLstdlib.g:12463:1: ( ( rule__PrecedenceCS__Alternatives_0 ) )
-            // InternalOCLstdlib.g:12464:1: ( rule__PrecedenceCS__Alternatives_0 )
+            // InternalOCLstdlib.g:12465:1: ( ( rule__PrecedenceCS__Alternatives_0 ) )
+            // InternalOCLstdlib.g:12466:1: ( rule__PrecedenceCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrecedenceCSAccess().getAlternatives_0());
             }
-            // InternalOCLstdlib.g:12465:1: ( rule__PrecedenceCS__Alternatives_0 )
-            // InternalOCLstdlib.g:12465:2: rule__PrecedenceCS__Alternatives_0
+            // InternalOCLstdlib.g:12467:1: ( rule__PrecedenceCS__Alternatives_0 )
+            // InternalOCLstdlib.g:12467:2: rule__PrecedenceCS__Alternatives_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrecedenceCS__Alternatives_0();
@@ -37599,14 +37599,14 @@
 
 
     // $ANTLR start "rule__PrecedenceCS__Group__1"
-    // InternalOCLstdlib.g:12475:1: rule__PrecedenceCS__Group__1 : rule__PrecedenceCS__Group__1__Impl rule__PrecedenceCS__Group__2 ;
+    // InternalOCLstdlib.g:12477:1: rule__PrecedenceCS__Group__1 : rule__PrecedenceCS__Group__1__Impl rule__PrecedenceCS__Group__2 ;
     public final void rule__PrecedenceCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12479:1: ( rule__PrecedenceCS__Group__1__Impl rule__PrecedenceCS__Group__2 )
-            // InternalOCLstdlib.g:12480:2: rule__PrecedenceCS__Group__1__Impl rule__PrecedenceCS__Group__2
+            // InternalOCLstdlib.g:12481:1: ( rule__PrecedenceCS__Group__1__Impl rule__PrecedenceCS__Group__2 )
+            // InternalOCLstdlib.g:12482:2: rule__PrecedenceCS__Group__1__Impl rule__PrecedenceCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_10);
             rule__PrecedenceCS__Group__1__Impl();
@@ -37637,17 +37637,17 @@
 
 
     // $ANTLR start "rule__PrecedenceCS__Group__1__Impl"
-    // InternalOCLstdlib.g:12487:1: rule__PrecedenceCS__Group__1__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:12489:1: rule__PrecedenceCS__Group__1__Impl : ( ':' ) ;
     public final void rule__PrecedenceCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12491:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:12492:1: ( ':' )
+            // InternalOCLstdlib.g:12493:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:12494:1: ( ':' )
             {
-            // InternalOCLstdlib.g:12492:1: ( ':' )
-            // InternalOCLstdlib.g:12493:1: ':'
+            // InternalOCLstdlib.g:12494:1: ( ':' )
+            // InternalOCLstdlib.g:12495:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrecedenceCSAccess().getColonKeyword_1());
@@ -37678,14 +37678,14 @@
 
 
     // $ANTLR start "rule__PrecedenceCS__Group__2"
-    // InternalOCLstdlib.g:12506:1: rule__PrecedenceCS__Group__2 : rule__PrecedenceCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:12508:1: rule__PrecedenceCS__Group__2 : rule__PrecedenceCS__Group__2__Impl ;
     public final void rule__PrecedenceCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12510:1: ( rule__PrecedenceCS__Group__2__Impl )
-            // InternalOCLstdlib.g:12511:2: rule__PrecedenceCS__Group__2__Impl
+            // InternalOCLstdlib.g:12512:1: ( rule__PrecedenceCS__Group__2__Impl )
+            // InternalOCLstdlib.g:12513:2: rule__PrecedenceCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrecedenceCS__Group__2__Impl();
@@ -37711,23 +37711,23 @@
 
 
     // $ANTLR start "rule__PrecedenceCS__Group__2__Impl"
-    // InternalOCLstdlib.g:12517:1: rule__PrecedenceCS__Group__2__Impl : ( ( rule__PrecedenceCS__NameAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:12519:1: rule__PrecedenceCS__Group__2__Impl : ( ( rule__PrecedenceCS__NameAssignment_2 ) ) ;
     public final void rule__PrecedenceCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12521:1: ( ( ( rule__PrecedenceCS__NameAssignment_2 ) ) )
-            // InternalOCLstdlib.g:12522:1: ( ( rule__PrecedenceCS__NameAssignment_2 ) )
+            // InternalOCLstdlib.g:12523:1: ( ( ( rule__PrecedenceCS__NameAssignment_2 ) ) )
+            // InternalOCLstdlib.g:12524:1: ( ( rule__PrecedenceCS__NameAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:12522:1: ( ( rule__PrecedenceCS__NameAssignment_2 ) )
-            // InternalOCLstdlib.g:12523:1: ( rule__PrecedenceCS__NameAssignment_2 )
+            // InternalOCLstdlib.g:12524:1: ( ( rule__PrecedenceCS__NameAssignment_2 ) )
+            // InternalOCLstdlib.g:12525:1: ( rule__PrecedenceCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrecedenceCSAccess().getNameAssignment_2());
             }
-            // InternalOCLstdlib.g:12524:1: ( rule__PrecedenceCS__NameAssignment_2 )
-            // InternalOCLstdlib.g:12524:2: rule__PrecedenceCS__NameAssignment_2
+            // InternalOCLstdlib.g:12526:1: ( rule__PrecedenceCS__NameAssignment_2 )
+            // InternalOCLstdlib.g:12526:2: rule__PrecedenceCS__NameAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrecedenceCS__NameAssignment_2();
@@ -37762,14 +37762,14 @@
 
 
     // $ANTLR start "rule__TypedMultiplicityRefCS__Group__0"
-    // InternalOCLstdlib.g:12540:1: rule__TypedMultiplicityRefCS__Group__0 : rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1 ;
+    // InternalOCLstdlib.g:12542:1: rule__TypedMultiplicityRefCS__Group__0 : rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1 ;
     public final void rule__TypedMultiplicityRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12544:1: ( rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1 )
-            // InternalOCLstdlib.g:12545:2: rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1
+            // InternalOCLstdlib.g:12546:1: ( rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1 )
+            // InternalOCLstdlib.g:12547:2: rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_60);
             rule__TypedMultiplicityRefCS__Group__0__Impl();
@@ -37800,23 +37800,23 @@
 
 
     // $ANTLR start "rule__TypedMultiplicityRefCS__Group__0__Impl"
-    // InternalOCLstdlib.g:12552:1: rule__TypedMultiplicityRefCS__Group__0__Impl : ( ( rule__TypedMultiplicityRefCS__Alternatives_0 ) ) ;
+    // InternalOCLstdlib.g:12554:1: rule__TypedMultiplicityRefCS__Group__0__Impl : ( ( rule__TypedMultiplicityRefCS__Alternatives_0 ) ) ;
     public final void rule__TypedMultiplicityRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12556:1: ( ( ( rule__TypedMultiplicityRefCS__Alternatives_0 ) ) )
-            // InternalOCLstdlib.g:12557:1: ( ( rule__TypedMultiplicityRefCS__Alternatives_0 ) )
+            // InternalOCLstdlib.g:12558:1: ( ( ( rule__TypedMultiplicityRefCS__Alternatives_0 ) ) )
+            // InternalOCLstdlib.g:12559:1: ( ( rule__TypedMultiplicityRefCS__Alternatives_0 ) )
             {
-            // InternalOCLstdlib.g:12557:1: ( ( rule__TypedMultiplicityRefCS__Alternatives_0 ) )
-            // InternalOCLstdlib.g:12558:1: ( rule__TypedMultiplicityRefCS__Alternatives_0 )
+            // InternalOCLstdlib.g:12559:1: ( ( rule__TypedMultiplicityRefCS__Alternatives_0 ) )
+            // InternalOCLstdlib.g:12560:1: ( rule__TypedMultiplicityRefCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedMultiplicityRefCSAccess().getAlternatives_0());
             }
-            // InternalOCLstdlib.g:12559:1: ( rule__TypedMultiplicityRefCS__Alternatives_0 )
-            // InternalOCLstdlib.g:12559:2: rule__TypedMultiplicityRefCS__Alternatives_0
+            // InternalOCLstdlib.g:12561:1: ( rule__TypedMultiplicityRefCS__Alternatives_0 )
+            // InternalOCLstdlib.g:12561:2: rule__TypedMultiplicityRefCS__Alternatives_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedMultiplicityRefCS__Alternatives_0();
@@ -37851,14 +37851,14 @@
 
 
     // $ANTLR start "rule__TypedMultiplicityRefCS__Group__1"
-    // InternalOCLstdlib.g:12569:1: rule__TypedMultiplicityRefCS__Group__1 : rule__TypedMultiplicityRefCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:12571:1: rule__TypedMultiplicityRefCS__Group__1 : rule__TypedMultiplicityRefCS__Group__1__Impl ;
     public final void rule__TypedMultiplicityRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12573:1: ( rule__TypedMultiplicityRefCS__Group__1__Impl )
-            // InternalOCLstdlib.g:12574:2: rule__TypedMultiplicityRefCS__Group__1__Impl
+            // InternalOCLstdlib.g:12575:1: ( rule__TypedMultiplicityRefCS__Group__1__Impl )
+            // InternalOCLstdlib.g:12576:2: rule__TypedMultiplicityRefCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedMultiplicityRefCS__Group__1__Impl();
@@ -37884,22 +37884,22 @@
 
 
     // $ANTLR start "rule__TypedMultiplicityRefCS__Group__1__Impl"
-    // InternalOCLstdlib.g:12580:1: rule__TypedMultiplicityRefCS__Group__1__Impl : ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? ) ;
+    // InternalOCLstdlib.g:12582:1: rule__TypedMultiplicityRefCS__Group__1__Impl : ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? ) ;
     public final void rule__TypedMultiplicityRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12584:1: ( ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? ) )
-            // InternalOCLstdlib.g:12585:1: ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalOCLstdlib.g:12586:1: ( ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? ) )
+            // InternalOCLstdlib.g:12587:1: ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? )
             {
-            // InternalOCLstdlib.g:12585:1: ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? )
-            // InternalOCLstdlib.g:12586:1: ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )?
+            // InternalOCLstdlib.g:12587:1: ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalOCLstdlib.g:12588:1: ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityAssignment_1());
             }
-            // InternalOCLstdlib.g:12587:1: ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )?
+            // InternalOCLstdlib.g:12589:1: ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )?
             int alt114=2;
             int LA114_0 = input.LA(1);
 
@@ -37908,7 +37908,7 @@
             }
             switch (alt114) {
                 case 1 :
-                    // InternalOCLstdlib.g:12587:2: rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1
+                    // InternalOCLstdlib.g:12589:2: rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1();
@@ -37946,14 +37946,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_0__0"
-    // InternalOCLstdlib.g:12601:1: rule__TypedTypeRefCS__Group_0__0 : rule__TypedTypeRefCS__Group_0__0__Impl rule__TypedTypeRefCS__Group_0__1 ;
+    // InternalOCLstdlib.g:12603:1: rule__TypedTypeRefCS__Group_0__0 : rule__TypedTypeRefCS__Group_0__0__Impl rule__TypedTypeRefCS__Group_0__1 ;
     public final void rule__TypedTypeRefCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12605:1: ( rule__TypedTypeRefCS__Group_0__0__Impl rule__TypedTypeRefCS__Group_0__1 )
-            // InternalOCLstdlib.g:12606:2: rule__TypedTypeRefCS__Group_0__0__Impl rule__TypedTypeRefCS__Group_0__1
+            // InternalOCLstdlib.g:12607:1: ( rule__TypedTypeRefCS__Group_0__0__Impl rule__TypedTypeRefCS__Group_0__1 )
+            // InternalOCLstdlib.g:12608:2: rule__TypedTypeRefCS__Group_0__0__Impl rule__TypedTypeRefCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__TypedTypeRefCS__Group_0__0__Impl();
@@ -37984,23 +37984,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_0__0__Impl"
-    // InternalOCLstdlib.g:12613:1: rule__TypedTypeRefCS__Group_0__0__Impl : ( ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 ) ) ;
+    // InternalOCLstdlib.g:12615:1: rule__TypedTypeRefCS__Group_0__0__Impl : ( ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 ) ) ;
     public final void rule__TypedTypeRefCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12617:1: ( ( ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 ) ) )
-            // InternalOCLstdlib.g:12618:1: ( ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 ) )
+            // InternalOCLstdlib.g:12619:1: ( ( ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 ) ) )
+            // InternalOCLstdlib.g:12620:1: ( ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 ) )
             {
-            // InternalOCLstdlib.g:12618:1: ( ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 ) )
-            // InternalOCLstdlib.g:12619:1: ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 )
+            // InternalOCLstdlib.g:12620:1: ( ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 ) )
+            // InternalOCLstdlib.g:12621:1: ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofAssignment_0_0());
             }
-            // InternalOCLstdlib.g:12620:1: ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 )
-            // InternalOCLstdlib.g:12620:2: rule__TypedTypeRefCS__IsTypeofAssignment_0_0
+            // InternalOCLstdlib.g:12622:1: ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 )
+            // InternalOCLstdlib.g:12622:2: rule__TypedTypeRefCS__IsTypeofAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__IsTypeofAssignment_0_0();
@@ -38035,14 +38035,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_0__1"
-    // InternalOCLstdlib.g:12630:1: rule__TypedTypeRefCS__Group_0__1 : rule__TypedTypeRefCS__Group_0__1__Impl rule__TypedTypeRefCS__Group_0__2 ;
+    // InternalOCLstdlib.g:12632:1: rule__TypedTypeRefCS__Group_0__1 : rule__TypedTypeRefCS__Group_0__1__Impl rule__TypedTypeRefCS__Group_0__2 ;
     public final void rule__TypedTypeRefCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12634:1: ( rule__TypedTypeRefCS__Group_0__1__Impl rule__TypedTypeRefCS__Group_0__2 )
-            // InternalOCLstdlib.g:12635:2: rule__TypedTypeRefCS__Group_0__1__Impl rule__TypedTypeRefCS__Group_0__2
+            // InternalOCLstdlib.g:12636:1: ( rule__TypedTypeRefCS__Group_0__1__Impl rule__TypedTypeRefCS__Group_0__2 )
+            // InternalOCLstdlib.g:12637:2: rule__TypedTypeRefCS__Group_0__1__Impl rule__TypedTypeRefCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_61);
             rule__TypedTypeRefCS__Group_0__1__Impl();
@@ -38073,17 +38073,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_0__1__Impl"
-    // InternalOCLstdlib.g:12642:1: rule__TypedTypeRefCS__Group_0__1__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:12644:1: rule__TypedTypeRefCS__Group_0__1__Impl : ( '(' ) ;
     public final void rule__TypedTypeRefCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12646:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:12647:1: ( '(' )
+            // InternalOCLstdlib.g:12648:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:12649:1: ( '(' )
             {
-            // InternalOCLstdlib.g:12647:1: ( '(' )
-            // InternalOCLstdlib.g:12648:1: '('
+            // InternalOCLstdlib.g:12649:1: ( '(' )
+            // InternalOCLstdlib.g:12650:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_0_1());
@@ -38114,14 +38114,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_0__2"
-    // InternalOCLstdlib.g:12661:1: rule__TypedTypeRefCS__Group_0__2 : rule__TypedTypeRefCS__Group_0__2__Impl rule__TypedTypeRefCS__Group_0__3 ;
+    // InternalOCLstdlib.g:12663:1: rule__TypedTypeRefCS__Group_0__2 : rule__TypedTypeRefCS__Group_0__2__Impl rule__TypedTypeRefCS__Group_0__3 ;
     public final void rule__TypedTypeRefCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12665:1: ( rule__TypedTypeRefCS__Group_0__2__Impl rule__TypedTypeRefCS__Group_0__3 )
-            // InternalOCLstdlib.g:12666:2: rule__TypedTypeRefCS__Group_0__2__Impl rule__TypedTypeRefCS__Group_0__3
+            // InternalOCLstdlib.g:12667:1: ( rule__TypedTypeRefCS__Group_0__2__Impl rule__TypedTypeRefCS__Group_0__3 )
+            // InternalOCLstdlib.g:12668:2: rule__TypedTypeRefCS__Group_0__2__Impl rule__TypedTypeRefCS__Group_0__3
             {
             pushFollow(FollowSets000.FOLLOW_34);
             rule__TypedTypeRefCS__Group_0__2__Impl();
@@ -38152,23 +38152,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_0__2__Impl"
-    // InternalOCLstdlib.g:12673:1: rule__TypedTypeRefCS__Group_0__2__Impl : ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 ) ) ;
+    // InternalOCLstdlib.g:12675:1: rule__TypedTypeRefCS__Group_0__2__Impl : ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 ) ) ;
     public final void rule__TypedTypeRefCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12677:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 ) ) )
-            // InternalOCLstdlib.g:12678:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 ) )
+            // InternalOCLstdlib.g:12679:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 ) ) )
+            // InternalOCLstdlib.g:12680:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 ) )
             {
-            // InternalOCLstdlib.g:12678:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 ) )
-            // InternalOCLstdlib.g:12679:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 )
+            // InternalOCLstdlib.g:12680:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 ) )
+            // InternalOCLstdlib.g:12681:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0_2());
             }
-            // InternalOCLstdlib.g:12680:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 )
-            // InternalOCLstdlib.g:12680:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2
+            // InternalOCLstdlib.g:12682:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 )
+            // InternalOCLstdlib.g:12682:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2();
@@ -38203,14 +38203,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_0__3"
-    // InternalOCLstdlib.g:12690:1: rule__TypedTypeRefCS__Group_0__3 : rule__TypedTypeRefCS__Group_0__3__Impl ;
+    // InternalOCLstdlib.g:12692:1: rule__TypedTypeRefCS__Group_0__3 : rule__TypedTypeRefCS__Group_0__3__Impl ;
     public final void rule__TypedTypeRefCS__Group_0__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12694:1: ( rule__TypedTypeRefCS__Group_0__3__Impl )
-            // InternalOCLstdlib.g:12695:2: rule__TypedTypeRefCS__Group_0__3__Impl
+            // InternalOCLstdlib.g:12696:1: ( rule__TypedTypeRefCS__Group_0__3__Impl )
+            // InternalOCLstdlib.g:12697:2: rule__TypedTypeRefCS__Group_0__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group_0__3__Impl();
@@ -38236,17 +38236,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_0__3__Impl"
-    // InternalOCLstdlib.g:12701:1: rule__TypedTypeRefCS__Group_0__3__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:12703:1: rule__TypedTypeRefCS__Group_0__3__Impl : ( ')' ) ;
     public final void rule__TypedTypeRefCS__Group_0__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12705:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:12706:1: ( ')' )
+            // InternalOCLstdlib.g:12707:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:12708:1: ( ')' )
             {
-            // InternalOCLstdlib.g:12706:1: ( ')' )
-            // InternalOCLstdlib.g:12707:1: ')'
+            // InternalOCLstdlib.g:12708:1: ( ')' )
+            // InternalOCLstdlib.g:12709:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_0_3());
@@ -38277,14 +38277,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__0"
-    // InternalOCLstdlib.g:12728:1: rule__TypedTypeRefCS__Group_1__0 : rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 ;
+    // InternalOCLstdlib.g:12730:1: rule__TypedTypeRefCS__Group_1__0 : rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 ;
     public final void rule__TypedTypeRefCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12732:1: ( rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 )
-            // InternalOCLstdlib.g:12733:2: rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1
+            // InternalOCLstdlib.g:12734:1: ( rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 )
+            // InternalOCLstdlib.g:12735:2: rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__TypedTypeRefCS__Group_1__0__Impl();
@@ -38315,23 +38315,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:12740:1: rule__TypedTypeRefCS__Group_1__0__Impl : ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 ) ) ;
+    // InternalOCLstdlib.g:12742:1: rule__TypedTypeRefCS__Group_1__0__Impl : ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 ) ) ;
     public final void rule__TypedTypeRefCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12744:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 ) ) )
-            // InternalOCLstdlib.g:12745:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 ) )
+            // InternalOCLstdlib.g:12746:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 ) ) )
+            // InternalOCLstdlib.g:12747:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 ) )
             {
-            // InternalOCLstdlib.g:12745:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 ) )
-            // InternalOCLstdlib.g:12746:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 )
+            // InternalOCLstdlib.g:12747:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 ) )
+            // InternalOCLstdlib.g:12748:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_1_0());
             }
-            // InternalOCLstdlib.g:12747:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 )
-            // InternalOCLstdlib.g:12747:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0
+            // InternalOCLstdlib.g:12749:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 )
+            // InternalOCLstdlib.g:12749:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0();
@@ -38366,14 +38366,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__1"
-    // InternalOCLstdlib.g:12757:1: rule__TypedTypeRefCS__Group_1__1 : rule__TypedTypeRefCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:12759:1: rule__TypedTypeRefCS__Group_1__1 : rule__TypedTypeRefCS__Group_1__1__Impl ;
     public final void rule__TypedTypeRefCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12761:1: ( rule__TypedTypeRefCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:12762:2: rule__TypedTypeRefCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:12763:1: ( rule__TypedTypeRefCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:12764:2: rule__TypedTypeRefCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group_1__1__Impl();
@@ -38399,22 +38399,22 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:12768:1: rule__TypedTypeRefCS__Group_1__1__Impl : ( ( rule__TypedTypeRefCS__Group_1_1__0 )? ) ;
+    // InternalOCLstdlib.g:12770:1: rule__TypedTypeRefCS__Group_1__1__Impl : ( ( rule__TypedTypeRefCS__Group_1_1__0 )? ) ;
     public final void rule__TypedTypeRefCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12772:1: ( ( ( rule__TypedTypeRefCS__Group_1_1__0 )? ) )
-            // InternalOCLstdlib.g:12773:1: ( ( rule__TypedTypeRefCS__Group_1_1__0 )? )
+            // InternalOCLstdlib.g:12774:1: ( ( ( rule__TypedTypeRefCS__Group_1_1__0 )? ) )
+            // InternalOCLstdlib.g:12775:1: ( ( rule__TypedTypeRefCS__Group_1_1__0 )? )
             {
-            // InternalOCLstdlib.g:12773:1: ( ( rule__TypedTypeRefCS__Group_1_1__0 )? )
-            // InternalOCLstdlib.g:12774:1: ( rule__TypedTypeRefCS__Group_1_1__0 )?
+            // InternalOCLstdlib.g:12775:1: ( ( rule__TypedTypeRefCS__Group_1_1__0 )? )
+            // InternalOCLstdlib.g:12776:1: ( rule__TypedTypeRefCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_1());
             }
-            // InternalOCLstdlib.g:12775:1: ( rule__TypedTypeRefCS__Group_1_1__0 )?
+            // InternalOCLstdlib.g:12777:1: ( rule__TypedTypeRefCS__Group_1_1__0 )?
             int alt115=2;
             int LA115_0 = input.LA(1);
 
@@ -38423,7 +38423,7 @@
             }
             switch (alt115) {
                 case 1 :
-                    // InternalOCLstdlib.g:12775:2: rule__TypedTypeRefCS__Group_1_1__0
+                    // InternalOCLstdlib.g:12777:2: rule__TypedTypeRefCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypedTypeRefCS__Group_1_1__0();
@@ -38461,14 +38461,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_1__0"
-    // InternalOCLstdlib.g:12789:1: rule__TypedTypeRefCS__Group_1_1__0 : rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1 ;
+    // InternalOCLstdlib.g:12791:1: rule__TypedTypeRefCS__Group_1_1__0 : rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1 ;
     public final void rule__TypedTypeRefCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12793:1: ( rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1 )
-            // InternalOCLstdlib.g:12794:2: rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1
+            // InternalOCLstdlib.g:12795:1: ( rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1 )
+            // InternalOCLstdlib.g:12796:2: rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_62);
             rule__TypedTypeRefCS__Group_1_1__0__Impl();
@@ -38499,17 +38499,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_1__0__Impl"
-    // InternalOCLstdlib.g:12801:1: rule__TypedTypeRefCS__Group_1_1__0__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:12803:1: rule__TypedTypeRefCS__Group_1_1__0__Impl : ( '(' ) ;
     public final void rule__TypedTypeRefCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12805:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:12806:1: ( '(' )
+            // InternalOCLstdlib.g:12807:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:12808:1: ( '(' )
             {
-            // InternalOCLstdlib.g:12806:1: ( '(' )
-            // InternalOCLstdlib.g:12807:1: '('
+            // InternalOCLstdlib.g:12808:1: ( '(' )
+            // InternalOCLstdlib.g:12809:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_1_0());
@@ -38540,14 +38540,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_1__1"
-    // InternalOCLstdlib.g:12820:1: rule__TypedTypeRefCS__Group_1_1__1 : rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2 ;
+    // InternalOCLstdlib.g:12822:1: rule__TypedTypeRefCS__Group_1_1__1 : rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2 ;
     public final void rule__TypedTypeRefCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12824:1: ( rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2 )
-            // InternalOCLstdlib.g:12825:2: rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2
+            // InternalOCLstdlib.g:12826:1: ( rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2 )
+            // InternalOCLstdlib.g:12827:2: rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_34);
             rule__TypedTypeRefCS__Group_1_1__1__Impl();
@@ -38578,23 +38578,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_1__1__Impl"
-    // InternalOCLstdlib.g:12832:1: rule__TypedTypeRefCS__Group_1_1__1__Impl : ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) ) ;
+    // InternalOCLstdlib.g:12834:1: rule__TypedTypeRefCS__Group_1_1__1__Impl : ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) ) ;
     public final void rule__TypedTypeRefCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12836:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) ) )
-            // InternalOCLstdlib.g:12837:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) )
+            // InternalOCLstdlib.g:12838:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) ) )
+            // InternalOCLstdlib.g:12839:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) )
             {
-            // InternalOCLstdlib.g:12837:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) )
-            // InternalOCLstdlib.g:12838:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 )
+            // InternalOCLstdlib.g:12839:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) )
+            // InternalOCLstdlib.g:12840:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1_1());
             }
-            // InternalOCLstdlib.g:12839:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 )
-            // InternalOCLstdlib.g:12839:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1
+            // InternalOCLstdlib.g:12841:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 )
+            // InternalOCLstdlib.g:12841:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1();
@@ -38629,14 +38629,14 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_1__2"
-    // InternalOCLstdlib.g:12849:1: rule__TypedTypeRefCS__Group_1_1__2 : rule__TypedTypeRefCS__Group_1_1__2__Impl ;
+    // InternalOCLstdlib.g:12851:1: rule__TypedTypeRefCS__Group_1_1__2 : rule__TypedTypeRefCS__Group_1_1__2__Impl ;
     public final void rule__TypedTypeRefCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12853:1: ( rule__TypedTypeRefCS__Group_1_1__2__Impl )
-            // InternalOCLstdlib.g:12854:2: rule__TypedTypeRefCS__Group_1_1__2__Impl
+            // InternalOCLstdlib.g:12855:1: ( rule__TypedTypeRefCS__Group_1_1__2__Impl )
+            // InternalOCLstdlib.g:12856:2: rule__TypedTypeRefCS__Group_1_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypedTypeRefCS__Group_1_1__2__Impl();
@@ -38662,17 +38662,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__Group_1_1__2__Impl"
-    // InternalOCLstdlib.g:12860:1: rule__TypedTypeRefCS__Group_1_1__2__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:12862:1: rule__TypedTypeRefCS__Group_1_1__2__Impl : ( ')' ) ;
     public final void rule__TypedTypeRefCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12864:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:12865:1: ( ')' )
+            // InternalOCLstdlib.g:12866:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:12867:1: ( ')' )
             {
-            // InternalOCLstdlib.g:12865:1: ( ')' )
-            // InternalOCLstdlib.g:12866:1: ')'
+            // InternalOCLstdlib.g:12867:1: ( ')' )
+            // InternalOCLstdlib.g:12868:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_1_2());
@@ -38703,14 +38703,14 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__0"
-    // InternalOCLstdlib.g:12885:1: rule__TuplePartCS__Group__0 : rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 ;
+    // InternalOCLstdlib.g:12887:1: rule__TuplePartCS__Group__0 : rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 ;
     public final void rule__TuplePartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12889:1: ( rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 )
-            // InternalOCLstdlib.g:12890:2: rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1
+            // InternalOCLstdlib.g:12891:1: ( rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 )
+            // InternalOCLstdlib.g:12892:2: rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__TuplePartCS__Group__0__Impl();
@@ -38741,23 +38741,23 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__0__Impl"
-    // InternalOCLstdlib.g:12897:1: rule__TuplePartCS__Group__0__Impl : ( ( rule__TuplePartCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:12899:1: rule__TuplePartCS__Group__0__Impl : ( ( rule__TuplePartCS__NameAssignment_0 ) ) ;
     public final void rule__TuplePartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12901:1: ( ( ( rule__TuplePartCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:12902:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:12903:1: ( ( ( rule__TuplePartCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:12904:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:12902:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:12903:1: ( rule__TuplePartCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:12904:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:12905:1: ( rule__TuplePartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:12904:1: ( rule__TuplePartCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:12904:2: rule__TuplePartCS__NameAssignment_0
+            // InternalOCLstdlib.g:12906:1: ( rule__TuplePartCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:12906:2: rule__TuplePartCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TuplePartCS__NameAssignment_0();
@@ -38792,14 +38792,14 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__1"
-    // InternalOCLstdlib.g:12914:1: rule__TuplePartCS__Group__1 : rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 ;
+    // InternalOCLstdlib.g:12916:1: rule__TuplePartCS__Group__1 : rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 ;
     public final void rule__TuplePartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12918:1: ( rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 )
-            // InternalOCLstdlib.g:12919:2: rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2
+            // InternalOCLstdlib.g:12920:1: ( rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 )
+            // InternalOCLstdlib.g:12921:2: rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__TuplePartCS__Group__1__Impl();
@@ -38830,17 +38830,17 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__1__Impl"
-    // InternalOCLstdlib.g:12926:1: rule__TuplePartCS__Group__1__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:12928:1: rule__TuplePartCS__Group__1__Impl : ( ':' ) ;
     public final void rule__TuplePartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12930:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:12931:1: ( ':' )
+            // InternalOCLstdlib.g:12932:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:12933:1: ( ':' )
             {
-            // InternalOCLstdlib.g:12931:1: ( ':' )
-            // InternalOCLstdlib.g:12932:1: ':'
+            // InternalOCLstdlib.g:12933:1: ( ':' )
+            // InternalOCLstdlib.g:12934:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
@@ -38871,14 +38871,14 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__2"
-    // InternalOCLstdlib.g:12945:1: rule__TuplePartCS__Group__2 : rule__TuplePartCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:12947:1: rule__TuplePartCS__Group__2 : rule__TuplePartCS__Group__2__Impl ;
     public final void rule__TuplePartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12949:1: ( rule__TuplePartCS__Group__2__Impl )
-            // InternalOCLstdlib.g:12950:2: rule__TuplePartCS__Group__2__Impl
+            // InternalOCLstdlib.g:12951:1: ( rule__TuplePartCS__Group__2__Impl )
+            // InternalOCLstdlib.g:12952:2: rule__TuplePartCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TuplePartCS__Group__2__Impl();
@@ -38904,23 +38904,23 @@
 
 
     // $ANTLR start "rule__TuplePartCS__Group__2__Impl"
-    // InternalOCLstdlib.g:12956:1: rule__TuplePartCS__Group__2__Impl : ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:12958:1: rule__TuplePartCS__Group__2__Impl : ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) ;
     public final void rule__TuplePartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12960:1: ( ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) )
-            // InternalOCLstdlib.g:12961:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
+            // InternalOCLstdlib.g:12962:1: ( ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) )
+            // InternalOCLstdlib.g:12963:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:12961:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
-            // InternalOCLstdlib.g:12962:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
+            // InternalOCLstdlib.g:12963:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
+            // InternalOCLstdlib.g:12964:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2());
             }
-            // InternalOCLstdlib.g:12963:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
-            // InternalOCLstdlib.g:12963:2: rule__TuplePartCS__OwnedTypeAssignment_2
+            // InternalOCLstdlib.g:12965:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
+            // InternalOCLstdlib.g:12965:2: rule__TuplePartCS__OwnedTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TuplePartCS__OwnedTypeAssignment_2();
@@ -38955,14 +38955,14 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group__0"
-    // InternalOCLstdlib.g:12979:1: rule__URIPathNameCS__Group__0 : rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 ;
+    // InternalOCLstdlib.g:12981:1: rule__URIPathNameCS__Group__0 : rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 ;
     public final void rule__URIPathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12983:1: ( rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 )
-            // InternalOCLstdlib.g:12984:2: rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1
+            // InternalOCLstdlib.g:12985:1: ( rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 )
+            // InternalOCLstdlib.g:12986:2: rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_8);
             rule__URIPathNameCS__Group__0__Impl();
@@ -38993,23 +38993,23 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group__0__Impl"
-    // InternalOCLstdlib.g:12991:1: rule__URIPathNameCS__Group__0__Impl : ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:12993:1: rule__URIPathNameCS__Group__0__Impl : ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) ;
     public final void rule__URIPathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:12995:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) )
-            // InternalOCLstdlib.g:12996:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalOCLstdlib.g:12997:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) )
+            // InternalOCLstdlib.g:12998:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:12996:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
-            // InternalOCLstdlib.g:12997:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalOCLstdlib.g:12998:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalOCLstdlib.g:12999:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
-            // InternalOCLstdlib.g:12998:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
-            // InternalOCLstdlib.g:12998:2: rule__URIPathNameCS__OwnedPathElementsAssignment_0
+            // InternalOCLstdlib.g:13000:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalOCLstdlib.g:13000:2: rule__URIPathNameCS__OwnedPathElementsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIPathNameCS__OwnedPathElementsAssignment_0();
@@ -39044,14 +39044,14 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group__1"
-    // InternalOCLstdlib.g:13008:1: rule__URIPathNameCS__Group__1 : rule__URIPathNameCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:13010:1: rule__URIPathNameCS__Group__1 : rule__URIPathNameCS__Group__1__Impl ;
     public final void rule__URIPathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13012:1: ( rule__URIPathNameCS__Group__1__Impl )
-            // InternalOCLstdlib.g:13013:2: rule__URIPathNameCS__Group__1__Impl
+            // InternalOCLstdlib.g:13014:1: ( rule__URIPathNameCS__Group__1__Impl )
+            // InternalOCLstdlib.g:13015:2: rule__URIPathNameCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIPathNameCS__Group__1__Impl();
@@ -39077,22 +39077,22 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group__1__Impl"
-    // InternalOCLstdlib.g:13019:1: rule__URIPathNameCS__Group__1__Impl : ( ( rule__URIPathNameCS__Group_1__0 )* ) ;
+    // InternalOCLstdlib.g:13021:1: rule__URIPathNameCS__Group__1__Impl : ( ( rule__URIPathNameCS__Group_1__0 )* ) ;
     public final void rule__URIPathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13023:1: ( ( ( rule__URIPathNameCS__Group_1__0 )* ) )
-            // InternalOCLstdlib.g:13024:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
+            // InternalOCLstdlib.g:13025:1: ( ( ( rule__URIPathNameCS__Group_1__0 )* ) )
+            // InternalOCLstdlib.g:13026:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
             {
-            // InternalOCLstdlib.g:13024:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
-            // InternalOCLstdlib.g:13025:1: ( rule__URIPathNameCS__Group_1__0 )*
+            // InternalOCLstdlib.g:13026:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
+            // InternalOCLstdlib.g:13027:1: ( rule__URIPathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:13026:1: ( rule__URIPathNameCS__Group_1__0 )*
+            // InternalOCLstdlib.g:13028:1: ( rule__URIPathNameCS__Group_1__0 )*
             loop116:
             do {
                 int alt116=2;
@@ -39105,7 +39105,7 @@
 
                 switch (alt116) {
             	case 1 :
-            	    // InternalOCLstdlib.g:13026:2: rule__URIPathNameCS__Group_1__0
+            	    // InternalOCLstdlib.g:13028:2: rule__URIPathNameCS__Group_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_9);
             	    rule__URIPathNameCS__Group_1__0();
@@ -39146,14 +39146,14 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group_1__0"
-    // InternalOCLstdlib.g:13040:1: rule__URIPathNameCS__Group_1__0 : rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 ;
+    // InternalOCLstdlib.g:13042:1: rule__URIPathNameCS__Group_1__0 : rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 ;
     public final void rule__URIPathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13044:1: ( rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 )
-            // InternalOCLstdlib.g:13045:2: rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1
+            // InternalOCLstdlib.g:13046:1: ( rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 )
+            // InternalOCLstdlib.g:13047:2: rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_63);
             rule__URIPathNameCS__Group_1__0__Impl();
@@ -39184,17 +39184,17 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:13052:1: rule__URIPathNameCS__Group_1__0__Impl : ( '::' ) ;
+    // InternalOCLstdlib.g:13054:1: rule__URIPathNameCS__Group_1__0__Impl : ( '::' ) ;
     public final void rule__URIPathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13056:1: ( ( '::' ) )
-            // InternalOCLstdlib.g:13057:1: ( '::' )
+            // InternalOCLstdlib.g:13058:1: ( ( '::' ) )
+            // InternalOCLstdlib.g:13059:1: ( '::' )
             {
-            // InternalOCLstdlib.g:13057:1: ( '::' )
-            // InternalOCLstdlib.g:13058:1: '::'
+            // InternalOCLstdlib.g:13059:1: ( '::' )
+            // InternalOCLstdlib.g:13060:1: '::'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
@@ -39225,14 +39225,14 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group_1__1"
-    // InternalOCLstdlib.g:13071:1: rule__URIPathNameCS__Group_1__1 : rule__URIPathNameCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:13073:1: rule__URIPathNameCS__Group_1__1 : rule__URIPathNameCS__Group_1__1__Impl ;
     public final void rule__URIPathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13075:1: ( rule__URIPathNameCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:13076:2: rule__URIPathNameCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:13077:1: ( rule__URIPathNameCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:13078:2: rule__URIPathNameCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIPathNameCS__Group_1__1__Impl();
@@ -39258,23 +39258,23 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:13082:1: rule__URIPathNameCS__Group_1__1__Impl : ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
+    // InternalOCLstdlib.g:13084:1: rule__URIPathNameCS__Group_1__1__Impl : ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
     public final void rule__URIPathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13086:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
-            // InternalOCLstdlib.g:13087:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalOCLstdlib.g:13088:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
+            // InternalOCLstdlib.g:13089:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
             {
-            // InternalOCLstdlib.g:13087:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
-            // InternalOCLstdlib.g:13088:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalOCLstdlib.g:13089:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalOCLstdlib.g:13090:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
-            // InternalOCLstdlib.g:13089:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
-            // InternalOCLstdlib.g:13089:2: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1
+            // InternalOCLstdlib.g:13091:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalOCLstdlib.g:13091:2: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIPathNameCS__OwnedPathElementsAssignment_1_1();
@@ -39309,14 +39309,14 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__0"
-    // InternalOCLstdlib.g:13103:1: rule__URIFirstPathElementCS__Group_1__0 : rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 ;
+    // InternalOCLstdlib.g:13105:1: rule__URIFirstPathElementCS__Group_1__0 : rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 ;
     public final void rule__URIFirstPathElementCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13107:1: ( rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 )
-            // InternalOCLstdlib.g:13108:2: rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1
+            // InternalOCLstdlib.g:13109:1: ( rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 )
+            // InternalOCLstdlib.g:13110:2: rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__URIFirstPathElementCS__Group_1__0__Impl();
@@ -39347,23 +39347,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:13115:1: rule__URIFirstPathElementCS__Group_1__0__Impl : ( () ) ;
+    // InternalOCLstdlib.g:13117:1: rule__URIFirstPathElementCS__Group_1__0__Impl : ( () ) ;
     public final void rule__URIFirstPathElementCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13119:1: ( ( () ) )
-            // InternalOCLstdlib.g:13120:1: ( () )
+            // InternalOCLstdlib.g:13121:1: ( ( () ) )
+            // InternalOCLstdlib.g:13122:1: ( () )
             {
-            // InternalOCLstdlib.g:13120:1: ( () )
-            // InternalOCLstdlib.g:13121:1: ()
+            // InternalOCLstdlib.g:13122:1: ( () )
+            // InternalOCLstdlib.g:13123:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0());
             }
-            // InternalOCLstdlib.g:13122:1: ()
-            // InternalOCLstdlib.g:13124:1:
+            // InternalOCLstdlib.g:13124:1: ()
+            // InternalOCLstdlib.g:13126:1:
             {
             }
 
@@ -39388,14 +39388,14 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__1"
-    // InternalOCLstdlib.g:13134:1: rule__URIFirstPathElementCS__Group_1__1 : rule__URIFirstPathElementCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:13136:1: rule__URIFirstPathElementCS__Group_1__1 : rule__URIFirstPathElementCS__Group_1__1__Impl ;
     public final void rule__URIFirstPathElementCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13138:1: ( rule__URIFirstPathElementCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:13139:2: rule__URIFirstPathElementCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:13140:1: ( rule__URIFirstPathElementCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:13141:2: rule__URIFirstPathElementCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIFirstPathElementCS__Group_1__1__Impl();
@@ -39421,23 +39421,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:13145:1: rule__URIFirstPathElementCS__Group_1__1__Impl : ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) ;
+    // InternalOCLstdlib.g:13147:1: rule__URIFirstPathElementCS__Group_1__1__Impl : ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) ;
     public final void rule__URIFirstPathElementCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13149:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) )
-            // InternalOCLstdlib.g:13150:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
+            // InternalOCLstdlib.g:13151:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) )
+            // InternalOCLstdlib.g:13152:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
             {
-            // InternalOCLstdlib.g:13150:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
-            // InternalOCLstdlib.g:13151:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
+            // InternalOCLstdlib.g:13152:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
+            // InternalOCLstdlib.g:13153:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1());
             }
-            // InternalOCLstdlib.g:13152:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
-            // InternalOCLstdlib.g:13152:2: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1
+            // InternalOCLstdlib.g:13154:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
+            // InternalOCLstdlib.g:13154:2: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__URIFirstPathElementCS__ReferredElementAssignment_1_1();
@@ -39472,14 +39472,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__0"
-    // InternalOCLstdlib.g:13166:1: rule__CollectionTypeCS__Group__0 : rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 ;
+    // InternalOCLstdlib.g:13168:1: rule__CollectionTypeCS__Group__0 : rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 ;
     public final void rule__CollectionTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13170:1: ( rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 )
-            // InternalOCLstdlib.g:13171:2: rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1
+            // InternalOCLstdlib.g:13172:1: ( rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 )
+            // InternalOCLstdlib.g:13173:2: rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__CollectionTypeCS__Group__0__Impl();
@@ -39510,23 +39510,23 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__0__Impl"
-    // InternalOCLstdlib.g:13178:1: rule__CollectionTypeCS__Group__0__Impl : ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:13180:1: rule__CollectionTypeCS__Group__0__Impl : ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) ;
     public final void rule__CollectionTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13182:1: ( ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:13183:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:13184:1: ( ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:13185:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:13183:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:13184:1: ( rule__CollectionTypeCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:13185:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:13186:1: ( rule__CollectionTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:13185:1: ( rule__CollectionTypeCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:13185:2: rule__CollectionTypeCS__NameAssignment_0
+            // InternalOCLstdlib.g:13187:1: ( rule__CollectionTypeCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:13187:2: rule__CollectionTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__NameAssignment_0();
@@ -39561,14 +39561,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__1"
-    // InternalOCLstdlib.g:13195:1: rule__CollectionTypeCS__Group__1 : rule__CollectionTypeCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:13197:1: rule__CollectionTypeCS__Group__1 : rule__CollectionTypeCS__Group__1__Impl ;
     public final void rule__CollectionTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13199:1: ( rule__CollectionTypeCS__Group__1__Impl )
-            // InternalOCLstdlib.g:13200:2: rule__CollectionTypeCS__Group__1__Impl
+            // InternalOCLstdlib.g:13201:1: ( rule__CollectionTypeCS__Group__1__Impl )
+            // InternalOCLstdlib.g:13202:2: rule__CollectionTypeCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__Group__1__Impl();
@@ -39594,22 +39594,22 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group__1__Impl"
-    // InternalOCLstdlib.g:13206:1: rule__CollectionTypeCS__Group__1__Impl : ( ( rule__CollectionTypeCS__Group_1__0 )? ) ;
+    // InternalOCLstdlib.g:13208:1: rule__CollectionTypeCS__Group__1__Impl : ( ( rule__CollectionTypeCS__Group_1__0 )? ) ;
     public final void rule__CollectionTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13210:1: ( ( ( rule__CollectionTypeCS__Group_1__0 )? ) )
-            // InternalOCLstdlib.g:13211:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:13212:1: ( ( ( rule__CollectionTypeCS__Group_1__0 )? ) )
+            // InternalOCLstdlib.g:13213:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
             {
-            // InternalOCLstdlib.g:13211:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
-            // InternalOCLstdlib.g:13212:1: ( rule__CollectionTypeCS__Group_1__0 )?
+            // InternalOCLstdlib.g:13213:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:13214:1: ( rule__CollectionTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:13213:1: ( rule__CollectionTypeCS__Group_1__0 )?
+            // InternalOCLstdlib.g:13215:1: ( rule__CollectionTypeCS__Group_1__0 )?
             int alt117=2;
             int LA117_0 = input.LA(1);
 
@@ -39618,7 +39618,7 @@
             }
             switch (alt117) {
                 case 1 :
-                    // InternalOCLstdlib.g:13213:2: rule__CollectionTypeCS__Group_1__0
+                    // InternalOCLstdlib.g:13215:2: rule__CollectionTypeCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionTypeCS__Group_1__0();
@@ -39656,14 +39656,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__0"
-    // InternalOCLstdlib.g:13227:1: rule__CollectionTypeCS__Group_1__0 : rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 ;
+    // InternalOCLstdlib.g:13229:1: rule__CollectionTypeCS__Group_1__0 : rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 ;
     public final void rule__CollectionTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13231:1: ( rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 )
-            // InternalOCLstdlib.g:13232:2: rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1
+            // InternalOCLstdlib.g:13233:1: ( rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 )
+            // InternalOCLstdlib.g:13234:2: rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__CollectionTypeCS__Group_1__0__Impl();
@@ -39694,17 +39694,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:13239:1: rule__CollectionTypeCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:13241:1: rule__CollectionTypeCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__CollectionTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13243:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:13244:1: ( '(' )
+            // InternalOCLstdlib.g:13245:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:13246:1: ( '(' )
             {
-            // InternalOCLstdlib.g:13244:1: ( '(' )
-            // InternalOCLstdlib.g:13245:1: '('
+            // InternalOCLstdlib.g:13246:1: ( '(' )
+            // InternalOCLstdlib.g:13247:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -39735,14 +39735,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__1"
-    // InternalOCLstdlib.g:13258:1: rule__CollectionTypeCS__Group_1__1 : rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 ;
+    // InternalOCLstdlib.g:13260:1: rule__CollectionTypeCS__Group_1__1 : rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 ;
     public final void rule__CollectionTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13262:1: ( rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 )
-            // InternalOCLstdlib.g:13263:2: rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2
+            // InternalOCLstdlib.g:13264:1: ( rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 )
+            // InternalOCLstdlib.g:13265:2: rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_64);
             rule__CollectionTypeCS__Group_1__1__Impl();
@@ -39773,23 +39773,23 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:13270:1: rule__CollectionTypeCS__Group_1__1__Impl : ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalOCLstdlib.g:13272:1: rule__CollectionTypeCS__Group_1__1__Impl : ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__CollectionTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13274:1: ( ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalOCLstdlib.g:13275:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLstdlib.g:13276:1: ( ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalOCLstdlib.g:13277:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalOCLstdlib.g:13275:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
-            // InternalOCLstdlib.g:13276:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLstdlib.g:13277:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLstdlib.g:13278:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalOCLstdlib.g:13277:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
-            // InternalOCLstdlib.g:13277:2: rule__CollectionTypeCS__OwnedTypeAssignment_1_1
+            // InternalOCLstdlib.g:13279:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLstdlib.g:13279:2: rule__CollectionTypeCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__OwnedTypeAssignment_1_1();
@@ -39824,14 +39824,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__2"
-    // InternalOCLstdlib.g:13287:1: rule__CollectionTypeCS__Group_1__2 : rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 ;
+    // InternalOCLstdlib.g:13289:1: rule__CollectionTypeCS__Group_1__2 : rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 ;
     public final void rule__CollectionTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13291:1: ( rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 )
-            // InternalOCLstdlib.g:13292:2: rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3
+            // InternalOCLstdlib.g:13293:1: ( rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3 )
+            // InternalOCLstdlib.g:13294:2: rule__CollectionTypeCS__Group_1__2__Impl rule__CollectionTypeCS__Group_1__3
             {
             pushFollow(FollowSets000.FOLLOW_64);
             rule__CollectionTypeCS__Group_1__2__Impl();
@@ -39862,22 +39862,22 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__2__Impl"
-    // InternalOCLstdlib.g:13299:1: rule__CollectionTypeCS__Group_1__2__Impl : ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) ;
+    // InternalOCLstdlib.g:13301:1: rule__CollectionTypeCS__Group_1__2__Impl : ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) ;
     public final void rule__CollectionTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13303:1: ( ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) )
-            // InternalOCLstdlib.g:13304:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
+            // InternalOCLstdlib.g:13305:1: ( ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? ) )
+            // InternalOCLstdlib.g:13306:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
             {
-            // InternalOCLstdlib.g:13304:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
-            // InternalOCLstdlib.g:13305:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
+            // InternalOCLstdlib.g:13306:1: ( ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )? )
+            // InternalOCLstdlib.g:13307:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedCollectionMultiplicityAssignment_1_2());
             }
-            // InternalOCLstdlib.g:13306:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
+            // InternalOCLstdlib.g:13308:1: ( rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 )?
             int alt118=2;
             int LA118_0 = input.LA(1);
 
@@ -39886,7 +39886,7 @@
             }
             switch (alt118) {
                 case 1 :
-                    // InternalOCLstdlib.g:13306:2: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2
+                    // InternalOCLstdlib.g:13308:2: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2();
@@ -39924,14 +39924,14 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__3"
-    // InternalOCLstdlib.g:13316:1: rule__CollectionTypeCS__Group_1__3 : rule__CollectionTypeCS__Group_1__3__Impl ;
+    // InternalOCLstdlib.g:13318:1: rule__CollectionTypeCS__Group_1__3 : rule__CollectionTypeCS__Group_1__3__Impl ;
     public final void rule__CollectionTypeCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13320:1: ( rule__CollectionTypeCS__Group_1__3__Impl )
-            // InternalOCLstdlib.g:13321:2: rule__CollectionTypeCS__Group_1__3__Impl
+            // InternalOCLstdlib.g:13322:1: ( rule__CollectionTypeCS__Group_1__3__Impl )
+            // InternalOCLstdlib.g:13323:2: rule__CollectionTypeCS__Group_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionTypeCS__Group_1__3__Impl();
@@ -39957,17 +39957,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__Group_1__3__Impl"
-    // InternalOCLstdlib.g:13327:1: rule__CollectionTypeCS__Group_1__3__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:13329:1: rule__CollectionTypeCS__Group_1__3__Impl : ( ')' ) ;
     public final void rule__CollectionTypeCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13331:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:13332:1: ( ')' )
+            // InternalOCLstdlib.g:13333:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:13334:1: ( ')' )
             {
-            // InternalOCLstdlib.g:13332:1: ( ')' )
-            // InternalOCLstdlib.g:13333:1: ')'
+            // InternalOCLstdlib.g:13334:1: ( ')' )
+            // InternalOCLstdlib.g:13335:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_3());
@@ -39998,14 +39998,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__0"
-    // InternalOCLstdlib.g:13354:1: rule__MapTypeCS__Group__0 : rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 ;
+    // InternalOCLstdlib.g:13356:1: rule__MapTypeCS__Group__0 : rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 ;
     public final void rule__MapTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13358:1: ( rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 )
-            // InternalOCLstdlib.g:13359:2: rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1
+            // InternalOCLstdlib.g:13360:1: ( rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 )
+            // InternalOCLstdlib.g:13361:2: rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__MapTypeCS__Group__0__Impl();
@@ -40036,23 +40036,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__0__Impl"
-    // InternalOCLstdlib.g:13366:1: rule__MapTypeCS__Group__0__Impl : ( ( rule__MapTypeCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:13368:1: rule__MapTypeCS__Group__0__Impl : ( ( rule__MapTypeCS__NameAssignment_0 ) ) ;
     public final void rule__MapTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13370:1: ( ( ( rule__MapTypeCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:13371:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:13372:1: ( ( ( rule__MapTypeCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:13373:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:13371:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:13372:1: ( rule__MapTypeCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:13373:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:13374:1: ( rule__MapTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:13373:1: ( rule__MapTypeCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:13373:2: rule__MapTypeCS__NameAssignment_0
+            // InternalOCLstdlib.g:13375:1: ( rule__MapTypeCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:13375:2: rule__MapTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__NameAssignment_0();
@@ -40087,14 +40087,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__1"
-    // InternalOCLstdlib.g:13383:1: rule__MapTypeCS__Group__1 : rule__MapTypeCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:13385:1: rule__MapTypeCS__Group__1 : rule__MapTypeCS__Group__1__Impl ;
     public final void rule__MapTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13387:1: ( rule__MapTypeCS__Group__1__Impl )
-            // InternalOCLstdlib.g:13388:2: rule__MapTypeCS__Group__1__Impl
+            // InternalOCLstdlib.g:13389:1: ( rule__MapTypeCS__Group__1__Impl )
+            // InternalOCLstdlib.g:13390:2: rule__MapTypeCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__Group__1__Impl();
@@ -40120,22 +40120,22 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group__1__Impl"
-    // InternalOCLstdlib.g:13394:1: rule__MapTypeCS__Group__1__Impl : ( ( rule__MapTypeCS__Group_1__0 )? ) ;
+    // InternalOCLstdlib.g:13396:1: rule__MapTypeCS__Group__1__Impl : ( ( rule__MapTypeCS__Group_1__0 )? ) ;
     public final void rule__MapTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13398:1: ( ( ( rule__MapTypeCS__Group_1__0 )? ) )
-            // InternalOCLstdlib.g:13399:1: ( ( rule__MapTypeCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:13400:1: ( ( ( rule__MapTypeCS__Group_1__0 )? ) )
+            // InternalOCLstdlib.g:13401:1: ( ( rule__MapTypeCS__Group_1__0 )? )
             {
-            // InternalOCLstdlib.g:13399:1: ( ( rule__MapTypeCS__Group_1__0 )? )
-            // InternalOCLstdlib.g:13400:1: ( rule__MapTypeCS__Group_1__0 )?
+            // InternalOCLstdlib.g:13401:1: ( ( rule__MapTypeCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:13402:1: ( rule__MapTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:13401:1: ( rule__MapTypeCS__Group_1__0 )?
+            // InternalOCLstdlib.g:13403:1: ( rule__MapTypeCS__Group_1__0 )?
             int alt119=2;
             int LA119_0 = input.LA(1);
 
@@ -40144,7 +40144,7 @@
             }
             switch (alt119) {
                 case 1 :
-                    // InternalOCLstdlib.g:13401:2: rule__MapTypeCS__Group_1__0
+                    // InternalOCLstdlib.g:13403:2: rule__MapTypeCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MapTypeCS__Group_1__0();
@@ -40182,14 +40182,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__0"
-    // InternalOCLstdlib.g:13415:1: rule__MapTypeCS__Group_1__0 : rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 ;
+    // InternalOCLstdlib.g:13417:1: rule__MapTypeCS__Group_1__0 : rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 ;
     public final void rule__MapTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13419:1: ( rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 )
-            // InternalOCLstdlib.g:13420:2: rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1
+            // InternalOCLstdlib.g:13421:1: ( rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 )
+            // InternalOCLstdlib.g:13422:2: rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__MapTypeCS__Group_1__0__Impl();
@@ -40220,17 +40220,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:13427:1: rule__MapTypeCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:13429:1: rule__MapTypeCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__MapTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13431:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:13432:1: ( '(' )
+            // InternalOCLstdlib.g:13433:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:13434:1: ( '(' )
             {
-            // InternalOCLstdlib.g:13432:1: ( '(' )
-            // InternalOCLstdlib.g:13433:1: '('
+            // InternalOCLstdlib.g:13434:1: ( '(' )
+            // InternalOCLstdlib.g:13435:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -40261,14 +40261,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__1"
-    // InternalOCLstdlib.g:13446:1: rule__MapTypeCS__Group_1__1 : rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 ;
+    // InternalOCLstdlib.g:13448:1: rule__MapTypeCS__Group_1__1 : rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 ;
     public final void rule__MapTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13450:1: ( rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 )
-            // InternalOCLstdlib.g:13451:2: rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2
+            // InternalOCLstdlib.g:13452:1: ( rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 )
+            // InternalOCLstdlib.g:13453:2: rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__MapTypeCS__Group_1__1__Impl();
@@ -40299,23 +40299,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:13458:1: rule__MapTypeCS__Group_1__1__Impl : ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) ;
+    // InternalOCLstdlib.g:13460:1: rule__MapTypeCS__Group_1__1__Impl : ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) ;
     public final void rule__MapTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13462:1: ( ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) )
-            // InternalOCLstdlib.g:13463:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
+            // InternalOCLstdlib.g:13464:1: ( ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) )
+            // InternalOCLstdlib.g:13465:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
             {
-            // InternalOCLstdlib.g:13463:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
-            // InternalOCLstdlib.g:13464:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
+            // InternalOCLstdlib.g:13465:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
+            // InternalOCLstdlib.g:13466:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1());
             }
-            // InternalOCLstdlib.g:13465:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
-            // InternalOCLstdlib.g:13465:2: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1
+            // InternalOCLstdlib.g:13467:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
+            // InternalOCLstdlib.g:13467:2: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__OwnedKeyTypeAssignment_1_1();
@@ -40350,14 +40350,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__2"
-    // InternalOCLstdlib.g:13475:1: rule__MapTypeCS__Group_1__2 : rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 ;
+    // InternalOCLstdlib.g:13477:1: rule__MapTypeCS__Group_1__2 : rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 ;
     public final void rule__MapTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13479:1: ( rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 )
-            // InternalOCLstdlib.g:13480:2: rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3
+            // InternalOCLstdlib.g:13481:1: ( rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 )
+            // InternalOCLstdlib.g:13482:2: rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__MapTypeCS__Group_1__2__Impl();
@@ -40388,17 +40388,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__2__Impl"
-    // InternalOCLstdlib.g:13487:1: rule__MapTypeCS__Group_1__2__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:13489:1: rule__MapTypeCS__Group_1__2__Impl : ( ',' ) ;
     public final void rule__MapTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13491:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:13492:1: ( ',' )
+            // InternalOCLstdlib.g:13493:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:13494:1: ( ',' )
             {
-            // InternalOCLstdlib.g:13492:1: ( ',' )
-            // InternalOCLstdlib.g:13493:1: ','
+            // InternalOCLstdlib.g:13494:1: ( ',' )
+            // InternalOCLstdlib.g:13495:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
@@ -40429,14 +40429,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__3"
-    // InternalOCLstdlib.g:13506:1: rule__MapTypeCS__Group_1__3 : rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 ;
+    // InternalOCLstdlib.g:13508:1: rule__MapTypeCS__Group_1__3 : rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 ;
     public final void rule__MapTypeCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13510:1: ( rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 )
-            // InternalOCLstdlib.g:13511:2: rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4
+            // InternalOCLstdlib.g:13512:1: ( rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 )
+            // InternalOCLstdlib.g:13513:2: rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4
             {
             pushFollow(FollowSets000.FOLLOW_34);
             rule__MapTypeCS__Group_1__3__Impl();
@@ -40467,23 +40467,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__3__Impl"
-    // InternalOCLstdlib.g:13518:1: rule__MapTypeCS__Group_1__3__Impl : ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) ;
+    // InternalOCLstdlib.g:13520:1: rule__MapTypeCS__Group_1__3__Impl : ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) ;
     public final void rule__MapTypeCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13522:1: ( ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) )
-            // InternalOCLstdlib.g:13523:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
+            // InternalOCLstdlib.g:13524:1: ( ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) )
+            // InternalOCLstdlib.g:13525:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
             {
-            // InternalOCLstdlib.g:13523:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
-            // InternalOCLstdlib.g:13524:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
+            // InternalOCLstdlib.g:13525:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
+            // InternalOCLstdlib.g:13526:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3());
             }
-            // InternalOCLstdlib.g:13525:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
-            // InternalOCLstdlib.g:13525:2: rule__MapTypeCS__OwnedValueTypeAssignment_1_3
+            // InternalOCLstdlib.g:13527:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
+            // InternalOCLstdlib.g:13527:2: rule__MapTypeCS__OwnedValueTypeAssignment_1_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__OwnedValueTypeAssignment_1_3();
@@ -40518,14 +40518,14 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__4"
-    // InternalOCLstdlib.g:13535:1: rule__MapTypeCS__Group_1__4 : rule__MapTypeCS__Group_1__4__Impl ;
+    // InternalOCLstdlib.g:13537:1: rule__MapTypeCS__Group_1__4 : rule__MapTypeCS__Group_1__4__Impl ;
     public final void rule__MapTypeCS__Group_1__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13539:1: ( rule__MapTypeCS__Group_1__4__Impl )
-            // InternalOCLstdlib.g:13540:2: rule__MapTypeCS__Group_1__4__Impl
+            // InternalOCLstdlib.g:13541:1: ( rule__MapTypeCS__Group_1__4__Impl )
+            // InternalOCLstdlib.g:13542:2: rule__MapTypeCS__Group_1__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapTypeCS__Group_1__4__Impl();
@@ -40551,17 +40551,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__Group_1__4__Impl"
-    // InternalOCLstdlib.g:13546:1: rule__MapTypeCS__Group_1__4__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:13548:1: rule__MapTypeCS__Group_1__4__Impl : ( ')' ) ;
     public final void rule__MapTypeCS__Group_1__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13550:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:13551:1: ( ')' )
+            // InternalOCLstdlib.g:13552:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:13553:1: ( ')' )
             {
-            // InternalOCLstdlib.g:13551:1: ( ')' )
-            // InternalOCLstdlib.g:13552:1: ')'
+            // InternalOCLstdlib.g:13553:1: ( ')' )
+            // InternalOCLstdlib.g:13554:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
@@ -40592,14 +40592,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__0"
-    // InternalOCLstdlib.g:13575:1: rule__TupleTypeCS__Group__0 : rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 ;
+    // InternalOCLstdlib.g:13577:1: rule__TupleTypeCS__Group__0 : rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 ;
     public final void rule__TupleTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13579:1: ( rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 )
-            // InternalOCLstdlib.g:13580:2: rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1
+            // InternalOCLstdlib.g:13581:1: ( rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 )
+            // InternalOCLstdlib.g:13582:2: rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__TupleTypeCS__Group__0__Impl();
@@ -40630,23 +40630,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__0__Impl"
-    // InternalOCLstdlib.g:13587:1: rule__TupleTypeCS__Group__0__Impl : ( ( rule__TupleTypeCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:13589:1: rule__TupleTypeCS__Group__0__Impl : ( ( rule__TupleTypeCS__NameAssignment_0 ) ) ;
     public final void rule__TupleTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13591:1: ( ( ( rule__TupleTypeCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:13592:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:13593:1: ( ( ( rule__TupleTypeCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:13594:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:13592:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:13593:1: ( rule__TupleTypeCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:13594:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:13595:1: ( rule__TupleTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:13594:1: ( rule__TupleTypeCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:13594:2: rule__TupleTypeCS__NameAssignment_0
+            // InternalOCLstdlib.g:13596:1: ( rule__TupleTypeCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:13596:2: rule__TupleTypeCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__NameAssignment_0();
@@ -40681,14 +40681,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__1"
-    // InternalOCLstdlib.g:13604:1: rule__TupleTypeCS__Group__1 : rule__TupleTypeCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:13606:1: rule__TupleTypeCS__Group__1 : rule__TupleTypeCS__Group__1__Impl ;
     public final void rule__TupleTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13608:1: ( rule__TupleTypeCS__Group__1__Impl )
-            // InternalOCLstdlib.g:13609:2: rule__TupleTypeCS__Group__1__Impl
+            // InternalOCLstdlib.g:13610:1: ( rule__TupleTypeCS__Group__1__Impl )
+            // InternalOCLstdlib.g:13611:2: rule__TupleTypeCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group__1__Impl();
@@ -40714,22 +40714,22 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group__1__Impl"
-    // InternalOCLstdlib.g:13615:1: rule__TupleTypeCS__Group__1__Impl : ( ( rule__TupleTypeCS__Group_1__0 )? ) ;
+    // InternalOCLstdlib.g:13617:1: rule__TupleTypeCS__Group__1__Impl : ( ( rule__TupleTypeCS__Group_1__0 )? ) ;
     public final void rule__TupleTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13619:1: ( ( ( rule__TupleTypeCS__Group_1__0 )? ) )
-            // InternalOCLstdlib.g:13620:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:13621:1: ( ( ( rule__TupleTypeCS__Group_1__0 )? ) )
+            // InternalOCLstdlib.g:13622:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
             {
-            // InternalOCLstdlib.g:13620:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
-            // InternalOCLstdlib.g:13621:1: ( rule__TupleTypeCS__Group_1__0 )?
+            // InternalOCLstdlib.g:13622:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:13623:1: ( rule__TupleTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:13622:1: ( rule__TupleTypeCS__Group_1__0 )?
+            // InternalOCLstdlib.g:13624:1: ( rule__TupleTypeCS__Group_1__0 )?
             int alt120=2;
             int LA120_0 = input.LA(1);
 
@@ -40738,7 +40738,7 @@
             }
             switch (alt120) {
                 case 1 :
-                    // InternalOCLstdlib.g:13622:2: rule__TupleTypeCS__Group_1__0
+                    // InternalOCLstdlib.g:13624:2: rule__TupleTypeCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TupleTypeCS__Group_1__0();
@@ -40776,14 +40776,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__0"
-    // InternalOCLstdlib.g:13636:1: rule__TupleTypeCS__Group_1__0 : rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 ;
+    // InternalOCLstdlib.g:13638:1: rule__TupleTypeCS__Group_1__0 : rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 ;
     public final void rule__TupleTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13640:1: ( rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 )
-            // InternalOCLstdlib.g:13641:2: rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1
+            // InternalOCLstdlib.g:13642:1: ( rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 )
+            // InternalOCLstdlib.g:13643:2: rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_45);
             rule__TupleTypeCS__Group_1__0__Impl();
@@ -40814,17 +40814,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:13648:1: rule__TupleTypeCS__Group_1__0__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:13650:1: rule__TupleTypeCS__Group_1__0__Impl : ( '(' ) ;
     public final void rule__TupleTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13652:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:13653:1: ( '(' )
+            // InternalOCLstdlib.g:13654:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:13655:1: ( '(' )
             {
-            // InternalOCLstdlib.g:13653:1: ( '(' )
-            // InternalOCLstdlib.g:13654:1: '('
+            // InternalOCLstdlib.g:13655:1: ( '(' )
+            // InternalOCLstdlib.g:13656:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
@@ -40855,14 +40855,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__1"
-    // InternalOCLstdlib.g:13667:1: rule__TupleTypeCS__Group_1__1 : rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 ;
+    // InternalOCLstdlib.g:13669:1: rule__TupleTypeCS__Group_1__1 : rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 ;
     public final void rule__TupleTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13671:1: ( rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 )
-            // InternalOCLstdlib.g:13672:2: rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2
+            // InternalOCLstdlib.g:13673:1: ( rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 )
+            // InternalOCLstdlib.g:13674:2: rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_45);
             rule__TupleTypeCS__Group_1__1__Impl();
@@ -40893,22 +40893,22 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:13679:1: rule__TupleTypeCS__Group_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1__0 )? ) ;
+    // InternalOCLstdlib.g:13681:1: rule__TupleTypeCS__Group_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1__0 )? ) ;
     public final void rule__TupleTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13683:1: ( ( ( rule__TupleTypeCS__Group_1_1__0 )? ) )
-            // InternalOCLstdlib.g:13684:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
+            // InternalOCLstdlib.g:13685:1: ( ( ( rule__TupleTypeCS__Group_1_1__0 )? ) )
+            // InternalOCLstdlib.g:13686:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
             {
-            // InternalOCLstdlib.g:13684:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
-            // InternalOCLstdlib.g:13685:1: ( rule__TupleTypeCS__Group_1_1__0 )?
+            // InternalOCLstdlib.g:13686:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
+            // InternalOCLstdlib.g:13687:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1());
             }
-            // InternalOCLstdlib.g:13686:1: ( rule__TupleTypeCS__Group_1_1__0 )?
+            // InternalOCLstdlib.g:13688:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             int alt121=2;
             int LA121_0 = input.LA(1);
 
@@ -40917,7 +40917,7 @@
             }
             switch (alt121) {
                 case 1 :
-                    // InternalOCLstdlib.g:13686:2: rule__TupleTypeCS__Group_1_1__0
+                    // InternalOCLstdlib.g:13688:2: rule__TupleTypeCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TupleTypeCS__Group_1_1__0();
@@ -40955,14 +40955,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__2"
-    // InternalOCLstdlib.g:13696:1: rule__TupleTypeCS__Group_1__2 : rule__TupleTypeCS__Group_1__2__Impl ;
+    // InternalOCLstdlib.g:13698:1: rule__TupleTypeCS__Group_1__2 : rule__TupleTypeCS__Group_1__2__Impl ;
     public final void rule__TupleTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13700:1: ( rule__TupleTypeCS__Group_1__2__Impl )
-            // InternalOCLstdlib.g:13701:2: rule__TupleTypeCS__Group_1__2__Impl
+            // InternalOCLstdlib.g:13702:1: ( rule__TupleTypeCS__Group_1__2__Impl )
+            // InternalOCLstdlib.g:13703:2: rule__TupleTypeCS__Group_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group_1__2__Impl();
@@ -40988,17 +40988,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1__2__Impl"
-    // InternalOCLstdlib.g:13707:1: rule__TupleTypeCS__Group_1__2__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:13709:1: rule__TupleTypeCS__Group_1__2__Impl : ( ')' ) ;
     public final void rule__TupleTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13711:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:13712:1: ( ')' )
+            // InternalOCLstdlib.g:13713:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:13714:1: ( ')' )
             {
-            // InternalOCLstdlib.g:13712:1: ( ')' )
-            // InternalOCLstdlib.g:13713:1: ')'
+            // InternalOCLstdlib.g:13714:1: ( ')' )
+            // InternalOCLstdlib.g:13715:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
@@ -41029,14 +41029,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__0"
-    // InternalOCLstdlib.g:13732:1: rule__TupleTypeCS__Group_1_1__0 : rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 ;
+    // InternalOCLstdlib.g:13734:1: rule__TupleTypeCS__Group_1_1__0 : rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 ;
     public final void rule__TupleTypeCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13736:1: ( rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 )
-            // InternalOCLstdlib.g:13737:2: rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1
+            // InternalOCLstdlib.g:13738:1: ( rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 )
+            // InternalOCLstdlib.g:13739:2: rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__TupleTypeCS__Group_1_1__0__Impl();
@@ -41067,23 +41067,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__0__Impl"
-    // InternalOCLstdlib.g:13744:1: rule__TupleTypeCS__Group_1_1__0__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) ;
+    // InternalOCLstdlib.g:13746:1: rule__TupleTypeCS__Group_1_1__0__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) ;
     public final void rule__TupleTypeCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13748:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) )
-            // InternalOCLstdlib.g:13749:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
+            // InternalOCLstdlib.g:13750:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) )
+            // InternalOCLstdlib.g:13751:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
             {
-            // InternalOCLstdlib.g:13749:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
-            // InternalOCLstdlib.g:13750:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
+            // InternalOCLstdlib.g:13751:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
+            // InternalOCLstdlib.g:13752:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0());
             }
-            // InternalOCLstdlib.g:13751:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
-            // InternalOCLstdlib.g:13751:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0
+            // InternalOCLstdlib.g:13753:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
+            // InternalOCLstdlib.g:13753:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__OwnedPartsAssignment_1_1_0();
@@ -41118,14 +41118,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__1"
-    // InternalOCLstdlib.g:13761:1: rule__TupleTypeCS__Group_1_1__1 : rule__TupleTypeCS__Group_1_1__1__Impl ;
+    // InternalOCLstdlib.g:13763:1: rule__TupleTypeCS__Group_1_1__1 : rule__TupleTypeCS__Group_1_1__1__Impl ;
     public final void rule__TupleTypeCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13765:1: ( rule__TupleTypeCS__Group_1_1__1__Impl )
-            // InternalOCLstdlib.g:13766:2: rule__TupleTypeCS__Group_1_1__1__Impl
+            // InternalOCLstdlib.g:13767:1: ( rule__TupleTypeCS__Group_1_1__1__Impl )
+            // InternalOCLstdlib.g:13768:2: rule__TupleTypeCS__Group_1_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group_1_1__1__Impl();
@@ -41151,22 +41151,22 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1__1__Impl"
-    // InternalOCLstdlib.g:13772:1: rule__TupleTypeCS__Group_1_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) ;
+    // InternalOCLstdlib.g:13774:1: rule__TupleTypeCS__Group_1_1__1__Impl : ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) ;
     public final void rule__TupleTypeCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13776:1: ( ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) )
-            // InternalOCLstdlib.g:13777:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
+            // InternalOCLstdlib.g:13778:1: ( ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) )
+            // InternalOCLstdlib.g:13779:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
             {
-            // InternalOCLstdlib.g:13777:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
-            // InternalOCLstdlib.g:13778:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
+            // InternalOCLstdlib.g:13779:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
+            // InternalOCLstdlib.g:13780:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1());
             }
-            // InternalOCLstdlib.g:13779:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
+            // InternalOCLstdlib.g:13781:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             loop122:
             do {
                 int alt122=2;
@@ -41179,7 +41179,7 @@
 
                 switch (alt122) {
             	case 1 :
-            	    // InternalOCLstdlib.g:13779:2: rule__TupleTypeCS__Group_1_1_1__0
+            	    // InternalOCLstdlib.g:13781:2: rule__TupleTypeCS__Group_1_1_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__TupleTypeCS__Group_1_1_1__0();
@@ -41220,14 +41220,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__0"
-    // InternalOCLstdlib.g:13793:1: rule__TupleTypeCS__Group_1_1_1__0 : rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 ;
+    // InternalOCLstdlib.g:13795:1: rule__TupleTypeCS__Group_1_1_1__0 : rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 ;
     public final void rule__TupleTypeCS__Group_1_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13797:1: ( rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 )
-            // InternalOCLstdlib.g:13798:2: rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1
+            // InternalOCLstdlib.g:13799:1: ( rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 )
+            // InternalOCLstdlib.g:13800:2: rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__TupleTypeCS__Group_1_1_1__0__Impl();
@@ -41258,17 +41258,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__0__Impl"
-    // InternalOCLstdlib.g:13805:1: rule__TupleTypeCS__Group_1_1_1__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:13807:1: rule__TupleTypeCS__Group_1_1_1__0__Impl : ( ',' ) ;
     public final void rule__TupleTypeCS__Group_1_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13809:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:13810:1: ( ',' )
+            // InternalOCLstdlib.g:13811:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:13812:1: ( ',' )
             {
-            // InternalOCLstdlib.g:13810:1: ( ',' )
-            // InternalOCLstdlib.g:13811:1: ','
+            // InternalOCLstdlib.g:13812:1: ( ',' )
+            // InternalOCLstdlib.g:13813:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
@@ -41299,14 +41299,14 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__1"
-    // InternalOCLstdlib.g:13824:1: rule__TupleTypeCS__Group_1_1_1__1 : rule__TupleTypeCS__Group_1_1_1__1__Impl ;
+    // InternalOCLstdlib.g:13826:1: rule__TupleTypeCS__Group_1_1_1__1 : rule__TupleTypeCS__Group_1_1_1__1__Impl ;
     public final void rule__TupleTypeCS__Group_1_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13828:1: ( rule__TupleTypeCS__Group_1_1_1__1__Impl )
-            // InternalOCLstdlib.g:13829:2: rule__TupleTypeCS__Group_1_1_1__1__Impl
+            // InternalOCLstdlib.g:13830:1: ( rule__TupleTypeCS__Group_1_1_1__1__Impl )
+            // InternalOCLstdlib.g:13831:2: rule__TupleTypeCS__Group_1_1_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__Group_1_1_1__1__Impl();
@@ -41332,23 +41332,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__Group_1_1_1__1__Impl"
-    // InternalOCLstdlib.g:13835:1: rule__TupleTypeCS__Group_1_1_1__1__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) ;
+    // InternalOCLstdlib.g:13837:1: rule__TupleTypeCS__Group_1_1_1__1__Impl : ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) ;
     public final void rule__TupleTypeCS__Group_1_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13839:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) )
-            // InternalOCLstdlib.g:13840:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
+            // InternalOCLstdlib.g:13841:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) )
+            // InternalOCLstdlib.g:13842:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
             {
-            // InternalOCLstdlib.g:13840:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
-            // InternalOCLstdlib.g:13841:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
+            // InternalOCLstdlib.g:13842:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
+            // InternalOCLstdlib.g:13843:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1());
             }
-            // InternalOCLstdlib.g:13842:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
-            // InternalOCLstdlib.g:13842:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1
+            // InternalOCLstdlib.g:13844:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
+            // InternalOCLstdlib.g:13844:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1();
@@ -41383,14 +41383,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__0"
-    // InternalOCLstdlib.g:13856:1: rule__CollectionLiteralExpCS__Group__0 : rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 ;
+    // InternalOCLstdlib.g:13858:1: rule__CollectionLiteralExpCS__Group__0 : rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 ;
     public final void rule__CollectionLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13860:1: ( rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 )
-            // InternalOCLstdlib.g:13861:2: rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1
+            // InternalOCLstdlib.g:13862:1: ( rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 )
+            // InternalOCLstdlib.g:13863:2: rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_65);
             rule__CollectionLiteralExpCS__Group__0__Impl();
@@ -41421,23 +41421,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:13868:1: rule__CollectionLiteralExpCS__Group__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:13870:1: rule__CollectionLiteralExpCS__Group__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
     public final void rule__CollectionLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13872:1: ( ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) )
-            // InternalOCLstdlib.g:13873:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalOCLstdlib.g:13874:1: ( ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) )
+            // InternalOCLstdlib.g:13875:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:13873:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
-            // InternalOCLstdlib.g:13874:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalOCLstdlib.g:13875:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalOCLstdlib.g:13876:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
-            // InternalOCLstdlib.g:13875:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
-            // InternalOCLstdlib.g:13875:2: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0
+            // InternalOCLstdlib.g:13877:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalOCLstdlib.g:13877:2: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__OwnedTypeAssignment_0();
@@ -41472,14 +41472,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__1"
-    // InternalOCLstdlib.g:13885:1: rule__CollectionLiteralExpCS__Group__1 : rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 ;
+    // InternalOCLstdlib.g:13887:1: rule__CollectionLiteralExpCS__Group__1 : rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 ;
     public final void rule__CollectionLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13889:1: ( rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 )
-            // InternalOCLstdlib.g:13890:2: rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2
+            // InternalOCLstdlib.g:13891:1: ( rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 )
+            // InternalOCLstdlib.g:13892:2: rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__CollectionLiteralExpCS__Group__1__Impl();
@@ -41510,17 +41510,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:13897:1: rule__CollectionLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:13899:1: rule__CollectionLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__CollectionLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13901:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:13902:1: ( '{' )
+            // InternalOCLstdlib.g:13903:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:13904:1: ( '{' )
             {
-            // InternalOCLstdlib.g:13902:1: ( '{' )
-            // InternalOCLstdlib.g:13903:1: '{'
+            // InternalOCLstdlib.g:13904:1: ( '{' )
+            // InternalOCLstdlib.g:13905:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -41551,14 +41551,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__2"
-    // InternalOCLstdlib.g:13916:1: rule__CollectionLiteralExpCS__Group__2 : rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 ;
+    // InternalOCLstdlib.g:13918:1: rule__CollectionLiteralExpCS__Group__2 : rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 ;
     public final void rule__CollectionLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13920:1: ( rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 )
-            // InternalOCLstdlib.g:13921:2: rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3
+            // InternalOCLstdlib.g:13922:1: ( rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 )
+            // InternalOCLstdlib.g:13923:2: rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__CollectionLiteralExpCS__Group__2__Impl();
@@ -41589,22 +41589,22 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__2__Impl"
-    // InternalOCLstdlib.g:13928:1: rule__CollectionLiteralExpCS__Group__2__Impl : ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) ;
+    // InternalOCLstdlib.g:13930:1: rule__CollectionLiteralExpCS__Group__2__Impl : ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) ;
     public final void rule__CollectionLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13932:1: ( ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) )
-            // InternalOCLstdlib.g:13933:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:13934:1: ( ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) )
+            // InternalOCLstdlib.g:13935:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
             {
-            // InternalOCLstdlib.g:13933:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
-            // InternalOCLstdlib.g:13934:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
+            // InternalOCLstdlib.g:13935:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:13936:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:13935:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
+            // InternalOCLstdlib.g:13937:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             int alt123=2;
             int LA123_0 = input.LA(1);
 
@@ -41613,7 +41613,7 @@
             }
             switch (alt123) {
                 case 1 :
-                    // InternalOCLstdlib.g:13935:2: rule__CollectionLiteralExpCS__Group_2__0
+                    // InternalOCLstdlib.g:13937:2: rule__CollectionLiteralExpCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralExpCS__Group_2__0();
@@ -41651,14 +41651,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__3"
-    // InternalOCLstdlib.g:13945:1: rule__CollectionLiteralExpCS__Group__3 : rule__CollectionLiteralExpCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:13947:1: rule__CollectionLiteralExpCS__Group__3 : rule__CollectionLiteralExpCS__Group__3__Impl ;
     public final void rule__CollectionLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13949:1: ( rule__CollectionLiteralExpCS__Group__3__Impl )
-            // InternalOCLstdlib.g:13950:2: rule__CollectionLiteralExpCS__Group__3__Impl
+            // InternalOCLstdlib.g:13951:1: ( rule__CollectionLiteralExpCS__Group__3__Impl )
+            // InternalOCLstdlib.g:13952:2: rule__CollectionLiteralExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__Group__3__Impl();
@@ -41684,17 +41684,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group__3__Impl"
-    // InternalOCLstdlib.g:13956:1: rule__CollectionLiteralExpCS__Group__3__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:13958:1: rule__CollectionLiteralExpCS__Group__3__Impl : ( '}' ) ;
     public final void rule__CollectionLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13960:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:13961:1: ( '}' )
+            // InternalOCLstdlib.g:13962:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:13963:1: ( '}' )
             {
-            // InternalOCLstdlib.g:13961:1: ( '}' )
-            // InternalOCLstdlib.g:13962:1: '}'
+            // InternalOCLstdlib.g:13963:1: ( '}' )
+            // InternalOCLstdlib.g:13964:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
@@ -41725,14 +41725,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__0"
-    // InternalOCLstdlib.g:13983:1: rule__CollectionLiteralExpCS__Group_2__0 : rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 ;
+    // InternalOCLstdlib.g:13985:1: rule__CollectionLiteralExpCS__Group_2__0 : rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 ;
     public final void rule__CollectionLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13987:1: ( rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 )
-            // InternalOCLstdlib.g:13988:2: rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1
+            // InternalOCLstdlib.g:13989:1: ( rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 )
+            // InternalOCLstdlib.g:13990:2: rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__CollectionLiteralExpCS__Group_2__0__Impl();
@@ -41763,23 +41763,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:13995:1: rule__CollectionLiteralExpCS__Group_2__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalOCLstdlib.g:13997:1: rule__CollectionLiteralExpCS__Group_2__0__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__CollectionLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:13999:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalOCLstdlib.g:14000:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLstdlib.g:14001:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalOCLstdlib.g:14002:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalOCLstdlib.g:14000:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
-            // InternalOCLstdlib.g:14001:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLstdlib.g:14002:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLstdlib.g:14003:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalOCLstdlib.g:14002:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
-            // InternalOCLstdlib.g:14002:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0
+            // InternalOCLstdlib.g:14004:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLstdlib.g:14004:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0();
@@ -41814,14 +41814,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__1"
-    // InternalOCLstdlib.g:14012:1: rule__CollectionLiteralExpCS__Group_2__1 : rule__CollectionLiteralExpCS__Group_2__1__Impl ;
+    // InternalOCLstdlib.g:14014:1: rule__CollectionLiteralExpCS__Group_2__1 : rule__CollectionLiteralExpCS__Group_2__1__Impl ;
     public final void rule__CollectionLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14016:1: ( rule__CollectionLiteralExpCS__Group_2__1__Impl )
-            // InternalOCLstdlib.g:14017:2: rule__CollectionLiteralExpCS__Group_2__1__Impl
+            // InternalOCLstdlib.g:14018:1: ( rule__CollectionLiteralExpCS__Group_2__1__Impl )
+            // InternalOCLstdlib.g:14019:2: rule__CollectionLiteralExpCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__Group_2__1__Impl();
@@ -41847,22 +41847,22 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:14023:1: rule__CollectionLiteralExpCS__Group_2__1__Impl : ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) ;
+    // InternalOCLstdlib.g:14025:1: rule__CollectionLiteralExpCS__Group_2__1__Impl : ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) ;
     public final void rule__CollectionLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14027:1: ( ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) )
-            // InternalOCLstdlib.g:14028:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
+            // InternalOCLstdlib.g:14029:1: ( ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) )
+            // InternalOCLstdlib.g:14030:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
             {
-            // InternalOCLstdlib.g:14028:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
-            // InternalOCLstdlib.g:14029:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
+            // InternalOCLstdlib.g:14030:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
+            // InternalOCLstdlib.g:14031:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1());
             }
-            // InternalOCLstdlib.g:14030:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
+            // InternalOCLstdlib.g:14032:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             loop124:
             do {
                 int alt124=2;
@@ -41875,7 +41875,7 @@
 
                 switch (alt124) {
             	case 1 :
-            	    // InternalOCLstdlib.g:14030:2: rule__CollectionLiteralExpCS__Group_2_1__0
+            	    // InternalOCLstdlib.g:14032:2: rule__CollectionLiteralExpCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__CollectionLiteralExpCS__Group_2_1__0();
@@ -41916,14 +41916,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__0"
-    // InternalOCLstdlib.g:14044:1: rule__CollectionLiteralExpCS__Group_2_1__0 : rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 ;
+    // InternalOCLstdlib.g:14046:1: rule__CollectionLiteralExpCS__Group_2_1__0 : rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14048:1: ( rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 )
-            // InternalOCLstdlib.g:14049:2: rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1
+            // InternalOCLstdlib.g:14050:1: ( rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 )
+            // InternalOCLstdlib.g:14051:2: rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_67);
             rule__CollectionLiteralExpCS__Group_2_1__0__Impl();
@@ -41954,17 +41954,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__0__Impl"
-    // InternalOCLstdlib.g:14056:1: rule__CollectionLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:14058:1: rule__CollectionLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14060:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:14061:1: ( ',' )
+            // InternalOCLstdlib.g:14062:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:14063:1: ( ',' )
             {
-            // InternalOCLstdlib.g:14061:1: ( ',' )
-            // InternalOCLstdlib.g:14062:1: ','
+            // InternalOCLstdlib.g:14063:1: ( ',' )
+            // InternalOCLstdlib.g:14064:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
@@ -41995,14 +41995,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__1"
-    // InternalOCLstdlib.g:14075:1: rule__CollectionLiteralExpCS__Group_2_1__1 : rule__CollectionLiteralExpCS__Group_2_1__1__Impl ;
+    // InternalOCLstdlib.g:14077:1: rule__CollectionLiteralExpCS__Group_2_1__1 : rule__CollectionLiteralExpCS__Group_2_1__1__Impl ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14079:1: ( rule__CollectionLiteralExpCS__Group_2_1__1__Impl )
-            // InternalOCLstdlib.g:14080:2: rule__CollectionLiteralExpCS__Group_2_1__1__Impl
+            // InternalOCLstdlib.g:14081:1: ( rule__CollectionLiteralExpCS__Group_2_1__1__Impl )
+            // InternalOCLstdlib.g:14082:2: rule__CollectionLiteralExpCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__Group_2_1__1__Impl();
@@ -42028,23 +42028,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__Group_2_1__1__Impl"
-    // InternalOCLstdlib.g:14086:1: rule__CollectionLiteralExpCS__Group_2_1__1__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalOCLstdlib.g:14088:1: rule__CollectionLiteralExpCS__Group_2_1__1__Impl : ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__CollectionLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14090:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalOCLstdlib.g:14091:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLstdlib.g:14092:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalOCLstdlib.g:14093:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalOCLstdlib.g:14091:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalOCLstdlib.g:14092:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLstdlib.g:14093:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLstdlib.g:14094:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalOCLstdlib.g:14093:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
-            // InternalOCLstdlib.g:14093:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1
+            // InternalOCLstdlib.g:14095:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLstdlib.g:14095:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1();
@@ -42079,14 +42079,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__0"
-    // InternalOCLstdlib.g:14107:1: rule__CollectionLiteralPartCS__Group_0__0 : rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 ;
+    // InternalOCLstdlib.g:14109:1: rule__CollectionLiteralPartCS__Group_0__0 : rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 ;
     public final void rule__CollectionLiteralPartCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14111:1: ( rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 )
-            // InternalOCLstdlib.g:14112:2: rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1
+            // InternalOCLstdlib.g:14113:1: ( rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 )
+            // InternalOCLstdlib.g:14114:2: rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_68);
             rule__CollectionLiteralPartCS__Group_0__0__Impl();
@@ -42117,23 +42117,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__0__Impl"
-    // InternalOCLstdlib.g:14119:1: rule__CollectionLiteralPartCS__Group_0__0__Impl : ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) ;
+    // InternalOCLstdlib.g:14121:1: rule__CollectionLiteralPartCS__Group_0__0__Impl : ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) ;
     public final void rule__CollectionLiteralPartCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14123:1: ( ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) )
-            // InternalOCLstdlib.g:14124:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
+            // InternalOCLstdlib.g:14125:1: ( ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) )
+            // InternalOCLstdlib.g:14126:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
             {
-            // InternalOCLstdlib.g:14124:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
-            // InternalOCLstdlib.g:14125:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
+            // InternalOCLstdlib.g:14126:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
+            // InternalOCLstdlib.g:14127:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0());
             }
-            // InternalOCLstdlib.g:14126:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
-            // InternalOCLstdlib.g:14126:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0
+            // InternalOCLstdlib.g:14128:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
+            // InternalOCLstdlib.g:14128:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0();
@@ -42168,14 +42168,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__1"
-    // InternalOCLstdlib.g:14136:1: rule__CollectionLiteralPartCS__Group_0__1 : rule__CollectionLiteralPartCS__Group_0__1__Impl ;
+    // InternalOCLstdlib.g:14138:1: rule__CollectionLiteralPartCS__Group_0__1 : rule__CollectionLiteralPartCS__Group_0__1__Impl ;
     public final void rule__CollectionLiteralPartCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14140:1: ( rule__CollectionLiteralPartCS__Group_0__1__Impl )
-            // InternalOCLstdlib.g:14141:2: rule__CollectionLiteralPartCS__Group_0__1__Impl
+            // InternalOCLstdlib.g:14142:1: ( rule__CollectionLiteralPartCS__Group_0__1__Impl )
+            // InternalOCLstdlib.g:14143:2: rule__CollectionLiteralPartCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__Group_0__1__Impl();
@@ -42201,22 +42201,22 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0__1__Impl"
-    // InternalOCLstdlib.g:14147:1: rule__CollectionLiteralPartCS__Group_0__1__Impl : ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) ;
+    // InternalOCLstdlib.g:14149:1: rule__CollectionLiteralPartCS__Group_0__1__Impl : ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) ;
     public final void rule__CollectionLiteralPartCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14151:1: ( ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) )
-            // InternalOCLstdlib.g:14152:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
+            // InternalOCLstdlib.g:14153:1: ( ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) )
+            // InternalOCLstdlib.g:14154:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
             {
-            // InternalOCLstdlib.g:14152:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
-            // InternalOCLstdlib.g:14153:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
+            // InternalOCLstdlib.g:14154:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
+            // InternalOCLstdlib.g:14155:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1());
             }
-            // InternalOCLstdlib.g:14154:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
+            // InternalOCLstdlib.g:14156:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             int alt125=2;
             int LA125_0 = input.LA(1);
 
@@ -42225,7 +42225,7 @@
             }
             switch (alt125) {
                 case 1 :
-                    // InternalOCLstdlib.g:14154:2: rule__CollectionLiteralPartCS__Group_0_1__0
+                    // InternalOCLstdlib.g:14156:2: rule__CollectionLiteralPartCS__Group_0_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionLiteralPartCS__Group_0_1__0();
@@ -42263,14 +42263,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__0"
-    // InternalOCLstdlib.g:14168:1: rule__CollectionLiteralPartCS__Group_0_1__0 : rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 ;
+    // InternalOCLstdlib.g:14170:1: rule__CollectionLiteralPartCS__Group_0_1__0 : rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14172:1: ( rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 )
-            // InternalOCLstdlib.g:14173:2: rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1
+            // InternalOCLstdlib.g:14174:1: ( rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 )
+            // InternalOCLstdlib.g:14175:2: rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__CollectionLiteralPartCS__Group_0_1__0__Impl();
@@ -42301,17 +42301,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__0__Impl"
-    // InternalOCLstdlib.g:14180:1: rule__CollectionLiteralPartCS__Group_0_1__0__Impl : ( '..' ) ;
+    // InternalOCLstdlib.g:14182:1: rule__CollectionLiteralPartCS__Group_0_1__0__Impl : ( '..' ) ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14184:1: ( ( '..' ) )
-            // InternalOCLstdlib.g:14185:1: ( '..' )
+            // InternalOCLstdlib.g:14186:1: ( ( '..' ) )
+            // InternalOCLstdlib.g:14187:1: ( '..' )
             {
-            // InternalOCLstdlib.g:14185:1: ( '..' )
-            // InternalOCLstdlib.g:14186:1: '..'
+            // InternalOCLstdlib.g:14187:1: ( '..' )
+            // InternalOCLstdlib.g:14188:1: '..'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
@@ -42342,14 +42342,14 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__1"
-    // InternalOCLstdlib.g:14199:1: rule__CollectionLiteralPartCS__Group_0_1__1 : rule__CollectionLiteralPartCS__Group_0_1__1__Impl ;
+    // InternalOCLstdlib.g:14201:1: rule__CollectionLiteralPartCS__Group_0_1__1 : rule__CollectionLiteralPartCS__Group_0_1__1__Impl ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14203:1: ( rule__CollectionLiteralPartCS__Group_0_1__1__Impl )
-            // InternalOCLstdlib.g:14204:2: rule__CollectionLiteralPartCS__Group_0_1__1__Impl
+            // InternalOCLstdlib.g:14205:1: ( rule__CollectionLiteralPartCS__Group_0_1__1__Impl )
+            // InternalOCLstdlib.g:14206:2: rule__CollectionLiteralPartCS__Group_0_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__Group_0_1__1__Impl();
@@ -42375,23 +42375,23 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__Group_0_1__1__Impl"
-    // InternalOCLstdlib.g:14210:1: rule__CollectionLiteralPartCS__Group_0_1__1__Impl : ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) ;
+    // InternalOCLstdlib.g:14212:1: rule__CollectionLiteralPartCS__Group_0_1__1__Impl : ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) ;
     public final void rule__CollectionLiteralPartCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14214:1: ( ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) )
-            // InternalOCLstdlib.g:14215:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
+            // InternalOCLstdlib.g:14216:1: ( ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) )
+            // InternalOCLstdlib.g:14217:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
             {
-            // InternalOCLstdlib.g:14215:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
-            // InternalOCLstdlib.g:14216:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
+            // InternalOCLstdlib.g:14217:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
+            // InternalOCLstdlib.g:14218:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1());
             }
-            // InternalOCLstdlib.g:14217:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
-            // InternalOCLstdlib.g:14217:2: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1
+            // InternalOCLstdlib.g:14219:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
+            // InternalOCLstdlib.g:14219:2: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1();
@@ -42426,14 +42426,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__0"
-    // InternalOCLstdlib.g:14231:1: rule__CollectionPatternCS__Group__0 : rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 ;
+    // InternalOCLstdlib.g:14233:1: rule__CollectionPatternCS__Group__0 : rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 ;
     public final void rule__CollectionPatternCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14235:1: ( rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 )
-            // InternalOCLstdlib.g:14236:2: rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1
+            // InternalOCLstdlib.g:14237:1: ( rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 )
+            // InternalOCLstdlib.g:14238:2: rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_65);
             rule__CollectionPatternCS__Group__0__Impl();
@@ -42464,23 +42464,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__0__Impl"
-    // InternalOCLstdlib.g:14243:1: rule__CollectionPatternCS__Group__0__Impl : ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:14245:1: rule__CollectionPatternCS__Group__0__Impl : ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) ;
     public final void rule__CollectionPatternCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14247:1: ( ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) )
-            // InternalOCLstdlib.g:14248:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
+            // InternalOCLstdlib.g:14249:1: ( ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) )
+            // InternalOCLstdlib.g:14250:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:14248:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
-            // InternalOCLstdlib.g:14249:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
+            // InternalOCLstdlib.g:14250:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
+            // InternalOCLstdlib.g:14251:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0());
             }
-            // InternalOCLstdlib.g:14250:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
-            // InternalOCLstdlib.g:14250:2: rule__CollectionPatternCS__OwnedTypeAssignment_0
+            // InternalOCLstdlib.g:14252:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
+            // InternalOCLstdlib.g:14252:2: rule__CollectionPatternCS__OwnedTypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__OwnedTypeAssignment_0();
@@ -42515,14 +42515,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__1"
-    // InternalOCLstdlib.g:14260:1: rule__CollectionPatternCS__Group__1 : rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 ;
+    // InternalOCLstdlib.g:14262:1: rule__CollectionPatternCS__Group__1 : rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 ;
     public final void rule__CollectionPatternCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14264:1: ( rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 )
-            // InternalOCLstdlib.g:14265:2: rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2
+            // InternalOCLstdlib.g:14266:1: ( rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 )
+            // InternalOCLstdlib.g:14267:2: rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__CollectionPatternCS__Group__1__Impl();
@@ -42553,17 +42553,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__1__Impl"
-    // InternalOCLstdlib.g:14272:1: rule__CollectionPatternCS__Group__1__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:14274:1: rule__CollectionPatternCS__Group__1__Impl : ( '{' ) ;
     public final void rule__CollectionPatternCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14276:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:14277:1: ( '{' )
+            // InternalOCLstdlib.g:14278:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:14279:1: ( '{' )
             {
-            // InternalOCLstdlib.g:14277:1: ( '{' )
-            // InternalOCLstdlib.g:14278:1: '{'
+            // InternalOCLstdlib.g:14279:1: ( '{' )
+            // InternalOCLstdlib.g:14280:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
@@ -42594,14 +42594,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__2"
-    // InternalOCLstdlib.g:14291:1: rule__CollectionPatternCS__Group__2 : rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 ;
+    // InternalOCLstdlib.g:14293:1: rule__CollectionPatternCS__Group__2 : rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 ;
     public final void rule__CollectionPatternCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14295:1: ( rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 )
-            // InternalOCLstdlib.g:14296:2: rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3
+            // InternalOCLstdlib.g:14297:1: ( rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 )
+            // InternalOCLstdlib.g:14298:2: rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_66);
             rule__CollectionPatternCS__Group__2__Impl();
@@ -42632,22 +42632,22 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__2__Impl"
-    // InternalOCLstdlib.g:14303:1: rule__CollectionPatternCS__Group__2__Impl : ( ( rule__CollectionPatternCS__Group_2__0 )? ) ;
+    // InternalOCLstdlib.g:14305:1: rule__CollectionPatternCS__Group__2__Impl : ( ( rule__CollectionPatternCS__Group_2__0 )? ) ;
     public final void rule__CollectionPatternCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14307:1: ( ( ( rule__CollectionPatternCS__Group_2__0 )? ) )
-            // InternalOCLstdlib.g:14308:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:14309:1: ( ( ( rule__CollectionPatternCS__Group_2__0 )? ) )
+            // InternalOCLstdlib.g:14310:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
             {
-            // InternalOCLstdlib.g:14308:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
-            // InternalOCLstdlib.g:14309:1: ( rule__CollectionPatternCS__Group_2__0 )?
+            // InternalOCLstdlib.g:14310:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:14311:1: ( rule__CollectionPatternCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:14310:1: ( rule__CollectionPatternCS__Group_2__0 )?
+            // InternalOCLstdlib.g:14312:1: ( rule__CollectionPatternCS__Group_2__0 )?
             int alt126=2;
             int LA126_0 = input.LA(1);
 
@@ -42656,7 +42656,7 @@
             }
             switch (alt126) {
                 case 1 :
-                    // InternalOCLstdlib.g:14310:2: rule__CollectionPatternCS__Group_2__0
+                    // InternalOCLstdlib.g:14312:2: rule__CollectionPatternCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CollectionPatternCS__Group_2__0();
@@ -42694,14 +42694,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__3"
-    // InternalOCLstdlib.g:14320:1: rule__CollectionPatternCS__Group__3 : rule__CollectionPatternCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:14322:1: rule__CollectionPatternCS__Group__3 : rule__CollectionPatternCS__Group__3__Impl ;
     public final void rule__CollectionPatternCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14324:1: ( rule__CollectionPatternCS__Group__3__Impl )
-            // InternalOCLstdlib.g:14325:2: rule__CollectionPatternCS__Group__3__Impl
+            // InternalOCLstdlib.g:14326:1: ( rule__CollectionPatternCS__Group__3__Impl )
+            // InternalOCLstdlib.g:14327:2: rule__CollectionPatternCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group__3__Impl();
@@ -42727,17 +42727,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group__3__Impl"
-    // InternalOCLstdlib.g:14331:1: rule__CollectionPatternCS__Group__3__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:14333:1: rule__CollectionPatternCS__Group__3__Impl : ( '}' ) ;
     public final void rule__CollectionPatternCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14335:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:14336:1: ( '}' )
+            // InternalOCLstdlib.g:14337:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:14338:1: ( '}' )
             {
-            // InternalOCLstdlib.g:14336:1: ( '}' )
-            // InternalOCLstdlib.g:14337:1: '}'
+            // InternalOCLstdlib.g:14338:1: ( '}' )
+            // InternalOCLstdlib.g:14339:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
@@ -42768,14 +42768,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__0"
-    // InternalOCLstdlib.g:14358:1: rule__CollectionPatternCS__Group_2__0 : rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 ;
+    // InternalOCLstdlib.g:14360:1: rule__CollectionPatternCS__Group_2__0 : rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 ;
     public final void rule__CollectionPatternCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14362:1: ( rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 )
-            // InternalOCLstdlib.g:14363:2: rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1
+            // InternalOCLstdlib.g:14364:1: ( rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 )
+            // InternalOCLstdlib.g:14365:2: rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_69);
             rule__CollectionPatternCS__Group_2__0__Impl();
@@ -42806,23 +42806,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:14370:1: rule__CollectionPatternCS__Group_2__0__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalOCLstdlib.g:14372:1: rule__CollectionPatternCS__Group_2__0__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__CollectionPatternCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14374:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalOCLstdlib.g:14375:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLstdlib.g:14376:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalOCLstdlib.g:14377:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalOCLstdlib.g:14375:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
-            // InternalOCLstdlib.g:14376:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLstdlib.g:14377:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLstdlib.g:14378:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalOCLstdlib.g:14377:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
-            // InternalOCLstdlib.g:14377:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_0
+            // InternalOCLstdlib.g:14379:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLstdlib.g:14379:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__OwnedPartsAssignment_2_0();
@@ -42857,14 +42857,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__1"
-    // InternalOCLstdlib.g:14387:1: rule__CollectionPatternCS__Group_2__1 : rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 ;
+    // InternalOCLstdlib.g:14389:1: rule__CollectionPatternCS__Group_2__1 : rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 ;
     public final void rule__CollectionPatternCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14391:1: ( rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 )
-            // InternalOCLstdlib.g:14392:2: rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2
+            // InternalOCLstdlib.g:14393:1: ( rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 )
+            // InternalOCLstdlib.g:14394:2: rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_69);
             rule__CollectionPatternCS__Group_2__1__Impl();
@@ -42895,22 +42895,22 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:14399:1: rule__CollectionPatternCS__Group_2__1__Impl : ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) ;
+    // InternalOCLstdlib.g:14401:1: rule__CollectionPatternCS__Group_2__1__Impl : ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) ;
     public final void rule__CollectionPatternCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14403:1: ( ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) )
-            // InternalOCLstdlib.g:14404:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
+            // InternalOCLstdlib.g:14405:1: ( ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) )
+            // InternalOCLstdlib.g:14406:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
             {
-            // InternalOCLstdlib.g:14404:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
-            // InternalOCLstdlib.g:14405:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
+            // InternalOCLstdlib.g:14406:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
+            // InternalOCLstdlib.g:14407:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1());
             }
-            // InternalOCLstdlib.g:14406:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
+            // InternalOCLstdlib.g:14408:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             loop127:
             do {
                 int alt127=2;
@@ -42923,7 +42923,7 @@
 
                 switch (alt127) {
             	case 1 :
-            	    // InternalOCLstdlib.g:14406:2: rule__CollectionPatternCS__Group_2_1__0
+            	    // InternalOCLstdlib.g:14408:2: rule__CollectionPatternCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__CollectionPatternCS__Group_2_1__0();
@@ -42964,14 +42964,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__2"
-    // InternalOCLstdlib.g:14416:1: rule__CollectionPatternCS__Group_2__2 : rule__CollectionPatternCS__Group_2__2__Impl ;
+    // InternalOCLstdlib.g:14418:1: rule__CollectionPatternCS__Group_2__2 : rule__CollectionPatternCS__Group_2__2__Impl ;
     public final void rule__CollectionPatternCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14420:1: ( rule__CollectionPatternCS__Group_2__2__Impl )
-            // InternalOCLstdlib.g:14421:2: rule__CollectionPatternCS__Group_2__2__Impl
+            // InternalOCLstdlib.g:14422:1: ( rule__CollectionPatternCS__Group_2__2__Impl )
+            // InternalOCLstdlib.g:14423:2: rule__CollectionPatternCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2__2__Impl();
@@ -42997,23 +42997,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2__2__Impl"
-    // InternalOCLstdlib.g:14427:1: rule__CollectionPatternCS__Group_2__2__Impl : ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) ;
+    // InternalOCLstdlib.g:14429:1: rule__CollectionPatternCS__Group_2__2__Impl : ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) ;
     public final void rule__CollectionPatternCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14431:1: ( ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) )
-            // InternalOCLstdlib.g:14432:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
+            // InternalOCLstdlib.g:14433:1: ( ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) )
+            // InternalOCLstdlib.g:14434:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
             {
-            // InternalOCLstdlib.g:14432:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
-            // InternalOCLstdlib.g:14433:1: ( rule__CollectionPatternCS__Group_2_2__0 )
+            // InternalOCLstdlib.g:14434:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
+            // InternalOCLstdlib.g:14435:1: ( rule__CollectionPatternCS__Group_2_2__0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2());
             }
-            // InternalOCLstdlib.g:14434:1: ( rule__CollectionPatternCS__Group_2_2__0 )
-            // InternalOCLstdlib.g:14434:2: rule__CollectionPatternCS__Group_2_2__0
+            // InternalOCLstdlib.g:14436:1: ( rule__CollectionPatternCS__Group_2_2__0 )
+            // InternalOCLstdlib.g:14436:2: rule__CollectionPatternCS__Group_2_2__0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2_2__0();
@@ -43048,14 +43048,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__0"
-    // InternalOCLstdlib.g:14450:1: rule__CollectionPatternCS__Group_2_1__0 : rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 ;
+    // InternalOCLstdlib.g:14452:1: rule__CollectionPatternCS__Group_2_1__0 : rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 ;
     public final void rule__CollectionPatternCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14454:1: ( rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 )
-            // InternalOCLstdlib.g:14455:2: rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1
+            // InternalOCLstdlib.g:14456:1: ( rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 )
+            // InternalOCLstdlib.g:14457:2: rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_67);
             rule__CollectionPatternCS__Group_2_1__0__Impl();
@@ -43086,17 +43086,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__0__Impl"
-    // InternalOCLstdlib.g:14462:1: rule__CollectionPatternCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:14464:1: rule__CollectionPatternCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CollectionPatternCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14466:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:14467:1: ( ',' )
+            // InternalOCLstdlib.g:14468:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:14469:1: ( ',' )
             {
-            // InternalOCLstdlib.g:14467:1: ( ',' )
-            // InternalOCLstdlib.g:14468:1: ','
+            // InternalOCLstdlib.g:14469:1: ( ',' )
+            // InternalOCLstdlib.g:14470:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
@@ -43127,14 +43127,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__1"
-    // InternalOCLstdlib.g:14481:1: rule__CollectionPatternCS__Group_2_1__1 : rule__CollectionPatternCS__Group_2_1__1__Impl ;
+    // InternalOCLstdlib.g:14483:1: rule__CollectionPatternCS__Group_2_1__1 : rule__CollectionPatternCS__Group_2_1__1__Impl ;
     public final void rule__CollectionPatternCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14485:1: ( rule__CollectionPatternCS__Group_2_1__1__Impl )
-            // InternalOCLstdlib.g:14486:2: rule__CollectionPatternCS__Group_2_1__1__Impl
+            // InternalOCLstdlib.g:14487:1: ( rule__CollectionPatternCS__Group_2_1__1__Impl )
+            // InternalOCLstdlib.g:14488:2: rule__CollectionPatternCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2_1__1__Impl();
@@ -43160,23 +43160,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_1__1__Impl"
-    // InternalOCLstdlib.g:14492:1: rule__CollectionPatternCS__Group_2_1__1__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalOCLstdlib.g:14494:1: rule__CollectionPatternCS__Group_2_1__1__Impl : ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__CollectionPatternCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14496:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalOCLstdlib.g:14497:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLstdlib.g:14498:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalOCLstdlib.g:14499:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalOCLstdlib.g:14497:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalOCLstdlib.g:14498:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLstdlib.g:14499:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLstdlib.g:14500:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalOCLstdlib.g:14499:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
-            // InternalOCLstdlib.g:14499:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1
+            // InternalOCLstdlib.g:14501:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLstdlib.g:14501:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1();
@@ -43211,14 +43211,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__0"
-    // InternalOCLstdlib.g:14513:1: rule__CollectionPatternCS__Group_2_2__0 : rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 ;
+    // InternalOCLstdlib.g:14515:1: rule__CollectionPatternCS__Group_2_2__0 : rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 ;
     public final void rule__CollectionPatternCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14517:1: ( rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 )
-            // InternalOCLstdlib.g:14518:2: rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1
+            // InternalOCLstdlib.g:14519:1: ( rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 )
+            // InternalOCLstdlib.g:14520:2: rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__CollectionPatternCS__Group_2_2__0__Impl();
@@ -43249,17 +43249,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__0__Impl"
-    // InternalOCLstdlib.g:14525:1: rule__CollectionPatternCS__Group_2_2__0__Impl : ( '++' ) ;
+    // InternalOCLstdlib.g:14527:1: rule__CollectionPatternCS__Group_2_2__0__Impl : ( '++' ) ;
     public final void rule__CollectionPatternCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14529:1: ( ( '++' ) )
-            // InternalOCLstdlib.g:14530:1: ( '++' )
+            // InternalOCLstdlib.g:14531:1: ( ( '++' ) )
+            // InternalOCLstdlib.g:14532:1: ( '++' )
             {
-            // InternalOCLstdlib.g:14530:1: ( '++' )
-            // InternalOCLstdlib.g:14531:1: '++'
+            // InternalOCLstdlib.g:14532:1: ( '++' )
+            // InternalOCLstdlib.g:14533:1: '++'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
@@ -43290,14 +43290,14 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__1"
-    // InternalOCLstdlib.g:14544:1: rule__CollectionPatternCS__Group_2_2__1 : rule__CollectionPatternCS__Group_2_2__1__Impl ;
+    // InternalOCLstdlib.g:14546:1: rule__CollectionPatternCS__Group_2_2__1 : rule__CollectionPatternCS__Group_2_2__1__Impl ;
     public final void rule__CollectionPatternCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14548:1: ( rule__CollectionPatternCS__Group_2_2__1__Impl )
-            // InternalOCLstdlib.g:14549:2: rule__CollectionPatternCS__Group_2_2__1__Impl
+            // InternalOCLstdlib.g:14550:1: ( rule__CollectionPatternCS__Group_2_2__1__Impl )
+            // InternalOCLstdlib.g:14551:2: rule__CollectionPatternCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__Group_2_2__1__Impl();
@@ -43323,23 +43323,23 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__Group_2_2__1__Impl"
-    // InternalOCLstdlib.g:14555:1: rule__CollectionPatternCS__Group_2_2__1__Impl : ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) ;
+    // InternalOCLstdlib.g:14557:1: rule__CollectionPatternCS__Group_2_2__1__Impl : ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) ;
     public final void rule__CollectionPatternCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14559:1: ( ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) )
-            // InternalOCLstdlib.g:14560:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
+            // InternalOCLstdlib.g:14561:1: ( ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) )
+            // InternalOCLstdlib.g:14562:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
             {
-            // InternalOCLstdlib.g:14560:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
-            // InternalOCLstdlib.g:14561:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
+            // InternalOCLstdlib.g:14562:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
+            // InternalOCLstdlib.g:14563:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1());
             }
-            // InternalOCLstdlib.g:14562:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
-            // InternalOCLstdlib.g:14562:2: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1
+            // InternalOCLstdlib.g:14564:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
+            // InternalOCLstdlib.g:14564:2: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1();
@@ -43374,14 +43374,14 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__0"
-    // InternalOCLstdlib.g:14576:1: rule__ShadowPartCS__Group_0__0 : rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 ;
+    // InternalOCLstdlib.g:14578:1: rule__ShadowPartCS__Group_0__0 : rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 ;
     public final void rule__ShadowPartCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14580:1: ( rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 )
-            // InternalOCLstdlib.g:14581:2: rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1
+            // InternalOCLstdlib.g:14582:1: ( rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1 )
+            // InternalOCLstdlib.g:14583:2: rule__ShadowPartCS__Group_0__0__Impl rule__ShadowPartCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__ShadowPartCS__Group_0__0__Impl();
@@ -43412,23 +43412,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__0__Impl"
-    // InternalOCLstdlib.g:14588:1: rule__ShadowPartCS__Group_0__0__Impl : ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) ;
+    // InternalOCLstdlib.g:14590:1: rule__ShadowPartCS__Group_0__0__Impl : ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) ;
     public final void rule__ShadowPartCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14592:1: ( ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) )
-            // InternalOCLstdlib.g:14593:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
+            // InternalOCLstdlib.g:14594:1: ( ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) ) )
+            // InternalOCLstdlib.g:14595:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
             {
-            // InternalOCLstdlib.g:14593:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
-            // InternalOCLstdlib.g:14594:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
+            // InternalOCLstdlib.g:14595:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 ) )
+            // InternalOCLstdlib.g:14596:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0_0());
             }
-            // InternalOCLstdlib.g:14595:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
-            // InternalOCLstdlib.g:14595:2: rule__ShadowPartCS__ReferredPropertyAssignment_0_0
+            // InternalOCLstdlib.g:14597:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0_0 )
+            // InternalOCLstdlib.g:14597:2: rule__ShadowPartCS__ReferredPropertyAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__ReferredPropertyAssignment_0_0();
@@ -43463,14 +43463,14 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__1"
-    // InternalOCLstdlib.g:14605:1: rule__ShadowPartCS__Group_0__1 : rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 ;
+    // InternalOCLstdlib.g:14607:1: rule__ShadowPartCS__Group_0__1 : rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 ;
     public final void rule__ShadowPartCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14609:1: ( rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 )
-            // InternalOCLstdlib.g:14610:2: rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2
+            // InternalOCLstdlib.g:14611:1: ( rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2 )
+            // InternalOCLstdlib.g:14612:2: rule__ShadowPartCS__Group_0__1__Impl rule__ShadowPartCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_67);
             rule__ShadowPartCS__Group_0__1__Impl();
@@ -43501,17 +43501,17 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__1__Impl"
-    // InternalOCLstdlib.g:14617:1: rule__ShadowPartCS__Group_0__1__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:14619:1: rule__ShadowPartCS__Group_0__1__Impl : ( '=' ) ;
     public final void rule__ShadowPartCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14621:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:14622:1: ( '=' )
+            // InternalOCLstdlib.g:14623:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:14624:1: ( '=' )
             {
-            // InternalOCLstdlib.g:14622:1: ( '=' )
-            // InternalOCLstdlib.g:14623:1: '='
+            // InternalOCLstdlib.g:14624:1: ( '=' )
+            // InternalOCLstdlib.g:14625:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_0_1());
@@ -43542,14 +43542,14 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__2"
-    // InternalOCLstdlib.g:14636:1: rule__ShadowPartCS__Group_0__2 : rule__ShadowPartCS__Group_0__2__Impl ;
+    // InternalOCLstdlib.g:14638:1: rule__ShadowPartCS__Group_0__2 : rule__ShadowPartCS__Group_0__2__Impl ;
     public final void rule__ShadowPartCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14640:1: ( rule__ShadowPartCS__Group_0__2__Impl )
-            // InternalOCLstdlib.g:14641:2: rule__ShadowPartCS__Group_0__2__Impl
+            // InternalOCLstdlib.g:14642:1: ( rule__ShadowPartCS__Group_0__2__Impl )
+            // InternalOCLstdlib.g:14643:2: rule__ShadowPartCS__Group_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__Group_0__2__Impl();
@@ -43575,23 +43575,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__Group_0__2__Impl"
-    // InternalOCLstdlib.g:14647:1: rule__ShadowPartCS__Group_0__2__Impl : ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) ;
+    // InternalOCLstdlib.g:14649:1: rule__ShadowPartCS__Group_0__2__Impl : ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) ;
     public final void rule__ShadowPartCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14651:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) )
-            // InternalOCLstdlib.g:14652:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
+            // InternalOCLstdlib.g:14653:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) ) )
+            // InternalOCLstdlib.g:14654:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
             {
-            // InternalOCLstdlib.g:14652:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
-            // InternalOCLstdlib.g:14653:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
+            // InternalOCLstdlib.g:14654:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 ) )
+            // InternalOCLstdlib.g:14655:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_0_2());
             }
-            // InternalOCLstdlib.g:14654:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
-            // InternalOCLstdlib.g:14654:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2
+            // InternalOCLstdlib.g:14656:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 )
+            // InternalOCLstdlib.g:14656:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2();
@@ -43626,14 +43626,14 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__0"
-    // InternalOCLstdlib.g:14670:1: rule__PatternExpCS__Group__0 : rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 ;
+    // InternalOCLstdlib.g:14672:1: rule__PatternExpCS__Group__0 : rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 ;
     public final void rule__PatternExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14674:1: ( rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 )
-            // InternalOCLstdlib.g:14675:2: rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1
+            // InternalOCLstdlib.g:14676:1: ( rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 )
+            // InternalOCLstdlib.g:14677:2: rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_67);
             rule__PatternExpCS__Group__0__Impl();
@@ -43664,22 +43664,22 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:14682:1: rule__PatternExpCS__Group__0__Impl : ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) ;
+    // InternalOCLstdlib.g:14684:1: rule__PatternExpCS__Group__0__Impl : ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) ;
     public final void rule__PatternExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14686:1: ( ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) )
-            // InternalOCLstdlib.g:14687:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
+            // InternalOCLstdlib.g:14688:1: ( ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) )
+            // InternalOCLstdlib.g:14689:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
             {
-            // InternalOCLstdlib.g:14687:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
-            // InternalOCLstdlib.g:14688:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
+            // InternalOCLstdlib.g:14689:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
+            // InternalOCLstdlib.g:14690:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0());
             }
-            // InternalOCLstdlib.g:14689:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
+            // InternalOCLstdlib.g:14691:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             int alt128=2;
             int LA128_0 = input.LA(1);
 
@@ -43688,7 +43688,7 @@
             }
             switch (alt128) {
                 case 1 :
-                    // InternalOCLstdlib.g:14689:2: rule__PatternExpCS__PatternVariableNameAssignment_0
+                    // InternalOCLstdlib.g:14691:2: rule__PatternExpCS__PatternVariableNameAssignment_0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__PatternExpCS__PatternVariableNameAssignment_0();
@@ -43726,14 +43726,14 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__1"
-    // InternalOCLstdlib.g:14699:1: rule__PatternExpCS__Group__1 : rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 ;
+    // InternalOCLstdlib.g:14701:1: rule__PatternExpCS__Group__1 : rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 ;
     public final void rule__PatternExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14703:1: ( rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 )
-            // InternalOCLstdlib.g:14704:2: rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2
+            // InternalOCLstdlib.g:14705:1: ( rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 )
+            // InternalOCLstdlib.g:14706:2: rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__PatternExpCS__Group__1__Impl();
@@ -43764,17 +43764,17 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:14711:1: rule__PatternExpCS__Group__1__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:14713:1: rule__PatternExpCS__Group__1__Impl : ( ':' ) ;
     public final void rule__PatternExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14715:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:14716:1: ( ':' )
+            // InternalOCLstdlib.g:14717:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:14718:1: ( ':' )
             {
-            // InternalOCLstdlib.g:14716:1: ( ':' )
-            // InternalOCLstdlib.g:14717:1: ':'
+            // InternalOCLstdlib.g:14718:1: ( ':' )
+            // InternalOCLstdlib.g:14719:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
@@ -43805,14 +43805,14 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__2"
-    // InternalOCLstdlib.g:14730:1: rule__PatternExpCS__Group__2 : rule__PatternExpCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:14732:1: rule__PatternExpCS__Group__2 : rule__PatternExpCS__Group__2__Impl ;
     public final void rule__PatternExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14734:1: ( rule__PatternExpCS__Group__2__Impl )
-            // InternalOCLstdlib.g:14735:2: rule__PatternExpCS__Group__2__Impl
+            // InternalOCLstdlib.g:14736:1: ( rule__PatternExpCS__Group__2__Impl )
+            // InternalOCLstdlib.g:14737:2: rule__PatternExpCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PatternExpCS__Group__2__Impl();
@@ -43838,23 +43838,23 @@
 
 
     // $ANTLR start "rule__PatternExpCS__Group__2__Impl"
-    // InternalOCLstdlib.g:14741:1: rule__PatternExpCS__Group__2__Impl : ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:14743:1: rule__PatternExpCS__Group__2__Impl : ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) ;
     public final void rule__PatternExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14745:1: ( ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) )
-            // InternalOCLstdlib.g:14746:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
+            // InternalOCLstdlib.g:14747:1: ( ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) )
+            // InternalOCLstdlib.g:14748:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:14746:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
-            // InternalOCLstdlib.g:14747:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
+            // InternalOCLstdlib.g:14748:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
+            // InternalOCLstdlib.g:14749:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2());
             }
-            // InternalOCLstdlib.g:14748:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
-            // InternalOCLstdlib.g:14748:2: rule__PatternExpCS__OwnedPatternTypeAssignment_2
+            // InternalOCLstdlib.g:14750:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
+            // InternalOCLstdlib.g:14750:2: rule__PatternExpCS__OwnedPatternTypeAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PatternExpCS__OwnedPatternTypeAssignment_2();
@@ -43889,14 +43889,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__0"
-    // InternalOCLstdlib.g:14764:1: rule__LambdaLiteralExpCS__Group__0 : rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 ;
+    // InternalOCLstdlib.g:14766:1: rule__LambdaLiteralExpCS__Group__0 : rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 ;
     public final void rule__LambdaLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14768:1: ( rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 )
-            // InternalOCLstdlib.g:14769:2: rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1
+            // InternalOCLstdlib.g:14770:1: ( rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 )
+            // InternalOCLstdlib.g:14771:2: rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_65);
             rule__LambdaLiteralExpCS__Group__0__Impl();
@@ -43927,17 +43927,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:14776:1: rule__LambdaLiteralExpCS__Group__0__Impl : ( 'Lambda' ) ;
+    // InternalOCLstdlib.g:14778:1: rule__LambdaLiteralExpCS__Group__0__Impl : ( 'Lambda' ) ;
     public final void rule__LambdaLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14780:1: ( ( 'Lambda' ) )
-            // InternalOCLstdlib.g:14781:1: ( 'Lambda' )
+            // InternalOCLstdlib.g:14782:1: ( ( 'Lambda' ) )
+            // InternalOCLstdlib.g:14783:1: ( 'Lambda' )
             {
-            // InternalOCLstdlib.g:14781:1: ( 'Lambda' )
-            // InternalOCLstdlib.g:14782:1: 'Lambda'
+            // InternalOCLstdlib.g:14783:1: ( 'Lambda' )
+            // InternalOCLstdlib.g:14784:1: 'Lambda'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
@@ -43968,14 +43968,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__1"
-    // InternalOCLstdlib.g:14795:1: rule__LambdaLiteralExpCS__Group__1 : rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 ;
+    // InternalOCLstdlib.g:14797:1: rule__LambdaLiteralExpCS__Group__1 : rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 ;
     public final void rule__LambdaLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14799:1: ( rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 )
-            // InternalOCLstdlib.g:14800:2: rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2
+            // InternalOCLstdlib.g:14801:1: ( rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 )
+            // InternalOCLstdlib.g:14802:2: rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__LambdaLiteralExpCS__Group__1__Impl();
@@ -44006,17 +44006,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:14807:1: rule__LambdaLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:14809:1: rule__LambdaLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__LambdaLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14811:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:14812:1: ( '{' )
+            // InternalOCLstdlib.g:14813:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:14814:1: ( '{' )
             {
-            // InternalOCLstdlib.g:14812:1: ( '{' )
-            // InternalOCLstdlib.g:14813:1: '{'
+            // InternalOCLstdlib.g:14814:1: ( '{' )
+            // InternalOCLstdlib.g:14815:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -44047,14 +44047,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__2"
-    // InternalOCLstdlib.g:14826:1: rule__LambdaLiteralExpCS__Group__2 : rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 ;
+    // InternalOCLstdlib.g:14828:1: rule__LambdaLiteralExpCS__Group__2 : rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 ;
     public final void rule__LambdaLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14830:1: ( rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 )
-            // InternalOCLstdlib.g:14831:2: rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3
+            // InternalOCLstdlib.g:14832:1: ( rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 )
+            // InternalOCLstdlib.g:14833:2: rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_19);
             rule__LambdaLiteralExpCS__Group__2__Impl();
@@ -44085,23 +44085,23 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__2__Impl"
-    // InternalOCLstdlib.g:14838:1: rule__LambdaLiteralExpCS__Group__2__Impl : ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:14840:1: rule__LambdaLiteralExpCS__Group__2__Impl : ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) ;
     public final void rule__LambdaLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14842:1: ( ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) )
-            // InternalOCLstdlib.g:14843:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
+            // InternalOCLstdlib.g:14844:1: ( ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) )
+            // InternalOCLstdlib.g:14845:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:14843:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
-            // InternalOCLstdlib.g:14844:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
+            // InternalOCLstdlib.g:14845:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
+            // InternalOCLstdlib.g:14846:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2());
             }
-            // InternalOCLstdlib.g:14845:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
-            // InternalOCLstdlib.g:14845:2: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2
+            // InternalOCLstdlib.g:14847:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
+            // InternalOCLstdlib.g:14847:2: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2();
@@ -44136,14 +44136,14 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__3"
-    // InternalOCLstdlib.g:14855:1: rule__LambdaLiteralExpCS__Group__3 : rule__LambdaLiteralExpCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:14857:1: rule__LambdaLiteralExpCS__Group__3 : rule__LambdaLiteralExpCS__Group__3__Impl ;
     public final void rule__LambdaLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14859:1: ( rule__LambdaLiteralExpCS__Group__3__Impl )
-            // InternalOCLstdlib.g:14860:2: rule__LambdaLiteralExpCS__Group__3__Impl
+            // InternalOCLstdlib.g:14861:1: ( rule__LambdaLiteralExpCS__Group__3__Impl )
+            // InternalOCLstdlib.g:14862:2: rule__LambdaLiteralExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LambdaLiteralExpCS__Group__3__Impl();
@@ -44169,17 +44169,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__Group__3__Impl"
-    // InternalOCLstdlib.g:14866:1: rule__LambdaLiteralExpCS__Group__3__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:14868:1: rule__LambdaLiteralExpCS__Group__3__Impl : ( '}' ) ;
     public final void rule__LambdaLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14870:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:14871:1: ( '}' )
+            // InternalOCLstdlib.g:14872:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:14873:1: ( '}' )
             {
-            // InternalOCLstdlib.g:14871:1: ( '}' )
-            // InternalOCLstdlib.g:14872:1: '}'
+            // InternalOCLstdlib.g:14873:1: ( '}' )
+            // InternalOCLstdlib.g:14874:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
@@ -44210,14 +44210,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__0"
-    // InternalOCLstdlib.g:14893:1: rule__MapLiteralExpCS__Group__0 : rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 ;
+    // InternalOCLstdlib.g:14895:1: rule__MapLiteralExpCS__Group__0 : rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 ;
     public final void rule__MapLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14897:1: ( rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 )
-            // InternalOCLstdlib.g:14898:2: rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1
+            // InternalOCLstdlib.g:14899:1: ( rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 )
+            // InternalOCLstdlib.g:14900:2: rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_65);
             rule__MapLiteralExpCS__Group__0__Impl();
@@ -44248,23 +44248,23 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:14905:1: rule__MapLiteralExpCS__Group__0__Impl : ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:14907:1: rule__MapLiteralExpCS__Group__0__Impl : ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) ;
     public final void rule__MapLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14909:1: ( ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) )
-            // InternalOCLstdlib.g:14910:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalOCLstdlib.g:14911:1: ( ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) )
+            // InternalOCLstdlib.g:14912:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:14910:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
-            // InternalOCLstdlib.g:14911:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalOCLstdlib.g:14912:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
+            // InternalOCLstdlib.g:14913:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
-            // InternalOCLstdlib.g:14912:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
-            // InternalOCLstdlib.g:14912:2: rule__MapLiteralExpCS__OwnedTypeAssignment_0
+            // InternalOCLstdlib.g:14914:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
+            // InternalOCLstdlib.g:14914:2: rule__MapLiteralExpCS__OwnedTypeAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__OwnedTypeAssignment_0();
@@ -44299,14 +44299,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__1"
-    // InternalOCLstdlib.g:14922:1: rule__MapLiteralExpCS__Group__1 : rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 ;
+    // InternalOCLstdlib.g:14924:1: rule__MapLiteralExpCS__Group__1 : rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 ;
     public final void rule__MapLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14926:1: ( rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 )
-            // InternalOCLstdlib.g:14927:2: rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2
+            // InternalOCLstdlib.g:14928:1: ( rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 )
+            // InternalOCLstdlib.g:14929:2: rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_70);
             rule__MapLiteralExpCS__Group__1__Impl();
@@ -44337,17 +44337,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:14934:1: rule__MapLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:14936:1: rule__MapLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__MapLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14938:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:14939:1: ( '{' )
+            // InternalOCLstdlib.g:14940:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:14941:1: ( '{' )
             {
-            // InternalOCLstdlib.g:14939:1: ( '{' )
-            // InternalOCLstdlib.g:14940:1: '{'
+            // InternalOCLstdlib.g:14941:1: ( '{' )
+            // InternalOCLstdlib.g:14942:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -44378,14 +44378,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__2"
-    // InternalOCLstdlib.g:14953:1: rule__MapLiteralExpCS__Group__2 : rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 ;
+    // InternalOCLstdlib.g:14955:1: rule__MapLiteralExpCS__Group__2 : rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 ;
     public final void rule__MapLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14957:1: ( rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 )
-            // InternalOCLstdlib.g:14958:2: rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3
+            // InternalOCLstdlib.g:14959:1: ( rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 )
+            // InternalOCLstdlib.g:14960:2: rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_70);
             rule__MapLiteralExpCS__Group__2__Impl();
@@ -44416,22 +44416,22 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__2__Impl"
-    // InternalOCLstdlib.g:14965:1: rule__MapLiteralExpCS__Group__2__Impl : ( ( rule__MapLiteralExpCS__Group_2__0 )? ) ;
+    // InternalOCLstdlib.g:14967:1: rule__MapLiteralExpCS__Group__2__Impl : ( ( rule__MapLiteralExpCS__Group_2__0 )? ) ;
     public final void rule__MapLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14969:1: ( ( ( rule__MapLiteralExpCS__Group_2__0 )? ) )
-            // InternalOCLstdlib.g:14970:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:14971:1: ( ( ( rule__MapLiteralExpCS__Group_2__0 )? ) )
+            // InternalOCLstdlib.g:14972:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
             {
-            // InternalOCLstdlib.g:14970:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
-            // InternalOCLstdlib.g:14971:1: ( rule__MapLiteralExpCS__Group_2__0 )?
+            // InternalOCLstdlib.g:14972:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:14973:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:14972:1: ( rule__MapLiteralExpCS__Group_2__0 )?
+            // InternalOCLstdlib.g:14974:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             int alt129=2;
             int LA129_0 = input.LA(1);
 
@@ -44440,7 +44440,7 @@
             }
             switch (alt129) {
                 case 1 :
-                    // InternalOCLstdlib.g:14972:2: rule__MapLiteralExpCS__Group_2__0
+                    // InternalOCLstdlib.g:14974:2: rule__MapLiteralExpCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MapLiteralExpCS__Group_2__0();
@@ -44478,14 +44478,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__3"
-    // InternalOCLstdlib.g:14982:1: rule__MapLiteralExpCS__Group__3 : rule__MapLiteralExpCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:14984:1: rule__MapLiteralExpCS__Group__3 : rule__MapLiteralExpCS__Group__3__Impl ;
     public final void rule__MapLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14986:1: ( rule__MapLiteralExpCS__Group__3__Impl )
-            // InternalOCLstdlib.g:14987:2: rule__MapLiteralExpCS__Group__3__Impl
+            // InternalOCLstdlib.g:14988:1: ( rule__MapLiteralExpCS__Group__3__Impl )
+            // InternalOCLstdlib.g:14989:2: rule__MapLiteralExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__Group__3__Impl();
@@ -44511,17 +44511,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group__3__Impl"
-    // InternalOCLstdlib.g:14993:1: rule__MapLiteralExpCS__Group__3__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:14995:1: rule__MapLiteralExpCS__Group__3__Impl : ( '}' ) ;
     public final void rule__MapLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:14997:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:14998:1: ( '}' )
+            // InternalOCLstdlib.g:14999:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:15000:1: ( '}' )
             {
-            // InternalOCLstdlib.g:14998:1: ( '}' )
-            // InternalOCLstdlib.g:14999:1: '}'
+            // InternalOCLstdlib.g:15000:1: ( '}' )
+            // InternalOCLstdlib.g:15001:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
@@ -44552,14 +44552,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__0"
-    // InternalOCLstdlib.g:15020:1: rule__MapLiteralExpCS__Group_2__0 : rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 ;
+    // InternalOCLstdlib.g:15022:1: rule__MapLiteralExpCS__Group_2__0 : rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 ;
     public final void rule__MapLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15024:1: ( rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 )
-            // InternalOCLstdlib.g:15025:2: rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1
+            // InternalOCLstdlib.g:15026:1: ( rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 )
+            // InternalOCLstdlib.g:15027:2: rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__MapLiteralExpCS__Group_2__0__Impl();
@@ -44590,23 +44590,23 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:15032:1: rule__MapLiteralExpCS__Group_2__0__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalOCLstdlib.g:15034:1: rule__MapLiteralExpCS__Group_2__0__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__MapLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15036:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalOCLstdlib.g:15037:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLstdlib.g:15038:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalOCLstdlib.g:15039:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalOCLstdlib.g:15037:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
-            // InternalOCLstdlib.g:15038:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLstdlib.g:15039:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLstdlib.g:15040:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalOCLstdlib.g:15039:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
-            // InternalOCLstdlib.g:15039:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0
+            // InternalOCLstdlib.g:15041:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLstdlib.g:15041:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__OwnedPartsAssignment_2_0();
@@ -44641,14 +44641,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__1"
-    // InternalOCLstdlib.g:15049:1: rule__MapLiteralExpCS__Group_2__1 : rule__MapLiteralExpCS__Group_2__1__Impl ;
+    // InternalOCLstdlib.g:15051:1: rule__MapLiteralExpCS__Group_2__1 : rule__MapLiteralExpCS__Group_2__1__Impl ;
     public final void rule__MapLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15053:1: ( rule__MapLiteralExpCS__Group_2__1__Impl )
-            // InternalOCLstdlib.g:15054:2: rule__MapLiteralExpCS__Group_2__1__Impl
+            // InternalOCLstdlib.g:15055:1: ( rule__MapLiteralExpCS__Group_2__1__Impl )
+            // InternalOCLstdlib.g:15056:2: rule__MapLiteralExpCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__Group_2__1__Impl();
@@ -44674,22 +44674,22 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:15060:1: rule__MapLiteralExpCS__Group_2__1__Impl : ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) ;
+    // InternalOCLstdlib.g:15062:1: rule__MapLiteralExpCS__Group_2__1__Impl : ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) ;
     public final void rule__MapLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15064:1: ( ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) )
-            // InternalOCLstdlib.g:15065:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
+            // InternalOCLstdlib.g:15066:1: ( ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) )
+            // InternalOCLstdlib.g:15067:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
             {
-            // InternalOCLstdlib.g:15065:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
-            // InternalOCLstdlib.g:15066:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
+            // InternalOCLstdlib.g:15067:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
+            // InternalOCLstdlib.g:15068:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1());
             }
-            // InternalOCLstdlib.g:15067:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
+            // InternalOCLstdlib.g:15069:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             loop130:
             do {
                 int alt130=2;
@@ -44702,7 +44702,7 @@
 
                 switch (alt130) {
             	case 1 :
-            	    // InternalOCLstdlib.g:15067:2: rule__MapLiteralExpCS__Group_2_1__0
+            	    // InternalOCLstdlib.g:15069:2: rule__MapLiteralExpCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__MapLiteralExpCS__Group_2_1__0();
@@ -44743,14 +44743,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__0"
-    // InternalOCLstdlib.g:15081:1: rule__MapLiteralExpCS__Group_2_1__0 : rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 ;
+    // InternalOCLstdlib.g:15083:1: rule__MapLiteralExpCS__Group_2_1__0 : rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 ;
     public final void rule__MapLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15085:1: ( rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 )
-            // InternalOCLstdlib.g:15086:2: rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1
+            // InternalOCLstdlib.g:15087:1: ( rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 )
+            // InternalOCLstdlib.g:15088:2: rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__MapLiteralExpCS__Group_2_1__0__Impl();
@@ -44781,17 +44781,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__0__Impl"
-    // InternalOCLstdlib.g:15093:1: rule__MapLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:15095:1: rule__MapLiteralExpCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__MapLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15097:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:15098:1: ( ',' )
+            // InternalOCLstdlib.g:15099:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:15100:1: ( ',' )
             {
-            // InternalOCLstdlib.g:15098:1: ( ',' )
-            // InternalOCLstdlib.g:15099:1: ','
+            // InternalOCLstdlib.g:15100:1: ( ',' )
+            // InternalOCLstdlib.g:15101:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
@@ -44822,14 +44822,14 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__1"
-    // InternalOCLstdlib.g:15112:1: rule__MapLiteralExpCS__Group_2_1__1 : rule__MapLiteralExpCS__Group_2_1__1__Impl ;
+    // InternalOCLstdlib.g:15114:1: rule__MapLiteralExpCS__Group_2_1__1 : rule__MapLiteralExpCS__Group_2_1__1__Impl ;
     public final void rule__MapLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15116:1: ( rule__MapLiteralExpCS__Group_2_1__1__Impl )
-            // InternalOCLstdlib.g:15117:2: rule__MapLiteralExpCS__Group_2_1__1__Impl
+            // InternalOCLstdlib.g:15118:1: ( rule__MapLiteralExpCS__Group_2_1__1__Impl )
+            // InternalOCLstdlib.g:15119:2: rule__MapLiteralExpCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__Group_2_1__1__Impl();
@@ -44855,23 +44855,23 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__Group_2_1__1__Impl"
-    // InternalOCLstdlib.g:15123:1: rule__MapLiteralExpCS__Group_2_1__1__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalOCLstdlib.g:15125:1: rule__MapLiteralExpCS__Group_2_1__1__Impl : ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__MapLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15127:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalOCLstdlib.g:15128:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLstdlib.g:15129:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalOCLstdlib.g:15130:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalOCLstdlib.g:15128:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalOCLstdlib.g:15129:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLstdlib.g:15130:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLstdlib.g:15131:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalOCLstdlib.g:15130:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
-            // InternalOCLstdlib.g:15130:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1
+            // InternalOCLstdlib.g:15132:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLstdlib.g:15132:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1();
@@ -44906,14 +44906,14 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__0"
-    // InternalOCLstdlib.g:15144:1: rule__MapLiteralPartCS__Group__0 : rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 ;
+    // InternalOCLstdlib.g:15146:1: rule__MapLiteralPartCS__Group__0 : rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 ;
     public final void rule__MapLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15148:1: ( rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 )
-            // InternalOCLstdlib.g:15149:2: rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1
+            // InternalOCLstdlib.g:15150:1: ( rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 )
+            // InternalOCLstdlib.g:15151:2: rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_71);
             rule__MapLiteralPartCS__Group__0__Impl();
@@ -44944,23 +44944,23 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__0__Impl"
-    // InternalOCLstdlib.g:15156:1: rule__MapLiteralPartCS__Group__0__Impl : ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:15158:1: rule__MapLiteralPartCS__Group__0__Impl : ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) ;
     public final void rule__MapLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15160:1: ( ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) )
-            // InternalOCLstdlib.g:15161:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
+            // InternalOCLstdlib.g:15162:1: ( ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) )
+            // InternalOCLstdlib.g:15163:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:15161:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
-            // InternalOCLstdlib.g:15162:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
+            // InternalOCLstdlib.g:15163:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
+            // InternalOCLstdlib.g:15164:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0());
             }
-            // InternalOCLstdlib.g:15163:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
-            // InternalOCLstdlib.g:15163:2: rule__MapLiteralPartCS__OwnedKeyAssignment_0
+            // InternalOCLstdlib.g:15165:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
+            // InternalOCLstdlib.g:15165:2: rule__MapLiteralPartCS__OwnedKeyAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralPartCS__OwnedKeyAssignment_0();
@@ -44995,14 +44995,14 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__1"
-    // InternalOCLstdlib.g:15173:1: rule__MapLiteralPartCS__Group__1 : rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 ;
+    // InternalOCLstdlib.g:15175:1: rule__MapLiteralPartCS__Group__1 : rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 ;
     public final void rule__MapLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15177:1: ( rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 )
-            // InternalOCLstdlib.g:15178:2: rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2
+            // InternalOCLstdlib.g:15179:1: ( rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 )
+            // InternalOCLstdlib.g:15180:2: rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__MapLiteralPartCS__Group__1__Impl();
@@ -45033,17 +45033,17 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__1__Impl"
-    // InternalOCLstdlib.g:15185:1: rule__MapLiteralPartCS__Group__1__Impl : ( '<-' ) ;
+    // InternalOCLstdlib.g:15187:1: rule__MapLiteralPartCS__Group__1__Impl : ( '<-' ) ;
     public final void rule__MapLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15189:1: ( ( '<-' ) )
-            // InternalOCLstdlib.g:15190:1: ( '<-' )
+            // InternalOCLstdlib.g:15191:1: ( ( '<-' ) )
+            // InternalOCLstdlib.g:15192:1: ( '<-' )
             {
-            // InternalOCLstdlib.g:15190:1: ( '<-' )
-            // InternalOCLstdlib.g:15191:1: '<-'
+            // InternalOCLstdlib.g:15192:1: ( '<-' )
+            // InternalOCLstdlib.g:15193:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
@@ -45074,14 +45074,14 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__2"
-    // InternalOCLstdlib.g:15204:1: rule__MapLiteralPartCS__Group__2 : rule__MapLiteralPartCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:15206:1: rule__MapLiteralPartCS__Group__2 : rule__MapLiteralPartCS__Group__2__Impl ;
     public final void rule__MapLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15208:1: ( rule__MapLiteralPartCS__Group__2__Impl )
-            // InternalOCLstdlib.g:15209:2: rule__MapLiteralPartCS__Group__2__Impl
+            // InternalOCLstdlib.g:15210:1: ( rule__MapLiteralPartCS__Group__2__Impl )
+            // InternalOCLstdlib.g:15211:2: rule__MapLiteralPartCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralPartCS__Group__2__Impl();
@@ -45107,23 +45107,23 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__Group__2__Impl"
-    // InternalOCLstdlib.g:15215:1: rule__MapLiteralPartCS__Group__2__Impl : ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:15217:1: rule__MapLiteralPartCS__Group__2__Impl : ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) ;
     public final void rule__MapLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15219:1: ( ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) )
-            // InternalOCLstdlib.g:15220:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
+            // InternalOCLstdlib.g:15221:1: ( ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) )
+            // InternalOCLstdlib.g:15222:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:15220:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
-            // InternalOCLstdlib.g:15221:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
+            // InternalOCLstdlib.g:15222:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
+            // InternalOCLstdlib.g:15223:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2());
             }
-            // InternalOCLstdlib.g:15222:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
-            // InternalOCLstdlib.g:15222:2: rule__MapLiteralPartCS__OwnedValueAssignment_2
+            // InternalOCLstdlib.g:15224:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
+            // InternalOCLstdlib.g:15224:2: rule__MapLiteralPartCS__OwnedValueAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MapLiteralPartCS__OwnedValueAssignment_2();
@@ -45158,14 +45158,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__0"
-    // InternalOCLstdlib.g:15238:1: rule__TupleLiteralExpCS__Group__0 : rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 ;
+    // InternalOCLstdlib.g:15240:1: rule__TupleLiteralExpCS__Group__0 : rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 ;
     public final void rule__TupleLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15242:1: ( rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 )
-            // InternalOCLstdlib.g:15243:2: rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1
+            // InternalOCLstdlib.g:15244:1: ( rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 )
+            // InternalOCLstdlib.g:15245:2: rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_65);
             rule__TupleLiteralExpCS__Group__0__Impl();
@@ -45196,17 +45196,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:15250:1: rule__TupleLiteralExpCS__Group__0__Impl : ( 'Tuple' ) ;
+    // InternalOCLstdlib.g:15252:1: rule__TupleLiteralExpCS__Group__0__Impl : ( 'Tuple' ) ;
     public final void rule__TupleLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15254:1: ( ( 'Tuple' ) )
-            // InternalOCLstdlib.g:15255:1: ( 'Tuple' )
+            // InternalOCLstdlib.g:15256:1: ( ( 'Tuple' ) )
+            // InternalOCLstdlib.g:15257:1: ( 'Tuple' )
             {
-            // InternalOCLstdlib.g:15255:1: ( 'Tuple' )
-            // InternalOCLstdlib.g:15256:1: 'Tuple'
+            // InternalOCLstdlib.g:15257:1: ( 'Tuple' )
+            // InternalOCLstdlib.g:15258:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
@@ -45237,14 +45237,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__1"
-    // InternalOCLstdlib.g:15269:1: rule__TupleLiteralExpCS__Group__1 : rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 ;
+    // InternalOCLstdlib.g:15271:1: rule__TupleLiteralExpCS__Group__1 : rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 ;
     public final void rule__TupleLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15273:1: ( rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 )
-            // InternalOCLstdlib.g:15274:2: rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2
+            // InternalOCLstdlib.g:15275:1: ( rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 )
+            // InternalOCLstdlib.g:15276:2: rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__TupleLiteralExpCS__Group__1__Impl();
@@ -45275,17 +45275,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:15281:1: rule__TupleLiteralExpCS__Group__1__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:15283:1: rule__TupleLiteralExpCS__Group__1__Impl : ( '{' ) ;
     public final void rule__TupleLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15285:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:15286:1: ( '{' )
+            // InternalOCLstdlib.g:15287:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:15288:1: ( '{' )
             {
-            // InternalOCLstdlib.g:15286:1: ( '{' )
-            // InternalOCLstdlib.g:15287:1: '{'
+            // InternalOCLstdlib.g:15288:1: ( '{' )
+            // InternalOCLstdlib.g:15289:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
@@ -45316,14 +45316,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__2"
-    // InternalOCLstdlib.g:15300:1: rule__TupleLiteralExpCS__Group__2 : rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 ;
+    // InternalOCLstdlib.g:15302:1: rule__TupleLiteralExpCS__Group__2 : rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 ;
     public final void rule__TupleLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15304:1: ( rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 )
-            // InternalOCLstdlib.g:15305:2: rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3
+            // InternalOCLstdlib.g:15306:1: ( rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 )
+            // InternalOCLstdlib.g:15307:2: rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_72);
             rule__TupleLiteralExpCS__Group__2__Impl();
@@ -45354,23 +45354,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__2__Impl"
-    // InternalOCLstdlib.g:15312:1: rule__TupleLiteralExpCS__Group__2__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) ;
+    // InternalOCLstdlib.g:15314:1: rule__TupleLiteralExpCS__Group__2__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) ;
     public final void rule__TupleLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15316:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) )
-            // InternalOCLstdlib.g:15317:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
+            // InternalOCLstdlib.g:15318:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) )
+            // InternalOCLstdlib.g:15319:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
             {
-            // InternalOCLstdlib.g:15317:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
-            // InternalOCLstdlib.g:15318:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
+            // InternalOCLstdlib.g:15319:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
+            // InternalOCLstdlib.g:15320:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2());
             }
-            // InternalOCLstdlib.g:15319:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
-            // InternalOCLstdlib.g:15319:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_2
+            // InternalOCLstdlib.g:15321:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
+            // InternalOCLstdlib.g:15321:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__OwnedPartsAssignment_2();
@@ -45405,14 +45405,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__3"
-    // InternalOCLstdlib.g:15329:1: rule__TupleLiteralExpCS__Group__3 : rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 ;
+    // InternalOCLstdlib.g:15331:1: rule__TupleLiteralExpCS__Group__3 : rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 ;
     public final void rule__TupleLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15333:1: ( rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 )
-            // InternalOCLstdlib.g:15334:2: rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4
+            // InternalOCLstdlib.g:15335:1: ( rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 )
+            // InternalOCLstdlib.g:15336:2: rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_72);
             rule__TupleLiteralExpCS__Group__3__Impl();
@@ -45443,22 +45443,22 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__3__Impl"
-    // InternalOCLstdlib.g:15341:1: rule__TupleLiteralExpCS__Group__3__Impl : ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) ;
+    // InternalOCLstdlib.g:15343:1: rule__TupleLiteralExpCS__Group__3__Impl : ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) ;
     public final void rule__TupleLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15345:1: ( ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) )
-            // InternalOCLstdlib.g:15346:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
+            // InternalOCLstdlib.g:15347:1: ( ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) )
+            // InternalOCLstdlib.g:15348:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
             {
-            // InternalOCLstdlib.g:15346:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
-            // InternalOCLstdlib.g:15347:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
+            // InternalOCLstdlib.g:15348:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
+            // InternalOCLstdlib.g:15349:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3());
             }
-            // InternalOCLstdlib.g:15348:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
+            // InternalOCLstdlib.g:15350:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             loop131:
             do {
                 int alt131=2;
@@ -45471,7 +45471,7 @@
 
                 switch (alt131) {
             	case 1 :
-            	    // InternalOCLstdlib.g:15348:2: rule__TupleLiteralExpCS__Group_3__0
+            	    // InternalOCLstdlib.g:15350:2: rule__TupleLiteralExpCS__Group_3__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__TupleLiteralExpCS__Group_3__0();
@@ -45512,14 +45512,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__4"
-    // InternalOCLstdlib.g:15358:1: rule__TupleLiteralExpCS__Group__4 : rule__TupleLiteralExpCS__Group__4__Impl ;
+    // InternalOCLstdlib.g:15360:1: rule__TupleLiteralExpCS__Group__4 : rule__TupleLiteralExpCS__Group__4__Impl ;
     public final void rule__TupleLiteralExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15362:1: ( rule__TupleLiteralExpCS__Group__4__Impl )
-            // InternalOCLstdlib.g:15363:2: rule__TupleLiteralExpCS__Group__4__Impl
+            // InternalOCLstdlib.g:15364:1: ( rule__TupleLiteralExpCS__Group__4__Impl )
+            // InternalOCLstdlib.g:15365:2: rule__TupleLiteralExpCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__Group__4__Impl();
@@ -45545,17 +45545,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group__4__Impl"
-    // InternalOCLstdlib.g:15369:1: rule__TupleLiteralExpCS__Group__4__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:15371:1: rule__TupleLiteralExpCS__Group__4__Impl : ( '}' ) ;
     public final void rule__TupleLiteralExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15373:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:15374:1: ( '}' )
+            // InternalOCLstdlib.g:15375:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:15376:1: ( '}' )
             {
-            // InternalOCLstdlib.g:15374:1: ( '}' )
-            // InternalOCLstdlib.g:15375:1: '}'
+            // InternalOCLstdlib.g:15376:1: ( '}' )
+            // InternalOCLstdlib.g:15377:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
@@ -45586,14 +45586,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__0"
-    // InternalOCLstdlib.g:15398:1: rule__TupleLiteralExpCS__Group_3__0 : rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 ;
+    // InternalOCLstdlib.g:15400:1: rule__TupleLiteralExpCS__Group_3__0 : rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 ;
     public final void rule__TupleLiteralExpCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15402:1: ( rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 )
-            // InternalOCLstdlib.g:15403:2: rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1
+            // InternalOCLstdlib.g:15404:1: ( rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 )
+            // InternalOCLstdlib.g:15405:2: rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__TupleLiteralExpCS__Group_3__0__Impl();
@@ -45624,17 +45624,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__0__Impl"
-    // InternalOCLstdlib.g:15410:1: rule__TupleLiteralExpCS__Group_3__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:15412:1: rule__TupleLiteralExpCS__Group_3__0__Impl : ( ',' ) ;
     public final void rule__TupleLiteralExpCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15414:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:15415:1: ( ',' )
+            // InternalOCLstdlib.g:15416:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:15417:1: ( ',' )
             {
-            // InternalOCLstdlib.g:15415:1: ( ',' )
-            // InternalOCLstdlib.g:15416:1: ','
+            // InternalOCLstdlib.g:15417:1: ( ',' )
+            // InternalOCLstdlib.g:15418:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
@@ -45665,14 +45665,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__1"
-    // InternalOCLstdlib.g:15429:1: rule__TupleLiteralExpCS__Group_3__1 : rule__TupleLiteralExpCS__Group_3__1__Impl ;
+    // InternalOCLstdlib.g:15431:1: rule__TupleLiteralExpCS__Group_3__1 : rule__TupleLiteralExpCS__Group_3__1__Impl ;
     public final void rule__TupleLiteralExpCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15433:1: ( rule__TupleLiteralExpCS__Group_3__1__Impl )
-            // InternalOCLstdlib.g:15434:2: rule__TupleLiteralExpCS__Group_3__1__Impl
+            // InternalOCLstdlib.g:15435:1: ( rule__TupleLiteralExpCS__Group_3__1__Impl )
+            // InternalOCLstdlib.g:15436:2: rule__TupleLiteralExpCS__Group_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__Group_3__1__Impl();
@@ -45698,23 +45698,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__Group_3__1__Impl"
-    // InternalOCLstdlib.g:15440:1: rule__TupleLiteralExpCS__Group_3__1__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) ;
+    // InternalOCLstdlib.g:15442:1: rule__TupleLiteralExpCS__Group_3__1__Impl : ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) ;
     public final void rule__TupleLiteralExpCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15444:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) )
-            // InternalOCLstdlib.g:15445:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
+            // InternalOCLstdlib.g:15446:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) )
+            // InternalOCLstdlib.g:15447:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
             {
-            // InternalOCLstdlib.g:15445:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
-            // InternalOCLstdlib.g:15446:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
+            // InternalOCLstdlib.g:15447:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
+            // InternalOCLstdlib.g:15448:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1());
             }
-            // InternalOCLstdlib.g:15447:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
-            // InternalOCLstdlib.g:15447:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1
+            // InternalOCLstdlib.g:15449:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
+            // InternalOCLstdlib.g:15449:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1();
@@ -45749,14 +45749,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__0"
-    // InternalOCLstdlib.g:15461:1: rule__TupleLiteralPartCS__Group__0 : rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 ;
+    // InternalOCLstdlib.g:15463:1: rule__TupleLiteralPartCS__Group__0 : rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 ;
     public final void rule__TupleLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15465:1: ( rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 )
-            // InternalOCLstdlib.g:15466:2: rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1
+            // InternalOCLstdlib.g:15467:1: ( rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 )
+            // InternalOCLstdlib.g:15468:2: rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_73);
             rule__TupleLiteralPartCS__Group__0__Impl();
@@ -45787,23 +45787,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__0__Impl"
-    // InternalOCLstdlib.g:15473:1: rule__TupleLiteralPartCS__Group__0__Impl : ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:15475:1: rule__TupleLiteralPartCS__Group__0__Impl : ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) ;
     public final void rule__TupleLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15477:1: ( ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:15478:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:15479:1: ( ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:15480:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:15478:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:15479:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:15480:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:15481:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:15480:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:15480:2: rule__TupleLiteralPartCS__NameAssignment_0
+            // InternalOCLstdlib.g:15482:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:15482:2: rule__TupleLiteralPartCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__NameAssignment_0();
@@ -45838,14 +45838,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__1"
-    // InternalOCLstdlib.g:15490:1: rule__TupleLiteralPartCS__Group__1 : rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 ;
+    // InternalOCLstdlib.g:15492:1: rule__TupleLiteralPartCS__Group__1 : rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 ;
     public final void rule__TupleLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15494:1: ( rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 )
-            // InternalOCLstdlib.g:15495:2: rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2
+            // InternalOCLstdlib.g:15496:1: ( rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 )
+            // InternalOCLstdlib.g:15497:2: rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_73);
             rule__TupleLiteralPartCS__Group__1__Impl();
@@ -45876,22 +45876,22 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__1__Impl"
-    // InternalOCLstdlib.g:15502:1: rule__TupleLiteralPartCS__Group__1__Impl : ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) ;
+    // InternalOCLstdlib.g:15504:1: rule__TupleLiteralPartCS__Group__1__Impl : ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) ;
     public final void rule__TupleLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15506:1: ( ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) )
-            // InternalOCLstdlib.g:15507:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:15508:1: ( ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) )
+            // InternalOCLstdlib.g:15509:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
             {
-            // InternalOCLstdlib.g:15507:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
-            // InternalOCLstdlib.g:15508:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
+            // InternalOCLstdlib.g:15509:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:15510:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:15509:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
+            // InternalOCLstdlib.g:15511:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             int alt132=2;
             int LA132_0 = input.LA(1);
 
@@ -45900,7 +45900,7 @@
             }
             switch (alt132) {
                 case 1 :
-                    // InternalOCLstdlib.g:15509:2: rule__TupleLiteralPartCS__Group_1__0
+                    // InternalOCLstdlib.g:15511:2: rule__TupleLiteralPartCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TupleLiteralPartCS__Group_1__0();
@@ -45938,14 +45938,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__2"
-    // InternalOCLstdlib.g:15519:1: rule__TupleLiteralPartCS__Group__2 : rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 ;
+    // InternalOCLstdlib.g:15521:1: rule__TupleLiteralPartCS__Group__2 : rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 ;
     public final void rule__TupleLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15523:1: ( rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 )
-            // InternalOCLstdlib.g:15524:2: rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3
+            // InternalOCLstdlib.g:15525:1: ( rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 )
+            // InternalOCLstdlib.g:15526:2: rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__TupleLiteralPartCS__Group__2__Impl();
@@ -45976,17 +45976,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__2__Impl"
-    // InternalOCLstdlib.g:15531:1: rule__TupleLiteralPartCS__Group__2__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:15533:1: rule__TupleLiteralPartCS__Group__2__Impl : ( '=' ) ;
     public final void rule__TupleLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15535:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:15536:1: ( '=' )
+            // InternalOCLstdlib.g:15537:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:15538:1: ( '=' )
             {
-            // InternalOCLstdlib.g:15536:1: ( '=' )
-            // InternalOCLstdlib.g:15537:1: '='
+            // InternalOCLstdlib.g:15538:1: ( '=' )
+            // InternalOCLstdlib.g:15539:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
@@ -46017,14 +46017,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__3"
-    // InternalOCLstdlib.g:15550:1: rule__TupleLiteralPartCS__Group__3 : rule__TupleLiteralPartCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:15552:1: rule__TupleLiteralPartCS__Group__3 : rule__TupleLiteralPartCS__Group__3__Impl ;
     public final void rule__TupleLiteralPartCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15554:1: ( rule__TupleLiteralPartCS__Group__3__Impl )
-            // InternalOCLstdlib.g:15555:2: rule__TupleLiteralPartCS__Group__3__Impl
+            // InternalOCLstdlib.g:15556:1: ( rule__TupleLiteralPartCS__Group__3__Impl )
+            // InternalOCLstdlib.g:15557:2: rule__TupleLiteralPartCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__Group__3__Impl();
@@ -46050,23 +46050,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group__3__Impl"
-    // InternalOCLstdlib.g:15561:1: rule__TupleLiteralPartCS__Group__3__Impl : ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) ;
+    // InternalOCLstdlib.g:15563:1: rule__TupleLiteralPartCS__Group__3__Impl : ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) ;
     public final void rule__TupleLiteralPartCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15565:1: ( ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) )
-            // InternalOCLstdlib.g:15566:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
+            // InternalOCLstdlib.g:15567:1: ( ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) )
+            // InternalOCLstdlib.g:15568:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
             {
-            // InternalOCLstdlib.g:15566:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
-            // InternalOCLstdlib.g:15567:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
+            // InternalOCLstdlib.g:15568:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
+            // InternalOCLstdlib.g:15569:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3());
             }
-            // InternalOCLstdlib.g:15568:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
-            // InternalOCLstdlib.g:15568:2: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3
+            // InternalOCLstdlib.g:15570:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
+            // InternalOCLstdlib.g:15570:2: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3();
@@ -46101,14 +46101,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__0"
-    // InternalOCLstdlib.g:15586:1: rule__TupleLiteralPartCS__Group_1__0 : rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 ;
+    // InternalOCLstdlib.g:15588:1: rule__TupleLiteralPartCS__Group_1__0 : rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 ;
     public final void rule__TupleLiteralPartCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15590:1: ( rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 )
-            // InternalOCLstdlib.g:15591:2: rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1
+            // InternalOCLstdlib.g:15592:1: ( rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 )
+            // InternalOCLstdlib.g:15593:2: rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__TupleLiteralPartCS__Group_1__0__Impl();
@@ -46139,17 +46139,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:15598:1: rule__TupleLiteralPartCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:15600:1: rule__TupleLiteralPartCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__TupleLiteralPartCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15602:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:15603:1: ( ':' )
+            // InternalOCLstdlib.g:15604:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:15605:1: ( ':' )
             {
-            // InternalOCLstdlib.g:15603:1: ( ':' )
-            // InternalOCLstdlib.g:15604:1: ':'
+            // InternalOCLstdlib.g:15605:1: ( ':' )
+            // InternalOCLstdlib.g:15606:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
@@ -46180,14 +46180,14 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__1"
-    // InternalOCLstdlib.g:15617:1: rule__TupleLiteralPartCS__Group_1__1 : rule__TupleLiteralPartCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:15619:1: rule__TupleLiteralPartCS__Group_1__1 : rule__TupleLiteralPartCS__Group_1__1__Impl ;
     public final void rule__TupleLiteralPartCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15621:1: ( rule__TupleLiteralPartCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:15622:2: rule__TupleLiteralPartCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:15623:1: ( rule__TupleLiteralPartCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:15624:2: rule__TupleLiteralPartCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__Group_1__1__Impl();
@@ -46213,23 +46213,23 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:15628:1: rule__TupleLiteralPartCS__Group_1__1__Impl : ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalOCLstdlib.g:15630:1: rule__TupleLiteralPartCS__Group_1__1__Impl : ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__TupleLiteralPartCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15632:1: ( ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalOCLstdlib.g:15633:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLstdlib.g:15634:1: ( ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalOCLstdlib.g:15635:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalOCLstdlib.g:15633:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
-            // InternalOCLstdlib.g:15634:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLstdlib.g:15635:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLstdlib.g:15636:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalOCLstdlib.g:15635:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
-            // InternalOCLstdlib.g:15635:2: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1
+            // InternalOCLstdlib.g:15637:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLstdlib.g:15637:2: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1();
@@ -46264,14 +46264,14 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__0"
-    // InternalOCLstdlib.g:15649:1: rule__UnlimitedNaturalLiteralExpCS__Group__0 : rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 ;
+    // InternalOCLstdlib.g:15651:1: rule__UnlimitedNaturalLiteralExpCS__Group__0 : rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15653:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 )
-            // InternalOCLstdlib.g:15654:2: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1
+            // InternalOCLstdlib.g:15655:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 )
+            // InternalOCLstdlib.g:15656:2: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_74);
             rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl();
@@ -46302,23 +46302,23 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:15661:1: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl : ( () ) ;
+    // InternalOCLstdlib.g:15663:1: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl : ( () ) ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15665:1: ( ( () ) )
-            // InternalOCLstdlib.g:15666:1: ( () )
+            // InternalOCLstdlib.g:15667:1: ( ( () ) )
+            // InternalOCLstdlib.g:15668:1: ( () )
             {
-            // InternalOCLstdlib.g:15666:1: ( () )
-            // InternalOCLstdlib.g:15667:1: ()
+            // InternalOCLstdlib.g:15668:1: ( () )
+            // InternalOCLstdlib.g:15669:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0());
             }
-            // InternalOCLstdlib.g:15668:1: ()
-            // InternalOCLstdlib.g:15670:1:
+            // InternalOCLstdlib.g:15670:1: ()
+            // InternalOCLstdlib.g:15672:1:
             {
             }
 
@@ -46343,14 +46343,14 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__1"
-    // InternalOCLstdlib.g:15680:1: rule__UnlimitedNaturalLiteralExpCS__Group__1 : rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:15682:1: rule__UnlimitedNaturalLiteralExpCS__Group__1 : rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15684:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl )
-            // InternalOCLstdlib.g:15685:2: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl
+            // InternalOCLstdlib.g:15686:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl )
+            // InternalOCLstdlib.g:15687:2: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl();
@@ -46376,17 +46376,17 @@
 
 
     // $ANTLR start "rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:15691:1: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl : ( '*' ) ;
+    // InternalOCLstdlib.g:15693:1: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl : ( '*' ) ;
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15695:1: ( ( '*' ) )
-            // InternalOCLstdlib.g:15696:1: ( '*' )
+            // InternalOCLstdlib.g:15697:1: ( ( '*' ) )
+            // InternalOCLstdlib.g:15698:1: ( '*' )
             {
-            // InternalOCLstdlib.g:15696:1: ( '*' )
-            // InternalOCLstdlib.g:15697:1: '*'
+            // InternalOCLstdlib.g:15698:1: ( '*' )
+            // InternalOCLstdlib.g:15699:1: '*'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
@@ -46417,14 +46417,14 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__0"
-    // InternalOCLstdlib.g:15714:1: rule__InvalidLiteralExpCS__Group__0 : rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 ;
+    // InternalOCLstdlib.g:15716:1: rule__InvalidLiteralExpCS__Group__0 : rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 ;
     public final void rule__InvalidLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15718:1: ( rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 )
-            // InternalOCLstdlib.g:15719:2: rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1
+            // InternalOCLstdlib.g:15720:1: ( rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 )
+            // InternalOCLstdlib.g:15721:2: rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_75);
             rule__InvalidLiteralExpCS__Group__0__Impl();
@@ -46455,23 +46455,23 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:15726:1: rule__InvalidLiteralExpCS__Group__0__Impl : ( () ) ;
+    // InternalOCLstdlib.g:15728:1: rule__InvalidLiteralExpCS__Group__0__Impl : ( () ) ;
     public final void rule__InvalidLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15730:1: ( ( () ) )
-            // InternalOCLstdlib.g:15731:1: ( () )
+            // InternalOCLstdlib.g:15732:1: ( ( () ) )
+            // InternalOCLstdlib.g:15733:1: ( () )
             {
-            // InternalOCLstdlib.g:15731:1: ( () )
-            // InternalOCLstdlib.g:15732:1: ()
+            // InternalOCLstdlib.g:15733:1: ( () )
+            // InternalOCLstdlib.g:15734:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0());
             }
-            // InternalOCLstdlib.g:15733:1: ()
-            // InternalOCLstdlib.g:15735:1:
+            // InternalOCLstdlib.g:15735:1: ()
+            // InternalOCLstdlib.g:15737:1:
             {
             }
 
@@ -46496,14 +46496,14 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__1"
-    // InternalOCLstdlib.g:15745:1: rule__InvalidLiteralExpCS__Group__1 : rule__InvalidLiteralExpCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:15747:1: rule__InvalidLiteralExpCS__Group__1 : rule__InvalidLiteralExpCS__Group__1__Impl ;
     public final void rule__InvalidLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15749:1: ( rule__InvalidLiteralExpCS__Group__1__Impl )
-            // InternalOCLstdlib.g:15750:2: rule__InvalidLiteralExpCS__Group__1__Impl
+            // InternalOCLstdlib.g:15751:1: ( rule__InvalidLiteralExpCS__Group__1__Impl )
+            // InternalOCLstdlib.g:15752:2: rule__InvalidLiteralExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__InvalidLiteralExpCS__Group__1__Impl();
@@ -46529,17 +46529,17 @@
 
 
     // $ANTLR start "rule__InvalidLiteralExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:15756:1: rule__InvalidLiteralExpCS__Group__1__Impl : ( 'invalid' ) ;
+    // InternalOCLstdlib.g:15758:1: rule__InvalidLiteralExpCS__Group__1__Impl : ( 'invalid' ) ;
     public final void rule__InvalidLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15760:1: ( ( 'invalid' ) )
-            // InternalOCLstdlib.g:15761:1: ( 'invalid' )
+            // InternalOCLstdlib.g:15762:1: ( ( 'invalid' ) )
+            // InternalOCLstdlib.g:15763:1: ( 'invalid' )
             {
-            // InternalOCLstdlib.g:15761:1: ( 'invalid' )
-            // InternalOCLstdlib.g:15762:1: 'invalid'
+            // InternalOCLstdlib.g:15763:1: ( 'invalid' )
+            // InternalOCLstdlib.g:15764:1: 'invalid'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
@@ -46570,14 +46570,14 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__0"
-    // InternalOCLstdlib.g:15779:1: rule__NullLiteralExpCS__Group__0 : rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 ;
+    // InternalOCLstdlib.g:15781:1: rule__NullLiteralExpCS__Group__0 : rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 ;
     public final void rule__NullLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15783:1: ( rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 )
-            // InternalOCLstdlib.g:15784:2: rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1
+            // InternalOCLstdlib.g:15785:1: ( rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 )
+            // InternalOCLstdlib.g:15786:2: rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_76);
             rule__NullLiteralExpCS__Group__0__Impl();
@@ -46608,23 +46608,23 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:15791:1: rule__NullLiteralExpCS__Group__0__Impl : ( () ) ;
+    // InternalOCLstdlib.g:15793:1: rule__NullLiteralExpCS__Group__0__Impl : ( () ) ;
     public final void rule__NullLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15795:1: ( ( () ) )
-            // InternalOCLstdlib.g:15796:1: ( () )
+            // InternalOCLstdlib.g:15797:1: ( ( () ) )
+            // InternalOCLstdlib.g:15798:1: ( () )
             {
-            // InternalOCLstdlib.g:15796:1: ( () )
-            // InternalOCLstdlib.g:15797:1: ()
+            // InternalOCLstdlib.g:15798:1: ( () )
+            // InternalOCLstdlib.g:15799:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0());
             }
-            // InternalOCLstdlib.g:15798:1: ()
-            // InternalOCLstdlib.g:15800:1:
+            // InternalOCLstdlib.g:15800:1: ()
+            // InternalOCLstdlib.g:15802:1:
             {
             }
 
@@ -46649,14 +46649,14 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__1"
-    // InternalOCLstdlib.g:15810:1: rule__NullLiteralExpCS__Group__1 : rule__NullLiteralExpCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:15812:1: rule__NullLiteralExpCS__Group__1 : rule__NullLiteralExpCS__Group__1__Impl ;
     public final void rule__NullLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15814:1: ( rule__NullLiteralExpCS__Group__1__Impl )
-            // InternalOCLstdlib.g:15815:2: rule__NullLiteralExpCS__Group__1__Impl
+            // InternalOCLstdlib.g:15816:1: ( rule__NullLiteralExpCS__Group__1__Impl )
+            // InternalOCLstdlib.g:15817:2: rule__NullLiteralExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NullLiteralExpCS__Group__1__Impl();
@@ -46682,17 +46682,17 @@
 
 
     // $ANTLR start "rule__NullLiteralExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:15821:1: rule__NullLiteralExpCS__Group__1__Impl : ( 'null' ) ;
+    // InternalOCLstdlib.g:15823:1: rule__NullLiteralExpCS__Group__1__Impl : ( 'null' ) ;
     public final void rule__NullLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15825:1: ( ( 'null' ) )
-            // InternalOCLstdlib.g:15826:1: ( 'null' )
+            // InternalOCLstdlib.g:15827:1: ( ( 'null' ) )
+            // InternalOCLstdlib.g:15828:1: ( 'null' )
             {
-            // InternalOCLstdlib.g:15826:1: ( 'null' )
-            // InternalOCLstdlib.g:15827:1: 'null'
+            // InternalOCLstdlib.g:15828:1: ( 'null' )
+            // InternalOCLstdlib.g:15829:1: 'null'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
@@ -46723,14 +46723,14 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__0"
-    // InternalOCLstdlib.g:15844:1: rule__TypeLiteralWithMultiplicityCS__Group__0 : rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 ;
+    // InternalOCLstdlib.g:15846:1: rule__TypeLiteralWithMultiplicityCS__Group__0 : rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15848:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 )
-            // InternalOCLstdlib.g:15849:2: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1
+            // InternalOCLstdlib.g:15850:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 )
+            // InternalOCLstdlib.g:15851:2: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_60);
             rule__TypeLiteralWithMultiplicityCS__Group__0__Impl();
@@ -46761,17 +46761,17 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__0__Impl"
-    // InternalOCLstdlib.g:15856:1: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl : ( ruleTypeLiteralCS ) ;
+    // InternalOCLstdlib.g:15858:1: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl : ( ruleTypeLiteralCS ) ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15860:1: ( ( ruleTypeLiteralCS ) )
-            // InternalOCLstdlib.g:15861:1: ( ruleTypeLiteralCS )
+            // InternalOCLstdlib.g:15862:1: ( ( ruleTypeLiteralCS ) )
+            // InternalOCLstdlib.g:15863:1: ( ruleTypeLiteralCS )
             {
-            // InternalOCLstdlib.g:15861:1: ( ruleTypeLiteralCS )
-            // InternalOCLstdlib.g:15862:1: ruleTypeLiteralCS
+            // InternalOCLstdlib.g:15863:1: ( ruleTypeLiteralCS )
+            // InternalOCLstdlib.g:15864:1: ruleTypeLiteralCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
@@ -46806,14 +46806,14 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__1"
-    // InternalOCLstdlib.g:15873:1: rule__TypeLiteralWithMultiplicityCS__Group__1 : rule__TypeLiteralWithMultiplicityCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:15875:1: rule__TypeLiteralWithMultiplicityCS__Group__1 : rule__TypeLiteralWithMultiplicityCS__Group__1__Impl ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15877:1: ( rule__TypeLiteralWithMultiplicityCS__Group__1__Impl )
-            // InternalOCLstdlib.g:15878:2: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl
+            // InternalOCLstdlib.g:15879:1: ( rule__TypeLiteralWithMultiplicityCS__Group__1__Impl )
+            // InternalOCLstdlib.g:15880:2: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeLiteralWithMultiplicityCS__Group__1__Impl();
@@ -46839,22 +46839,22 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__Group__1__Impl"
-    // InternalOCLstdlib.g:15884:1: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl : ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) ;
+    // InternalOCLstdlib.g:15886:1: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl : ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) ;
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15888:1: ( ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) )
-            // InternalOCLstdlib.g:15889:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalOCLstdlib.g:15890:1: ( ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) )
+            // InternalOCLstdlib.g:15891:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
             {
-            // InternalOCLstdlib.g:15889:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
-            // InternalOCLstdlib.g:15890:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
+            // InternalOCLstdlib.g:15891:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalOCLstdlib.g:15892:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1());
             }
-            // InternalOCLstdlib.g:15891:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
+            // InternalOCLstdlib.g:15893:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             int alt133=2;
             int LA133_0 = input.LA(1);
 
@@ -46863,7 +46863,7 @@
             }
             switch (alt133) {
                 case 1 :
-                    // InternalOCLstdlib.g:15891:2: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1
+                    // InternalOCLstdlib.g:15893:2: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1();
@@ -46901,14 +46901,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__0"
-    // InternalOCLstdlib.g:15905:1: rule__TypeNameExpCS__Group__0 : rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 ;
+    // InternalOCLstdlib.g:15907:1: rule__TypeNameExpCS__Group__0 : rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 ;
     public final void rule__TypeNameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15909:1: ( rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 )
-            // InternalOCLstdlib.g:15910:2: rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1
+            // InternalOCLstdlib.g:15911:1: ( rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 )
+            // InternalOCLstdlib.g:15912:2: rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_65);
             rule__TypeNameExpCS__Group__0__Impl();
@@ -46939,23 +46939,23 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:15917:1: rule__TypeNameExpCS__Group__0__Impl : ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:15919:1: rule__TypeNameExpCS__Group__0__Impl : ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) ;
     public final void rule__TypeNameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15921:1: ( ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:15922:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalOCLstdlib.g:15923:1: ( ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:15924:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:15922:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
-            // InternalOCLstdlib.g:15923:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
+            // InternalOCLstdlib.g:15924:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalOCLstdlib.g:15925:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
-            // InternalOCLstdlib.g:15924:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
-            // InternalOCLstdlib.g:15924:2: rule__TypeNameExpCS__OwnedPathNameAssignment_0
+            // InternalOCLstdlib.g:15926:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
+            // InternalOCLstdlib.g:15926:2: rule__TypeNameExpCS__OwnedPathNameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__OwnedPathNameAssignment_0();
@@ -46990,14 +46990,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__1"
-    // InternalOCLstdlib.g:15934:1: rule__TypeNameExpCS__Group__1 : rule__TypeNameExpCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:15936:1: rule__TypeNameExpCS__Group__1 : rule__TypeNameExpCS__Group__1__Impl ;
     public final void rule__TypeNameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15938:1: ( rule__TypeNameExpCS__Group__1__Impl )
-            // InternalOCLstdlib.g:15939:2: rule__TypeNameExpCS__Group__1__Impl
+            // InternalOCLstdlib.g:15940:1: ( rule__TypeNameExpCS__Group__1__Impl )
+            // InternalOCLstdlib.g:15941:2: rule__TypeNameExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__Group__1__Impl();
@@ -47023,22 +47023,22 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:15945:1: rule__TypeNameExpCS__Group__1__Impl : ( ( rule__TypeNameExpCS__Group_1__0 )? ) ;
+    // InternalOCLstdlib.g:15947:1: rule__TypeNameExpCS__Group__1__Impl : ( ( rule__TypeNameExpCS__Group_1__0 )? ) ;
     public final void rule__TypeNameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15949:1: ( ( ( rule__TypeNameExpCS__Group_1__0 )? ) )
-            // InternalOCLstdlib.g:15950:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:15951:1: ( ( ( rule__TypeNameExpCS__Group_1__0 )? ) )
+            // InternalOCLstdlib.g:15952:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
             {
-            // InternalOCLstdlib.g:15950:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
-            // InternalOCLstdlib.g:15951:1: ( rule__TypeNameExpCS__Group_1__0 )?
+            // InternalOCLstdlib.g:15952:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:15953:1: ( rule__TypeNameExpCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:15952:1: ( rule__TypeNameExpCS__Group_1__0 )?
+            // InternalOCLstdlib.g:15954:1: ( rule__TypeNameExpCS__Group_1__0 )?
             int alt134=2;
             int LA134_0 = input.LA(1);
 
@@ -47047,7 +47047,7 @@
             }
             switch (alt134) {
                 case 1 :
-                    // InternalOCLstdlib.g:15952:2: rule__TypeNameExpCS__Group_1__0
+                    // InternalOCLstdlib.g:15954:2: rule__TypeNameExpCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeNameExpCS__Group_1__0();
@@ -47085,14 +47085,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__0"
-    // InternalOCLstdlib.g:15966:1: rule__TypeNameExpCS__Group_1__0 : rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 ;
+    // InternalOCLstdlib.g:15968:1: rule__TypeNameExpCS__Group_1__0 : rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 ;
     public final void rule__TypeNameExpCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15970:1: ( rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 )
-            // InternalOCLstdlib.g:15971:2: rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1
+            // InternalOCLstdlib.g:15972:1: ( rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 )
+            // InternalOCLstdlib.g:15973:2: rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_65);
             rule__TypeNameExpCS__Group_1__0__Impl();
@@ -47123,23 +47123,23 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:15978:1: rule__TypeNameExpCS__Group_1__0__Impl : ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) ;
+    // InternalOCLstdlib.g:15980:1: rule__TypeNameExpCS__Group_1__0__Impl : ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) ;
     public final void rule__TypeNameExpCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15982:1: ( ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) )
-            // InternalOCLstdlib.g:15983:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
+            // InternalOCLstdlib.g:15984:1: ( ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) )
+            // InternalOCLstdlib.g:15985:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
             {
-            // InternalOCLstdlib.g:15983:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
-            // InternalOCLstdlib.g:15984:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
+            // InternalOCLstdlib.g:15985:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
+            // InternalOCLstdlib.g:15986:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0());
             }
-            // InternalOCLstdlib.g:15985:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
-            // InternalOCLstdlib.g:15985:2: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0
+            // InternalOCLstdlib.g:15987:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
+            // InternalOCLstdlib.g:15987:2: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0();
@@ -47174,14 +47174,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__1"
-    // InternalOCLstdlib.g:15995:1: rule__TypeNameExpCS__Group_1__1 : rule__TypeNameExpCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:15997:1: rule__TypeNameExpCS__Group_1__1 : rule__TypeNameExpCS__Group_1__1__Impl ;
     public final void rule__TypeNameExpCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:15999:1: ( rule__TypeNameExpCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:16000:2: rule__TypeNameExpCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:16001:1: ( rule__TypeNameExpCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:16002:2: rule__TypeNameExpCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__Group_1__1__Impl();
@@ -47207,22 +47207,22 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:16006:1: rule__TypeNameExpCS__Group_1__1__Impl : ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) ;
+    // InternalOCLstdlib.g:16008:1: rule__TypeNameExpCS__Group_1__1__Impl : ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) ;
     public final void rule__TypeNameExpCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16010:1: ( ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) )
-            // InternalOCLstdlib.g:16011:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
+            // InternalOCLstdlib.g:16012:1: ( ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) )
+            // InternalOCLstdlib.g:16013:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
             {
-            // InternalOCLstdlib.g:16011:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
-            // InternalOCLstdlib.g:16012:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
+            // InternalOCLstdlib.g:16013:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
+            // InternalOCLstdlib.g:16014:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1());
             }
-            // InternalOCLstdlib.g:16013:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
+            // InternalOCLstdlib.g:16015:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             int alt135=2;
             int LA135_0 = input.LA(1);
 
@@ -47231,7 +47231,7 @@
             }
             switch (alt135) {
                 case 1 :
-                    // InternalOCLstdlib.g:16013:2: rule__TypeNameExpCS__Group_1_1__0
+                    // InternalOCLstdlib.g:16015:2: rule__TypeNameExpCS__Group_1_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeNameExpCS__Group_1_1__0();
@@ -47269,14 +47269,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__0"
-    // InternalOCLstdlib.g:16027:1: rule__TypeNameExpCS__Group_1_1__0 : rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 ;
+    // InternalOCLstdlib.g:16029:1: rule__TypeNameExpCS__Group_1_1__0 : rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 ;
     public final void rule__TypeNameExpCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16031:1: ( rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 )
-            // InternalOCLstdlib.g:16032:2: rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1
+            // InternalOCLstdlib.g:16033:1: ( rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 )
+            // InternalOCLstdlib.g:16034:2: rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__TypeNameExpCS__Group_1_1__0__Impl();
@@ -47307,17 +47307,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__0__Impl"
-    // InternalOCLstdlib.g:16039:1: rule__TypeNameExpCS__Group_1_1__0__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:16041:1: rule__TypeNameExpCS__Group_1_1__0__Impl : ( '{' ) ;
     public final void rule__TypeNameExpCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16043:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:16044:1: ( '{' )
+            // InternalOCLstdlib.g:16045:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:16046:1: ( '{' )
             {
-            // InternalOCLstdlib.g:16044:1: ( '{' )
-            // InternalOCLstdlib.g:16045:1: '{'
+            // InternalOCLstdlib.g:16046:1: ( '{' )
+            // InternalOCLstdlib.g:16047:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
@@ -47348,14 +47348,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__1"
-    // InternalOCLstdlib.g:16058:1: rule__TypeNameExpCS__Group_1_1__1 : rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 ;
+    // InternalOCLstdlib.g:16060:1: rule__TypeNameExpCS__Group_1_1__1 : rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 ;
     public final void rule__TypeNameExpCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16062:1: ( rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 )
-            // InternalOCLstdlib.g:16063:2: rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2
+            // InternalOCLstdlib.g:16064:1: ( rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 )
+            // InternalOCLstdlib.g:16065:2: rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_19);
             rule__TypeNameExpCS__Group_1_1__1__Impl();
@@ -47386,23 +47386,23 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__1__Impl"
-    // InternalOCLstdlib.g:16070:1: rule__TypeNameExpCS__Group_1_1__1__Impl : ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) ;
+    // InternalOCLstdlib.g:16072:1: rule__TypeNameExpCS__Group_1_1__1__Impl : ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) ;
     public final void rule__TypeNameExpCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16074:1: ( ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) )
-            // InternalOCLstdlib.g:16075:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
+            // InternalOCLstdlib.g:16076:1: ( ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) )
+            // InternalOCLstdlib.g:16077:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
             {
-            // InternalOCLstdlib.g:16075:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
-            // InternalOCLstdlib.g:16076:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
+            // InternalOCLstdlib.g:16077:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
+            // InternalOCLstdlib.g:16078:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1());
             }
-            // InternalOCLstdlib.g:16077:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
-            // InternalOCLstdlib.g:16077:2: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1
+            // InternalOCLstdlib.g:16079:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
+            // InternalOCLstdlib.g:16079:2: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1();
@@ -47437,14 +47437,14 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__2"
-    // InternalOCLstdlib.g:16087:1: rule__TypeNameExpCS__Group_1_1__2 : rule__TypeNameExpCS__Group_1_1__2__Impl ;
+    // InternalOCLstdlib.g:16089:1: rule__TypeNameExpCS__Group_1_1__2 : rule__TypeNameExpCS__Group_1_1__2__Impl ;
     public final void rule__TypeNameExpCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16091:1: ( rule__TypeNameExpCS__Group_1_1__2__Impl )
-            // InternalOCLstdlib.g:16092:2: rule__TypeNameExpCS__Group_1_1__2__Impl
+            // InternalOCLstdlib.g:16093:1: ( rule__TypeNameExpCS__Group_1_1__2__Impl )
+            // InternalOCLstdlib.g:16094:2: rule__TypeNameExpCS__Group_1_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeNameExpCS__Group_1_1__2__Impl();
@@ -47470,17 +47470,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__Group_1_1__2__Impl"
-    // InternalOCLstdlib.g:16098:1: rule__TypeNameExpCS__Group_1_1__2__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:16100:1: rule__TypeNameExpCS__Group_1_1__2__Impl : ( '}' ) ;
     public final void rule__TypeNameExpCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16102:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:16103:1: ( '}' )
+            // InternalOCLstdlib.g:16104:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:16105:1: ( '}' )
             {
-            // InternalOCLstdlib.g:16103:1: ( '}' )
-            // InternalOCLstdlib.g:16104:1: '}'
+            // InternalOCLstdlib.g:16105:1: ( '}' )
+            // InternalOCLstdlib.g:16106:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
@@ -47511,14 +47511,14 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__0"
-    // InternalOCLstdlib.g:16123:1: rule__TypeExpCS__Group__0 : rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 ;
+    // InternalOCLstdlib.g:16125:1: rule__TypeExpCS__Group__0 : rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 ;
     public final void rule__TypeExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16127:1: ( rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 )
-            // InternalOCLstdlib.g:16128:2: rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1
+            // InternalOCLstdlib.g:16129:1: ( rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 )
+            // InternalOCLstdlib.g:16130:2: rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_60);
             rule__TypeExpCS__Group__0__Impl();
@@ -47549,17 +47549,17 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:16135:1: rule__TypeExpCS__Group__0__Impl : ( ruleTypeExpWithoutMultiplicityCS ) ;
+    // InternalOCLstdlib.g:16137:1: rule__TypeExpCS__Group__0__Impl : ( ruleTypeExpWithoutMultiplicityCS ) ;
     public final void rule__TypeExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16139:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
-            // InternalOCLstdlib.g:16140:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalOCLstdlib.g:16141:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
+            // InternalOCLstdlib.g:16142:1: ( ruleTypeExpWithoutMultiplicityCS )
             {
-            // InternalOCLstdlib.g:16140:1: ( ruleTypeExpWithoutMultiplicityCS )
-            // InternalOCLstdlib.g:16141:1: ruleTypeExpWithoutMultiplicityCS
+            // InternalOCLstdlib.g:16142:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalOCLstdlib.g:16143:1: ruleTypeExpWithoutMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeExpCSAccess().getTypeExpWithoutMultiplicityCSParserRuleCall_0());
@@ -47594,14 +47594,14 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__1"
-    // InternalOCLstdlib.g:16152:1: rule__TypeExpCS__Group__1 : rule__TypeExpCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:16154:1: rule__TypeExpCS__Group__1 : rule__TypeExpCS__Group__1__Impl ;
     public final void rule__TypeExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16156:1: ( rule__TypeExpCS__Group__1__Impl )
-            // InternalOCLstdlib.g:16157:2: rule__TypeExpCS__Group__1__Impl
+            // InternalOCLstdlib.g:16158:1: ( rule__TypeExpCS__Group__1__Impl )
+            // InternalOCLstdlib.g:16159:2: rule__TypeExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeExpCS__Group__1__Impl();
@@ -47627,22 +47627,22 @@
 
 
     // $ANTLR start "rule__TypeExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:16163:1: rule__TypeExpCS__Group__1__Impl : ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) ;
+    // InternalOCLstdlib.g:16165:1: rule__TypeExpCS__Group__1__Impl : ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) ;
     public final void rule__TypeExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16167:1: ( ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) )
-            // InternalOCLstdlib.g:16168:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalOCLstdlib.g:16169:1: ( ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) )
+            // InternalOCLstdlib.g:16170:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
             {
-            // InternalOCLstdlib.g:16168:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
-            // InternalOCLstdlib.g:16169:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
+            // InternalOCLstdlib.g:16170:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
+            // InternalOCLstdlib.g:16171:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1());
             }
-            // InternalOCLstdlib.g:16170:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
+            // InternalOCLstdlib.g:16172:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             int alt136=2;
             int LA136_0 = input.LA(1);
 
@@ -47651,7 +47651,7 @@
             }
             switch (alt136) {
                 case 1 :
-                    // InternalOCLstdlib.g:16170:2: rule__TypeExpCS__OwnedMultiplicityAssignment_1
+                    // InternalOCLstdlib.g:16172:2: rule__TypeExpCS__OwnedMultiplicityAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeExpCS__OwnedMultiplicityAssignment_1();
@@ -47689,14 +47689,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__0"
-    // InternalOCLstdlib.g:16184:1: rule__ExpCS__Group_0__0 : rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 ;
+    // InternalOCLstdlib.g:16186:1: rule__ExpCS__Group_0__0 : rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 ;
     public final void rule__ExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16188:1: ( rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 )
-            // InternalOCLstdlib.g:16189:2: rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1
+            // InternalOCLstdlib.g:16190:1: ( rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 )
+            // InternalOCLstdlib.g:16191:2: rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_77);
             rule__ExpCS__Group_0__0__Impl();
@@ -47727,17 +47727,17 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__0__Impl"
-    // InternalOCLstdlib.g:16196:1: rule__ExpCS__Group_0__0__Impl : ( rulePrefixedPrimaryExpCS ) ;
+    // InternalOCLstdlib.g:16198:1: rule__ExpCS__Group_0__0__Impl : ( rulePrefixedPrimaryExpCS ) ;
     public final void rule__ExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16200:1: ( ( rulePrefixedPrimaryExpCS ) )
-            // InternalOCLstdlib.g:16201:1: ( rulePrefixedPrimaryExpCS )
+            // InternalOCLstdlib.g:16202:1: ( ( rulePrefixedPrimaryExpCS ) )
+            // InternalOCLstdlib.g:16203:1: ( rulePrefixedPrimaryExpCS )
             {
-            // InternalOCLstdlib.g:16201:1: ( rulePrefixedPrimaryExpCS )
-            // InternalOCLstdlib.g:16202:1: rulePrefixedPrimaryExpCS
+            // InternalOCLstdlib.g:16203:1: ( rulePrefixedPrimaryExpCS )
+            // InternalOCLstdlib.g:16204:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
@@ -47772,14 +47772,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__1"
-    // InternalOCLstdlib.g:16213:1: rule__ExpCS__Group_0__1 : rule__ExpCS__Group_0__1__Impl ;
+    // InternalOCLstdlib.g:16215:1: rule__ExpCS__Group_0__1 : rule__ExpCS__Group_0__1__Impl ;
     public final void rule__ExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16217:1: ( rule__ExpCS__Group_0__1__Impl )
-            // InternalOCLstdlib.g:16218:2: rule__ExpCS__Group_0__1__Impl
+            // InternalOCLstdlib.g:16219:1: ( rule__ExpCS__Group_0__1__Impl )
+            // InternalOCLstdlib.g:16220:2: rule__ExpCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__Group_0__1__Impl();
@@ -47805,22 +47805,22 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0__1__Impl"
-    // InternalOCLstdlib.g:16224:1: rule__ExpCS__Group_0__1__Impl : ( ( rule__ExpCS__Group_0_1__0 )? ) ;
+    // InternalOCLstdlib.g:16226:1: rule__ExpCS__Group_0__1__Impl : ( ( rule__ExpCS__Group_0_1__0 )? ) ;
     public final void rule__ExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16228:1: ( ( ( rule__ExpCS__Group_0_1__0 )? ) )
-            // InternalOCLstdlib.g:16229:1: ( ( rule__ExpCS__Group_0_1__0 )? )
+            // InternalOCLstdlib.g:16230:1: ( ( ( rule__ExpCS__Group_0_1__0 )? ) )
+            // InternalOCLstdlib.g:16231:1: ( ( rule__ExpCS__Group_0_1__0 )? )
             {
-            // InternalOCLstdlib.g:16229:1: ( ( rule__ExpCS__Group_0_1__0 )? )
-            // InternalOCLstdlib.g:16230:1: ( rule__ExpCS__Group_0_1__0 )?
+            // InternalOCLstdlib.g:16231:1: ( ( rule__ExpCS__Group_0_1__0 )? )
+            // InternalOCLstdlib.g:16232:1: ( rule__ExpCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getGroup_0_1());
             }
-            // InternalOCLstdlib.g:16231:1: ( rule__ExpCS__Group_0_1__0 )?
+            // InternalOCLstdlib.g:16233:1: ( rule__ExpCS__Group_0_1__0 )?
             int alt137=2;
             int LA137_0 = input.LA(1);
 
@@ -47829,7 +47829,7 @@
             }
             switch (alt137) {
                 case 1 :
-                    // InternalOCLstdlib.g:16231:2: rule__ExpCS__Group_0_1__0
+                    // InternalOCLstdlib.g:16233:2: rule__ExpCS__Group_0_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__ExpCS__Group_0_1__0();
@@ -47867,14 +47867,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__0"
-    // InternalOCLstdlib.g:16245:1: rule__ExpCS__Group_0_1__0 : rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 ;
+    // InternalOCLstdlib.g:16247:1: rule__ExpCS__Group_0_1__0 : rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 ;
     public final void rule__ExpCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16249:1: ( rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 )
-            // InternalOCLstdlib.g:16250:2: rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1
+            // InternalOCLstdlib.g:16251:1: ( rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 )
+            // InternalOCLstdlib.g:16252:2: rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1
             {
             pushFollow(FollowSets000.FOLLOW_77);
             rule__ExpCS__Group_0_1__0__Impl();
@@ -47905,23 +47905,23 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__0__Impl"
-    // InternalOCLstdlib.g:16257:1: rule__ExpCS__Group_0_1__0__Impl : ( () ) ;
+    // InternalOCLstdlib.g:16259:1: rule__ExpCS__Group_0_1__0__Impl : ( () ) ;
     public final void rule__ExpCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16261:1: ( ( () ) )
-            // InternalOCLstdlib.g:16262:1: ( () )
+            // InternalOCLstdlib.g:16263:1: ( ( () ) )
+            // InternalOCLstdlib.g:16264:1: ( () )
             {
-            // InternalOCLstdlib.g:16262:1: ( () )
-            // InternalOCLstdlib.g:16263:1: ()
+            // InternalOCLstdlib.g:16264:1: ( () )
+            // InternalOCLstdlib.g:16265:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0());
             }
-            // InternalOCLstdlib.g:16264:1: ()
-            // InternalOCLstdlib.g:16266:1:
+            // InternalOCLstdlib.g:16266:1: ()
+            // InternalOCLstdlib.g:16268:1:
             {
             }
 
@@ -47946,14 +47946,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__1"
-    // InternalOCLstdlib.g:16276:1: rule__ExpCS__Group_0_1__1 : rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 ;
+    // InternalOCLstdlib.g:16278:1: rule__ExpCS__Group_0_1__1 : rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 ;
     public final void rule__ExpCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16280:1: ( rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 )
-            // InternalOCLstdlib.g:16281:2: rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2
+            // InternalOCLstdlib.g:16282:1: ( rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 )
+            // InternalOCLstdlib.g:16283:2: rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__ExpCS__Group_0_1__1__Impl();
@@ -47984,23 +47984,23 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__1__Impl"
-    // InternalOCLstdlib.g:16288:1: rule__ExpCS__Group_0_1__1__Impl : ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) ;
+    // InternalOCLstdlib.g:16290:1: rule__ExpCS__Group_0_1__1__Impl : ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) ;
     public final void rule__ExpCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16292:1: ( ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) )
-            // InternalOCLstdlib.g:16293:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
+            // InternalOCLstdlib.g:16294:1: ( ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) )
+            // InternalOCLstdlib.g:16295:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
             {
-            // InternalOCLstdlib.g:16293:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
-            // InternalOCLstdlib.g:16294:1: ( rule__ExpCS__NameAssignment_0_1_1 )
+            // InternalOCLstdlib.g:16295:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
+            // InternalOCLstdlib.g:16296:1: ( rule__ExpCS__NameAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1());
             }
-            // InternalOCLstdlib.g:16295:1: ( rule__ExpCS__NameAssignment_0_1_1 )
-            // InternalOCLstdlib.g:16295:2: rule__ExpCS__NameAssignment_0_1_1
+            // InternalOCLstdlib.g:16297:1: ( rule__ExpCS__NameAssignment_0_1_1 )
+            // InternalOCLstdlib.g:16297:2: rule__ExpCS__NameAssignment_0_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__NameAssignment_0_1_1();
@@ -48035,14 +48035,14 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__2"
-    // InternalOCLstdlib.g:16305:1: rule__ExpCS__Group_0_1__2 : rule__ExpCS__Group_0_1__2__Impl ;
+    // InternalOCLstdlib.g:16307:1: rule__ExpCS__Group_0_1__2 : rule__ExpCS__Group_0_1__2__Impl ;
     public final void rule__ExpCS__Group_0_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16309:1: ( rule__ExpCS__Group_0_1__2__Impl )
-            // InternalOCLstdlib.g:16310:2: rule__ExpCS__Group_0_1__2__Impl
+            // InternalOCLstdlib.g:16311:1: ( rule__ExpCS__Group_0_1__2__Impl )
+            // InternalOCLstdlib.g:16312:2: rule__ExpCS__Group_0_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__Group_0_1__2__Impl();
@@ -48068,23 +48068,23 @@
 
 
     // $ANTLR start "rule__ExpCS__Group_0_1__2__Impl"
-    // InternalOCLstdlib.g:16316:1: rule__ExpCS__Group_0_1__2__Impl : ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) ;
+    // InternalOCLstdlib.g:16318:1: rule__ExpCS__Group_0_1__2__Impl : ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) ;
     public final void rule__ExpCS__Group_0_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16320:1: ( ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) )
-            // InternalOCLstdlib.g:16321:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
+            // InternalOCLstdlib.g:16322:1: ( ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) )
+            // InternalOCLstdlib.g:16323:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
             {
-            // InternalOCLstdlib.g:16321:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
-            // InternalOCLstdlib.g:16322:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
+            // InternalOCLstdlib.g:16323:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
+            // InternalOCLstdlib.g:16324:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2());
             }
-            // InternalOCLstdlib.g:16323:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
-            // InternalOCLstdlib.g:16323:2: rule__ExpCS__OwnedRightAssignment_0_1_2
+            // InternalOCLstdlib.g:16325:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
+            // InternalOCLstdlib.g:16325:2: rule__ExpCS__OwnedRightAssignment_0_1_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ExpCS__OwnedRightAssignment_0_1_2();
@@ -48119,14 +48119,14 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__0"
-    // InternalOCLstdlib.g:16339:1: rule__PrefixedLetExpCS__Group_0__0 : rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 ;
+    // InternalOCLstdlib.g:16341:1: rule__PrefixedLetExpCS__Group_0__0 : rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 ;
     public final void rule__PrefixedLetExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16343:1: ( rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 )
-            // InternalOCLstdlib.g:16344:2: rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1
+            // InternalOCLstdlib.g:16345:1: ( rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 )
+            // InternalOCLstdlib.g:16346:2: rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_78);
             rule__PrefixedLetExpCS__Group_0__0__Impl();
@@ -48157,23 +48157,23 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__0__Impl"
-    // InternalOCLstdlib.g:16351:1: rule__PrefixedLetExpCS__Group_0__0__Impl : ( () ) ;
+    // InternalOCLstdlib.g:16353:1: rule__PrefixedLetExpCS__Group_0__0__Impl : ( () ) ;
     public final void rule__PrefixedLetExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16355:1: ( ( () ) )
-            // InternalOCLstdlib.g:16356:1: ( () )
+            // InternalOCLstdlib.g:16357:1: ( ( () ) )
+            // InternalOCLstdlib.g:16358:1: ( () )
             {
-            // InternalOCLstdlib.g:16356:1: ( () )
-            // InternalOCLstdlib.g:16357:1: ()
+            // InternalOCLstdlib.g:16358:1: ( () )
+            // InternalOCLstdlib.g:16359:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0());
             }
-            // InternalOCLstdlib.g:16358:1: ()
-            // InternalOCLstdlib.g:16360:1:
+            // InternalOCLstdlib.g:16360:1: ()
+            // InternalOCLstdlib.g:16362:1:
             {
             }
 
@@ -48198,14 +48198,14 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__1"
-    // InternalOCLstdlib.g:16370:1: rule__PrefixedLetExpCS__Group_0__1 : rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 ;
+    // InternalOCLstdlib.g:16372:1: rule__PrefixedLetExpCS__Group_0__1 : rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 ;
     public final void rule__PrefixedLetExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16374:1: ( rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 )
-            // InternalOCLstdlib.g:16375:2: rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2
+            // InternalOCLstdlib.g:16376:1: ( rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 )
+            // InternalOCLstdlib.g:16377:2: rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__PrefixedLetExpCS__Group_0__1__Impl();
@@ -48236,23 +48236,23 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__1__Impl"
-    // InternalOCLstdlib.g:16382:1: rule__PrefixedLetExpCS__Group_0__1__Impl : ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) ;
+    // InternalOCLstdlib.g:16384:1: rule__PrefixedLetExpCS__Group_0__1__Impl : ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) ;
     public final void rule__PrefixedLetExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16386:1: ( ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) )
-            // InternalOCLstdlib.g:16387:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
+            // InternalOCLstdlib.g:16388:1: ( ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) )
+            // InternalOCLstdlib.g:16389:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
             {
-            // InternalOCLstdlib.g:16387:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
-            // InternalOCLstdlib.g:16388:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
+            // InternalOCLstdlib.g:16389:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
+            // InternalOCLstdlib.g:16390:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1());
             }
-            // InternalOCLstdlib.g:16389:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
-            // InternalOCLstdlib.g:16389:2: rule__PrefixedLetExpCS__NameAssignment_0_1
+            // InternalOCLstdlib.g:16391:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
+            // InternalOCLstdlib.g:16391:2: rule__PrefixedLetExpCS__NameAssignment_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedLetExpCS__NameAssignment_0_1();
@@ -48287,14 +48287,14 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__2"
-    // InternalOCLstdlib.g:16399:1: rule__PrefixedLetExpCS__Group_0__2 : rule__PrefixedLetExpCS__Group_0__2__Impl ;
+    // InternalOCLstdlib.g:16401:1: rule__PrefixedLetExpCS__Group_0__2 : rule__PrefixedLetExpCS__Group_0__2__Impl ;
     public final void rule__PrefixedLetExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16403:1: ( rule__PrefixedLetExpCS__Group_0__2__Impl )
-            // InternalOCLstdlib.g:16404:2: rule__PrefixedLetExpCS__Group_0__2__Impl
+            // InternalOCLstdlib.g:16405:1: ( rule__PrefixedLetExpCS__Group_0__2__Impl )
+            // InternalOCLstdlib.g:16406:2: rule__PrefixedLetExpCS__Group_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedLetExpCS__Group_0__2__Impl();
@@ -48320,23 +48320,23 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__Group_0__2__Impl"
-    // InternalOCLstdlib.g:16410:1: rule__PrefixedLetExpCS__Group_0__2__Impl : ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) ;
+    // InternalOCLstdlib.g:16412:1: rule__PrefixedLetExpCS__Group_0__2__Impl : ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) ;
     public final void rule__PrefixedLetExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16414:1: ( ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) )
-            // InternalOCLstdlib.g:16415:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalOCLstdlib.g:16416:1: ( ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) )
+            // InternalOCLstdlib.g:16417:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
             {
-            // InternalOCLstdlib.g:16415:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
-            // InternalOCLstdlib.g:16416:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
+            // InternalOCLstdlib.g:16417:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalOCLstdlib.g:16418:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2());
             }
-            // InternalOCLstdlib.g:16417:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
-            // InternalOCLstdlib.g:16417:2: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2
+            // InternalOCLstdlib.g:16419:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
+            // InternalOCLstdlib.g:16419:2: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedLetExpCS__OwnedRightAssignment_0_2();
@@ -48371,14 +48371,14 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__0"
-    // InternalOCLstdlib.g:16433:1: rule__PrefixedPrimaryExpCS__Group_0__0 : rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 ;
+    // InternalOCLstdlib.g:16435:1: rule__PrefixedPrimaryExpCS__Group_0__0 : rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16437:1: ( rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 )
-            // InternalOCLstdlib.g:16438:2: rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1
+            // InternalOCLstdlib.g:16439:1: ( rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 )
+            // InternalOCLstdlib.g:16440:2: rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_78);
             rule__PrefixedPrimaryExpCS__Group_0__0__Impl();
@@ -48409,23 +48409,23 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__0__Impl"
-    // InternalOCLstdlib.g:16445:1: rule__PrefixedPrimaryExpCS__Group_0__0__Impl : ( () ) ;
+    // InternalOCLstdlib.g:16447:1: rule__PrefixedPrimaryExpCS__Group_0__0__Impl : ( () ) ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16449:1: ( ( () ) )
-            // InternalOCLstdlib.g:16450:1: ( () )
+            // InternalOCLstdlib.g:16451:1: ( ( () ) )
+            // InternalOCLstdlib.g:16452:1: ( () )
             {
-            // InternalOCLstdlib.g:16450:1: ( () )
-            // InternalOCLstdlib.g:16451:1: ()
+            // InternalOCLstdlib.g:16452:1: ( () )
+            // InternalOCLstdlib.g:16453:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0());
             }
-            // InternalOCLstdlib.g:16452:1: ()
-            // InternalOCLstdlib.g:16454:1:
+            // InternalOCLstdlib.g:16454:1: ()
+            // InternalOCLstdlib.g:16456:1:
             {
             }
 
@@ -48450,14 +48450,14 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__1"
-    // InternalOCLstdlib.g:16464:1: rule__PrefixedPrimaryExpCS__Group_0__1 : rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 ;
+    // InternalOCLstdlib.g:16466:1: rule__PrefixedPrimaryExpCS__Group_0__1 : rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16468:1: ( rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 )
-            // InternalOCLstdlib.g:16469:2: rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2
+            // InternalOCLstdlib.g:16470:1: ( rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 )
+            // InternalOCLstdlib.g:16471:2: rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__PrefixedPrimaryExpCS__Group_0__1__Impl();
@@ -48488,23 +48488,23 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__1__Impl"
-    // InternalOCLstdlib.g:16476:1: rule__PrefixedPrimaryExpCS__Group_0__1__Impl : ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) ;
+    // InternalOCLstdlib.g:16478:1: rule__PrefixedPrimaryExpCS__Group_0__1__Impl : ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16480:1: ( ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) )
-            // InternalOCLstdlib.g:16481:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
+            // InternalOCLstdlib.g:16482:1: ( ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) )
+            // InternalOCLstdlib.g:16483:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
             {
-            // InternalOCLstdlib.g:16481:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
-            // InternalOCLstdlib.g:16482:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
+            // InternalOCLstdlib.g:16483:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
+            // InternalOCLstdlib.g:16484:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1());
             }
-            // InternalOCLstdlib.g:16483:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
-            // InternalOCLstdlib.g:16483:2: rule__PrefixedPrimaryExpCS__NameAssignment_0_1
+            // InternalOCLstdlib.g:16485:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
+            // InternalOCLstdlib.g:16485:2: rule__PrefixedPrimaryExpCS__NameAssignment_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedPrimaryExpCS__NameAssignment_0_1();
@@ -48539,14 +48539,14 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__2"
-    // InternalOCLstdlib.g:16493:1: rule__PrefixedPrimaryExpCS__Group_0__2 : rule__PrefixedPrimaryExpCS__Group_0__2__Impl ;
+    // InternalOCLstdlib.g:16495:1: rule__PrefixedPrimaryExpCS__Group_0__2 : rule__PrefixedPrimaryExpCS__Group_0__2__Impl ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16497:1: ( rule__PrefixedPrimaryExpCS__Group_0__2__Impl )
-            // InternalOCLstdlib.g:16498:2: rule__PrefixedPrimaryExpCS__Group_0__2__Impl
+            // InternalOCLstdlib.g:16499:1: ( rule__PrefixedPrimaryExpCS__Group_0__2__Impl )
+            // InternalOCLstdlib.g:16500:2: rule__PrefixedPrimaryExpCS__Group_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedPrimaryExpCS__Group_0__2__Impl();
@@ -48572,23 +48572,23 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__Group_0__2__Impl"
-    // InternalOCLstdlib.g:16504:1: rule__PrefixedPrimaryExpCS__Group_0__2__Impl : ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) ;
+    // InternalOCLstdlib.g:16506:1: rule__PrefixedPrimaryExpCS__Group_0__2__Impl : ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) ;
     public final void rule__PrefixedPrimaryExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16508:1: ( ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) )
-            // InternalOCLstdlib.g:16509:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalOCLstdlib.g:16510:1: ( ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) )
+            // InternalOCLstdlib.g:16511:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
             {
-            // InternalOCLstdlib.g:16509:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
-            // InternalOCLstdlib.g:16510:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
+            // InternalOCLstdlib.g:16511:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
+            // InternalOCLstdlib.g:16512:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2());
             }
-            // InternalOCLstdlib.g:16511:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
-            // InternalOCLstdlib.g:16511:2: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2
+            // InternalOCLstdlib.g:16513:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
+            // InternalOCLstdlib.g:16513:2: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2();
@@ -48623,14 +48623,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__0"
-    // InternalOCLstdlib.g:16527:1: rule__NameExpCS__Group__0 : rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 ;
+    // InternalOCLstdlib.g:16529:1: rule__NameExpCS__Group__0 : rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 ;
     public final void rule__NameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16531:1: ( rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 )
-            // InternalOCLstdlib.g:16532:2: rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1
+            // InternalOCLstdlib.g:16533:1: ( rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 )
+            // InternalOCLstdlib.g:16534:2: rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_79);
             rule__NameExpCS__Group__0__Impl();
@@ -48661,23 +48661,23 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:16539:1: rule__NameExpCS__Group__0__Impl : ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:16541:1: rule__NameExpCS__Group__0__Impl : ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) ;
     public final void rule__NameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16543:1: ( ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:16544:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalOCLstdlib.g:16545:1: ( ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:16546:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:16544:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
-            // InternalOCLstdlib.g:16545:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
+            // InternalOCLstdlib.g:16546:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
+            // InternalOCLstdlib.g:16547:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
-            // InternalOCLstdlib.g:16546:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
-            // InternalOCLstdlib.g:16546:2: rule__NameExpCS__OwnedPathNameAssignment_0
+            // InternalOCLstdlib.g:16548:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
+            // InternalOCLstdlib.g:16548:2: rule__NameExpCS__OwnedPathNameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__OwnedPathNameAssignment_0();
@@ -48712,14 +48712,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__1"
-    // InternalOCLstdlib.g:16556:1: rule__NameExpCS__Group__1 : rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 ;
+    // InternalOCLstdlib.g:16558:1: rule__NameExpCS__Group__1 : rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 ;
     public final void rule__NameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16560:1: ( rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 )
-            // InternalOCLstdlib.g:16561:2: rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2
+            // InternalOCLstdlib.g:16562:1: ( rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 )
+            // InternalOCLstdlib.g:16563:2: rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_79);
             rule__NameExpCS__Group__1__Impl();
@@ -48750,22 +48750,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:16568:1: rule__NameExpCS__Group__1__Impl : ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) ;
+    // InternalOCLstdlib.g:16570:1: rule__NameExpCS__Group__1__Impl : ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) ;
     public final void rule__NameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16572:1: ( ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) )
-            // InternalOCLstdlib.g:16573:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
+            // InternalOCLstdlib.g:16574:1: ( ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) )
+            // InternalOCLstdlib.g:16575:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
             {
-            // InternalOCLstdlib.g:16573:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
-            // InternalOCLstdlib.g:16574:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
+            // InternalOCLstdlib.g:16575:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
+            // InternalOCLstdlib.g:16576:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1());
             }
-            // InternalOCLstdlib.g:16575:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
+            // InternalOCLstdlib.g:16577:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             loop138:
             do {
                 int alt138=2;
@@ -48778,7 +48778,7 @@
 
                 switch (alt138) {
             	case 1 :
-            	    // InternalOCLstdlib.g:16575:2: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1
+            	    // InternalOCLstdlib.g:16577:2: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_80);
             	    rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1();
@@ -48819,14 +48819,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__2"
-    // InternalOCLstdlib.g:16585:1: rule__NameExpCS__Group__2 : rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 ;
+    // InternalOCLstdlib.g:16587:1: rule__NameExpCS__Group__2 : rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 ;
     public final void rule__NameExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16589:1: ( rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 )
-            // InternalOCLstdlib.g:16590:2: rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3
+            // InternalOCLstdlib.g:16591:1: ( rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 )
+            // InternalOCLstdlib.g:16592:2: rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_79);
             rule__NameExpCS__Group__2__Impl();
@@ -48857,22 +48857,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__2__Impl"
-    // InternalOCLstdlib.g:16597:1: rule__NameExpCS__Group__2__Impl : ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) ;
+    // InternalOCLstdlib.g:16599:1: rule__NameExpCS__Group__2__Impl : ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) ;
     public final void rule__NameExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16601:1: ( ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) )
-            // InternalOCLstdlib.g:16602:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
+            // InternalOCLstdlib.g:16603:1: ( ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) )
+            // InternalOCLstdlib.g:16604:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
             {
-            // InternalOCLstdlib.g:16602:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
-            // InternalOCLstdlib.g:16603:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
+            // InternalOCLstdlib.g:16604:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
+            // InternalOCLstdlib.g:16605:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2());
             }
-            // InternalOCLstdlib.g:16604:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
+            // InternalOCLstdlib.g:16606:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             int alt139=2;
             int LA139_0 = input.LA(1);
 
@@ -48881,7 +48881,7 @@
             }
             switch (alt139) {
                 case 1 :
-                    // InternalOCLstdlib.g:16604:2: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2
+                    // InternalOCLstdlib.g:16606:2: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2();
@@ -48919,14 +48919,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__3"
-    // InternalOCLstdlib.g:16614:1: rule__NameExpCS__Group__3 : rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 ;
+    // InternalOCLstdlib.g:16616:1: rule__NameExpCS__Group__3 : rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 ;
     public final void rule__NameExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16618:1: ( rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 )
-            // InternalOCLstdlib.g:16619:2: rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4
+            // InternalOCLstdlib.g:16620:1: ( rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 )
+            // InternalOCLstdlib.g:16621:2: rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_79);
             rule__NameExpCS__Group__3__Impl();
@@ -48957,22 +48957,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__3__Impl"
-    // InternalOCLstdlib.g:16626:1: rule__NameExpCS__Group__3__Impl : ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) ;
+    // InternalOCLstdlib.g:16628:1: rule__NameExpCS__Group__3__Impl : ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) ;
     public final void rule__NameExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16630:1: ( ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) )
-            // InternalOCLstdlib.g:16631:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
+            // InternalOCLstdlib.g:16632:1: ( ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) )
+            // InternalOCLstdlib.g:16633:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
             {
-            // InternalOCLstdlib.g:16631:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
-            // InternalOCLstdlib.g:16632:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
+            // InternalOCLstdlib.g:16633:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
+            // InternalOCLstdlib.g:16634:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3());
             }
-            // InternalOCLstdlib.g:16633:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
+            // InternalOCLstdlib.g:16635:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             int alt140=2;
             int LA140_0 = input.LA(1);
 
@@ -48981,7 +48981,7 @@
             }
             switch (alt140) {
                 case 1 :
-                    // InternalOCLstdlib.g:16633:2: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3
+                    // InternalOCLstdlib.g:16635:2: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3();
@@ -49019,14 +49019,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__4"
-    // InternalOCLstdlib.g:16643:1: rule__NameExpCS__Group__4 : rule__NameExpCS__Group__4__Impl ;
+    // InternalOCLstdlib.g:16645:1: rule__NameExpCS__Group__4 : rule__NameExpCS__Group__4__Impl ;
     public final void rule__NameExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16647:1: ( rule__NameExpCS__Group__4__Impl )
-            // InternalOCLstdlib.g:16648:2: rule__NameExpCS__Group__4__Impl
+            // InternalOCLstdlib.g:16649:1: ( rule__NameExpCS__Group__4__Impl )
+            // InternalOCLstdlib.g:16650:2: rule__NameExpCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__Group__4__Impl();
@@ -49052,22 +49052,22 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group__4__Impl"
-    // InternalOCLstdlib.g:16654:1: rule__NameExpCS__Group__4__Impl : ( ( rule__NameExpCS__Group_4__0 )? ) ;
+    // InternalOCLstdlib.g:16656:1: rule__NameExpCS__Group__4__Impl : ( ( rule__NameExpCS__Group_4__0 )? ) ;
     public final void rule__NameExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16658:1: ( ( ( rule__NameExpCS__Group_4__0 )? ) )
-            // InternalOCLstdlib.g:16659:1: ( ( rule__NameExpCS__Group_4__0 )? )
+            // InternalOCLstdlib.g:16660:1: ( ( ( rule__NameExpCS__Group_4__0 )? ) )
+            // InternalOCLstdlib.g:16661:1: ( ( rule__NameExpCS__Group_4__0 )? )
             {
-            // InternalOCLstdlib.g:16659:1: ( ( rule__NameExpCS__Group_4__0 )? )
-            // InternalOCLstdlib.g:16660:1: ( rule__NameExpCS__Group_4__0 )?
+            // InternalOCLstdlib.g:16661:1: ( ( rule__NameExpCS__Group_4__0 )? )
+            // InternalOCLstdlib.g:16662:1: ( rule__NameExpCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getGroup_4());
             }
-            // InternalOCLstdlib.g:16661:1: ( rule__NameExpCS__Group_4__0 )?
+            // InternalOCLstdlib.g:16663:1: ( rule__NameExpCS__Group_4__0 )?
             int alt141=2;
             int LA141_0 = input.LA(1);
 
@@ -49076,7 +49076,7 @@
             }
             switch (alt141) {
                 case 1 :
-                    // InternalOCLstdlib.g:16661:2: rule__NameExpCS__Group_4__0
+                    // InternalOCLstdlib.g:16663:2: rule__NameExpCS__Group_4__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NameExpCS__Group_4__0();
@@ -49114,14 +49114,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__0"
-    // InternalOCLstdlib.g:16681:1: rule__NameExpCS__Group_4__0 : rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 ;
+    // InternalOCLstdlib.g:16683:1: rule__NameExpCS__Group_4__0 : rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 ;
     public final void rule__NameExpCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16685:1: ( rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 )
-            // InternalOCLstdlib.g:16686:2: rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1
+            // InternalOCLstdlib.g:16687:1: ( rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 )
+            // InternalOCLstdlib.g:16688:2: rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1
             {
             pushFollow(FollowSets000.FOLLOW_81);
             rule__NameExpCS__Group_4__0__Impl();
@@ -49152,23 +49152,23 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__0__Impl"
-    // InternalOCLstdlib.g:16693:1: rule__NameExpCS__Group_4__0__Impl : ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) ;
+    // InternalOCLstdlib.g:16695:1: rule__NameExpCS__Group_4__0__Impl : ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) ;
     public final void rule__NameExpCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16697:1: ( ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) )
-            // InternalOCLstdlib.g:16698:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
+            // InternalOCLstdlib.g:16699:1: ( ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) )
+            // InternalOCLstdlib.g:16700:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
             {
-            // InternalOCLstdlib.g:16698:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
-            // InternalOCLstdlib.g:16699:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
+            // InternalOCLstdlib.g:16700:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
+            // InternalOCLstdlib.g:16701:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0());
             }
-            // InternalOCLstdlib.g:16700:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
-            // InternalOCLstdlib.g:16700:2: rule__NameExpCS__IsPreAssignment_4_0
+            // InternalOCLstdlib.g:16702:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
+            // InternalOCLstdlib.g:16702:2: rule__NameExpCS__IsPreAssignment_4_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__IsPreAssignment_4_0();
@@ -49203,14 +49203,14 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__1"
-    // InternalOCLstdlib.g:16710:1: rule__NameExpCS__Group_4__1 : rule__NameExpCS__Group_4__1__Impl ;
+    // InternalOCLstdlib.g:16712:1: rule__NameExpCS__Group_4__1 : rule__NameExpCS__Group_4__1__Impl ;
     public final void rule__NameExpCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16714:1: ( rule__NameExpCS__Group_4__1__Impl )
-            // InternalOCLstdlib.g:16715:2: rule__NameExpCS__Group_4__1__Impl
+            // InternalOCLstdlib.g:16716:1: ( rule__NameExpCS__Group_4__1__Impl )
+            // InternalOCLstdlib.g:16717:2: rule__NameExpCS__Group_4__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NameExpCS__Group_4__1__Impl();
@@ -49236,17 +49236,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__Group_4__1__Impl"
-    // InternalOCLstdlib.g:16721:1: rule__NameExpCS__Group_4__1__Impl : ( 'pre' ) ;
+    // InternalOCLstdlib.g:16723:1: rule__NameExpCS__Group_4__1__Impl : ( 'pre' ) ;
     public final void rule__NameExpCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16725:1: ( ( 'pre' ) )
-            // InternalOCLstdlib.g:16726:1: ( 'pre' )
+            // InternalOCLstdlib.g:16727:1: ( ( 'pre' ) )
+            // InternalOCLstdlib.g:16728:1: ( 'pre' )
             {
-            // InternalOCLstdlib.g:16726:1: ( 'pre' )
-            // InternalOCLstdlib.g:16727:1: 'pre'
+            // InternalOCLstdlib.g:16728:1: ( 'pre' )
+            // InternalOCLstdlib.g:16729:1: 'pre'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
@@ -49277,14 +49277,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__0"
-    // InternalOCLstdlib.g:16744:1: rule__CurlyBracketedClauseCS__Group__0 : rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 ;
+    // InternalOCLstdlib.g:16746:1: rule__CurlyBracketedClauseCS__Group__0 : rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 ;
     public final void rule__CurlyBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16748:1: ( rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 )
-            // InternalOCLstdlib.g:16749:2: rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1
+            // InternalOCLstdlib.g:16750:1: ( rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 )
+            // InternalOCLstdlib.g:16751:2: rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_65);
             rule__CurlyBracketedClauseCS__Group__0__Impl();
@@ -49315,23 +49315,23 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__0__Impl"
-    // InternalOCLstdlib.g:16756:1: rule__CurlyBracketedClauseCS__Group__0__Impl : ( () ) ;
+    // InternalOCLstdlib.g:16758:1: rule__CurlyBracketedClauseCS__Group__0__Impl : ( () ) ;
     public final void rule__CurlyBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16760:1: ( ( () ) )
-            // InternalOCLstdlib.g:16761:1: ( () )
+            // InternalOCLstdlib.g:16762:1: ( ( () ) )
+            // InternalOCLstdlib.g:16763:1: ( () )
             {
-            // InternalOCLstdlib.g:16761:1: ( () )
-            // InternalOCLstdlib.g:16762:1: ()
+            // InternalOCLstdlib.g:16763:1: ( () )
+            // InternalOCLstdlib.g:16764:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0());
             }
-            // InternalOCLstdlib.g:16763:1: ()
-            // InternalOCLstdlib.g:16765:1:
+            // InternalOCLstdlib.g:16765:1: ()
+            // InternalOCLstdlib.g:16767:1:
             {
             }
 
@@ -49356,14 +49356,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__1"
-    // InternalOCLstdlib.g:16775:1: rule__CurlyBracketedClauseCS__Group__1 : rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 ;
+    // InternalOCLstdlib.g:16777:1: rule__CurlyBracketedClauseCS__Group__1 : rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 ;
     public final void rule__CurlyBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16779:1: ( rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 )
-            // InternalOCLstdlib.g:16780:2: rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2
+            // InternalOCLstdlib.g:16781:1: ( rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 )
+            // InternalOCLstdlib.g:16782:2: rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_82);
             rule__CurlyBracketedClauseCS__Group__1__Impl();
@@ -49394,17 +49394,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__1__Impl"
-    // InternalOCLstdlib.g:16787:1: rule__CurlyBracketedClauseCS__Group__1__Impl : ( '{' ) ;
+    // InternalOCLstdlib.g:16789:1: rule__CurlyBracketedClauseCS__Group__1__Impl : ( '{' ) ;
     public final void rule__CurlyBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16791:1: ( ( '{' ) )
-            // InternalOCLstdlib.g:16792:1: ( '{' )
+            // InternalOCLstdlib.g:16793:1: ( ( '{' ) )
+            // InternalOCLstdlib.g:16794:1: ( '{' )
             {
-            // InternalOCLstdlib.g:16792:1: ( '{' )
-            // InternalOCLstdlib.g:16793:1: '{'
+            // InternalOCLstdlib.g:16794:1: ( '{' )
+            // InternalOCLstdlib.g:16795:1: '{'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
@@ -49435,14 +49435,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__2"
-    // InternalOCLstdlib.g:16806:1: rule__CurlyBracketedClauseCS__Group__2 : rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 ;
+    // InternalOCLstdlib.g:16808:1: rule__CurlyBracketedClauseCS__Group__2 : rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 ;
     public final void rule__CurlyBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16810:1: ( rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 )
-            // InternalOCLstdlib.g:16811:2: rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3
+            // InternalOCLstdlib.g:16812:1: ( rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 )
+            // InternalOCLstdlib.g:16813:2: rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_82);
             rule__CurlyBracketedClauseCS__Group__2__Impl();
@@ -49473,22 +49473,22 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__2__Impl"
-    // InternalOCLstdlib.g:16818:1: rule__CurlyBracketedClauseCS__Group__2__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) ;
+    // InternalOCLstdlib.g:16820:1: rule__CurlyBracketedClauseCS__Group__2__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) ;
     public final void rule__CurlyBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16822:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) )
-            // InternalOCLstdlib.g:16823:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:16824:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? ) )
+            // InternalOCLstdlib.g:16825:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
             {
-            // InternalOCLstdlib.g:16823:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
-            // InternalOCLstdlib.g:16824:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
+            // InternalOCLstdlib.g:16825:1: ( ( rule__CurlyBracketedClauseCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:16826:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:16825:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
+            // InternalOCLstdlib.g:16827:1: ( rule__CurlyBracketedClauseCS__Group_2__0 )?
             int alt142=2;
             int LA142_0 = input.LA(1);
 
@@ -49497,7 +49497,7 @@
             }
             switch (alt142) {
                 case 1 :
-                    // InternalOCLstdlib.g:16825:2: rule__CurlyBracketedClauseCS__Group_2__0
+                    // InternalOCLstdlib.g:16827:2: rule__CurlyBracketedClauseCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CurlyBracketedClauseCS__Group_2__0();
@@ -49535,14 +49535,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__3"
-    // InternalOCLstdlib.g:16835:1: rule__CurlyBracketedClauseCS__Group__3 : rule__CurlyBracketedClauseCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:16837:1: rule__CurlyBracketedClauseCS__Group__3 : rule__CurlyBracketedClauseCS__Group__3__Impl ;
     public final void rule__CurlyBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16839:1: ( rule__CurlyBracketedClauseCS__Group__3__Impl )
-            // InternalOCLstdlib.g:16840:2: rule__CurlyBracketedClauseCS__Group__3__Impl
+            // InternalOCLstdlib.g:16841:1: ( rule__CurlyBracketedClauseCS__Group__3__Impl )
+            // InternalOCLstdlib.g:16842:2: rule__CurlyBracketedClauseCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__Group__3__Impl();
@@ -49568,17 +49568,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group__3__Impl"
-    // InternalOCLstdlib.g:16846:1: rule__CurlyBracketedClauseCS__Group__3__Impl : ( '}' ) ;
+    // InternalOCLstdlib.g:16848:1: rule__CurlyBracketedClauseCS__Group__3__Impl : ( '}' ) ;
     public final void rule__CurlyBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16850:1: ( ( '}' ) )
-            // InternalOCLstdlib.g:16851:1: ( '}' )
+            // InternalOCLstdlib.g:16852:1: ( ( '}' ) )
+            // InternalOCLstdlib.g:16853:1: ( '}' )
             {
-            // InternalOCLstdlib.g:16851:1: ( '}' )
-            // InternalOCLstdlib.g:16852:1: '}'
+            // InternalOCLstdlib.g:16853:1: ( '}' )
+            // InternalOCLstdlib.g:16854:1: '}'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
@@ -49609,14 +49609,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__0"
-    // InternalOCLstdlib.g:16873:1: rule__CurlyBracketedClauseCS__Group_2__0 : rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 ;
+    // InternalOCLstdlib.g:16875:1: rule__CurlyBracketedClauseCS__Group_2__0 : rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 ;
     public final void rule__CurlyBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16877:1: ( rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 )
-            // InternalOCLstdlib.g:16878:2: rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1
+            // InternalOCLstdlib.g:16879:1: ( rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1 )
+            // InternalOCLstdlib.g:16880:2: rule__CurlyBracketedClauseCS__Group_2__0__Impl rule__CurlyBracketedClauseCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_25);
             rule__CurlyBracketedClauseCS__Group_2__0__Impl();
@@ -49647,23 +49647,23 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:16885:1: rule__CurlyBracketedClauseCS__Group_2__0__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) ;
+    // InternalOCLstdlib.g:16887:1: rule__CurlyBracketedClauseCS__Group_2__0__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16889:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) )
-            // InternalOCLstdlib.g:16890:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLstdlib.g:16891:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) ) )
+            // InternalOCLstdlib.g:16892:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
             {
-            // InternalOCLstdlib.g:16890:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
-            // InternalOCLstdlib.g:16891:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLstdlib.g:16892:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 ) )
+            // InternalOCLstdlib.g:16893:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0());
             }
-            // InternalOCLstdlib.g:16892:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
-            // InternalOCLstdlib.g:16892:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0
+            // InternalOCLstdlib.g:16894:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 )
+            // InternalOCLstdlib.g:16894:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0();
@@ -49698,14 +49698,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__1"
-    // InternalOCLstdlib.g:16902:1: rule__CurlyBracketedClauseCS__Group_2__1 : rule__CurlyBracketedClauseCS__Group_2__1__Impl ;
+    // InternalOCLstdlib.g:16904:1: rule__CurlyBracketedClauseCS__Group_2__1 : rule__CurlyBracketedClauseCS__Group_2__1__Impl ;
     public final void rule__CurlyBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16906:1: ( rule__CurlyBracketedClauseCS__Group_2__1__Impl )
-            // InternalOCLstdlib.g:16907:2: rule__CurlyBracketedClauseCS__Group_2__1__Impl
+            // InternalOCLstdlib.g:16908:1: ( rule__CurlyBracketedClauseCS__Group_2__1__Impl )
+            // InternalOCLstdlib.g:16909:2: rule__CurlyBracketedClauseCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__Group_2__1__Impl();
@@ -49731,22 +49731,22 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:16913:1: rule__CurlyBracketedClauseCS__Group_2__1__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) ;
+    // InternalOCLstdlib.g:16915:1: rule__CurlyBracketedClauseCS__Group_2__1__Impl : ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16917:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) )
-            // InternalOCLstdlib.g:16918:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
+            // InternalOCLstdlib.g:16919:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* ) )
+            // InternalOCLstdlib.g:16920:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
             {
-            // InternalOCLstdlib.g:16918:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
-            // InternalOCLstdlib.g:16919:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
+            // InternalOCLstdlib.g:16920:1: ( ( rule__CurlyBracketedClauseCS__Group_2_1__0 )* )
+            // InternalOCLstdlib.g:16921:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_1());
             }
-            // InternalOCLstdlib.g:16920:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
+            // InternalOCLstdlib.g:16922:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0 )*
             loop143:
             do {
                 int alt143=2;
@@ -49759,7 +49759,7 @@
 
                 switch (alt143) {
             	case 1 :
-            	    // InternalOCLstdlib.g:16920:2: rule__CurlyBracketedClauseCS__Group_2_1__0
+            	    // InternalOCLstdlib.g:16922:2: rule__CurlyBracketedClauseCS__Group_2_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__CurlyBracketedClauseCS__Group_2_1__0();
@@ -49800,14 +49800,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__0"
-    // InternalOCLstdlib.g:16934:1: rule__CurlyBracketedClauseCS__Group_2_1__0 : rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 ;
+    // InternalOCLstdlib.g:16936:1: rule__CurlyBracketedClauseCS__Group_2_1__0 : rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16938:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 )
-            // InternalOCLstdlib.g:16939:2: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1
+            // InternalOCLstdlib.g:16940:1: ( rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1 )
+            // InternalOCLstdlib.g:16941:2: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_13);
             rule__CurlyBracketedClauseCS__Group_2_1__0__Impl();
@@ -49838,17 +49838,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__0__Impl"
-    // InternalOCLstdlib.g:16946:1: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:16948:1: rule__CurlyBracketedClauseCS__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16950:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:16951:1: ( ',' )
+            // InternalOCLstdlib.g:16952:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:16953:1: ( ',' )
             {
-            // InternalOCLstdlib.g:16951:1: ( ',' )
-            // InternalOCLstdlib.g:16952:1: ','
+            // InternalOCLstdlib.g:16953:1: ( ',' )
+            // InternalOCLstdlib.g:16954:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_1_0());
@@ -49879,14 +49879,14 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__1"
-    // InternalOCLstdlib.g:16965:1: rule__CurlyBracketedClauseCS__Group_2_1__1 : rule__CurlyBracketedClauseCS__Group_2_1__1__Impl ;
+    // InternalOCLstdlib.g:16967:1: rule__CurlyBracketedClauseCS__Group_2_1__1 : rule__CurlyBracketedClauseCS__Group_2_1__1__Impl ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16969:1: ( rule__CurlyBracketedClauseCS__Group_2_1__1__Impl )
-            // InternalOCLstdlib.g:16970:2: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl
+            // InternalOCLstdlib.g:16971:1: ( rule__CurlyBracketedClauseCS__Group_2_1__1__Impl )
+            // InternalOCLstdlib.g:16972:2: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__Group_2_1__1__Impl();
@@ -49912,23 +49912,23 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__Group_2_1__1__Impl"
-    // InternalOCLstdlib.g:16976:1: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) ;
+    // InternalOCLstdlib.g:16978:1: rule__CurlyBracketedClauseCS__Group_2_1__1__Impl : ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) ;
     public final void rule__CurlyBracketedClauseCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:16980:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) )
-            // InternalOCLstdlib.g:16981:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLstdlib.g:16982:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) ) )
+            // InternalOCLstdlib.g:16983:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
             {
-            // InternalOCLstdlib.g:16981:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
-            // InternalOCLstdlib.g:16982:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLstdlib.g:16983:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 ) )
+            // InternalOCLstdlib.g:16984:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_1_1());
             }
-            // InternalOCLstdlib.g:16983:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
-            // InternalOCLstdlib.g:16983:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1
+            // InternalOCLstdlib.g:16985:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 )
+            // InternalOCLstdlib.g:16985:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1();
@@ -49963,14 +49963,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__0"
-    // InternalOCLstdlib.g:16997:1: rule__RoundBracketedClauseCS__Group__0 : rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 ;
+    // InternalOCLstdlib.g:16999:1: rule__RoundBracketedClauseCS__Group__0 : rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 ;
     public final void rule__RoundBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17001:1: ( rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 )
-            // InternalOCLstdlib.g:17002:2: rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1
+            // InternalOCLstdlib.g:17003:1: ( rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 )
+            // InternalOCLstdlib.g:17004:2: rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_33);
             rule__RoundBracketedClauseCS__Group__0__Impl();
@@ -50001,23 +50001,23 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__0__Impl"
-    // InternalOCLstdlib.g:17009:1: rule__RoundBracketedClauseCS__Group__0__Impl : ( () ) ;
+    // InternalOCLstdlib.g:17011:1: rule__RoundBracketedClauseCS__Group__0__Impl : ( () ) ;
     public final void rule__RoundBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17013:1: ( ( () ) )
-            // InternalOCLstdlib.g:17014:1: ( () )
+            // InternalOCLstdlib.g:17015:1: ( ( () ) )
+            // InternalOCLstdlib.g:17016:1: ( () )
             {
-            // InternalOCLstdlib.g:17014:1: ( () )
-            // InternalOCLstdlib.g:17015:1: ()
+            // InternalOCLstdlib.g:17016:1: ( () )
+            // InternalOCLstdlib.g:17017:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0());
             }
-            // InternalOCLstdlib.g:17016:1: ()
-            // InternalOCLstdlib.g:17018:1:
+            // InternalOCLstdlib.g:17018:1: ()
+            // InternalOCLstdlib.g:17020:1:
             {
             }
 
@@ -50042,14 +50042,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__1"
-    // InternalOCLstdlib.g:17028:1: rule__RoundBracketedClauseCS__Group__1 : rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 ;
+    // InternalOCLstdlib.g:17030:1: rule__RoundBracketedClauseCS__Group__1 : rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 ;
     public final void rule__RoundBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17032:1: ( rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 )
-            // InternalOCLstdlib.g:17033:2: rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2
+            // InternalOCLstdlib.g:17034:1: ( rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 )
+            // InternalOCLstdlib.g:17035:2: rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_83);
             rule__RoundBracketedClauseCS__Group__1__Impl();
@@ -50080,17 +50080,17 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__1__Impl"
-    // InternalOCLstdlib.g:17040:1: rule__RoundBracketedClauseCS__Group__1__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:17042:1: rule__RoundBracketedClauseCS__Group__1__Impl : ( '(' ) ;
     public final void rule__RoundBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17044:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:17045:1: ( '(' )
+            // InternalOCLstdlib.g:17046:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:17047:1: ( '(' )
             {
-            // InternalOCLstdlib.g:17045:1: ( '(' )
-            // InternalOCLstdlib.g:17046:1: '('
+            // InternalOCLstdlib.g:17047:1: ( '(' )
+            // InternalOCLstdlib.g:17048:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
@@ -50121,14 +50121,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__2"
-    // InternalOCLstdlib.g:17059:1: rule__RoundBracketedClauseCS__Group__2 : rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 ;
+    // InternalOCLstdlib.g:17061:1: rule__RoundBracketedClauseCS__Group__2 : rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 ;
     public final void rule__RoundBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17063:1: ( rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 )
-            // InternalOCLstdlib.g:17064:2: rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3
+            // InternalOCLstdlib.g:17065:1: ( rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 )
+            // InternalOCLstdlib.g:17066:2: rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_83);
             rule__RoundBracketedClauseCS__Group__2__Impl();
@@ -50159,22 +50159,22 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__2__Impl"
-    // InternalOCLstdlib.g:17071:1: rule__RoundBracketedClauseCS__Group__2__Impl : ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) ;
+    // InternalOCLstdlib.g:17073:1: rule__RoundBracketedClauseCS__Group__2__Impl : ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) ;
     public final void rule__RoundBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17075:1: ( ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) )
-            // InternalOCLstdlib.g:17076:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:17077:1: ( ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) )
+            // InternalOCLstdlib.g:17078:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
             {
-            // InternalOCLstdlib.g:17076:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
-            // InternalOCLstdlib.g:17077:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
+            // InternalOCLstdlib.g:17078:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:17079:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:17078:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
+            // InternalOCLstdlib.g:17080:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             int alt144=2;
             int LA144_0 = input.LA(1);
 
@@ -50183,7 +50183,7 @@
             }
             switch (alt144) {
                 case 1 :
-                    // InternalOCLstdlib.g:17078:2: rule__RoundBracketedClauseCS__Group_2__0
+                    // InternalOCLstdlib.g:17080:2: rule__RoundBracketedClauseCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__RoundBracketedClauseCS__Group_2__0();
@@ -50221,14 +50221,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__3"
-    // InternalOCLstdlib.g:17088:1: rule__RoundBracketedClauseCS__Group__3 : rule__RoundBracketedClauseCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:17090:1: rule__RoundBracketedClauseCS__Group__3 : rule__RoundBracketedClauseCS__Group__3__Impl ;
     public final void rule__RoundBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17092:1: ( rule__RoundBracketedClauseCS__Group__3__Impl )
-            // InternalOCLstdlib.g:17093:2: rule__RoundBracketedClauseCS__Group__3__Impl
+            // InternalOCLstdlib.g:17094:1: ( rule__RoundBracketedClauseCS__Group__3__Impl )
+            // InternalOCLstdlib.g:17095:2: rule__RoundBracketedClauseCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__Group__3__Impl();
@@ -50254,17 +50254,17 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group__3__Impl"
-    // InternalOCLstdlib.g:17099:1: rule__RoundBracketedClauseCS__Group__3__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:17101:1: rule__RoundBracketedClauseCS__Group__3__Impl : ( ')' ) ;
     public final void rule__RoundBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17103:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:17104:1: ( ')' )
+            // InternalOCLstdlib.g:17105:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:17106:1: ( ')' )
             {
-            // InternalOCLstdlib.g:17104:1: ( ')' )
-            // InternalOCLstdlib.g:17105:1: ')'
+            // InternalOCLstdlib.g:17106:1: ( ')' )
+            // InternalOCLstdlib.g:17107:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
@@ -50295,14 +50295,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__0"
-    // InternalOCLstdlib.g:17126:1: rule__RoundBracketedClauseCS__Group_2__0 : rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 ;
+    // InternalOCLstdlib.g:17128:1: rule__RoundBracketedClauseCS__Group_2__0 : rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 ;
     public final void rule__RoundBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17130:1: ( rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 )
-            // InternalOCLstdlib.g:17131:2: rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1
+            // InternalOCLstdlib.g:17132:1: ( rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 )
+            // InternalOCLstdlib.g:17133:2: rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_84);
             rule__RoundBracketedClauseCS__Group_2__0__Impl();
@@ -50333,23 +50333,23 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:17138:1: rule__RoundBracketedClauseCS__Group_2__0__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) ;
+    // InternalOCLstdlib.g:17140:1: rule__RoundBracketedClauseCS__Group_2__0__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) ;
     public final void rule__RoundBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17142:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) )
-            // InternalOCLstdlib.g:17143:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
+            // InternalOCLstdlib.g:17144:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) )
+            // InternalOCLstdlib.g:17145:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
             {
-            // InternalOCLstdlib.g:17143:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
-            // InternalOCLstdlib.g:17144:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
+            // InternalOCLstdlib.g:17145:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
+            // InternalOCLstdlib.g:17146:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0());
             }
-            // InternalOCLstdlib.g:17145:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
-            // InternalOCLstdlib.g:17145:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0
+            // InternalOCLstdlib.g:17147:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
+            // InternalOCLstdlib.g:17147:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0();
@@ -50384,14 +50384,14 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__1"
-    // InternalOCLstdlib.g:17155:1: rule__RoundBracketedClauseCS__Group_2__1 : rule__RoundBracketedClauseCS__Group_2__1__Impl ;
+    // InternalOCLstdlib.g:17157:1: rule__RoundBracketedClauseCS__Group_2__1 : rule__RoundBracketedClauseCS__Group_2__1__Impl ;
     public final void rule__RoundBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17159:1: ( rule__RoundBracketedClauseCS__Group_2__1__Impl )
-            // InternalOCLstdlib.g:17160:2: rule__RoundBracketedClauseCS__Group_2__1__Impl
+            // InternalOCLstdlib.g:17161:1: ( rule__RoundBracketedClauseCS__Group_2__1__Impl )
+            // InternalOCLstdlib.g:17162:2: rule__RoundBracketedClauseCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__Group_2__1__Impl();
@@ -50417,22 +50417,22 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:17166:1: rule__RoundBracketedClauseCS__Group_2__1__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) ;
+    // InternalOCLstdlib.g:17168:1: rule__RoundBracketedClauseCS__Group_2__1__Impl : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) ;
     public final void rule__RoundBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17170:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) )
-            // InternalOCLstdlib.g:17171:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
+            // InternalOCLstdlib.g:17172:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) )
+            // InternalOCLstdlib.g:17173:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
             {
-            // InternalOCLstdlib.g:17171:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
-            // InternalOCLstdlib.g:17172:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
+            // InternalOCLstdlib.g:17173:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
+            // InternalOCLstdlib.g:17174:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1());
             }
-            // InternalOCLstdlib.g:17173:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
+            // InternalOCLstdlib.g:17175:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             loop145:
             do {
                 int alt145=2;
@@ -50445,7 +50445,7 @@
 
                 switch (alt145) {
             	case 1 :
-            	    // InternalOCLstdlib.g:17173:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1
+            	    // InternalOCLstdlib.g:17175:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1
             	    {
             	    pushFollow(FollowSets000.FOLLOW_85);
             	    rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1();
@@ -50486,14 +50486,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__0"
-    // InternalOCLstdlib.g:17187:1: rule__SquareBracketedClauseCS__Group__0 : rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 ;
+    // InternalOCLstdlib.g:17189:1: rule__SquareBracketedClauseCS__Group__0 : rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 ;
     public final void rule__SquareBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17191:1: ( rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 )
-            // InternalOCLstdlib.g:17192:2: rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1
+            // InternalOCLstdlib.g:17193:1: ( rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 )
+            // InternalOCLstdlib.g:17194:2: rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__SquareBracketedClauseCS__Group__0__Impl();
@@ -50524,17 +50524,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__0__Impl"
-    // InternalOCLstdlib.g:17199:1: rule__SquareBracketedClauseCS__Group__0__Impl : ( '[' ) ;
+    // InternalOCLstdlib.g:17201:1: rule__SquareBracketedClauseCS__Group__0__Impl : ( '[' ) ;
     public final void rule__SquareBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17203:1: ( ( '[' ) )
-            // InternalOCLstdlib.g:17204:1: ( '[' )
+            // InternalOCLstdlib.g:17205:1: ( ( '[' ) )
+            // InternalOCLstdlib.g:17206:1: ( '[' )
             {
-            // InternalOCLstdlib.g:17204:1: ( '[' )
-            // InternalOCLstdlib.g:17205:1: '['
+            // InternalOCLstdlib.g:17206:1: ( '[' )
+            // InternalOCLstdlib.g:17207:1: '['
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
@@ -50565,14 +50565,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__1"
-    // InternalOCLstdlib.g:17218:1: rule__SquareBracketedClauseCS__Group__1 : rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 ;
+    // InternalOCLstdlib.g:17220:1: rule__SquareBracketedClauseCS__Group__1 : rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 ;
     public final void rule__SquareBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17222:1: ( rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 )
-            // InternalOCLstdlib.g:17223:2: rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2
+            // InternalOCLstdlib.g:17224:1: ( rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 )
+            // InternalOCLstdlib.g:17225:2: rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_86);
             rule__SquareBracketedClauseCS__Group__1__Impl();
@@ -50603,23 +50603,23 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__1__Impl"
-    // InternalOCLstdlib.g:17230:1: rule__SquareBracketedClauseCS__Group__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:17232:1: rule__SquareBracketedClauseCS__Group__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) ;
     public final void rule__SquareBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17234:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) )
-            // InternalOCLstdlib.g:17235:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
+            // InternalOCLstdlib.g:17236:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) )
+            // InternalOCLstdlib.g:17237:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:17235:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
-            // InternalOCLstdlib.g:17236:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
+            // InternalOCLstdlib.g:17237:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
+            // InternalOCLstdlib.g:17238:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1());
             }
-            // InternalOCLstdlib.g:17237:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
-            // InternalOCLstdlib.g:17237:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1
+            // InternalOCLstdlib.g:17239:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
+            // InternalOCLstdlib.g:17239:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__OwnedTermsAssignment_1();
@@ -50654,14 +50654,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__2"
-    // InternalOCLstdlib.g:17247:1: rule__SquareBracketedClauseCS__Group__2 : rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 ;
+    // InternalOCLstdlib.g:17249:1: rule__SquareBracketedClauseCS__Group__2 : rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 ;
     public final void rule__SquareBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17251:1: ( rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 )
-            // InternalOCLstdlib.g:17252:2: rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3
+            // InternalOCLstdlib.g:17253:1: ( rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 )
+            // InternalOCLstdlib.g:17254:2: rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_86);
             rule__SquareBracketedClauseCS__Group__2__Impl();
@@ -50692,22 +50692,22 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__2__Impl"
-    // InternalOCLstdlib.g:17259:1: rule__SquareBracketedClauseCS__Group__2__Impl : ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) ;
+    // InternalOCLstdlib.g:17261:1: rule__SquareBracketedClauseCS__Group__2__Impl : ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) ;
     public final void rule__SquareBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17263:1: ( ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) )
-            // InternalOCLstdlib.g:17264:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
+            // InternalOCLstdlib.g:17265:1: ( ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) )
+            // InternalOCLstdlib.g:17266:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
             {
-            // InternalOCLstdlib.g:17264:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
-            // InternalOCLstdlib.g:17265:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
+            // InternalOCLstdlib.g:17266:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
+            // InternalOCLstdlib.g:17267:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:17266:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
+            // InternalOCLstdlib.g:17268:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             loop146:
             do {
                 int alt146=2;
@@ -50720,7 +50720,7 @@
 
                 switch (alt146) {
             	case 1 :
-            	    // InternalOCLstdlib.g:17266:2: rule__SquareBracketedClauseCS__Group_2__0
+            	    // InternalOCLstdlib.g:17268:2: rule__SquareBracketedClauseCS__Group_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__SquareBracketedClauseCS__Group_2__0();
@@ -50761,14 +50761,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__3"
-    // InternalOCLstdlib.g:17276:1: rule__SquareBracketedClauseCS__Group__3 : rule__SquareBracketedClauseCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:17278:1: rule__SquareBracketedClauseCS__Group__3 : rule__SquareBracketedClauseCS__Group__3__Impl ;
     public final void rule__SquareBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17280:1: ( rule__SquareBracketedClauseCS__Group__3__Impl )
-            // InternalOCLstdlib.g:17281:2: rule__SquareBracketedClauseCS__Group__3__Impl
+            // InternalOCLstdlib.g:17282:1: ( rule__SquareBracketedClauseCS__Group__3__Impl )
+            // InternalOCLstdlib.g:17283:2: rule__SquareBracketedClauseCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__Group__3__Impl();
@@ -50794,17 +50794,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group__3__Impl"
-    // InternalOCLstdlib.g:17287:1: rule__SquareBracketedClauseCS__Group__3__Impl : ( ']' ) ;
+    // InternalOCLstdlib.g:17289:1: rule__SquareBracketedClauseCS__Group__3__Impl : ( ']' ) ;
     public final void rule__SquareBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17291:1: ( ( ']' ) )
-            // InternalOCLstdlib.g:17292:1: ( ']' )
+            // InternalOCLstdlib.g:17293:1: ( ( ']' ) )
+            // InternalOCLstdlib.g:17294:1: ( ']' )
             {
-            // InternalOCLstdlib.g:17292:1: ( ']' )
-            // InternalOCLstdlib.g:17293:1: ']'
+            // InternalOCLstdlib.g:17294:1: ( ']' )
+            // InternalOCLstdlib.g:17295:1: ']'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
@@ -50835,14 +50835,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__0"
-    // InternalOCLstdlib.g:17314:1: rule__SquareBracketedClauseCS__Group_2__0 : rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 ;
+    // InternalOCLstdlib.g:17316:1: rule__SquareBracketedClauseCS__Group_2__0 : rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 ;
     public final void rule__SquareBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17318:1: ( rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 )
-            // InternalOCLstdlib.g:17319:2: rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1
+            // InternalOCLstdlib.g:17320:1: ( rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 )
+            // InternalOCLstdlib.g:17321:2: rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__SquareBracketedClauseCS__Group_2__0__Impl();
@@ -50873,17 +50873,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:17326:1: rule__SquareBracketedClauseCS__Group_2__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:17328:1: rule__SquareBracketedClauseCS__Group_2__0__Impl : ( ',' ) ;
     public final void rule__SquareBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17330:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:17331:1: ( ',' )
+            // InternalOCLstdlib.g:17332:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:17333:1: ( ',' )
             {
-            // InternalOCLstdlib.g:17331:1: ( ',' )
-            // InternalOCLstdlib.g:17332:1: ','
+            // InternalOCLstdlib.g:17333:1: ( ',' )
+            // InternalOCLstdlib.g:17334:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
@@ -50914,14 +50914,14 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__1"
-    // InternalOCLstdlib.g:17345:1: rule__SquareBracketedClauseCS__Group_2__1 : rule__SquareBracketedClauseCS__Group_2__1__Impl ;
+    // InternalOCLstdlib.g:17347:1: rule__SquareBracketedClauseCS__Group_2__1 : rule__SquareBracketedClauseCS__Group_2__1__Impl ;
     public final void rule__SquareBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17349:1: ( rule__SquareBracketedClauseCS__Group_2__1__Impl )
-            // InternalOCLstdlib.g:17350:2: rule__SquareBracketedClauseCS__Group_2__1__Impl
+            // InternalOCLstdlib.g:17351:1: ( rule__SquareBracketedClauseCS__Group_2__1__Impl )
+            // InternalOCLstdlib.g:17352:2: rule__SquareBracketedClauseCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__Group_2__1__Impl();
@@ -50947,23 +50947,23 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:17356:1: rule__SquareBracketedClauseCS__Group_2__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) ;
+    // InternalOCLstdlib.g:17358:1: rule__SquareBracketedClauseCS__Group_2__1__Impl : ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) ;
     public final void rule__SquareBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17360:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) )
-            // InternalOCLstdlib.g:17361:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
+            // InternalOCLstdlib.g:17362:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) )
+            // InternalOCLstdlib.g:17363:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
             {
-            // InternalOCLstdlib.g:17361:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
-            // InternalOCLstdlib.g:17362:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
+            // InternalOCLstdlib.g:17363:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
+            // InternalOCLstdlib.g:17364:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1());
             }
-            // InternalOCLstdlib.g:17363:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
-            // InternalOCLstdlib.g:17363:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1
+            // InternalOCLstdlib.g:17365:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
+            // InternalOCLstdlib.g:17365:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1();
@@ -50998,14 +50998,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__0"
-    // InternalOCLstdlib.g:17377:1: rule__NavigatingArgCS__Group_0__0 : rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 ;
+    // InternalOCLstdlib.g:17379:1: rule__NavigatingArgCS__Group_0__0 : rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 ;
     public final void rule__NavigatingArgCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17381:1: ( rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 )
-            // InternalOCLstdlib.g:17382:2: rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1
+            // InternalOCLstdlib.g:17383:1: ( rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 )
+            // InternalOCLstdlib.g:17384:2: rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1
             {
             pushFollow(FollowSets000.FOLLOW_87);
             rule__NavigatingArgCS__Group_0__0__Impl();
@@ -51036,23 +51036,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__0__Impl"
-    // InternalOCLstdlib.g:17389:1: rule__NavigatingArgCS__Group_0__0__Impl : ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) ;
+    // InternalOCLstdlib.g:17391:1: rule__NavigatingArgCS__Group_0__0__Impl : ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) ;
     public final void rule__NavigatingArgCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17393:1: ( ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) )
-            // InternalOCLstdlib.g:17394:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
+            // InternalOCLstdlib.g:17395:1: ( ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) )
+            // InternalOCLstdlib.g:17396:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
             {
-            // InternalOCLstdlib.g:17394:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
-            // InternalOCLstdlib.g:17395:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
+            // InternalOCLstdlib.g:17396:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
+            // InternalOCLstdlib.g:17397:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0());
             }
-            // InternalOCLstdlib.g:17396:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
-            // InternalOCLstdlib.g:17396:2: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0
+            // InternalOCLstdlib.g:17398:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
+            // InternalOCLstdlib.g:17398:2: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0();
@@ -51087,14 +51087,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__1"
-    // InternalOCLstdlib.g:17406:1: rule__NavigatingArgCS__Group_0__1 : rule__NavigatingArgCS__Group_0__1__Impl ;
+    // InternalOCLstdlib.g:17408:1: rule__NavigatingArgCS__Group_0__1 : rule__NavigatingArgCS__Group_0__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17410:1: ( rule__NavigatingArgCS__Group_0__1__Impl )
-            // InternalOCLstdlib.g:17411:2: rule__NavigatingArgCS__Group_0__1__Impl
+            // InternalOCLstdlib.g:17412:1: ( rule__NavigatingArgCS__Group_0__1__Impl )
+            // InternalOCLstdlib.g:17413:2: rule__NavigatingArgCS__Group_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0__1__Impl();
@@ -51120,22 +51120,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0__1__Impl"
-    // InternalOCLstdlib.g:17417:1: rule__NavigatingArgCS__Group_0__1__Impl : ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) ;
+    // InternalOCLstdlib.g:17419:1: rule__NavigatingArgCS__Group_0__1__Impl : ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) ;
     public final void rule__NavigatingArgCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17421:1: ( ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) )
-            // InternalOCLstdlib.g:17422:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
+            // InternalOCLstdlib.g:17423:1: ( ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) )
+            // InternalOCLstdlib.g:17424:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
             {
-            // InternalOCLstdlib.g:17422:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
-            // InternalOCLstdlib.g:17423:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
+            // InternalOCLstdlib.g:17424:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
+            // InternalOCLstdlib.g:17425:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1());
             }
-            // InternalOCLstdlib.g:17424:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
+            // InternalOCLstdlib.g:17426:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             int alt147=2;
             int LA147_0 = input.LA(1);
 
@@ -51144,7 +51144,7 @@
             }
             switch (alt147) {
                 case 1 :
-                    // InternalOCLstdlib.g:17424:2: rule__NavigatingArgCS__Alternatives_0_1
+                    // InternalOCLstdlib.g:17426:2: rule__NavigatingArgCS__Alternatives_0_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Alternatives_0_1();
@@ -51182,14 +51182,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__0"
-    // InternalOCLstdlib.g:17438:1: rule__NavigatingArgCS__Group_0_1_0__0 : rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 ;
+    // InternalOCLstdlib.g:17440:1: rule__NavigatingArgCS__Group_0_1_0__0 : rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17442:1: ( rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 )
-            // InternalOCLstdlib.g:17443:2: rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1
+            // InternalOCLstdlib.g:17444:1: ( rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 )
+            // InternalOCLstdlib.g:17445:2: rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__NavigatingArgCS__Group_0_1_0__0__Impl();
@@ -51220,17 +51220,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__0__Impl"
-    // InternalOCLstdlib.g:17450:1: rule__NavigatingArgCS__Group_0_1_0__0__Impl : ( '<-' ) ;
+    // InternalOCLstdlib.g:17452:1: rule__NavigatingArgCS__Group_0_1_0__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17454:1: ( ( '<-' ) )
-            // InternalOCLstdlib.g:17455:1: ( '<-' )
+            // InternalOCLstdlib.g:17456:1: ( ( '<-' ) )
+            // InternalOCLstdlib.g:17457:1: ( '<-' )
             {
-            // InternalOCLstdlib.g:17455:1: ( '<-' )
-            // InternalOCLstdlib.g:17456:1: '<-'
+            // InternalOCLstdlib.g:17457:1: ( '<-' )
+            // InternalOCLstdlib.g:17458:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_0_0());
@@ -51261,14 +51261,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__1"
-    // InternalOCLstdlib.g:17469:1: rule__NavigatingArgCS__Group_0_1_0__1 : rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 ;
+    // InternalOCLstdlib.g:17471:1: rule__NavigatingArgCS__Group_0_1_0__1 : rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 ;
     public final void rule__NavigatingArgCS__Group_0_1_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17473:1: ( rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 )
-            // InternalOCLstdlib.g:17474:2: rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2
+            // InternalOCLstdlib.g:17475:1: ( rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 )
+            // InternalOCLstdlib.g:17476:2: rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__NavigatingArgCS__Group_0_1_0__1__Impl();
@@ -51299,23 +51299,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__1__Impl"
-    // InternalOCLstdlib.g:17481:1: rule__NavigatingArgCS__Group_0_1_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) ;
+    // InternalOCLstdlib.g:17483:1: rule__NavigatingArgCS__Group_0_1_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17485:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) )
-            // InternalOCLstdlib.g:17486:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
+            // InternalOCLstdlib.g:17487:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) ) )
+            // InternalOCLstdlib.g:17488:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
             {
-            // InternalOCLstdlib.g:17486:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
-            // InternalOCLstdlib.g:17487:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
+            // InternalOCLstdlib.g:17488:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 ) )
+            // InternalOCLstdlib.g:17489:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorAssignment_0_1_0_1());
             }
-            // InternalOCLstdlib.g:17488:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
-            // InternalOCLstdlib.g:17488:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1
+            // InternalOCLstdlib.g:17490:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 )
+            // InternalOCLstdlib.g:17490:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1();
@@ -51350,14 +51350,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__2"
-    // InternalOCLstdlib.g:17498:1: rule__NavigatingArgCS__Group_0_1_0__2 : rule__NavigatingArgCS__Group_0_1_0__2__Impl ;
+    // InternalOCLstdlib.g:17500:1: rule__NavigatingArgCS__Group_0_1_0__2 : rule__NavigatingArgCS__Group_0_1_0__2__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17502:1: ( rule__NavigatingArgCS__Group_0_1_0__2__Impl )
-            // InternalOCLstdlib.g:17503:2: rule__NavigatingArgCS__Group_0_1_0__2__Impl
+            // InternalOCLstdlib.g:17504:1: ( rule__NavigatingArgCS__Group_0_1_0__2__Impl )
+            // InternalOCLstdlib.g:17505:2: rule__NavigatingArgCS__Group_0_1_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_0__2__Impl();
@@ -51383,22 +51383,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0__2__Impl"
-    // InternalOCLstdlib.g:17509:1: rule__NavigatingArgCS__Group_0_1_0__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) ;
+    // InternalOCLstdlib.g:17511:1: rule__NavigatingArgCS__Group_0_1_0__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17513:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) )
-            // InternalOCLstdlib.g:17514:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
+            // InternalOCLstdlib.g:17515:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) )
+            // InternalOCLstdlib.g:17516:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
             {
-            // InternalOCLstdlib.g:17514:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
-            // InternalOCLstdlib.g:17515:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
+            // InternalOCLstdlib.g:17516:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
+            // InternalOCLstdlib.g:17517:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2());
             }
-            // InternalOCLstdlib.g:17516:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
+            // InternalOCLstdlib.g:17518:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             int alt148=2;
             int LA148_0 = input.LA(1);
 
@@ -51407,7 +51407,7 @@
             }
             switch (alt148) {
                 case 1 :
-                    // InternalOCLstdlib.g:17516:2: rule__NavigatingArgCS__Group_0_1_0_2__0
+                    // InternalOCLstdlib.g:17518:2: rule__NavigatingArgCS__Group_0_1_0_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_0_2__0();
@@ -51445,14 +51445,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__0"
-    // InternalOCLstdlib.g:17532:1: rule__NavigatingArgCS__Group_0_1_0_2__0 : rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 ;
+    // InternalOCLstdlib.g:17534:1: rule__NavigatingArgCS__Group_0_1_0_2__0 : rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17536:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 )
-            // InternalOCLstdlib.g:17537:2: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1
+            // InternalOCLstdlib.g:17538:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 )
+            // InternalOCLstdlib.g:17539:2: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingArgCS__Group_0_1_0_2__0__Impl();
@@ -51483,17 +51483,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__0__Impl"
-    // InternalOCLstdlib.g:17544:1: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:17546:1: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17548:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:17549:1: ( '=' )
+            // InternalOCLstdlib.g:17550:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:17551:1: ( '=' )
             {
-            // InternalOCLstdlib.g:17549:1: ( '=' )
-            // InternalOCLstdlib.g:17550:1: '='
+            // InternalOCLstdlib.g:17551:1: ( '=' )
+            // InternalOCLstdlib.g:17552:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
@@ -51524,14 +51524,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__1"
-    // InternalOCLstdlib.g:17563:1: rule__NavigatingArgCS__Group_0_1_0_2__1 : rule__NavigatingArgCS__Group_0_1_0_2__1__Impl ;
+    // InternalOCLstdlib.g:17565:1: rule__NavigatingArgCS__Group_0_1_0_2__1 : rule__NavigatingArgCS__Group_0_1_0_2__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17567:1: ( rule__NavigatingArgCS__Group_0_1_0_2__1__Impl )
-            // InternalOCLstdlib.g:17568:2: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl
+            // InternalOCLstdlib.g:17569:1: ( rule__NavigatingArgCS__Group_0_1_0_2__1__Impl )
+            // InternalOCLstdlib.g:17570:2: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_0_2__1__Impl();
@@ -51557,23 +51557,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_0_2__1__Impl"
-    // InternalOCLstdlib.g:17574:1: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) ;
+    // InternalOCLstdlib.g:17576:1: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17578:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) )
-            // InternalOCLstdlib.g:17579:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
+            // InternalOCLstdlib.g:17580:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) )
+            // InternalOCLstdlib.g:17581:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
             {
-            // InternalOCLstdlib.g:17579:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
-            // InternalOCLstdlib.g:17580:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
+            // InternalOCLstdlib.g:17581:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
+            // InternalOCLstdlib.g:17582:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1());
             }
-            // InternalOCLstdlib.g:17581:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
-            // InternalOCLstdlib.g:17581:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1
+            // InternalOCLstdlib.g:17583:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
+            // InternalOCLstdlib.g:17583:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1();
@@ -51608,14 +51608,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__0"
-    // InternalOCLstdlib.g:17595:1: rule__NavigatingArgCS__Group_0_1_1__0 : rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 ;
+    // InternalOCLstdlib.g:17597:1: rule__NavigatingArgCS__Group_0_1_1__0 : rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17599:1: ( rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 )
-            // InternalOCLstdlib.g:17600:2: rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1
+            // InternalOCLstdlib.g:17601:1: ( rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 )
+            // InternalOCLstdlib.g:17602:2: rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingArgCS__Group_0_1_1__0__Impl();
@@ -51646,17 +51646,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__0__Impl"
-    // InternalOCLstdlib.g:17607:1: rule__NavigatingArgCS__Group_0_1_1__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:17609:1: rule__NavigatingArgCS__Group_0_1_1__0__Impl : ( ':' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17611:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:17612:1: ( ':' )
+            // InternalOCLstdlib.g:17613:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:17614:1: ( ':' )
             {
-            // InternalOCLstdlib.g:17612:1: ( ':' )
-            // InternalOCLstdlib.g:17613:1: ':'
+            // InternalOCLstdlib.g:17614:1: ( ':' )
+            // InternalOCLstdlib.g:17615:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_1_0());
@@ -51687,14 +51687,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__1"
-    // InternalOCLstdlib.g:17626:1: rule__NavigatingArgCS__Group_0_1_1__1 : rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 ;
+    // InternalOCLstdlib.g:17628:1: rule__NavigatingArgCS__Group_0_1_1__1 : rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 ;
     public final void rule__NavigatingArgCS__Group_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17630:1: ( rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 )
-            // InternalOCLstdlib.g:17631:2: rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2
+            // InternalOCLstdlib.g:17632:1: ( rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2 )
+            // InternalOCLstdlib.g:17633:2: rule__NavigatingArgCS__Group_0_1_1__1__Impl rule__NavigatingArgCS__Group_0_1_1__2
             {
             pushFollow(FollowSets000.FOLLOW_88);
             rule__NavigatingArgCS__Group_0_1_1__1__Impl();
@@ -51725,23 +51725,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__1__Impl"
-    // InternalOCLstdlib.g:17638:1: rule__NavigatingArgCS__Group_0_1_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) ;
+    // InternalOCLstdlib.g:17640:1: rule__NavigatingArgCS__Group_0_1_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17642:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) )
-            // InternalOCLstdlib.g:17643:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
+            // InternalOCLstdlib.g:17644:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) ) )
+            // InternalOCLstdlib.g:17645:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
             {
-            // InternalOCLstdlib.g:17643:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
-            // InternalOCLstdlib.g:17644:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
+            // InternalOCLstdlib.g:17645:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 ) )
+            // InternalOCLstdlib.g:17646:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_1_1());
             }
-            // InternalOCLstdlib.g:17645:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
-            // InternalOCLstdlib.g:17645:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1
+            // InternalOCLstdlib.g:17647:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 )
+            // InternalOCLstdlib.g:17647:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1();
@@ -51776,14 +51776,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__2"
-    // InternalOCLstdlib.g:17655:1: rule__NavigatingArgCS__Group_0_1_1__2 : rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 ;
+    // InternalOCLstdlib.g:17657:1: rule__NavigatingArgCS__Group_0_1_1__2 : rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 ;
     public final void rule__NavigatingArgCS__Group_0_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17659:1: ( rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 )
-            // InternalOCLstdlib.g:17660:2: rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3
+            // InternalOCLstdlib.g:17661:1: ( rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3 )
+            // InternalOCLstdlib.g:17662:2: rule__NavigatingArgCS__Group_0_1_1__2__Impl rule__NavigatingArgCS__Group_0_1_1__3
             {
             pushFollow(FollowSets000.FOLLOW_88);
             rule__NavigatingArgCS__Group_0_1_1__2__Impl();
@@ -51814,22 +51814,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__2__Impl"
-    // InternalOCLstdlib.g:17667:1: rule__NavigatingArgCS__Group_0_1_1__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) ;
+    // InternalOCLstdlib.g:17669:1: rule__NavigatingArgCS__Group_0_1_1__2__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17671:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) )
-            // InternalOCLstdlib.g:17672:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
+            // InternalOCLstdlib.g:17673:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? ) )
+            // InternalOCLstdlib.g:17674:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
             {
-            // InternalOCLstdlib.g:17672:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
-            // InternalOCLstdlib.g:17673:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
+            // InternalOCLstdlib.g:17674:1: ( ( rule__NavigatingArgCS__Group_0_1_1_2__0 )? )
+            // InternalOCLstdlib.g:17675:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1_2());
             }
-            // InternalOCLstdlib.g:17674:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
+            // InternalOCLstdlib.g:17676:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0 )?
             int alt149=2;
             int LA149_0 = input.LA(1);
 
@@ -51838,7 +51838,7 @@
             }
             switch (alt149) {
                 case 1 :
-                    // InternalOCLstdlib.g:17674:2: rule__NavigatingArgCS__Group_0_1_1_2__0
+                    // InternalOCLstdlib.g:17676:2: rule__NavigatingArgCS__Group_0_1_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_1_2__0();
@@ -51876,14 +51876,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__3"
-    // InternalOCLstdlib.g:17684:1: rule__NavigatingArgCS__Group_0_1_1__3 : rule__NavigatingArgCS__Group_0_1_1__3__Impl ;
+    // InternalOCLstdlib.g:17686:1: rule__NavigatingArgCS__Group_0_1_1__3 : rule__NavigatingArgCS__Group_0_1_1__3__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17688:1: ( rule__NavigatingArgCS__Group_0_1_1__3__Impl )
-            // InternalOCLstdlib.g:17689:2: rule__NavigatingArgCS__Group_0_1_1__3__Impl
+            // InternalOCLstdlib.g:17690:1: ( rule__NavigatingArgCS__Group_0_1_1__3__Impl )
+            // InternalOCLstdlib.g:17691:2: rule__NavigatingArgCS__Group_0_1_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_1__3__Impl();
@@ -51909,22 +51909,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1__3__Impl"
-    // InternalOCLstdlib.g:17695:1: rule__NavigatingArgCS__Group_0_1_1__3__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) ;
+    // InternalOCLstdlib.g:17697:1: rule__NavigatingArgCS__Group_0_1_1__3__Impl : ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17699:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) )
-            // InternalOCLstdlib.g:17700:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
+            // InternalOCLstdlib.g:17701:1: ( ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? ) )
+            // InternalOCLstdlib.g:17702:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
             {
-            // InternalOCLstdlib.g:17700:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
-            // InternalOCLstdlib.g:17701:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
+            // InternalOCLstdlib.g:17702:1: ( ( rule__NavigatingArgCS__Group_0_1_1_3__0 )? )
+            // InternalOCLstdlib.g:17703:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1_3());
             }
-            // InternalOCLstdlib.g:17702:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
+            // InternalOCLstdlib.g:17704:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0 )?
             int alt150=2;
             int LA150_0 = input.LA(1);
 
@@ -51933,7 +51933,7 @@
             }
             switch (alt150) {
                 case 1 :
-                    // InternalOCLstdlib.g:17702:2: rule__NavigatingArgCS__Group_0_1_1_3__0
+                    // InternalOCLstdlib.g:17704:2: rule__NavigatingArgCS__Group_0_1_1_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_1_3__0();
@@ -51971,14 +51971,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__0"
-    // InternalOCLstdlib.g:17720:1: rule__NavigatingArgCS__Group_0_1_1_2__0 : rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 ;
+    // InternalOCLstdlib.g:17722:1: rule__NavigatingArgCS__Group_0_1_1_2__0 : rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17724:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 )
-            // InternalOCLstdlib.g:17725:2: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1
+            // InternalOCLstdlib.g:17726:1: ( rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1 )
+            // InternalOCLstdlib.g:17727:2: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__NavigatingArgCS__Group_0_1_1_2__0__Impl();
@@ -52009,17 +52009,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__0__Impl"
-    // InternalOCLstdlib.g:17732:1: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl : ( '<-' ) ;
+    // InternalOCLstdlib.g:17734:1: rule__NavigatingArgCS__Group_0_1_1_2__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17736:1: ( ( '<-' ) )
-            // InternalOCLstdlib.g:17737:1: ( '<-' )
+            // InternalOCLstdlib.g:17738:1: ( ( '<-' ) )
+            // InternalOCLstdlib.g:17739:1: ( '<-' )
             {
-            // InternalOCLstdlib.g:17737:1: ( '<-' )
-            // InternalOCLstdlib.g:17738:1: '<-'
+            // InternalOCLstdlib.g:17739:1: ( '<-' )
+            // InternalOCLstdlib.g:17740:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_1_2_0());
@@ -52050,14 +52050,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__1"
-    // InternalOCLstdlib.g:17751:1: rule__NavigatingArgCS__Group_0_1_1_2__1 : rule__NavigatingArgCS__Group_0_1_1_2__1__Impl ;
+    // InternalOCLstdlib.g:17753:1: rule__NavigatingArgCS__Group_0_1_1_2__1 : rule__NavigatingArgCS__Group_0_1_1_2__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17755:1: ( rule__NavigatingArgCS__Group_0_1_1_2__1__Impl )
-            // InternalOCLstdlib.g:17756:2: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl
+            // InternalOCLstdlib.g:17757:1: ( rule__NavigatingArgCS__Group_0_1_1_2__1__Impl )
+            // InternalOCLstdlib.g:17758:2: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_1_2__1__Impl();
@@ -52083,23 +52083,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_2__1__Impl"
-    // InternalOCLstdlib.g:17762:1: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) ;
+    // InternalOCLstdlib.g:17764:1: rule__NavigatingArgCS__Group_0_1_1_2__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17766:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) )
-            // InternalOCLstdlib.g:17767:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
+            // InternalOCLstdlib.g:17768:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) ) )
+            // InternalOCLstdlib.g:17769:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
             {
-            // InternalOCLstdlib.g:17767:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
-            // InternalOCLstdlib.g:17768:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
+            // InternalOCLstdlib.g:17769:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 ) )
+            // InternalOCLstdlib.g:17770:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorAssignment_0_1_1_2_1());
             }
-            // InternalOCLstdlib.g:17769:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
-            // InternalOCLstdlib.g:17769:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1
+            // InternalOCLstdlib.g:17771:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 )
+            // InternalOCLstdlib.g:17771:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1();
@@ -52134,14 +52134,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__0"
-    // InternalOCLstdlib.g:17783:1: rule__NavigatingArgCS__Group_0_1_1_3__0 : rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 ;
+    // InternalOCLstdlib.g:17785:1: rule__NavigatingArgCS__Group_0_1_1_3__0 : rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17787:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 )
-            // InternalOCLstdlib.g:17788:2: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1
+            // InternalOCLstdlib.g:17789:1: ( rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1 )
+            // InternalOCLstdlib.g:17790:2: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl rule__NavigatingArgCS__Group_0_1_1_3__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingArgCS__Group_0_1_1_3__0__Impl();
@@ -52172,17 +52172,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__0__Impl"
-    // InternalOCLstdlib.g:17795:1: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:17797:1: rule__NavigatingArgCS__Group_0_1_1_3__0__Impl : ( '=' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17799:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:17800:1: ( '=' )
+            // InternalOCLstdlib.g:17801:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:17802:1: ( '=' )
             {
-            // InternalOCLstdlib.g:17800:1: ( '=' )
-            // InternalOCLstdlib.g:17801:1: '='
+            // InternalOCLstdlib.g:17802:1: ( '=' )
+            // InternalOCLstdlib.g:17803:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_1_3_0());
@@ -52213,14 +52213,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__1"
-    // InternalOCLstdlib.g:17814:1: rule__NavigatingArgCS__Group_0_1_1_3__1 : rule__NavigatingArgCS__Group_0_1_1_3__1__Impl ;
+    // InternalOCLstdlib.g:17816:1: rule__NavigatingArgCS__Group_0_1_1_3__1 : rule__NavigatingArgCS__Group_0_1_1_3__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17818:1: ( rule__NavigatingArgCS__Group_0_1_1_3__1__Impl )
-            // InternalOCLstdlib.g:17819:2: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl
+            // InternalOCLstdlib.g:17820:1: ( rule__NavigatingArgCS__Group_0_1_1_3__1__Impl )
+            // InternalOCLstdlib.g:17821:2: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_1_3__1__Impl();
@@ -52246,23 +52246,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_1_3__1__Impl"
-    // InternalOCLstdlib.g:17825:1: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) ;
+    // InternalOCLstdlib.g:17827:1: rule__NavigatingArgCS__Group_0_1_1_3__1__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_1_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17829:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) )
-            // InternalOCLstdlib.g:17830:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
+            // InternalOCLstdlib.g:17831:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) ) )
+            // InternalOCLstdlib.g:17832:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
             {
-            // InternalOCLstdlib.g:17830:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
-            // InternalOCLstdlib.g:17831:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
+            // InternalOCLstdlib.g:17832:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 ) )
+            // InternalOCLstdlib.g:17833:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_3_1());
             }
-            // InternalOCLstdlib.g:17832:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
-            // InternalOCLstdlib.g:17832:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1
+            // InternalOCLstdlib.g:17834:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 )
+            // InternalOCLstdlib.g:17834:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1();
@@ -52297,14 +52297,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__0"
-    // InternalOCLstdlib.g:17846:1: rule__NavigatingArgCS__Group_0_1_2__0 : rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 ;
+    // InternalOCLstdlib.g:17848:1: rule__NavigatingArgCS__Group_0_1_2__0 : rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17850:1: ( rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 )
-            // InternalOCLstdlib.g:17851:2: rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1
+            // InternalOCLstdlib.g:17852:1: ( rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1 )
+            // InternalOCLstdlib.g:17853:2: rule__NavigatingArgCS__Group_0_1_2__0__Impl rule__NavigatingArgCS__Group_0_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_87);
             rule__NavigatingArgCS__Group_0_1_2__0__Impl();
@@ -52335,22 +52335,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__0__Impl"
-    // InternalOCLstdlib.g:17858:1: rule__NavigatingArgCS__Group_0_1_2__0__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) ;
+    // InternalOCLstdlib.g:17860:1: rule__NavigatingArgCS__Group_0_1_2__0__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17862:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) )
-            // InternalOCLstdlib.g:17863:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
+            // InternalOCLstdlib.g:17864:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? ) )
+            // InternalOCLstdlib.g:17865:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
             {
-            // InternalOCLstdlib.g:17863:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
-            // InternalOCLstdlib.g:17864:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
+            // InternalOCLstdlib.g:17865:1: ( ( rule__NavigatingArgCS__Group_0_1_2_0__0 )? )
+            // InternalOCLstdlib.g:17866:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_2_0());
             }
-            // InternalOCLstdlib.g:17865:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
+            // InternalOCLstdlib.g:17867:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0 )?
             int alt151=2;
             int LA151_0 = input.LA(1);
 
@@ -52359,7 +52359,7 @@
             }
             switch (alt151) {
                 case 1 :
-                    // InternalOCLstdlib.g:17865:2: rule__NavigatingArgCS__Group_0_1_2_0__0
+                    // InternalOCLstdlib.g:17867:2: rule__NavigatingArgCS__Group_0_1_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_2_0__0();
@@ -52397,14 +52397,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__1"
-    // InternalOCLstdlib.g:17875:1: rule__NavigatingArgCS__Group_0_1_2__1 : rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 ;
+    // InternalOCLstdlib.g:17877:1: rule__NavigatingArgCS__Group_0_1_2__1 : rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 ;
     public final void rule__NavigatingArgCS__Group_0_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17879:1: ( rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 )
-            // InternalOCLstdlib.g:17880:2: rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2
+            // InternalOCLstdlib.g:17881:1: ( rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2 )
+            // InternalOCLstdlib.g:17882:2: rule__NavigatingArgCS__Group_0_1_2__1__Impl rule__NavigatingArgCS__Group_0_1_2__2
             {
             pushFollow(FollowSets000.FOLLOW_87);
             rule__NavigatingArgCS__Group_0_1_2__1__Impl();
@@ -52435,22 +52435,22 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__1__Impl"
-    // InternalOCLstdlib.g:17887:1: rule__NavigatingArgCS__Group_0_1_2__1__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) ;
+    // InternalOCLstdlib.g:17889:1: rule__NavigatingArgCS__Group_0_1_2__1__Impl : ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17891:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) )
-            // InternalOCLstdlib.g:17892:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
+            // InternalOCLstdlib.g:17893:1: ( ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? ) )
+            // InternalOCLstdlib.g:17894:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
             {
-            // InternalOCLstdlib.g:17892:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
-            // InternalOCLstdlib.g:17893:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
+            // InternalOCLstdlib.g:17894:1: ( ( rule__NavigatingArgCS__Group_0_1_2_1__0 )? )
+            // InternalOCLstdlib.g:17895:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_2_1());
             }
-            // InternalOCLstdlib.g:17894:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
+            // InternalOCLstdlib.g:17896:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0 )?
             int alt152=2;
             int LA152_0 = input.LA(1);
 
@@ -52459,7 +52459,7 @@
             }
             switch (alt152) {
                 case 1 :
-                    // InternalOCLstdlib.g:17894:2: rule__NavigatingArgCS__Group_0_1_2_1__0
+                    // InternalOCLstdlib.g:17896:2: rule__NavigatingArgCS__Group_0_1_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingArgCS__Group_0_1_2_1__0();
@@ -52497,14 +52497,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__2"
-    // InternalOCLstdlib.g:17904:1: rule__NavigatingArgCS__Group_0_1_2__2 : rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 ;
+    // InternalOCLstdlib.g:17906:1: rule__NavigatingArgCS__Group_0_1_2__2 : rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 ;
     public final void rule__NavigatingArgCS__Group_0_1_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17908:1: ( rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 )
-            // InternalOCLstdlib.g:17909:2: rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3
+            // InternalOCLstdlib.g:17910:1: ( rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3 )
+            // InternalOCLstdlib.g:17911:2: rule__NavigatingArgCS__Group_0_1_2__2__Impl rule__NavigatingArgCS__Group_0_1_2__3
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingArgCS__Group_0_1_2__2__Impl();
@@ -52535,17 +52535,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__2__Impl"
-    // InternalOCLstdlib.g:17916:1: rule__NavigatingArgCS__Group_0_1_2__2__Impl : ( 'in' ) ;
+    // InternalOCLstdlib.g:17918:1: rule__NavigatingArgCS__Group_0_1_2__2__Impl : ( 'in' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17920:1: ( ( 'in' ) )
-            // InternalOCLstdlib.g:17921:1: ( 'in' )
+            // InternalOCLstdlib.g:17922:1: ( ( 'in' ) )
+            // InternalOCLstdlib.g:17923:1: ( 'in' )
             {
-            // InternalOCLstdlib.g:17921:1: ( 'in' )
-            // InternalOCLstdlib.g:17922:1: 'in'
+            // InternalOCLstdlib.g:17923:1: ( 'in' )
+            // InternalOCLstdlib.g:17924:1: 'in'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_2_2());
@@ -52576,14 +52576,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__3"
-    // InternalOCLstdlib.g:17935:1: rule__NavigatingArgCS__Group_0_1_2__3 : rule__NavigatingArgCS__Group_0_1_2__3__Impl ;
+    // InternalOCLstdlib.g:17937:1: rule__NavigatingArgCS__Group_0_1_2__3 : rule__NavigatingArgCS__Group_0_1_2__3__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17939:1: ( rule__NavigatingArgCS__Group_0_1_2__3__Impl )
-            // InternalOCLstdlib.g:17940:2: rule__NavigatingArgCS__Group_0_1_2__3__Impl
+            // InternalOCLstdlib.g:17941:1: ( rule__NavigatingArgCS__Group_0_1_2__3__Impl )
+            // InternalOCLstdlib.g:17942:2: rule__NavigatingArgCS__Group_0_1_2__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_2__3__Impl();
@@ -52609,23 +52609,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2__3__Impl"
-    // InternalOCLstdlib.g:17946:1: rule__NavigatingArgCS__Group_0_1_2__3__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) ;
+    // InternalOCLstdlib.g:17948:1: rule__NavigatingArgCS__Group_0_1_2__3__Impl : ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17950:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) )
-            // InternalOCLstdlib.g:17951:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
+            // InternalOCLstdlib.g:17952:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) ) )
+            // InternalOCLstdlib.g:17953:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
             {
-            // InternalOCLstdlib.g:17951:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
-            // InternalOCLstdlib.g:17952:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
+            // InternalOCLstdlib.g:17953:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 ) )
+            // InternalOCLstdlib.g:17954:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_2_3());
             }
-            // InternalOCLstdlib.g:17953:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
-            // InternalOCLstdlib.g:17953:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3
+            // InternalOCLstdlib.g:17955:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 )
+            // InternalOCLstdlib.g:17955:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3();
@@ -52660,14 +52660,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__0"
-    // InternalOCLstdlib.g:17971:1: rule__NavigatingArgCS__Group_0_1_2_0__0 : rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 ;
+    // InternalOCLstdlib.g:17973:1: rule__NavigatingArgCS__Group_0_1_2_0__0 : rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17975:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 )
-            // InternalOCLstdlib.g:17976:2: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1
+            // InternalOCLstdlib.g:17977:1: ( rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1 )
+            // InternalOCLstdlib.g:17978:2: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl rule__NavigatingArgCS__Group_0_1_2_0__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingArgCS__Group_0_1_2_0__0__Impl();
@@ -52698,17 +52698,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__0__Impl"
-    // InternalOCLstdlib.g:17983:1: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:17985:1: rule__NavigatingArgCS__Group_0_1_2_0__0__Impl : ( ':' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:17987:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:17988:1: ( ':' )
+            // InternalOCLstdlib.g:17989:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:17990:1: ( ':' )
             {
-            // InternalOCLstdlib.g:17988:1: ( ':' )
-            // InternalOCLstdlib.g:17989:1: ':'
+            // InternalOCLstdlib.g:17990:1: ( ':' )
+            // InternalOCLstdlib.g:17991:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_2_0_0());
@@ -52739,14 +52739,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__1"
-    // InternalOCLstdlib.g:18002:1: rule__NavigatingArgCS__Group_0_1_2_0__1 : rule__NavigatingArgCS__Group_0_1_2_0__1__Impl ;
+    // InternalOCLstdlib.g:18004:1: rule__NavigatingArgCS__Group_0_1_2_0__1 : rule__NavigatingArgCS__Group_0_1_2_0__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18006:1: ( rule__NavigatingArgCS__Group_0_1_2_0__1__Impl )
-            // InternalOCLstdlib.g:18007:2: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl
+            // InternalOCLstdlib.g:18008:1: ( rule__NavigatingArgCS__Group_0_1_2_0__1__Impl )
+            // InternalOCLstdlib.g:18009:2: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_2_0__1__Impl();
@@ -52772,23 +52772,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_0__1__Impl"
-    // InternalOCLstdlib.g:18013:1: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) ;
+    // InternalOCLstdlib.g:18015:1: rule__NavigatingArgCS__Group_0_1_2_0__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18017:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) )
-            // InternalOCLstdlib.g:18018:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
+            // InternalOCLstdlib.g:18019:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) ) )
+            // InternalOCLstdlib.g:18020:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
             {
-            // InternalOCLstdlib.g:18018:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
-            // InternalOCLstdlib.g:18019:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
+            // InternalOCLstdlib.g:18020:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 ) )
+            // InternalOCLstdlib.g:18021:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_2_0_1());
             }
-            // InternalOCLstdlib.g:18020:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
-            // InternalOCLstdlib.g:18020:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1
+            // InternalOCLstdlib.g:18022:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 )
+            // InternalOCLstdlib.g:18022:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1();
@@ -52823,14 +52823,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__0"
-    // InternalOCLstdlib.g:18034:1: rule__NavigatingArgCS__Group_0_1_2_1__0 : rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 ;
+    // InternalOCLstdlib.g:18036:1: rule__NavigatingArgCS__Group_0_1_2_1__0 : rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18038:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 )
-            // InternalOCLstdlib.g:18039:2: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1
+            // InternalOCLstdlib.g:18040:1: ( rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1 )
+            // InternalOCLstdlib.g:18041:2: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl rule__NavigatingArgCS__Group_0_1_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__NavigatingArgCS__Group_0_1_2_1__0__Impl();
@@ -52861,17 +52861,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__0__Impl"
-    // InternalOCLstdlib.g:18046:1: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl : ( '<-' ) ;
+    // InternalOCLstdlib.g:18048:1: rule__NavigatingArgCS__Group_0_1_2_1__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18050:1: ( ( '<-' ) )
-            // InternalOCLstdlib.g:18051:1: ( '<-' )
+            // InternalOCLstdlib.g:18052:1: ( ( '<-' ) )
+            // InternalOCLstdlib.g:18053:1: ( '<-' )
             {
-            // InternalOCLstdlib.g:18051:1: ( '<-' )
-            // InternalOCLstdlib.g:18052:1: '<-'
+            // InternalOCLstdlib.g:18053:1: ( '<-' )
+            // InternalOCLstdlib.g:18054:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_2_1_0());
@@ -52902,14 +52902,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__1"
-    // InternalOCLstdlib.g:18065:1: rule__NavigatingArgCS__Group_0_1_2_1__1 : rule__NavigatingArgCS__Group_0_1_2_1__1__Impl ;
+    // InternalOCLstdlib.g:18067:1: rule__NavigatingArgCS__Group_0_1_2_1__1 : rule__NavigatingArgCS__Group_0_1_2_1__1__Impl ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18069:1: ( rule__NavigatingArgCS__Group_0_1_2_1__1__Impl )
-            // InternalOCLstdlib.g:18070:2: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl
+            // InternalOCLstdlib.g:18071:1: ( rule__NavigatingArgCS__Group_0_1_2_1__1__Impl )
+            // InternalOCLstdlib.g:18072:2: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_0_1_2_1__1__Impl();
@@ -52935,23 +52935,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_0_1_2_1__1__Impl"
-    // InternalOCLstdlib.g:18076:1: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) ;
+    // InternalOCLstdlib.g:18078:1: rule__NavigatingArgCS__Group_0_1_2_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_0_1_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18080:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) )
-            // InternalOCLstdlib.g:18081:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
+            // InternalOCLstdlib.g:18082:1: ( ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) ) )
+            // InternalOCLstdlib.g:18083:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
             {
-            // InternalOCLstdlib.g:18081:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
-            // InternalOCLstdlib.g:18082:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
+            // InternalOCLstdlib.g:18083:1: ( ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 ) )
+            // InternalOCLstdlib.g:18084:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorAssignment_0_1_2_1_1());
             }
-            // InternalOCLstdlib.g:18083:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
-            // InternalOCLstdlib.g:18083:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1
+            // InternalOCLstdlib.g:18085:1: ( rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 )
+            // InternalOCLstdlib.g:18085:2: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1();
@@ -52986,14 +52986,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__0"
-    // InternalOCLstdlib.g:18097:1: rule__NavigatingArgCS__Group_1__0 : rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 ;
+    // InternalOCLstdlib.g:18099:1: rule__NavigatingArgCS__Group_1__0 : rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 ;
     public final void rule__NavigatingArgCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18101:1: ( rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 )
-            // InternalOCLstdlib.g:18102:2: rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1
+            // InternalOCLstdlib.g:18103:1: ( rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 )
+            // InternalOCLstdlib.g:18104:2: rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingArgCS__Group_1__0__Impl();
@@ -53024,17 +53024,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:18109:1: rule__NavigatingArgCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:18111:1: rule__NavigatingArgCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__NavigatingArgCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18113:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:18114:1: ( ':' )
+            // InternalOCLstdlib.g:18115:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:18116:1: ( ':' )
             {
-            // InternalOCLstdlib.g:18114:1: ( ':' )
-            // InternalOCLstdlib.g:18115:1: ':'
+            // InternalOCLstdlib.g:18116:1: ( ':' )
+            // InternalOCLstdlib.g:18117:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
@@ -53065,14 +53065,14 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__1"
-    // InternalOCLstdlib.g:18128:1: rule__NavigatingArgCS__Group_1__1 : rule__NavigatingArgCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:18130:1: rule__NavigatingArgCS__Group_1__1 : rule__NavigatingArgCS__Group_1__1__Impl ;
     public final void rule__NavigatingArgCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18132:1: ( rule__NavigatingArgCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:18133:2: rule__NavigatingArgCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:18134:1: ( rule__NavigatingArgCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:18135:2: rule__NavigatingArgCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__Group_1__1__Impl();
@@ -53098,23 +53098,23 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:18139:1: rule__NavigatingArgCS__Group_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalOCLstdlib.g:18141:1: rule__NavigatingArgCS__Group_1__1__Impl : ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__NavigatingArgCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18143:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalOCLstdlib.g:18144:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLstdlib.g:18145:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalOCLstdlib.g:18146:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalOCLstdlib.g:18144:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
-            // InternalOCLstdlib.g:18145:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLstdlib.g:18146:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLstdlib.g:18147:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalOCLstdlib.g:18146:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
-            // InternalOCLstdlib.g:18146:2: rule__NavigatingArgCS__OwnedTypeAssignment_1_1
+            // InternalOCLstdlib.g:18148:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLstdlib.g:18148:2: rule__NavigatingArgCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingArgCS__OwnedTypeAssignment_1_1();
@@ -53149,14 +53149,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__0"
-    // InternalOCLstdlib.g:18160:1: rule__NavigatingBarArgCS__Group__0 : rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 ;
+    // InternalOCLstdlib.g:18162:1: rule__NavigatingBarArgCS__Group__0 : rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 ;
     public final void rule__NavigatingBarArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18164:1: ( rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 )
-            // InternalOCLstdlib.g:18165:2: rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1
+            // InternalOCLstdlib.g:18166:1: ( rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 )
+            // InternalOCLstdlib.g:18167:2: rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingBarArgCS__Group__0__Impl();
@@ -53187,23 +53187,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__0__Impl"
-    // InternalOCLstdlib.g:18172:1: rule__NavigatingBarArgCS__Group__0__Impl : ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:18174:1: rule__NavigatingBarArgCS__Group__0__Impl : ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) ;
     public final void rule__NavigatingBarArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18176:1: ( ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) )
-            // InternalOCLstdlib.g:18177:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
+            // InternalOCLstdlib.g:18178:1: ( ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) )
+            // InternalOCLstdlib.g:18179:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:18177:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
-            // InternalOCLstdlib.g:18178:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
+            // InternalOCLstdlib.g:18179:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
+            // InternalOCLstdlib.g:18180:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0());
             }
-            // InternalOCLstdlib.g:18179:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
-            // InternalOCLstdlib.g:18179:2: rule__NavigatingBarArgCS__PrefixAssignment_0
+            // InternalOCLstdlib.g:18181:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
+            // InternalOCLstdlib.g:18181:2: rule__NavigatingBarArgCS__PrefixAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__PrefixAssignment_0();
@@ -53238,14 +53238,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__1"
-    // InternalOCLstdlib.g:18189:1: rule__NavigatingBarArgCS__Group__1 : rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 ;
+    // InternalOCLstdlib.g:18191:1: rule__NavigatingBarArgCS__Group__1 : rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 ;
     public final void rule__NavigatingBarArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18193:1: ( rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 )
-            // InternalOCLstdlib.g:18194:2: rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2
+            // InternalOCLstdlib.g:18195:1: ( rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 )
+            // InternalOCLstdlib.g:18196:2: rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__NavigatingBarArgCS__Group__1__Impl();
@@ -53276,23 +53276,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__1__Impl"
-    // InternalOCLstdlib.g:18201:1: rule__NavigatingBarArgCS__Group__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:18203:1: rule__NavigatingBarArgCS__Group__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) ;
     public final void rule__NavigatingBarArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18205:1: ( ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) )
-            // InternalOCLstdlib.g:18206:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalOCLstdlib.g:18207:1: ( ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) )
+            // InternalOCLstdlib.g:18208:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:18206:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
-            // InternalOCLstdlib.g:18207:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalOCLstdlib.g:18208:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalOCLstdlib.g:18209:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
-            // InternalOCLstdlib.g:18208:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
-            // InternalOCLstdlib.g:18208:2: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1
+            // InternalOCLstdlib.g:18210:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalOCLstdlib.g:18210:2: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1();
@@ -53327,14 +53327,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__2"
-    // InternalOCLstdlib.g:18218:1: rule__NavigatingBarArgCS__Group__2 : rule__NavigatingBarArgCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:18220:1: rule__NavigatingBarArgCS__Group__2 : rule__NavigatingBarArgCS__Group__2__Impl ;
     public final void rule__NavigatingBarArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18222:1: ( rule__NavigatingBarArgCS__Group__2__Impl )
-            // InternalOCLstdlib.g:18223:2: rule__NavigatingBarArgCS__Group__2__Impl
+            // InternalOCLstdlib.g:18224:1: ( rule__NavigatingBarArgCS__Group__2__Impl )
+            // InternalOCLstdlib.g:18225:2: rule__NavigatingBarArgCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__Group__2__Impl();
@@ -53360,22 +53360,22 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group__2__Impl"
-    // InternalOCLstdlib.g:18229:1: rule__NavigatingBarArgCS__Group__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) ;
+    // InternalOCLstdlib.g:18231:1: rule__NavigatingBarArgCS__Group__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) ;
     public final void rule__NavigatingBarArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18233:1: ( ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) )
-            // InternalOCLstdlib.g:18234:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:18235:1: ( ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) )
+            // InternalOCLstdlib.g:18236:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
             {
-            // InternalOCLstdlib.g:18234:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
-            // InternalOCLstdlib.g:18235:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
+            // InternalOCLstdlib.g:18236:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:18237:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:18236:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
+            // InternalOCLstdlib.g:18238:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             int alt153=2;
             int LA153_0 = input.LA(1);
 
@@ -53384,7 +53384,7 @@
             }
             switch (alt153) {
                 case 1 :
-                    // InternalOCLstdlib.g:18236:2: rule__NavigatingBarArgCS__Group_2__0
+                    // InternalOCLstdlib.g:18238:2: rule__NavigatingBarArgCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingBarArgCS__Group_2__0();
@@ -53422,14 +53422,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__0"
-    // InternalOCLstdlib.g:18252:1: rule__NavigatingBarArgCS__Group_2__0 : rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 ;
+    // InternalOCLstdlib.g:18254:1: rule__NavigatingBarArgCS__Group_2__0 : rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 ;
     public final void rule__NavigatingBarArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18256:1: ( rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 )
-            // InternalOCLstdlib.g:18257:2: rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1
+            // InternalOCLstdlib.g:18258:1: ( rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 )
+            // InternalOCLstdlib.g:18259:2: rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingBarArgCS__Group_2__0__Impl();
@@ -53460,17 +53460,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:18264:1: rule__NavigatingBarArgCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:18266:1: rule__NavigatingBarArgCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__NavigatingBarArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18268:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:18269:1: ( ':' )
+            // InternalOCLstdlib.g:18270:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:18271:1: ( ':' )
             {
-            // InternalOCLstdlib.g:18269:1: ( ':' )
-            // InternalOCLstdlib.g:18270:1: ':'
+            // InternalOCLstdlib.g:18271:1: ( ':' )
+            // InternalOCLstdlib.g:18272:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
@@ -53501,14 +53501,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__1"
-    // InternalOCLstdlib.g:18283:1: rule__NavigatingBarArgCS__Group_2__1 : rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 ;
+    // InternalOCLstdlib.g:18285:1: rule__NavigatingBarArgCS__Group_2__1 : rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 ;
     public final void rule__NavigatingBarArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18287:1: ( rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 )
-            // InternalOCLstdlib.g:18288:2: rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2
+            // InternalOCLstdlib.g:18289:1: ( rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 )
+            // InternalOCLstdlib.g:18290:2: rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__NavigatingBarArgCS__Group_2__1__Impl();
@@ -53539,23 +53539,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:18295:1: rule__NavigatingBarArgCS__Group_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) ;
+    // InternalOCLstdlib.g:18297:1: rule__NavigatingBarArgCS__Group_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) ;
     public final void rule__NavigatingBarArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18299:1: ( ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) )
-            // InternalOCLstdlib.g:18300:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalOCLstdlib.g:18301:1: ( ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) )
+            // InternalOCLstdlib.g:18302:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
             {
-            // InternalOCLstdlib.g:18300:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
-            // InternalOCLstdlib.g:18301:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
+            // InternalOCLstdlib.g:18302:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalOCLstdlib.g:18303:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1());
             }
-            // InternalOCLstdlib.g:18302:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
-            // InternalOCLstdlib.g:18302:2: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1
+            // InternalOCLstdlib.g:18304:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
+            // InternalOCLstdlib.g:18304:2: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1();
@@ -53590,14 +53590,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__2"
-    // InternalOCLstdlib.g:18312:1: rule__NavigatingBarArgCS__Group_2__2 : rule__NavigatingBarArgCS__Group_2__2__Impl ;
+    // InternalOCLstdlib.g:18314:1: rule__NavigatingBarArgCS__Group_2__2 : rule__NavigatingBarArgCS__Group_2__2__Impl ;
     public final void rule__NavigatingBarArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18316:1: ( rule__NavigatingBarArgCS__Group_2__2__Impl )
-            // InternalOCLstdlib.g:18317:2: rule__NavigatingBarArgCS__Group_2__2__Impl
+            // InternalOCLstdlib.g:18318:1: ( rule__NavigatingBarArgCS__Group_2__2__Impl )
+            // InternalOCLstdlib.g:18319:2: rule__NavigatingBarArgCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__Group_2__2__Impl();
@@ -53623,22 +53623,22 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2__2__Impl"
-    // InternalOCLstdlib.g:18323:1: rule__NavigatingBarArgCS__Group_2__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) ;
+    // InternalOCLstdlib.g:18325:1: rule__NavigatingBarArgCS__Group_2__2__Impl : ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) ;
     public final void rule__NavigatingBarArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18327:1: ( ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) )
-            // InternalOCLstdlib.g:18328:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
+            // InternalOCLstdlib.g:18329:1: ( ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) )
+            // InternalOCLstdlib.g:18330:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
             {
-            // InternalOCLstdlib.g:18328:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
-            // InternalOCLstdlib.g:18329:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
+            // InternalOCLstdlib.g:18330:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
+            // InternalOCLstdlib.g:18331:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2());
             }
-            // InternalOCLstdlib.g:18330:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
+            // InternalOCLstdlib.g:18332:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             int alt154=2;
             int LA154_0 = input.LA(1);
 
@@ -53647,7 +53647,7 @@
             }
             switch (alt154) {
                 case 1 :
-                    // InternalOCLstdlib.g:18330:2: rule__NavigatingBarArgCS__Group_2_2__0
+                    // InternalOCLstdlib.g:18332:2: rule__NavigatingBarArgCS__Group_2_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingBarArgCS__Group_2_2__0();
@@ -53685,14 +53685,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__0"
-    // InternalOCLstdlib.g:18346:1: rule__NavigatingBarArgCS__Group_2_2__0 : rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 ;
+    // InternalOCLstdlib.g:18348:1: rule__NavigatingBarArgCS__Group_2_2__0 : rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 ;
     public final void rule__NavigatingBarArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18350:1: ( rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 )
-            // InternalOCLstdlib.g:18351:2: rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1
+            // InternalOCLstdlib.g:18352:1: ( rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 )
+            // InternalOCLstdlib.g:18353:2: rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingBarArgCS__Group_2_2__0__Impl();
@@ -53723,17 +53723,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__0__Impl"
-    // InternalOCLstdlib.g:18358:1: rule__NavigatingBarArgCS__Group_2_2__0__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:18360:1: rule__NavigatingBarArgCS__Group_2_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingBarArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18362:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:18363:1: ( '=' )
+            // InternalOCLstdlib.g:18364:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:18365:1: ( '=' )
             {
-            // InternalOCLstdlib.g:18363:1: ( '=' )
-            // InternalOCLstdlib.g:18364:1: '='
+            // InternalOCLstdlib.g:18365:1: ( '=' )
+            // InternalOCLstdlib.g:18366:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
@@ -53764,14 +53764,14 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__1"
-    // InternalOCLstdlib.g:18377:1: rule__NavigatingBarArgCS__Group_2_2__1 : rule__NavigatingBarArgCS__Group_2_2__1__Impl ;
+    // InternalOCLstdlib.g:18379:1: rule__NavigatingBarArgCS__Group_2_2__1 : rule__NavigatingBarArgCS__Group_2_2__1__Impl ;
     public final void rule__NavigatingBarArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18381:1: ( rule__NavigatingBarArgCS__Group_2_2__1__Impl )
-            // InternalOCLstdlib.g:18382:2: rule__NavigatingBarArgCS__Group_2_2__1__Impl
+            // InternalOCLstdlib.g:18383:1: ( rule__NavigatingBarArgCS__Group_2_2__1__Impl )
+            // InternalOCLstdlib.g:18384:2: rule__NavigatingBarArgCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__Group_2_2__1__Impl();
@@ -53797,23 +53797,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__Group_2_2__1__Impl"
-    // InternalOCLstdlib.g:18388:1: rule__NavigatingBarArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
+    // InternalOCLstdlib.g:18390:1: rule__NavigatingBarArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
     public final void rule__NavigatingBarArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18392:1: ( ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
-            // InternalOCLstdlib.g:18393:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalOCLstdlib.g:18394:1: ( ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
+            // InternalOCLstdlib.g:18395:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
             {
-            // InternalOCLstdlib.g:18393:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
-            // InternalOCLstdlib.g:18394:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalOCLstdlib.g:18395:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalOCLstdlib.g:18396:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
-            // InternalOCLstdlib.g:18395:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
-            // InternalOCLstdlib.g:18395:2: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1
+            // InternalOCLstdlib.g:18397:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalOCLstdlib.g:18397:2: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1();
@@ -53848,14 +53848,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__0"
-    // InternalOCLstdlib.g:18409:1: rule__NavigatingCommaArgCS__Group__0 : rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 ;
+    // InternalOCLstdlib.g:18411:1: rule__NavigatingCommaArgCS__Group__0 : rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 ;
     public final void rule__NavigatingCommaArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18413:1: ( rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 )
-            // InternalOCLstdlib.g:18414:2: rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1
+            // InternalOCLstdlib.g:18415:1: ( rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 )
+            // InternalOCLstdlib.g:18416:2: rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingCommaArgCS__Group__0__Impl();
@@ -53886,23 +53886,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__0__Impl"
-    // InternalOCLstdlib.g:18421:1: rule__NavigatingCommaArgCS__Group__0__Impl : ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:18423:1: rule__NavigatingCommaArgCS__Group__0__Impl : ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18425:1: ( ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) )
-            // InternalOCLstdlib.g:18426:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
+            // InternalOCLstdlib.g:18427:1: ( ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) )
+            // InternalOCLstdlib.g:18428:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:18426:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
-            // InternalOCLstdlib.g:18427:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
+            // InternalOCLstdlib.g:18428:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
+            // InternalOCLstdlib.g:18429:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0());
             }
-            // InternalOCLstdlib.g:18428:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
-            // InternalOCLstdlib.g:18428:2: rule__NavigatingCommaArgCS__PrefixAssignment_0
+            // InternalOCLstdlib.g:18430:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
+            // InternalOCLstdlib.g:18430:2: rule__NavigatingCommaArgCS__PrefixAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__PrefixAssignment_0();
@@ -53937,14 +53937,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__1"
-    // InternalOCLstdlib.g:18438:1: rule__NavigatingCommaArgCS__Group__1 : rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 ;
+    // InternalOCLstdlib.g:18440:1: rule__NavigatingCommaArgCS__Group__1 : rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 ;
     public final void rule__NavigatingCommaArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18442:1: ( rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 )
-            // InternalOCLstdlib.g:18443:2: rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2
+            // InternalOCLstdlib.g:18444:1: ( rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 )
+            // InternalOCLstdlib.g:18445:2: rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_87);
             rule__NavigatingCommaArgCS__Group__1__Impl();
@@ -53975,23 +53975,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__1__Impl"
-    // InternalOCLstdlib.g:18450:1: rule__NavigatingCommaArgCS__Group__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:18452:1: rule__NavigatingCommaArgCS__Group__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18454:1: ( ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) )
-            // InternalOCLstdlib.g:18455:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalOCLstdlib.g:18456:1: ( ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) )
+            // InternalOCLstdlib.g:18457:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:18455:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
-            // InternalOCLstdlib.g:18456:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalOCLstdlib.g:18457:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalOCLstdlib.g:18458:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
-            // InternalOCLstdlib.g:18457:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
-            // InternalOCLstdlib.g:18457:2: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1
+            // InternalOCLstdlib.g:18459:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalOCLstdlib.g:18459:2: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1();
@@ -54026,14 +54026,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__2"
-    // InternalOCLstdlib.g:18467:1: rule__NavigatingCommaArgCS__Group__2 : rule__NavigatingCommaArgCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:18469:1: rule__NavigatingCommaArgCS__Group__2 : rule__NavigatingCommaArgCS__Group__2__Impl ;
     public final void rule__NavigatingCommaArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18471:1: ( rule__NavigatingCommaArgCS__Group__2__Impl )
-            // InternalOCLstdlib.g:18472:2: rule__NavigatingCommaArgCS__Group__2__Impl
+            // InternalOCLstdlib.g:18473:1: ( rule__NavigatingCommaArgCS__Group__2__Impl )
+            // InternalOCLstdlib.g:18474:2: rule__NavigatingCommaArgCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group__2__Impl();
@@ -54059,22 +54059,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group__2__Impl"
-    // InternalOCLstdlib.g:18478:1: rule__NavigatingCommaArgCS__Group__2__Impl : ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) ;
+    // InternalOCLstdlib.g:18480:1: rule__NavigatingCommaArgCS__Group__2__Impl : ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18482:1: ( ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) )
-            // InternalOCLstdlib.g:18483:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
+            // InternalOCLstdlib.g:18484:1: ( ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) )
+            // InternalOCLstdlib.g:18485:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
             {
-            // InternalOCLstdlib.g:18483:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
-            // InternalOCLstdlib.g:18484:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
+            // InternalOCLstdlib.g:18485:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
+            // InternalOCLstdlib.g:18486:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2());
             }
-            // InternalOCLstdlib.g:18485:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
+            // InternalOCLstdlib.g:18487:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             int alt155=2;
             int LA155_0 = input.LA(1);
 
@@ -54083,7 +54083,7 @@
             }
             switch (alt155) {
                 case 1 :
-                    // InternalOCLstdlib.g:18485:2: rule__NavigatingCommaArgCS__Alternatives_2
+                    // InternalOCLstdlib.g:18487:2: rule__NavigatingCommaArgCS__Alternatives_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Alternatives_2();
@@ -54121,14 +54121,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__0"
-    // InternalOCLstdlib.g:18501:1: rule__NavigatingCommaArgCS__Group_2_0__0 : rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 ;
+    // InternalOCLstdlib.g:18503:1: rule__NavigatingCommaArgCS__Group_2_0__0 : rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18505:1: ( rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 )
-            // InternalOCLstdlib.g:18506:2: rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1
+            // InternalOCLstdlib.g:18507:1: ( rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 )
+            // InternalOCLstdlib.g:18508:2: rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__NavigatingCommaArgCS__Group_2_0__0__Impl();
@@ -54159,17 +54159,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__0__Impl"
-    // InternalOCLstdlib.g:18513:1: rule__NavigatingCommaArgCS__Group_2_0__0__Impl : ( '<-' ) ;
+    // InternalOCLstdlib.g:18515:1: rule__NavigatingCommaArgCS__Group_2_0__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18517:1: ( ( '<-' ) )
-            // InternalOCLstdlib.g:18518:1: ( '<-' )
+            // InternalOCLstdlib.g:18519:1: ( ( '<-' ) )
+            // InternalOCLstdlib.g:18520:1: ( '<-' )
             {
-            // InternalOCLstdlib.g:18518:1: ( '<-' )
-            // InternalOCLstdlib.g:18519:1: '<-'
+            // InternalOCLstdlib.g:18520:1: ( '<-' )
+            // InternalOCLstdlib.g:18521:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_0_0());
@@ -54200,14 +54200,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__1"
-    // InternalOCLstdlib.g:18532:1: rule__NavigatingCommaArgCS__Group_2_0__1 : rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 ;
+    // InternalOCLstdlib.g:18534:1: rule__NavigatingCommaArgCS__Group_2_0__1 : rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18536:1: ( rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 )
-            // InternalOCLstdlib.g:18537:2: rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2
+            // InternalOCLstdlib.g:18538:1: ( rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 )
+            // InternalOCLstdlib.g:18539:2: rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__NavigatingCommaArgCS__Group_2_0__1__Impl();
@@ -54238,23 +54238,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__1__Impl"
-    // InternalOCLstdlib.g:18544:1: rule__NavigatingCommaArgCS__Group_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) ;
+    // InternalOCLstdlib.g:18546:1: rule__NavigatingCommaArgCS__Group_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18548:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) )
-            // InternalOCLstdlib.g:18549:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
+            // InternalOCLstdlib.g:18550:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) ) )
+            // InternalOCLstdlib.g:18551:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
             {
-            // InternalOCLstdlib.g:18549:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
-            // InternalOCLstdlib.g:18550:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
+            // InternalOCLstdlib.g:18551:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 ) )
+            // InternalOCLstdlib.g:18552:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorAssignment_2_0_1());
             }
-            // InternalOCLstdlib.g:18551:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
-            // InternalOCLstdlib.g:18551:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1
+            // InternalOCLstdlib.g:18553:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 )
+            // InternalOCLstdlib.g:18553:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1();
@@ -54289,14 +54289,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__2"
-    // InternalOCLstdlib.g:18561:1: rule__NavigatingCommaArgCS__Group_2_0__2 : rule__NavigatingCommaArgCS__Group_2_0__2__Impl ;
+    // InternalOCLstdlib.g:18563:1: rule__NavigatingCommaArgCS__Group_2_0__2 : rule__NavigatingCommaArgCS__Group_2_0__2__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18565:1: ( rule__NavigatingCommaArgCS__Group_2_0__2__Impl )
-            // InternalOCLstdlib.g:18566:2: rule__NavigatingCommaArgCS__Group_2_0__2__Impl
+            // InternalOCLstdlib.g:18567:1: ( rule__NavigatingCommaArgCS__Group_2_0__2__Impl )
+            // InternalOCLstdlib.g:18568:2: rule__NavigatingCommaArgCS__Group_2_0__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_0__2__Impl();
@@ -54322,22 +54322,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0__2__Impl"
-    // InternalOCLstdlib.g:18572:1: rule__NavigatingCommaArgCS__Group_2_0__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) ;
+    // InternalOCLstdlib.g:18574:1: rule__NavigatingCommaArgCS__Group_2_0__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18576:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) )
-            // InternalOCLstdlib.g:18577:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
+            // InternalOCLstdlib.g:18578:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) )
+            // InternalOCLstdlib.g:18579:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
             {
-            // InternalOCLstdlib.g:18577:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
-            // InternalOCLstdlib.g:18578:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
+            // InternalOCLstdlib.g:18579:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
+            // InternalOCLstdlib.g:18580:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2());
             }
-            // InternalOCLstdlib.g:18579:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
+            // InternalOCLstdlib.g:18581:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             int alt156=2;
             int LA156_0 = input.LA(1);
 
@@ -54346,7 +54346,7 @@
             }
             switch (alt156) {
                 case 1 :
-                    // InternalOCLstdlib.g:18579:2: rule__NavigatingCommaArgCS__Group_2_0_2__0
+                    // InternalOCLstdlib.g:18581:2: rule__NavigatingCommaArgCS__Group_2_0_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_0_2__0();
@@ -54384,14 +54384,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__0"
-    // InternalOCLstdlib.g:18595:1: rule__NavigatingCommaArgCS__Group_2_0_2__0 : rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 ;
+    // InternalOCLstdlib.g:18597:1: rule__NavigatingCommaArgCS__Group_2_0_2__0 : rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18599:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 )
-            // InternalOCLstdlib.g:18600:2: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1
+            // InternalOCLstdlib.g:18601:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 )
+            // InternalOCLstdlib.g:18602:2: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl();
@@ -54422,17 +54422,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl"
-    // InternalOCLstdlib.g:18607:1: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:18609:1: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18611:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:18612:1: ( '=' )
+            // InternalOCLstdlib.g:18613:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:18614:1: ( '=' )
             {
-            // InternalOCLstdlib.g:18612:1: ( '=' )
-            // InternalOCLstdlib.g:18613:1: '='
+            // InternalOCLstdlib.g:18614:1: ( '=' )
+            // InternalOCLstdlib.g:18615:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
@@ -54463,14 +54463,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__1"
-    // InternalOCLstdlib.g:18626:1: rule__NavigatingCommaArgCS__Group_2_0_2__1 : rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl ;
+    // InternalOCLstdlib.g:18628:1: rule__NavigatingCommaArgCS__Group_2_0_2__1 : rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18630:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl )
-            // InternalOCLstdlib.g:18631:2: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl
+            // InternalOCLstdlib.g:18632:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl )
+            // InternalOCLstdlib.g:18633:2: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl();
@@ -54496,23 +54496,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl"
-    // InternalOCLstdlib.g:18637:1: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) ;
+    // InternalOCLstdlib.g:18639:1: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18641:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) )
-            // InternalOCLstdlib.g:18642:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
+            // InternalOCLstdlib.g:18643:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) )
+            // InternalOCLstdlib.g:18644:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
             {
-            // InternalOCLstdlib.g:18642:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
-            // InternalOCLstdlib.g:18643:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
+            // InternalOCLstdlib.g:18644:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
+            // InternalOCLstdlib.g:18645:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1());
             }
-            // InternalOCLstdlib.g:18644:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
-            // InternalOCLstdlib.g:18644:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1
+            // InternalOCLstdlib.g:18646:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
+            // InternalOCLstdlib.g:18646:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1();
@@ -54547,14 +54547,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__0"
-    // InternalOCLstdlib.g:18658:1: rule__NavigatingCommaArgCS__Group_2_1__0 : rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 ;
+    // InternalOCLstdlib.g:18660:1: rule__NavigatingCommaArgCS__Group_2_1__0 : rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18662:1: ( rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 )
-            // InternalOCLstdlib.g:18663:2: rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1
+            // InternalOCLstdlib.g:18664:1: ( rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 )
+            // InternalOCLstdlib.g:18665:2: rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingCommaArgCS__Group_2_1__0__Impl();
@@ -54585,17 +54585,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__0__Impl"
-    // InternalOCLstdlib.g:18670:1: rule__NavigatingCommaArgCS__Group_2_1__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:18672:1: rule__NavigatingCommaArgCS__Group_2_1__0__Impl : ( ':' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18674:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:18675:1: ( ':' )
+            // InternalOCLstdlib.g:18676:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:18677:1: ( ':' )
             {
-            // InternalOCLstdlib.g:18675:1: ( ':' )
-            // InternalOCLstdlib.g:18676:1: ':'
+            // InternalOCLstdlib.g:18677:1: ( ':' )
+            // InternalOCLstdlib.g:18678:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_1_0());
@@ -54626,14 +54626,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__1"
-    // InternalOCLstdlib.g:18689:1: rule__NavigatingCommaArgCS__Group_2_1__1 : rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 ;
+    // InternalOCLstdlib.g:18691:1: rule__NavigatingCommaArgCS__Group_2_1__1 : rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18693:1: ( rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 )
-            // InternalOCLstdlib.g:18694:2: rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2
+            // InternalOCLstdlib.g:18695:1: ( rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2 )
+            // InternalOCLstdlib.g:18696:2: rule__NavigatingCommaArgCS__Group_2_1__1__Impl rule__NavigatingCommaArgCS__Group_2_1__2
             {
             pushFollow(FollowSets000.FOLLOW_88);
             rule__NavigatingCommaArgCS__Group_2_1__1__Impl();
@@ -54664,23 +54664,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__1__Impl"
-    // InternalOCLstdlib.g:18701:1: rule__NavigatingCommaArgCS__Group_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) ;
+    // InternalOCLstdlib.g:18703:1: rule__NavigatingCommaArgCS__Group_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18705:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) )
-            // InternalOCLstdlib.g:18706:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
+            // InternalOCLstdlib.g:18707:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) ) )
+            // InternalOCLstdlib.g:18708:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
             {
-            // InternalOCLstdlib.g:18706:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
-            // InternalOCLstdlib.g:18707:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
+            // InternalOCLstdlib.g:18708:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 ) )
+            // InternalOCLstdlib.g:18709:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_1_1());
             }
-            // InternalOCLstdlib.g:18708:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
-            // InternalOCLstdlib.g:18708:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1
+            // InternalOCLstdlib.g:18710:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 )
+            // InternalOCLstdlib.g:18710:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1();
@@ -54715,14 +54715,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__2"
-    // InternalOCLstdlib.g:18718:1: rule__NavigatingCommaArgCS__Group_2_1__2 : rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 ;
+    // InternalOCLstdlib.g:18720:1: rule__NavigatingCommaArgCS__Group_2_1__2 : rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18722:1: ( rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 )
-            // InternalOCLstdlib.g:18723:2: rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3
+            // InternalOCLstdlib.g:18724:1: ( rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3 )
+            // InternalOCLstdlib.g:18725:2: rule__NavigatingCommaArgCS__Group_2_1__2__Impl rule__NavigatingCommaArgCS__Group_2_1__3
             {
             pushFollow(FollowSets000.FOLLOW_88);
             rule__NavigatingCommaArgCS__Group_2_1__2__Impl();
@@ -54753,22 +54753,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__2__Impl"
-    // InternalOCLstdlib.g:18730:1: rule__NavigatingCommaArgCS__Group_2_1__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) ;
+    // InternalOCLstdlib.g:18732:1: rule__NavigatingCommaArgCS__Group_2_1__2__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18734:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) )
-            // InternalOCLstdlib.g:18735:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
+            // InternalOCLstdlib.g:18736:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? ) )
+            // InternalOCLstdlib.g:18737:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
             {
-            // InternalOCLstdlib.g:18735:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
-            // InternalOCLstdlib.g:18736:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
+            // InternalOCLstdlib.g:18737:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )? )
+            // InternalOCLstdlib.g:18738:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1_2());
             }
-            // InternalOCLstdlib.g:18737:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
+            // InternalOCLstdlib.g:18739:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0 )?
             int alt157=2;
             int LA157_0 = input.LA(1);
 
@@ -54777,7 +54777,7 @@
             }
             switch (alt157) {
                 case 1 :
-                    // InternalOCLstdlib.g:18737:2: rule__NavigatingCommaArgCS__Group_2_1_2__0
+                    // InternalOCLstdlib.g:18739:2: rule__NavigatingCommaArgCS__Group_2_1_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_1_2__0();
@@ -54815,14 +54815,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__3"
-    // InternalOCLstdlib.g:18747:1: rule__NavigatingCommaArgCS__Group_2_1__3 : rule__NavigatingCommaArgCS__Group_2_1__3__Impl ;
+    // InternalOCLstdlib.g:18749:1: rule__NavigatingCommaArgCS__Group_2_1__3 : rule__NavigatingCommaArgCS__Group_2_1__3__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18751:1: ( rule__NavigatingCommaArgCS__Group_2_1__3__Impl )
-            // InternalOCLstdlib.g:18752:2: rule__NavigatingCommaArgCS__Group_2_1__3__Impl
+            // InternalOCLstdlib.g:18753:1: ( rule__NavigatingCommaArgCS__Group_2_1__3__Impl )
+            // InternalOCLstdlib.g:18754:2: rule__NavigatingCommaArgCS__Group_2_1__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_1__3__Impl();
@@ -54848,22 +54848,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1__3__Impl"
-    // InternalOCLstdlib.g:18758:1: rule__NavigatingCommaArgCS__Group_2_1__3__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) ;
+    // InternalOCLstdlib.g:18760:1: rule__NavigatingCommaArgCS__Group_2_1__3__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18762:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) )
-            // InternalOCLstdlib.g:18763:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
+            // InternalOCLstdlib.g:18764:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? ) )
+            // InternalOCLstdlib.g:18765:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
             {
-            // InternalOCLstdlib.g:18763:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
-            // InternalOCLstdlib.g:18764:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
+            // InternalOCLstdlib.g:18765:1: ( ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )? )
+            // InternalOCLstdlib.g:18766:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1_3());
             }
-            // InternalOCLstdlib.g:18765:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
+            // InternalOCLstdlib.g:18767:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0 )?
             int alt158=2;
             int LA158_0 = input.LA(1);
 
@@ -54872,7 +54872,7 @@
             }
             switch (alt158) {
                 case 1 :
-                    // InternalOCLstdlib.g:18765:2: rule__NavigatingCommaArgCS__Group_2_1_3__0
+                    // InternalOCLstdlib.g:18767:2: rule__NavigatingCommaArgCS__Group_2_1_3__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_1_3__0();
@@ -54910,14 +54910,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__0"
-    // InternalOCLstdlib.g:18783:1: rule__NavigatingCommaArgCS__Group_2_1_2__0 : rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 ;
+    // InternalOCLstdlib.g:18785:1: rule__NavigatingCommaArgCS__Group_2_1_2__0 : rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18787:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 )
-            // InternalOCLstdlib.g:18788:2: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1
+            // InternalOCLstdlib.g:18789:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1 )
+            // InternalOCLstdlib.g:18790:2: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl rule__NavigatingCommaArgCS__Group_2_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl();
@@ -54948,17 +54948,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl"
-    // InternalOCLstdlib.g:18795:1: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl : ( '<-' ) ;
+    // InternalOCLstdlib.g:18797:1: rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18799:1: ( ( '<-' ) )
-            // InternalOCLstdlib.g:18800:1: ( '<-' )
+            // InternalOCLstdlib.g:18801:1: ( ( '<-' ) )
+            // InternalOCLstdlib.g:18802:1: ( '<-' )
             {
-            // InternalOCLstdlib.g:18800:1: ( '<-' )
-            // InternalOCLstdlib.g:18801:1: '<-'
+            // InternalOCLstdlib.g:18802:1: ( '<-' )
+            // InternalOCLstdlib.g:18803:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_1_2_0());
@@ -54989,14 +54989,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__1"
-    // InternalOCLstdlib.g:18814:1: rule__NavigatingCommaArgCS__Group_2_1_2__1 : rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl ;
+    // InternalOCLstdlib.g:18816:1: rule__NavigatingCommaArgCS__Group_2_1_2__1 : rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18818:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl )
-            // InternalOCLstdlib.g:18819:2: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl
+            // InternalOCLstdlib.g:18820:1: ( rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl )
+            // InternalOCLstdlib.g:18821:2: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl();
@@ -55022,23 +55022,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl"
-    // InternalOCLstdlib.g:18825:1: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) ;
+    // InternalOCLstdlib.g:18827:1: rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18829:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) )
-            // InternalOCLstdlib.g:18830:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
+            // InternalOCLstdlib.g:18831:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) ) )
+            // InternalOCLstdlib.g:18832:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
             {
-            // InternalOCLstdlib.g:18830:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
-            // InternalOCLstdlib.g:18831:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
+            // InternalOCLstdlib.g:18832:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 ) )
+            // InternalOCLstdlib.g:18833:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorAssignment_2_1_2_1());
             }
-            // InternalOCLstdlib.g:18832:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
-            // InternalOCLstdlib.g:18832:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1
+            // InternalOCLstdlib.g:18834:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 )
+            // InternalOCLstdlib.g:18834:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1();
@@ -55073,14 +55073,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__0"
-    // InternalOCLstdlib.g:18846:1: rule__NavigatingCommaArgCS__Group_2_1_3__0 : rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 ;
+    // InternalOCLstdlib.g:18848:1: rule__NavigatingCommaArgCS__Group_2_1_3__0 : rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18850:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 )
-            // InternalOCLstdlib.g:18851:2: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1
+            // InternalOCLstdlib.g:18852:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1 )
+            // InternalOCLstdlib.g:18853:2: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl rule__NavigatingCommaArgCS__Group_2_1_3__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl();
@@ -55111,17 +55111,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl"
-    // InternalOCLstdlib.g:18858:1: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:18860:1: rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl : ( '=' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18862:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:18863:1: ( '=' )
+            // InternalOCLstdlib.g:18864:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:18865:1: ( '=' )
             {
-            // InternalOCLstdlib.g:18863:1: ( '=' )
-            // InternalOCLstdlib.g:18864:1: '='
+            // InternalOCLstdlib.g:18865:1: ( '=' )
+            // InternalOCLstdlib.g:18866:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_1_3_0());
@@ -55152,14 +55152,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__1"
-    // InternalOCLstdlib.g:18877:1: rule__NavigatingCommaArgCS__Group_2_1_3__1 : rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl ;
+    // InternalOCLstdlib.g:18879:1: rule__NavigatingCommaArgCS__Group_2_1_3__1 : rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18881:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl )
-            // InternalOCLstdlib.g:18882:2: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl
+            // InternalOCLstdlib.g:18883:1: ( rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl )
+            // InternalOCLstdlib.g:18884:2: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl();
@@ -55185,23 +55185,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl"
-    // InternalOCLstdlib.g:18888:1: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) ;
+    // InternalOCLstdlib.g:18890:1: rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_1_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18892:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) )
-            // InternalOCLstdlib.g:18893:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
+            // InternalOCLstdlib.g:18894:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) ) )
+            // InternalOCLstdlib.g:18895:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
             {
-            // InternalOCLstdlib.g:18893:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
-            // InternalOCLstdlib.g:18894:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
+            // InternalOCLstdlib.g:18895:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 ) )
+            // InternalOCLstdlib.g:18896:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_3_1());
             }
-            // InternalOCLstdlib.g:18895:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
-            // InternalOCLstdlib.g:18895:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1
+            // InternalOCLstdlib.g:18897:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 )
+            // InternalOCLstdlib.g:18897:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1();
@@ -55236,14 +55236,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__0"
-    // InternalOCLstdlib.g:18909:1: rule__NavigatingCommaArgCS__Group_2_2__0 : rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 ;
+    // InternalOCLstdlib.g:18911:1: rule__NavigatingCommaArgCS__Group_2_2__0 : rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18913:1: ( rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 )
-            // InternalOCLstdlib.g:18914:2: rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1
+            // InternalOCLstdlib.g:18915:1: ( rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1 )
+            // InternalOCLstdlib.g:18916:2: rule__NavigatingCommaArgCS__Group_2_2__0__Impl rule__NavigatingCommaArgCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_87);
             rule__NavigatingCommaArgCS__Group_2_2__0__Impl();
@@ -55274,22 +55274,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__0__Impl"
-    // InternalOCLstdlib.g:18921:1: rule__NavigatingCommaArgCS__Group_2_2__0__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) ;
+    // InternalOCLstdlib.g:18923:1: rule__NavigatingCommaArgCS__Group_2_2__0__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18925:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) )
-            // InternalOCLstdlib.g:18926:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
+            // InternalOCLstdlib.g:18927:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? ) )
+            // InternalOCLstdlib.g:18928:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
             {
-            // InternalOCLstdlib.g:18926:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
-            // InternalOCLstdlib.g:18927:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
+            // InternalOCLstdlib.g:18928:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )? )
+            // InternalOCLstdlib.g:18929:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_2_0());
             }
-            // InternalOCLstdlib.g:18928:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
+            // InternalOCLstdlib.g:18930:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0 )?
             int alt159=2;
             int LA159_0 = input.LA(1);
 
@@ -55298,7 +55298,7 @@
             }
             switch (alt159) {
                 case 1 :
-                    // InternalOCLstdlib.g:18928:2: rule__NavigatingCommaArgCS__Group_2_2_0__0
+                    // InternalOCLstdlib.g:18930:2: rule__NavigatingCommaArgCS__Group_2_2_0__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_2_0__0();
@@ -55336,14 +55336,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__1"
-    // InternalOCLstdlib.g:18938:1: rule__NavigatingCommaArgCS__Group_2_2__1 : rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 ;
+    // InternalOCLstdlib.g:18940:1: rule__NavigatingCommaArgCS__Group_2_2__1 : rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18942:1: ( rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 )
-            // InternalOCLstdlib.g:18943:2: rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2
+            // InternalOCLstdlib.g:18944:1: ( rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2 )
+            // InternalOCLstdlib.g:18945:2: rule__NavigatingCommaArgCS__Group_2_2__1__Impl rule__NavigatingCommaArgCS__Group_2_2__2
             {
             pushFollow(FollowSets000.FOLLOW_87);
             rule__NavigatingCommaArgCS__Group_2_2__1__Impl();
@@ -55374,22 +55374,22 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__1__Impl"
-    // InternalOCLstdlib.g:18950:1: rule__NavigatingCommaArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) ;
+    // InternalOCLstdlib.g:18952:1: rule__NavigatingCommaArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18954:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) )
-            // InternalOCLstdlib.g:18955:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
+            // InternalOCLstdlib.g:18956:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? ) )
+            // InternalOCLstdlib.g:18957:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
             {
-            // InternalOCLstdlib.g:18955:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
-            // InternalOCLstdlib.g:18956:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
+            // InternalOCLstdlib.g:18957:1: ( ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )? )
+            // InternalOCLstdlib.g:18958:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_2_1());
             }
-            // InternalOCLstdlib.g:18957:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
+            // InternalOCLstdlib.g:18959:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0 )?
             int alt160=2;
             int LA160_0 = input.LA(1);
 
@@ -55398,7 +55398,7 @@
             }
             switch (alt160) {
                 case 1 :
-                    // InternalOCLstdlib.g:18957:2: rule__NavigatingCommaArgCS__Group_2_2_1__0
+                    // InternalOCLstdlib.g:18959:2: rule__NavigatingCommaArgCS__Group_2_2_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingCommaArgCS__Group_2_2_1__0();
@@ -55436,14 +55436,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__2"
-    // InternalOCLstdlib.g:18967:1: rule__NavigatingCommaArgCS__Group_2_2__2 : rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 ;
+    // InternalOCLstdlib.g:18969:1: rule__NavigatingCommaArgCS__Group_2_2__2 : rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18971:1: ( rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 )
-            // InternalOCLstdlib.g:18972:2: rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3
+            // InternalOCLstdlib.g:18973:1: ( rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3 )
+            // InternalOCLstdlib.g:18974:2: rule__NavigatingCommaArgCS__Group_2_2__2__Impl rule__NavigatingCommaArgCS__Group_2_2__3
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingCommaArgCS__Group_2_2__2__Impl();
@@ -55474,17 +55474,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__2__Impl"
-    // InternalOCLstdlib.g:18979:1: rule__NavigatingCommaArgCS__Group_2_2__2__Impl : ( 'in' ) ;
+    // InternalOCLstdlib.g:18981:1: rule__NavigatingCommaArgCS__Group_2_2__2__Impl : ( 'in' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:18983:1: ( ( 'in' ) )
-            // InternalOCLstdlib.g:18984:1: ( 'in' )
+            // InternalOCLstdlib.g:18985:1: ( ( 'in' ) )
+            // InternalOCLstdlib.g:18986:1: ( 'in' )
             {
-            // InternalOCLstdlib.g:18984:1: ( 'in' )
-            // InternalOCLstdlib.g:18985:1: 'in'
+            // InternalOCLstdlib.g:18986:1: ( 'in' )
+            // InternalOCLstdlib.g:18987:1: 'in'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_2_2());
@@ -55515,14 +55515,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__3"
-    // InternalOCLstdlib.g:18998:1: rule__NavigatingCommaArgCS__Group_2_2__3 : rule__NavigatingCommaArgCS__Group_2_2__3__Impl ;
+    // InternalOCLstdlib.g:19000:1: rule__NavigatingCommaArgCS__Group_2_2__3 : rule__NavigatingCommaArgCS__Group_2_2__3__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19002:1: ( rule__NavigatingCommaArgCS__Group_2_2__3__Impl )
-            // InternalOCLstdlib.g:19003:2: rule__NavigatingCommaArgCS__Group_2_2__3__Impl
+            // InternalOCLstdlib.g:19004:1: ( rule__NavigatingCommaArgCS__Group_2_2__3__Impl )
+            // InternalOCLstdlib.g:19005:2: rule__NavigatingCommaArgCS__Group_2_2__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_2__3__Impl();
@@ -55548,23 +55548,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2__3__Impl"
-    // InternalOCLstdlib.g:19009:1: rule__NavigatingCommaArgCS__Group_2_2__3__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) ;
+    // InternalOCLstdlib.g:19011:1: rule__NavigatingCommaArgCS__Group_2_2__3__Impl : ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19013:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) )
-            // InternalOCLstdlib.g:19014:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
+            // InternalOCLstdlib.g:19015:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) ) )
+            // InternalOCLstdlib.g:19016:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
             {
-            // InternalOCLstdlib.g:19014:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
-            // InternalOCLstdlib.g:19015:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
+            // InternalOCLstdlib.g:19016:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 ) )
+            // InternalOCLstdlib.g:19017:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_2_3());
             }
-            // InternalOCLstdlib.g:19016:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
-            // InternalOCLstdlib.g:19016:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3
+            // InternalOCLstdlib.g:19018:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 )
+            // InternalOCLstdlib.g:19018:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3();
@@ -55599,14 +55599,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__0"
-    // InternalOCLstdlib.g:19034:1: rule__NavigatingCommaArgCS__Group_2_2_0__0 : rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 ;
+    // InternalOCLstdlib.g:19036:1: rule__NavigatingCommaArgCS__Group_2_2_0__0 : rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19038:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 )
-            // InternalOCLstdlib.g:19039:2: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1
+            // InternalOCLstdlib.g:19040:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1 )
+            // InternalOCLstdlib.g:19041:2: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_2_0__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl();
@@ -55637,17 +55637,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl"
-    // InternalOCLstdlib.g:19046:1: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:19048:1: rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl : ( ':' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19050:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:19051:1: ( ':' )
+            // InternalOCLstdlib.g:19052:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:19053:1: ( ':' )
             {
-            // InternalOCLstdlib.g:19051:1: ( ':' )
-            // InternalOCLstdlib.g:19052:1: ':'
+            // InternalOCLstdlib.g:19053:1: ( ':' )
+            // InternalOCLstdlib.g:19054:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_2_0_0());
@@ -55678,14 +55678,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__1"
-    // InternalOCLstdlib.g:19065:1: rule__NavigatingCommaArgCS__Group_2_2_0__1 : rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl ;
+    // InternalOCLstdlib.g:19067:1: rule__NavigatingCommaArgCS__Group_2_2_0__1 : rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19069:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl )
-            // InternalOCLstdlib.g:19070:2: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl
+            // InternalOCLstdlib.g:19071:1: ( rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl )
+            // InternalOCLstdlib.g:19072:2: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl();
@@ -55711,23 +55711,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl"
-    // InternalOCLstdlib.g:19076:1: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) ;
+    // InternalOCLstdlib.g:19078:1: rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19080:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) )
-            // InternalOCLstdlib.g:19081:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
+            // InternalOCLstdlib.g:19082:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) ) )
+            // InternalOCLstdlib.g:19083:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
             {
-            // InternalOCLstdlib.g:19081:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
-            // InternalOCLstdlib.g:19082:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
+            // InternalOCLstdlib.g:19083:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 ) )
+            // InternalOCLstdlib.g:19084:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_2_0_1());
             }
-            // InternalOCLstdlib.g:19083:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
-            // InternalOCLstdlib.g:19083:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1
+            // InternalOCLstdlib.g:19085:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 )
+            // InternalOCLstdlib.g:19085:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1();
@@ -55762,14 +55762,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__0"
-    // InternalOCLstdlib.g:19097:1: rule__NavigatingCommaArgCS__Group_2_2_1__0 : rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 ;
+    // InternalOCLstdlib.g:19099:1: rule__NavigatingCommaArgCS__Group_2_2_1__0 : rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19101:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 )
-            // InternalOCLstdlib.g:19102:2: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1
+            // InternalOCLstdlib.g:19103:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1 )
+            // InternalOCLstdlib.g:19104:2: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_2_1__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl();
@@ -55800,17 +55800,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl"
-    // InternalOCLstdlib.g:19109:1: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl : ( '<-' ) ;
+    // InternalOCLstdlib.g:19111:1: rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl : ( '<-' ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19113:1: ( ( '<-' ) )
-            // InternalOCLstdlib.g:19114:1: ( '<-' )
+            // InternalOCLstdlib.g:19115:1: ( ( '<-' ) )
+            // InternalOCLstdlib.g:19116:1: ( '<-' )
             {
-            // InternalOCLstdlib.g:19114:1: ( '<-' )
-            // InternalOCLstdlib.g:19115:1: '<-'
+            // InternalOCLstdlib.g:19116:1: ( '<-' )
+            // InternalOCLstdlib.g:19117:1: '<-'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_2_1_0());
@@ -55841,14 +55841,14 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__1"
-    // InternalOCLstdlib.g:19128:1: rule__NavigatingCommaArgCS__Group_2_2_1__1 : rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl ;
+    // InternalOCLstdlib.g:19130:1: rule__NavigatingCommaArgCS__Group_2_2_1__1 : rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19132:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl )
-            // InternalOCLstdlib.g:19133:2: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl
+            // InternalOCLstdlib.g:19134:1: ( rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl )
+            // InternalOCLstdlib.g:19135:2: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl();
@@ -55874,23 +55874,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl"
-    // InternalOCLstdlib.g:19139:1: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) ;
+    // InternalOCLstdlib.g:19141:1: rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl : ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) ;
     public final void rule__NavigatingCommaArgCS__Group_2_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19143:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) )
-            // InternalOCLstdlib.g:19144:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
+            // InternalOCLstdlib.g:19145:1: ( ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) ) )
+            // InternalOCLstdlib.g:19146:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
             {
-            // InternalOCLstdlib.g:19144:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
-            // InternalOCLstdlib.g:19145:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
+            // InternalOCLstdlib.g:19146:1: ( ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 ) )
+            // InternalOCLstdlib.g:19147:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorAssignment_2_2_1_1());
             }
-            // InternalOCLstdlib.g:19146:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
-            // InternalOCLstdlib.g:19146:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1
+            // InternalOCLstdlib.g:19148:1: ( rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 )
+            // InternalOCLstdlib.g:19148:2: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1();
@@ -55925,14 +55925,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__0"
-    // InternalOCLstdlib.g:19160:1: rule__NavigatingSemiArgCS__Group__0 : rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 ;
+    // InternalOCLstdlib.g:19162:1: rule__NavigatingSemiArgCS__Group__0 : rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 ;
     public final void rule__NavigatingSemiArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19164:1: ( rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 )
-            // InternalOCLstdlib.g:19165:2: rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1
+            // InternalOCLstdlib.g:19166:1: ( rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 )
+            // InternalOCLstdlib.g:19167:2: rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingSemiArgCS__Group__0__Impl();
@@ -55963,23 +55963,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__0__Impl"
-    // InternalOCLstdlib.g:19172:1: rule__NavigatingSemiArgCS__Group__0__Impl : ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:19174:1: rule__NavigatingSemiArgCS__Group__0__Impl : ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19176:1: ( ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) )
-            // InternalOCLstdlib.g:19177:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
+            // InternalOCLstdlib.g:19178:1: ( ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) )
+            // InternalOCLstdlib.g:19179:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:19177:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
-            // InternalOCLstdlib.g:19178:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
+            // InternalOCLstdlib.g:19179:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
+            // InternalOCLstdlib.g:19180:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0());
             }
-            // InternalOCLstdlib.g:19179:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
-            // InternalOCLstdlib.g:19179:2: rule__NavigatingSemiArgCS__PrefixAssignment_0
+            // InternalOCLstdlib.g:19181:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
+            // InternalOCLstdlib.g:19181:2: rule__NavigatingSemiArgCS__PrefixAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__PrefixAssignment_0();
@@ -56014,14 +56014,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__1"
-    // InternalOCLstdlib.g:19189:1: rule__NavigatingSemiArgCS__Group__1 : rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 ;
+    // InternalOCLstdlib.g:19191:1: rule__NavigatingSemiArgCS__Group__1 : rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 ;
     public final void rule__NavigatingSemiArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19193:1: ( rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 )
-            // InternalOCLstdlib.g:19194:2: rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2
+            // InternalOCLstdlib.g:19195:1: ( rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 )
+            // InternalOCLstdlib.g:19196:2: rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__NavigatingSemiArgCS__Group__1__Impl();
@@ -56052,23 +56052,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__1__Impl"
-    // InternalOCLstdlib.g:19201:1: rule__NavigatingSemiArgCS__Group__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:19203:1: rule__NavigatingSemiArgCS__Group__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19205:1: ( ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) )
-            // InternalOCLstdlib.g:19206:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalOCLstdlib.g:19207:1: ( ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) )
+            // InternalOCLstdlib.g:19208:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:19206:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
-            // InternalOCLstdlib.g:19207:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalOCLstdlib.g:19208:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
+            // InternalOCLstdlib.g:19209:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
-            // InternalOCLstdlib.g:19208:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
-            // InternalOCLstdlib.g:19208:2: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1
+            // InternalOCLstdlib.g:19210:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
+            // InternalOCLstdlib.g:19210:2: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1();
@@ -56103,14 +56103,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__2"
-    // InternalOCLstdlib.g:19218:1: rule__NavigatingSemiArgCS__Group__2 : rule__NavigatingSemiArgCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:19220:1: rule__NavigatingSemiArgCS__Group__2 : rule__NavigatingSemiArgCS__Group__2__Impl ;
     public final void rule__NavigatingSemiArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19222:1: ( rule__NavigatingSemiArgCS__Group__2__Impl )
-            // InternalOCLstdlib.g:19223:2: rule__NavigatingSemiArgCS__Group__2__Impl
+            // InternalOCLstdlib.g:19224:1: ( rule__NavigatingSemiArgCS__Group__2__Impl )
+            // InternalOCLstdlib.g:19225:2: rule__NavigatingSemiArgCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__Group__2__Impl();
@@ -56136,22 +56136,22 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group__2__Impl"
-    // InternalOCLstdlib.g:19229:1: rule__NavigatingSemiArgCS__Group__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) ;
+    // InternalOCLstdlib.g:19231:1: rule__NavigatingSemiArgCS__Group__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) ;
     public final void rule__NavigatingSemiArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19233:1: ( ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) )
-            // InternalOCLstdlib.g:19234:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:19235:1: ( ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) )
+            // InternalOCLstdlib.g:19236:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
             {
-            // InternalOCLstdlib.g:19234:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
-            // InternalOCLstdlib.g:19235:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
+            // InternalOCLstdlib.g:19236:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:19237:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:19236:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
+            // InternalOCLstdlib.g:19238:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             int alt161=2;
             int LA161_0 = input.LA(1);
 
@@ -56160,7 +56160,7 @@
             }
             switch (alt161) {
                 case 1 :
-                    // InternalOCLstdlib.g:19236:2: rule__NavigatingSemiArgCS__Group_2__0
+                    // InternalOCLstdlib.g:19238:2: rule__NavigatingSemiArgCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingSemiArgCS__Group_2__0();
@@ -56198,14 +56198,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__0"
-    // InternalOCLstdlib.g:19252:1: rule__NavigatingSemiArgCS__Group_2__0 : rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 ;
+    // InternalOCLstdlib.g:19254:1: rule__NavigatingSemiArgCS__Group_2__0 : rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 ;
     public final void rule__NavigatingSemiArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19256:1: ( rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 )
-            // InternalOCLstdlib.g:19257:2: rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1
+            // InternalOCLstdlib.g:19258:1: ( rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 )
+            // InternalOCLstdlib.g:19259:2: rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingSemiArgCS__Group_2__0__Impl();
@@ -56236,17 +56236,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:19264:1: rule__NavigatingSemiArgCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:19266:1: rule__NavigatingSemiArgCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__NavigatingSemiArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19268:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:19269:1: ( ':' )
+            // InternalOCLstdlib.g:19270:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:19271:1: ( ':' )
             {
-            // InternalOCLstdlib.g:19269:1: ( ':' )
-            // InternalOCLstdlib.g:19270:1: ':'
+            // InternalOCLstdlib.g:19271:1: ( ':' )
+            // InternalOCLstdlib.g:19272:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
@@ -56277,14 +56277,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__1"
-    // InternalOCLstdlib.g:19283:1: rule__NavigatingSemiArgCS__Group_2__1 : rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 ;
+    // InternalOCLstdlib.g:19285:1: rule__NavigatingSemiArgCS__Group_2__1 : rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 ;
     public final void rule__NavigatingSemiArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19287:1: ( rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 )
-            // InternalOCLstdlib.g:19288:2: rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2
+            // InternalOCLstdlib.g:19289:1: ( rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 )
+            // InternalOCLstdlib.g:19290:2: rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2
             {
             pushFollow(FollowSets000.FOLLOW_26);
             rule__NavigatingSemiArgCS__Group_2__1__Impl();
@@ -56315,23 +56315,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:19295:1: rule__NavigatingSemiArgCS__Group_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) ;
+    // InternalOCLstdlib.g:19297:1: rule__NavigatingSemiArgCS__Group_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19299:1: ( ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) )
-            // InternalOCLstdlib.g:19300:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalOCLstdlib.g:19301:1: ( ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) )
+            // InternalOCLstdlib.g:19302:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
             {
-            // InternalOCLstdlib.g:19300:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
-            // InternalOCLstdlib.g:19301:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
+            // InternalOCLstdlib.g:19302:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
+            // InternalOCLstdlib.g:19303:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1());
             }
-            // InternalOCLstdlib.g:19302:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
-            // InternalOCLstdlib.g:19302:2: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1
+            // InternalOCLstdlib.g:19304:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
+            // InternalOCLstdlib.g:19304:2: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1();
@@ -56366,14 +56366,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__2"
-    // InternalOCLstdlib.g:19312:1: rule__NavigatingSemiArgCS__Group_2__2 : rule__NavigatingSemiArgCS__Group_2__2__Impl ;
+    // InternalOCLstdlib.g:19314:1: rule__NavigatingSemiArgCS__Group_2__2 : rule__NavigatingSemiArgCS__Group_2__2__Impl ;
     public final void rule__NavigatingSemiArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19316:1: ( rule__NavigatingSemiArgCS__Group_2__2__Impl )
-            // InternalOCLstdlib.g:19317:2: rule__NavigatingSemiArgCS__Group_2__2__Impl
+            // InternalOCLstdlib.g:19318:1: ( rule__NavigatingSemiArgCS__Group_2__2__Impl )
+            // InternalOCLstdlib.g:19319:2: rule__NavigatingSemiArgCS__Group_2__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__Group_2__2__Impl();
@@ -56399,22 +56399,22 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2__2__Impl"
-    // InternalOCLstdlib.g:19323:1: rule__NavigatingSemiArgCS__Group_2__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) ;
+    // InternalOCLstdlib.g:19325:1: rule__NavigatingSemiArgCS__Group_2__2__Impl : ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) ;
     public final void rule__NavigatingSemiArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19327:1: ( ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) )
-            // InternalOCLstdlib.g:19328:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
+            // InternalOCLstdlib.g:19329:1: ( ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) )
+            // InternalOCLstdlib.g:19330:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
             {
-            // InternalOCLstdlib.g:19328:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
-            // InternalOCLstdlib.g:19329:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
+            // InternalOCLstdlib.g:19330:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
+            // InternalOCLstdlib.g:19331:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2());
             }
-            // InternalOCLstdlib.g:19330:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
+            // InternalOCLstdlib.g:19332:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             int alt162=2;
             int LA162_0 = input.LA(1);
 
@@ -56423,7 +56423,7 @@
             }
             switch (alt162) {
                 case 1 :
-                    // InternalOCLstdlib.g:19330:2: rule__NavigatingSemiArgCS__Group_2_2__0
+                    // InternalOCLstdlib.g:19332:2: rule__NavigatingSemiArgCS__Group_2_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__NavigatingSemiArgCS__Group_2_2__0();
@@ -56461,14 +56461,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__0"
-    // InternalOCLstdlib.g:19346:1: rule__NavigatingSemiArgCS__Group_2_2__0 : rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 ;
+    // InternalOCLstdlib.g:19348:1: rule__NavigatingSemiArgCS__Group_2_2__0 : rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19350:1: ( rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 )
-            // InternalOCLstdlib.g:19351:2: rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1
+            // InternalOCLstdlib.g:19352:1: ( rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 )
+            // InternalOCLstdlib.g:19353:2: rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NavigatingSemiArgCS__Group_2_2__0__Impl();
@@ -56499,17 +56499,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__0__Impl"
-    // InternalOCLstdlib.g:19358:1: rule__NavigatingSemiArgCS__Group_2_2__0__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:19360:1: rule__NavigatingSemiArgCS__Group_2_2__0__Impl : ( '=' ) ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19362:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:19363:1: ( '=' )
+            // InternalOCLstdlib.g:19364:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:19365:1: ( '=' )
             {
-            // InternalOCLstdlib.g:19363:1: ( '=' )
-            // InternalOCLstdlib.g:19364:1: '='
+            // InternalOCLstdlib.g:19365:1: ( '=' )
+            // InternalOCLstdlib.g:19366:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
@@ -56540,14 +56540,14 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__1"
-    // InternalOCLstdlib.g:19377:1: rule__NavigatingSemiArgCS__Group_2_2__1 : rule__NavigatingSemiArgCS__Group_2_2__1__Impl ;
+    // InternalOCLstdlib.g:19379:1: rule__NavigatingSemiArgCS__Group_2_2__1 : rule__NavigatingSemiArgCS__Group_2_2__1__Impl ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19381:1: ( rule__NavigatingSemiArgCS__Group_2_2__1__Impl )
-            // InternalOCLstdlib.g:19382:2: rule__NavigatingSemiArgCS__Group_2_2__1__Impl
+            // InternalOCLstdlib.g:19383:1: ( rule__NavigatingSemiArgCS__Group_2_2__1__Impl )
+            // InternalOCLstdlib.g:19384:2: rule__NavigatingSemiArgCS__Group_2_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__Group_2_2__1__Impl();
@@ -56573,23 +56573,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__Group_2_2__1__Impl"
-    // InternalOCLstdlib.g:19388:1: rule__NavigatingSemiArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
+    // InternalOCLstdlib.g:19390:1: rule__NavigatingSemiArgCS__Group_2_2__1__Impl : ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) ;
     public final void rule__NavigatingSemiArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19392:1: ( ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
-            // InternalOCLstdlib.g:19393:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalOCLstdlib.g:19394:1: ( ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
+            // InternalOCLstdlib.g:19395:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
             {
-            // InternalOCLstdlib.g:19393:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
-            // InternalOCLstdlib.g:19394:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalOCLstdlib.g:19395:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
+            // InternalOCLstdlib.g:19396:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
-            // InternalOCLstdlib.g:19395:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
-            // InternalOCLstdlib.g:19395:2: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1
+            // InternalOCLstdlib.g:19397:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
+            // InternalOCLstdlib.g:19397:2: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1();
@@ -56624,14 +56624,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__0"
-    // InternalOCLstdlib.g:19409:1: rule__CoIteratorVariableCS__Group__0 : rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 ;
+    // InternalOCLstdlib.g:19411:1: rule__CoIteratorVariableCS__Group__0 : rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 ;
     public final void rule__CoIteratorVariableCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19413:1: ( rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 )
-            // InternalOCLstdlib.g:19414:2: rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1
+            // InternalOCLstdlib.g:19415:1: ( rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1 )
+            // InternalOCLstdlib.g:19416:2: rule__CoIteratorVariableCS__Group__0__Impl rule__CoIteratorVariableCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_11);
             rule__CoIteratorVariableCS__Group__0__Impl();
@@ -56662,23 +56662,23 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__0__Impl"
-    // InternalOCLstdlib.g:19421:1: rule__CoIteratorVariableCS__Group__0__Impl : ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:19423:1: rule__CoIteratorVariableCS__Group__0__Impl : ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) ;
     public final void rule__CoIteratorVariableCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19425:1: ( ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:19426:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:19427:1: ( ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:19428:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:19426:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:19427:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:19428:1: ( ( rule__CoIteratorVariableCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:19429:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:19428:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:19428:2: rule__CoIteratorVariableCS__NameAssignment_0
+            // InternalOCLstdlib.g:19430:1: ( rule__CoIteratorVariableCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:19430:2: rule__CoIteratorVariableCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__NameAssignment_0();
@@ -56713,14 +56713,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__1"
-    // InternalOCLstdlib.g:19438:1: rule__CoIteratorVariableCS__Group__1 : rule__CoIteratorVariableCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:19440:1: rule__CoIteratorVariableCS__Group__1 : rule__CoIteratorVariableCS__Group__1__Impl ;
     public final void rule__CoIteratorVariableCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19442:1: ( rule__CoIteratorVariableCS__Group__1__Impl )
-            // InternalOCLstdlib.g:19443:2: rule__CoIteratorVariableCS__Group__1__Impl
+            // InternalOCLstdlib.g:19444:1: ( rule__CoIteratorVariableCS__Group__1__Impl )
+            // InternalOCLstdlib.g:19445:2: rule__CoIteratorVariableCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__Group__1__Impl();
@@ -56746,22 +56746,22 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group__1__Impl"
-    // InternalOCLstdlib.g:19449:1: rule__CoIteratorVariableCS__Group__1__Impl : ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) ;
+    // InternalOCLstdlib.g:19451:1: rule__CoIteratorVariableCS__Group__1__Impl : ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) ;
     public final void rule__CoIteratorVariableCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19453:1: ( ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) )
-            // InternalOCLstdlib.g:19454:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:19455:1: ( ( ( rule__CoIteratorVariableCS__Group_1__0 )? ) )
+            // InternalOCLstdlib.g:19456:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
             {
-            // InternalOCLstdlib.g:19454:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
-            // InternalOCLstdlib.g:19455:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
+            // InternalOCLstdlib.g:19456:1: ( ( rule__CoIteratorVariableCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:19457:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:19456:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
+            // InternalOCLstdlib.g:19458:1: ( rule__CoIteratorVariableCS__Group_1__0 )?
             int alt163=2;
             int LA163_0 = input.LA(1);
 
@@ -56770,7 +56770,7 @@
             }
             switch (alt163) {
                 case 1 :
-                    // InternalOCLstdlib.g:19456:2: rule__CoIteratorVariableCS__Group_1__0
+                    // InternalOCLstdlib.g:19458:2: rule__CoIteratorVariableCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__CoIteratorVariableCS__Group_1__0();
@@ -56808,14 +56808,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__0"
-    // InternalOCLstdlib.g:19470:1: rule__CoIteratorVariableCS__Group_1__0 : rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 ;
+    // InternalOCLstdlib.g:19472:1: rule__CoIteratorVariableCS__Group_1__0 : rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 ;
     public final void rule__CoIteratorVariableCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19474:1: ( rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 )
-            // InternalOCLstdlib.g:19475:2: rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1
+            // InternalOCLstdlib.g:19476:1: ( rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1 )
+            // InternalOCLstdlib.g:19477:2: rule__CoIteratorVariableCS__Group_1__0__Impl rule__CoIteratorVariableCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__CoIteratorVariableCS__Group_1__0__Impl();
@@ -56846,17 +56846,17 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:19482:1: rule__CoIteratorVariableCS__Group_1__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:19484:1: rule__CoIteratorVariableCS__Group_1__0__Impl : ( ':' ) ;
     public final void rule__CoIteratorVariableCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19486:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:19487:1: ( ':' )
+            // InternalOCLstdlib.g:19488:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:19489:1: ( ':' )
             {
-            // InternalOCLstdlib.g:19487:1: ( ':' )
-            // InternalOCLstdlib.g:19488:1: ':'
+            // InternalOCLstdlib.g:19489:1: ( ':' )
+            // InternalOCLstdlib.g:19490:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getColonKeyword_1_0());
@@ -56887,14 +56887,14 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__1"
-    // InternalOCLstdlib.g:19501:1: rule__CoIteratorVariableCS__Group_1__1 : rule__CoIteratorVariableCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:19503:1: rule__CoIteratorVariableCS__Group_1__1 : rule__CoIteratorVariableCS__Group_1__1__Impl ;
     public final void rule__CoIteratorVariableCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19505:1: ( rule__CoIteratorVariableCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:19506:2: rule__CoIteratorVariableCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:19507:1: ( rule__CoIteratorVariableCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:19508:2: rule__CoIteratorVariableCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__Group_1__1__Impl();
@@ -56920,23 +56920,23 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:19512:1: rule__CoIteratorVariableCS__Group_1__1__Impl : ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) ;
+    // InternalOCLstdlib.g:19514:1: rule__CoIteratorVariableCS__Group_1__1__Impl : ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) ;
     public final void rule__CoIteratorVariableCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19516:1: ( ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) )
-            // InternalOCLstdlib.g:19517:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLstdlib.g:19518:1: ( ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) ) )
+            // InternalOCLstdlib.g:19519:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
             {
-            // InternalOCLstdlib.g:19517:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
-            // InternalOCLstdlib.g:19518:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLstdlib.g:19519:1: ( ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 ) )
+            // InternalOCLstdlib.g:19520:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getOwnedTypeAssignment_1_1());
             }
-            // InternalOCLstdlib.g:19519:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
-            // InternalOCLstdlib.g:19519:2: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1
+            // InternalOCLstdlib.g:19521:1: ( rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 )
+            // InternalOCLstdlib.g:19521:2: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1();
@@ -56971,14 +56971,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__0"
-    // InternalOCLstdlib.g:19533:1: rule__IfExpCS__Group__0 : rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 ;
+    // InternalOCLstdlib.g:19535:1: rule__IfExpCS__Group__0 : rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 ;
     public final void rule__IfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19537:1: ( rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 )
-            // InternalOCLstdlib.g:19538:2: rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1
+            // InternalOCLstdlib.g:19539:1: ( rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 )
+            // InternalOCLstdlib.g:19540:2: rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_67);
             rule__IfExpCS__Group__0__Impl();
@@ -57009,17 +57009,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:19545:1: rule__IfExpCS__Group__0__Impl : ( 'if' ) ;
+    // InternalOCLstdlib.g:19547:1: rule__IfExpCS__Group__0__Impl : ( 'if' ) ;
     public final void rule__IfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19549:1: ( ( 'if' ) )
-            // InternalOCLstdlib.g:19550:1: ( 'if' )
+            // InternalOCLstdlib.g:19551:1: ( ( 'if' ) )
+            // InternalOCLstdlib.g:19552:1: ( 'if' )
             {
-            // InternalOCLstdlib.g:19550:1: ( 'if' )
-            // InternalOCLstdlib.g:19551:1: 'if'
+            // InternalOCLstdlib.g:19552:1: ( 'if' )
+            // InternalOCLstdlib.g:19553:1: 'if'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getIfKeyword_0());
@@ -57050,14 +57050,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__1"
-    // InternalOCLstdlib.g:19564:1: rule__IfExpCS__Group__1 : rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 ;
+    // InternalOCLstdlib.g:19566:1: rule__IfExpCS__Group__1 : rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 ;
     public final void rule__IfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19568:1: ( rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 )
-            // InternalOCLstdlib.g:19569:2: rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2
+            // InternalOCLstdlib.g:19570:1: ( rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 )
+            // InternalOCLstdlib.g:19571:2: rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_89);
             rule__IfExpCS__Group__1__Impl();
@@ -57088,23 +57088,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:19576:1: rule__IfExpCS__Group__1__Impl : ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:19578:1: rule__IfExpCS__Group__1__Impl : ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) ;
     public final void rule__IfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19580:1: ( ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) )
-            // InternalOCLstdlib.g:19581:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
+            // InternalOCLstdlib.g:19582:1: ( ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) )
+            // InternalOCLstdlib.g:19583:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:19581:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
-            // InternalOCLstdlib.g:19582:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
+            // InternalOCLstdlib.g:19583:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
+            // InternalOCLstdlib.g:19584:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1());
             }
-            // InternalOCLstdlib.g:19583:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
-            // InternalOCLstdlib.g:19583:2: rule__IfExpCS__OwnedConditionAssignment_1
+            // InternalOCLstdlib.g:19585:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
+            // InternalOCLstdlib.g:19585:2: rule__IfExpCS__OwnedConditionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedConditionAssignment_1();
@@ -57139,14 +57139,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__2"
-    // InternalOCLstdlib.g:19593:1: rule__IfExpCS__Group__2 : rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 ;
+    // InternalOCLstdlib.g:19595:1: rule__IfExpCS__Group__2 : rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 ;
     public final void rule__IfExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19597:1: ( rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 )
-            // InternalOCLstdlib.g:19598:2: rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3
+            // InternalOCLstdlib.g:19599:1: ( rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 )
+            // InternalOCLstdlib.g:19600:2: rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__IfExpCS__Group__2__Impl();
@@ -57177,17 +57177,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__2__Impl"
-    // InternalOCLstdlib.g:19605:1: rule__IfExpCS__Group__2__Impl : ( 'then' ) ;
+    // InternalOCLstdlib.g:19607:1: rule__IfExpCS__Group__2__Impl : ( 'then' ) ;
     public final void rule__IfExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19609:1: ( ( 'then' ) )
-            // InternalOCLstdlib.g:19610:1: ( 'then' )
+            // InternalOCLstdlib.g:19611:1: ( ( 'then' ) )
+            // InternalOCLstdlib.g:19612:1: ( 'then' )
             {
-            // InternalOCLstdlib.g:19610:1: ( 'then' )
-            // InternalOCLstdlib.g:19611:1: 'then'
+            // InternalOCLstdlib.g:19612:1: ( 'then' )
+            // InternalOCLstdlib.g:19613:1: 'then'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getThenKeyword_2());
@@ -57218,14 +57218,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__3"
-    // InternalOCLstdlib.g:19624:1: rule__IfExpCS__Group__3 : rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 ;
+    // InternalOCLstdlib.g:19626:1: rule__IfExpCS__Group__3 : rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 ;
     public final void rule__IfExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19628:1: ( rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 )
-            // InternalOCLstdlib.g:19629:2: rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4
+            // InternalOCLstdlib.g:19630:1: ( rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 )
+            // InternalOCLstdlib.g:19631:2: rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_90);
             rule__IfExpCS__Group__3__Impl();
@@ -57256,23 +57256,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__3__Impl"
-    // InternalOCLstdlib.g:19636:1: rule__IfExpCS__Group__3__Impl : ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) ;
+    // InternalOCLstdlib.g:19638:1: rule__IfExpCS__Group__3__Impl : ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) ;
     public final void rule__IfExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19640:1: ( ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) )
-            // InternalOCLstdlib.g:19641:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalOCLstdlib.g:19642:1: ( ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) )
+            // InternalOCLstdlib.g:19643:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
             {
-            // InternalOCLstdlib.g:19641:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
-            // InternalOCLstdlib.g:19642:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalOCLstdlib.g:19643:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalOCLstdlib.g:19644:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
-            // InternalOCLstdlib.g:19643:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
-            // InternalOCLstdlib.g:19643:2: rule__IfExpCS__OwnedThenExpressionAssignment_3
+            // InternalOCLstdlib.g:19645:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalOCLstdlib.g:19645:2: rule__IfExpCS__OwnedThenExpressionAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedThenExpressionAssignment_3();
@@ -57307,14 +57307,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__4"
-    // InternalOCLstdlib.g:19653:1: rule__IfExpCS__Group__4 : rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 ;
+    // InternalOCLstdlib.g:19655:1: rule__IfExpCS__Group__4 : rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 ;
     public final void rule__IfExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19657:1: ( rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 )
-            // InternalOCLstdlib.g:19658:2: rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5
+            // InternalOCLstdlib.g:19659:1: ( rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 )
+            // InternalOCLstdlib.g:19660:2: rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5
             {
             pushFollow(FollowSets000.FOLLOW_90);
             rule__IfExpCS__Group__4__Impl();
@@ -57345,22 +57345,22 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__4__Impl"
-    // InternalOCLstdlib.g:19665:1: rule__IfExpCS__Group__4__Impl : ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) ;
+    // InternalOCLstdlib.g:19667:1: rule__IfExpCS__Group__4__Impl : ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) ;
     public final void rule__IfExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19669:1: ( ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) )
-            // InternalOCLstdlib.g:19670:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
+            // InternalOCLstdlib.g:19671:1: ( ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) )
+            // InternalOCLstdlib.g:19672:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
             {
-            // InternalOCLstdlib.g:19670:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
-            // InternalOCLstdlib.g:19671:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
+            // InternalOCLstdlib.g:19672:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
+            // InternalOCLstdlib.g:19673:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4());
             }
-            // InternalOCLstdlib.g:19672:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
+            // InternalOCLstdlib.g:19674:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             loop164:
             do {
                 int alt164=2;
@@ -57373,7 +57373,7 @@
 
                 switch (alt164) {
             	case 1 :
-            	    // InternalOCLstdlib.g:19672:2: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4
+            	    // InternalOCLstdlib.g:19674:2: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4
             	    {
             	    pushFollow(FollowSets000.FOLLOW_91);
             	    rule__IfExpCS__OwnedIfThenExpressionsAssignment_4();
@@ -57414,14 +57414,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__5"
-    // InternalOCLstdlib.g:19682:1: rule__IfExpCS__Group__5 : rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 ;
+    // InternalOCLstdlib.g:19684:1: rule__IfExpCS__Group__5 : rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 ;
     public final void rule__IfExpCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19686:1: ( rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 )
-            // InternalOCLstdlib.g:19687:2: rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6
+            // InternalOCLstdlib.g:19688:1: ( rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 )
+            // InternalOCLstdlib.g:19689:2: rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__IfExpCS__Group__5__Impl();
@@ -57452,17 +57452,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__5__Impl"
-    // InternalOCLstdlib.g:19694:1: rule__IfExpCS__Group__5__Impl : ( 'else' ) ;
+    // InternalOCLstdlib.g:19696:1: rule__IfExpCS__Group__5__Impl : ( 'else' ) ;
     public final void rule__IfExpCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19698:1: ( ( 'else' ) )
-            // InternalOCLstdlib.g:19699:1: ( 'else' )
+            // InternalOCLstdlib.g:19700:1: ( ( 'else' ) )
+            // InternalOCLstdlib.g:19701:1: ( 'else' )
             {
-            // InternalOCLstdlib.g:19699:1: ( 'else' )
-            // InternalOCLstdlib.g:19700:1: 'else'
+            // InternalOCLstdlib.g:19701:1: ( 'else' )
+            // InternalOCLstdlib.g:19702:1: 'else'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getElseKeyword_5());
@@ -57493,14 +57493,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__6"
-    // InternalOCLstdlib.g:19713:1: rule__IfExpCS__Group__6 : rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 ;
+    // InternalOCLstdlib.g:19715:1: rule__IfExpCS__Group__6 : rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 ;
     public final void rule__IfExpCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19717:1: ( rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 )
-            // InternalOCLstdlib.g:19718:2: rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7
+            // InternalOCLstdlib.g:19719:1: ( rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 )
+            // InternalOCLstdlib.g:19720:2: rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7
             {
             pushFollow(FollowSets000.FOLLOW_92);
             rule__IfExpCS__Group__6__Impl();
@@ -57531,23 +57531,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__6__Impl"
-    // InternalOCLstdlib.g:19725:1: rule__IfExpCS__Group__6__Impl : ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) ;
+    // InternalOCLstdlib.g:19727:1: rule__IfExpCS__Group__6__Impl : ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) ;
     public final void rule__IfExpCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19729:1: ( ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) )
-            // InternalOCLstdlib.g:19730:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
+            // InternalOCLstdlib.g:19731:1: ( ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) )
+            // InternalOCLstdlib.g:19732:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
             {
-            // InternalOCLstdlib.g:19730:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
-            // InternalOCLstdlib.g:19731:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
+            // InternalOCLstdlib.g:19732:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
+            // InternalOCLstdlib.g:19733:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6());
             }
-            // InternalOCLstdlib.g:19732:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
-            // InternalOCLstdlib.g:19732:2: rule__IfExpCS__OwnedElseExpressionAssignment_6
+            // InternalOCLstdlib.g:19734:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
+            // InternalOCLstdlib.g:19734:2: rule__IfExpCS__OwnedElseExpressionAssignment_6
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedElseExpressionAssignment_6();
@@ -57582,14 +57582,14 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__7"
-    // InternalOCLstdlib.g:19742:1: rule__IfExpCS__Group__7 : rule__IfExpCS__Group__7__Impl ;
+    // InternalOCLstdlib.g:19744:1: rule__IfExpCS__Group__7 : rule__IfExpCS__Group__7__Impl ;
     public final void rule__IfExpCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19746:1: ( rule__IfExpCS__Group__7__Impl )
-            // InternalOCLstdlib.g:19747:2: rule__IfExpCS__Group__7__Impl
+            // InternalOCLstdlib.g:19748:1: ( rule__IfExpCS__Group__7__Impl )
+            // InternalOCLstdlib.g:19749:2: rule__IfExpCS__Group__7__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__Group__7__Impl();
@@ -57615,17 +57615,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__Group__7__Impl"
-    // InternalOCLstdlib.g:19753:1: rule__IfExpCS__Group__7__Impl : ( 'endif' ) ;
+    // InternalOCLstdlib.g:19755:1: rule__IfExpCS__Group__7__Impl : ( 'endif' ) ;
     public final void rule__IfExpCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19757:1: ( ( 'endif' ) )
-            // InternalOCLstdlib.g:19758:1: ( 'endif' )
+            // InternalOCLstdlib.g:19759:1: ( ( 'endif' ) )
+            // InternalOCLstdlib.g:19760:1: ( 'endif' )
             {
-            // InternalOCLstdlib.g:19758:1: ( 'endif' )
-            // InternalOCLstdlib.g:19759:1: 'endif'
+            // InternalOCLstdlib.g:19760:1: ( 'endif' )
+            // InternalOCLstdlib.g:19761:1: 'endif'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
@@ -57656,14 +57656,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__0"
-    // InternalOCLstdlib.g:19788:1: rule__ElseIfThenExpCS__Group__0 : rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 ;
+    // InternalOCLstdlib.g:19790:1: rule__ElseIfThenExpCS__Group__0 : rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 ;
     public final void rule__ElseIfThenExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19792:1: ( rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 )
-            // InternalOCLstdlib.g:19793:2: rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1
+            // InternalOCLstdlib.g:19794:1: ( rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 )
+            // InternalOCLstdlib.g:19795:2: rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__ElseIfThenExpCS__Group__0__Impl();
@@ -57694,17 +57694,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:19800:1: rule__ElseIfThenExpCS__Group__0__Impl : ( 'elseif' ) ;
+    // InternalOCLstdlib.g:19802:1: rule__ElseIfThenExpCS__Group__0__Impl : ( 'elseif' ) ;
     public final void rule__ElseIfThenExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19804:1: ( ( 'elseif' ) )
-            // InternalOCLstdlib.g:19805:1: ( 'elseif' )
+            // InternalOCLstdlib.g:19806:1: ( ( 'elseif' ) )
+            // InternalOCLstdlib.g:19807:1: ( 'elseif' )
             {
-            // InternalOCLstdlib.g:19805:1: ( 'elseif' )
-            // InternalOCLstdlib.g:19806:1: 'elseif'
+            // InternalOCLstdlib.g:19807:1: ( 'elseif' )
+            // InternalOCLstdlib.g:19808:1: 'elseif'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
@@ -57735,14 +57735,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__1"
-    // InternalOCLstdlib.g:19819:1: rule__ElseIfThenExpCS__Group__1 : rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 ;
+    // InternalOCLstdlib.g:19821:1: rule__ElseIfThenExpCS__Group__1 : rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 ;
     public final void rule__ElseIfThenExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19823:1: ( rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 )
-            // InternalOCLstdlib.g:19824:2: rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2
+            // InternalOCLstdlib.g:19825:1: ( rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 )
+            // InternalOCLstdlib.g:19826:2: rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_89);
             rule__ElseIfThenExpCS__Group__1__Impl();
@@ -57773,23 +57773,23 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:19831:1: rule__ElseIfThenExpCS__Group__1__Impl : ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:19833:1: rule__ElseIfThenExpCS__Group__1__Impl : ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) ;
     public final void rule__ElseIfThenExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19835:1: ( ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) )
-            // InternalOCLstdlib.g:19836:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
+            // InternalOCLstdlib.g:19837:1: ( ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) )
+            // InternalOCLstdlib.g:19838:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:19836:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
-            // InternalOCLstdlib.g:19837:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
+            // InternalOCLstdlib.g:19838:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
+            // InternalOCLstdlib.g:19839:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1());
             }
-            // InternalOCLstdlib.g:19838:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
-            // InternalOCLstdlib.g:19838:2: rule__ElseIfThenExpCS__OwnedConditionAssignment_1
+            // InternalOCLstdlib.g:19840:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
+            // InternalOCLstdlib.g:19840:2: rule__ElseIfThenExpCS__OwnedConditionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ElseIfThenExpCS__OwnedConditionAssignment_1();
@@ -57824,14 +57824,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__2"
-    // InternalOCLstdlib.g:19848:1: rule__ElseIfThenExpCS__Group__2 : rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 ;
+    // InternalOCLstdlib.g:19850:1: rule__ElseIfThenExpCS__Group__2 : rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 ;
     public final void rule__ElseIfThenExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19852:1: ( rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 )
-            // InternalOCLstdlib.g:19853:2: rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3
+            // InternalOCLstdlib.g:19854:1: ( rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 )
+            // InternalOCLstdlib.g:19855:2: rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__ElseIfThenExpCS__Group__2__Impl();
@@ -57862,17 +57862,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__2__Impl"
-    // InternalOCLstdlib.g:19860:1: rule__ElseIfThenExpCS__Group__2__Impl : ( 'then' ) ;
+    // InternalOCLstdlib.g:19862:1: rule__ElseIfThenExpCS__Group__2__Impl : ( 'then' ) ;
     public final void rule__ElseIfThenExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19864:1: ( ( 'then' ) )
-            // InternalOCLstdlib.g:19865:1: ( 'then' )
+            // InternalOCLstdlib.g:19866:1: ( ( 'then' ) )
+            // InternalOCLstdlib.g:19867:1: ( 'then' )
             {
-            // InternalOCLstdlib.g:19865:1: ( 'then' )
-            // InternalOCLstdlib.g:19866:1: 'then'
+            // InternalOCLstdlib.g:19867:1: ( 'then' )
+            // InternalOCLstdlib.g:19868:1: 'then'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
@@ -57903,14 +57903,14 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__3"
-    // InternalOCLstdlib.g:19879:1: rule__ElseIfThenExpCS__Group__3 : rule__ElseIfThenExpCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:19881:1: rule__ElseIfThenExpCS__Group__3 : rule__ElseIfThenExpCS__Group__3__Impl ;
     public final void rule__ElseIfThenExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19883:1: ( rule__ElseIfThenExpCS__Group__3__Impl )
-            // InternalOCLstdlib.g:19884:2: rule__ElseIfThenExpCS__Group__3__Impl
+            // InternalOCLstdlib.g:19885:1: ( rule__ElseIfThenExpCS__Group__3__Impl )
+            // InternalOCLstdlib.g:19886:2: rule__ElseIfThenExpCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ElseIfThenExpCS__Group__3__Impl();
@@ -57936,23 +57936,23 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__Group__3__Impl"
-    // InternalOCLstdlib.g:19890:1: rule__ElseIfThenExpCS__Group__3__Impl : ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) ;
+    // InternalOCLstdlib.g:19892:1: rule__ElseIfThenExpCS__Group__3__Impl : ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) ;
     public final void rule__ElseIfThenExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19894:1: ( ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) )
-            // InternalOCLstdlib.g:19895:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalOCLstdlib.g:19896:1: ( ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) )
+            // InternalOCLstdlib.g:19897:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
             {
-            // InternalOCLstdlib.g:19895:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
-            // InternalOCLstdlib.g:19896:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalOCLstdlib.g:19897:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
+            // InternalOCLstdlib.g:19898:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
-            // InternalOCLstdlib.g:19897:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
-            // InternalOCLstdlib.g:19897:2: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3
+            // InternalOCLstdlib.g:19899:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
+            // InternalOCLstdlib.g:19899:2: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3();
@@ -57987,14 +57987,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__0"
-    // InternalOCLstdlib.g:19915:1: rule__LetExpCS__Group__0 : rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 ;
+    // InternalOCLstdlib.g:19917:1: rule__LetExpCS__Group__0 : rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 ;
     public final void rule__LetExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19919:1: ( rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 )
-            // InternalOCLstdlib.g:19920:2: rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1
+            // InternalOCLstdlib.g:19921:1: ( rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 )
+            // InternalOCLstdlib.g:19922:2: rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__LetExpCS__Group__0__Impl();
@@ -58025,17 +58025,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:19927:1: rule__LetExpCS__Group__0__Impl : ( 'let' ) ;
+    // InternalOCLstdlib.g:19929:1: rule__LetExpCS__Group__0__Impl : ( 'let' ) ;
     public final void rule__LetExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19931:1: ( ( 'let' ) )
-            // InternalOCLstdlib.g:19932:1: ( 'let' )
+            // InternalOCLstdlib.g:19933:1: ( ( 'let' ) )
+            // InternalOCLstdlib.g:19934:1: ( 'let' )
             {
-            // InternalOCLstdlib.g:19932:1: ( 'let' )
-            // InternalOCLstdlib.g:19933:1: 'let'
+            // InternalOCLstdlib.g:19934:1: ( 'let' )
+            // InternalOCLstdlib.g:19935:1: 'let'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getLetKeyword_0());
@@ -58066,14 +58066,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__1"
-    // InternalOCLstdlib.g:19946:1: rule__LetExpCS__Group__1 : rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 ;
+    // InternalOCLstdlib.g:19948:1: rule__LetExpCS__Group__1 : rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 ;
     public final void rule__LetExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19950:1: ( rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 )
-            // InternalOCLstdlib.g:19951:2: rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2
+            // InternalOCLstdlib.g:19952:1: ( rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 )
+            // InternalOCLstdlib.g:19953:2: rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__LetExpCS__Group__1__Impl();
@@ -58104,23 +58104,23 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:19958:1: rule__LetExpCS__Group__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:19960:1: rule__LetExpCS__Group__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) ;
     public final void rule__LetExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19962:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) )
-            // InternalOCLstdlib.g:19963:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
+            // InternalOCLstdlib.g:19964:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) )
+            // InternalOCLstdlib.g:19965:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:19963:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
-            // InternalOCLstdlib.g:19964:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
+            // InternalOCLstdlib.g:19965:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
+            // InternalOCLstdlib.g:19966:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1());
             }
-            // InternalOCLstdlib.g:19965:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
-            // InternalOCLstdlib.g:19965:2: rule__LetExpCS__OwnedVariablesAssignment_1
+            // InternalOCLstdlib.g:19967:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
+            // InternalOCLstdlib.g:19967:2: rule__LetExpCS__OwnedVariablesAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__OwnedVariablesAssignment_1();
@@ -58155,14 +58155,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__2"
-    // InternalOCLstdlib.g:19975:1: rule__LetExpCS__Group__2 : rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 ;
+    // InternalOCLstdlib.g:19977:1: rule__LetExpCS__Group__2 : rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 ;
     public final void rule__LetExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19979:1: ( rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 )
-            // InternalOCLstdlib.g:19980:2: rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3
+            // InternalOCLstdlib.g:19981:1: ( rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 )
+            // InternalOCLstdlib.g:19982:2: rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_93);
             rule__LetExpCS__Group__2__Impl();
@@ -58193,22 +58193,22 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__2__Impl"
-    // InternalOCLstdlib.g:19987:1: rule__LetExpCS__Group__2__Impl : ( ( rule__LetExpCS__Group_2__0 )* ) ;
+    // InternalOCLstdlib.g:19989:1: rule__LetExpCS__Group__2__Impl : ( ( rule__LetExpCS__Group_2__0 )* ) ;
     public final void rule__LetExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:19991:1: ( ( ( rule__LetExpCS__Group_2__0 )* ) )
-            // InternalOCLstdlib.g:19992:1: ( ( rule__LetExpCS__Group_2__0 )* )
+            // InternalOCLstdlib.g:19993:1: ( ( ( rule__LetExpCS__Group_2__0 )* ) )
+            // InternalOCLstdlib.g:19994:1: ( ( rule__LetExpCS__Group_2__0 )* )
             {
-            // InternalOCLstdlib.g:19992:1: ( ( rule__LetExpCS__Group_2__0 )* )
-            // InternalOCLstdlib.g:19993:1: ( rule__LetExpCS__Group_2__0 )*
+            // InternalOCLstdlib.g:19994:1: ( ( rule__LetExpCS__Group_2__0 )* )
+            // InternalOCLstdlib.g:19995:1: ( rule__LetExpCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:19994:1: ( rule__LetExpCS__Group_2__0 )*
+            // InternalOCLstdlib.g:19996:1: ( rule__LetExpCS__Group_2__0 )*
             loop165:
             do {
                 int alt165=2;
@@ -58221,7 +58221,7 @@
 
                 switch (alt165) {
             	case 1 :
-            	    // InternalOCLstdlib.g:19994:2: rule__LetExpCS__Group_2__0
+            	    // InternalOCLstdlib.g:19996:2: rule__LetExpCS__Group_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__LetExpCS__Group_2__0();
@@ -58262,14 +58262,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__3"
-    // InternalOCLstdlib.g:20004:1: rule__LetExpCS__Group__3 : rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 ;
+    // InternalOCLstdlib.g:20006:1: rule__LetExpCS__Group__3 : rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 ;
     public final void rule__LetExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20008:1: ( rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 )
-            // InternalOCLstdlib.g:20009:2: rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4
+            // InternalOCLstdlib.g:20010:1: ( rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 )
+            // InternalOCLstdlib.g:20011:2: rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__LetExpCS__Group__3__Impl();
@@ -58300,17 +58300,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__3__Impl"
-    // InternalOCLstdlib.g:20016:1: rule__LetExpCS__Group__3__Impl : ( 'in' ) ;
+    // InternalOCLstdlib.g:20018:1: rule__LetExpCS__Group__3__Impl : ( 'in' ) ;
     public final void rule__LetExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20020:1: ( ( 'in' ) )
-            // InternalOCLstdlib.g:20021:1: ( 'in' )
+            // InternalOCLstdlib.g:20022:1: ( ( 'in' ) )
+            // InternalOCLstdlib.g:20023:1: ( 'in' )
             {
-            // InternalOCLstdlib.g:20021:1: ( 'in' )
-            // InternalOCLstdlib.g:20022:1: 'in'
+            // InternalOCLstdlib.g:20023:1: ( 'in' )
+            // InternalOCLstdlib.g:20024:1: 'in'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getInKeyword_3());
@@ -58341,14 +58341,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__4"
-    // InternalOCLstdlib.g:20035:1: rule__LetExpCS__Group__4 : rule__LetExpCS__Group__4__Impl ;
+    // InternalOCLstdlib.g:20037:1: rule__LetExpCS__Group__4 : rule__LetExpCS__Group__4__Impl ;
     public final void rule__LetExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20039:1: ( rule__LetExpCS__Group__4__Impl )
-            // InternalOCLstdlib.g:20040:2: rule__LetExpCS__Group__4__Impl
+            // InternalOCLstdlib.g:20041:1: ( rule__LetExpCS__Group__4__Impl )
+            // InternalOCLstdlib.g:20042:2: rule__LetExpCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__Group__4__Impl();
@@ -58374,23 +58374,23 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group__4__Impl"
-    // InternalOCLstdlib.g:20046:1: rule__LetExpCS__Group__4__Impl : ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) ;
+    // InternalOCLstdlib.g:20048:1: rule__LetExpCS__Group__4__Impl : ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) ;
     public final void rule__LetExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20050:1: ( ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) )
-            // InternalOCLstdlib.g:20051:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
+            // InternalOCLstdlib.g:20052:1: ( ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) )
+            // InternalOCLstdlib.g:20053:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
             {
-            // InternalOCLstdlib.g:20051:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
-            // InternalOCLstdlib.g:20052:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
+            // InternalOCLstdlib.g:20053:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
+            // InternalOCLstdlib.g:20054:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4());
             }
-            // InternalOCLstdlib.g:20053:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
-            // InternalOCLstdlib.g:20053:2: rule__LetExpCS__OwnedInExpressionAssignment_4
+            // InternalOCLstdlib.g:20055:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
+            // InternalOCLstdlib.g:20055:2: rule__LetExpCS__OwnedInExpressionAssignment_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__OwnedInExpressionAssignment_4();
@@ -58425,14 +58425,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__0"
-    // InternalOCLstdlib.g:20073:1: rule__LetExpCS__Group_2__0 : rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 ;
+    // InternalOCLstdlib.g:20075:1: rule__LetExpCS__Group_2__0 : rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 ;
     public final void rule__LetExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20077:1: ( rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 )
-            // InternalOCLstdlib.g:20078:2: rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1
+            // InternalOCLstdlib.g:20079:1: ( rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 )
+            // InternalOCLstdlib.g:20080:2: rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__LetExpCS__Group_2__0__Impl();
@@ -58463,17 +58463,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:20085:1: rule__LetExpCS__Group_2__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:20087:1: rule__LetExpCS__Group_2__0__Impl : ( ',' ) ;
     public final void rule__LetExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20089:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:20090:1: ( ',' )
+            // InternalOCLstdlib.g:20091:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:20092:1: ( ',' )
             {
-            // InternalOCLstdlib.g:20090:1: ( ',' )
-            // InternalOCLstdlib.g:20091:1: ','
+            // InternalOCLstdlib.g:20092:1: ( ',' )
+            // InternalOCLstdlib.g:20093:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
@@ -58504,14 +58504,14 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__1"
-    // InternalOCLstdlib.g:20104:1: rule__LetExpCS__Group_2__1 : rule__LetExpCS__Group_2__1__Impl ;
+    // InternalOCLstdlib.g:20106:1: rule__LetExpCS__Group_2__1 : rule__LetExpCS__Group_2__1__Impl ;
     public final void rule__LetExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20108:1: ( rule__LetExpCS__Group_2__1__Impl )
-            // InternalOCLstdlib.g:20109:2: rule__LetExpCS__Group_2__1__Impl
+            // InternalOCLstdlib.g:20110:1: ( rule__LetExpCS__Group_2__1__Impl )
+            // InternalOCLstdlib.g:20111:2: rule__LetExpCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__Group_2__1__Impl();
@@ -58537,23 +58537,23 @@
 
 
     // $ANTLR start "rule__LetExpCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:20115:1: rule__LetExpCS__Group_2__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) ;
+    // InternalOCLstdlib.g:20117:1: rule__LetExpCS__Group_2__1__Impl : ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) ;
     public final void rule__LetExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20119:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) )
-            // InternalOCLstdlib.g:20120:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
+            // InternalOCLstdlib.g:20121:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) )
+            // InternalOCLstdlib.g:20122:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
             {
-            // InternalOCLstdlib.g:20120:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
-            // InternalOCLstdlib.g:20121:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
+            // InternalOCLstdlib.g:20122:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
+            // InternalOCLstdlib.g:20123:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1());
             }
-            // InternalOCLstdlib.g:20122:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
-            // InternalOCLstdlib.g:20122:2: rule__LetExpCS__OwnedVariablesAssignment_2_1
+            // InternalOCLstdlib.g:20124:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
+            // InternalOCLstdlib.g:20124:2: rule__LetExpCS__OwnedVariablesAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetExpCS__OwnedVariablesAssignment_2_1();
@@ -58588,14 +58588,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__0"
-    // InternalOCLstdlib.g:20136:1: rule__LetVariableCS__Group__0 : rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 ;
+    // InternalOCLstdlib.g:20138:1: rule__LetVariableCS__Group__0 : rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 ;
     public final void rule__LetVariableCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20140:1: ( rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 )
-            // InternalOCLstdlib.g:20141:2: rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1
+            // InternalOCLstdlib.g:20142:1: ( rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 )
+            // InternalOCLstdlib.g:20143:2: rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_94);
             rule__LetVariableCS__Group__0__Impl();
@@ -58626,23 +58626,23 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__0__Impl"
-    // InternalOCLstdlib.g:20148:1: rule__LetVariableCS__Group__0__Impl : ( ( rule__LetVariableCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:20150:1: rule__LetVariableCS__Group__0__Impl : ( ( rule__LetVariableCS__NameAssignment_0 ) ) ;
     public final void rule__LetVariableCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20152:1: ( ( ( rule__LetVariableCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:20153:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:20154:1: ( ( ( rule__LetVariableCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:20155:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:20153:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:20154:1: ( rule__LetVariableCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:20155:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:20156:1: ( rule__LetVariableCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:20155:1: ( rule__LetVariableCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:20155:2: rule__LetVariableCS__NameAssignment_0
+            // InternalOCLstdlib.g:20157:1: ( rule__LetVariableCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:20157:2: rule__LetVariableCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__NameAssignment_0();
@@ -58677,14 +58677,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__1"
-    // InternalOCLstdlib.g:20165:1: rule__LetVariableCS__Group__1 : rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 ;
+    // InternalOCLstdlib.g:20167:1: rule__LetVariableCS__Group__1 : rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 ;
     public final void rule__LetVariableCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20169:1: ( rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 )
-            // InternalOCLstdlib.g:20170:2: rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2
+            // InternalOCLstdlib.g:20171:1: ( rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 )
+            // InternalOCLstdlib.g:20172:2: rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_94);
             rule__LetVariableCS__Group__1__Impl();
@@ -58715,22 +58715,22 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__1__Impl"
-    // InternalOCLstdlib.g:20177:1: rule__LetVariableCS__Group__1__Impl : ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) ;
+    // InternalOCLstdlib.g:20179:1: rule__LetVariableCS__Group__1__Impl : ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) ;
     public final void rule__LetVariableCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20181:1: ( ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) )
-            // InternalOCLstdlib.g:20182:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
+            // InternalOCLstdlib.g:20183:1: ( ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) )
+            // InternalOCLstdlib.g:20184:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
             {
-            // InternalOCLstdlib.g:20182:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
-            // InternalOCLstdlib.g:20183:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
+            // InternalOCLstdlib.g:20184:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
+            // InternalOCLstdlib.g:20185:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1());
             }
-            // InternalOCLstdlib.g:20184:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
+            // InternalOCLstdlib.g:20186:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             int alt166=2;
             int LA166_0 = input.LA(1);
 
@@ -58739,7 +58739,7 @@
             }
             switch (alt166) {
                 case 1 :
-                    // InternalOCLstdlib.g:20184:2: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1
+                    // InternalOCLstdlib.g:20186:2: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1();
@@ -58777,14 +58777,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__2"
-    // InternalOCLstdlib.g:20194:1: rule__LetVariableCS__Group__2 : rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 ;
+    // InternalOCLstdlib.g:20196:1: rule__LetVariableCS__Group__2 : rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 ;
     public final void rule__LetVariableCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20198:1: ( rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 )
-            // InternalOCLstdlib.g:20199:2: rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3
+            // InternalOCLstdlib.g:20200:1: ( rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 )
+            // InternalOCLstdlib.g:20201:2: rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_94);
             rule__LetVariableCS__Group__2__Impl();
@@ -58815,22 +58815,22 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__2__Impl"
-    // InternalOCLstdlib.g:20206:1: rule__LetVariableCS__Group__2__Impl : ( ( rule__LetVariableCS__Group_2__0 )? ) ;
+    // InternalOCLstdlib.g:20208:1: rule__LetVariableCS__Group__2__Impl : ( ( rule__LetVariableCS__Group_2__0 )? ) ;
     public final void rule__LetVariableCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20210:1: ( ( ( rule__LetVariableCS__Group_2__0 )? ) )
-            // InternalOCLstdlib.g:20211:1: ( ( rule__LetVariableCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:20212:1: ( ( ( rule__LetVariableCS__Group_2__0 )? ) )
+            // InternalOCLstdlib.g:20213:1: ( ( rule__LetVariableCS__Group_2__0 )? )
             {
-            // InternalOCLstdlib.g:20211:1: ( ( rule__LetVariableCS__Group_2__0 )? )
-            // InternalOCLstdlib.g:20212:1: ( rule__LetVariableCS__Group_2__0 )?
+            // InternalOCLstdlib.g:20213:1: ( ( rule__LetVariableCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:20214:1: ( rule__LetVariableCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:20213:1: ( rule__LetVariableCS__Group_2__0 )?
+            // InternalOCLstdlib.g:20215:1: ( rule__LetVariableCS__Group_2__0 )?
             int alt167=2;
             int LA167_0 = input.LA(1);
 
@@ -58839,7 +58839,7 @@
             }
             switch (alt167) {
                 case 1 :
-                    // InternalOCLstdlib.g:20213:2: rule__LetVariableCS__Group_2__0
+                    // InternalOCLstdlib.g:20215:2: rule__LetVariableCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__LetVariableCS__Group_2__0();
@@ -58877,14 +58877,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__3"
-    // InternalOCLstdlib.g:20223:1: rule__LetVariableCS__Group__3 : rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 ;
+    // InternalOCLstdlib.g:20225:1: rule__LetVariableCS__Group__3 : rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 ;
     public final void rule__LetVariableCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20227:1: ( rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 )
-            // InternalOCLstdlib.g:20228:2: rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4
+            // InternalOCLstdlib.g:20229:1: ( rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 )
+            // InternalOCLstdlib.g:20230:2: rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__LetVariableCS__Group__3__Impl();
@@ -58915,17 +58915,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__3__Impl"
-    // InternalOCLstdlib.g:20235:1: rule__LetVariableCS__Group__3__Impl : ( '=' ) ;
+    // InternalOCLstdlib.g:20237:1: rule__LetVariableCS__Group__3__Impl : ( '=' ) ;
     public final void rule__LetVariableCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20239:1: ( ( '=' ) )
-            // InternalOCLstdlib.g:20240:1: ( '=' )
+            // InternalOCLstdlib.g:20241:1: ( ( '=' ) )
+            // InternalOCLstdlib.g:20242:1: ( '=' )
             {
-            // InternalOCLstdlib.g:20240:1: ( '=' )
-            // InternalOCLstdlib.g:20241:1: '='
+            // InternalOCLstdlib.g:20242:1: ( '=' )
+            // InternalOCLstdlib.g:20243:1: '='
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
@@ -58956,14 +58956,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__4"
-    // InternalOCLstdlib.g:20254:1: rule__LetVariableCS__Group__4 : rule__LetVariableCS__Group__4__Impl ;
+    // InternalOCLstdlib.g:20256:1: rule__LetVariableCS__Group__4 : rule__LetVariableCS__Group__4__Impl ;
     public final void rule__LetVariableCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20258:1: ( rule__LetVariableCS__Group__4__Impl )
-            // InternalOCLstdlib.g:20259:2: rule__LetVariableCS__Group__4__Impl
+            // InternalOCLstdlib.g:20260:1: ( rule__LetVariableCS__Group__4__Impl )
+            // InternalOCLstdlib.g:20261:2: rule__LetVariableCS__Group__4__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__Group__4__Impl();
@@ -58989,23 +58989,23 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group__4__Impl"
-    // InternalOCLstdlib.g:20265:1: rule__LetVariableCS__Group__4__Impl : ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) ;
+    // InternalOCLstdlib.g:20267:1: rule__LetVariableCS__Group__4__Impl : ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) ;
     public final void rule__LetVariableCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20269:1: ( ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) )
-            // InternalOCLstdlib.g:20270:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
+            // InternalOCLstdlib.g:20271:1: ( ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) )
+            // InternalOCLstdlib.g:20272:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
             {
-            // InternalOCLstdlib.g:20270:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
-            // InternalOCLstdlib.g:20271:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
+            // InternalOCLstdlib.g:20272:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
+            // InternalOCLstdlib.g:20273:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4());
             }
-            // InternalOCLstdlib.g:20272:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
-            // InternalOCLstdlib.g:20272:2: rule__LetVariableCS__OwnedInitExpressionAssignment_4
+            // InternalOCLstdlib.g:20274:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
+            // InternalOCLstdlib.g:20274:2: rule__LetVariableCS__OwnedInitExpressionAssignment_4
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__OwnedInitExpressionAssignment_4();
@@ -59040,14 +59040,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__0"
-    // InternalOCLstdlib.g:20292:1: rule__LetVariableCS__Group_2__0 : rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 ;
+    // InternalOCLstdlib.g:20294:1: rule__LetVariableCS__Group_2__0 : rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 ;
     public final void rule__LetVariableCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20296:1: ( rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 )
-            // InternalOCLstdlib.g:20297:2: rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1
+            // InternalOCLstdlib.g:20298:1: ( rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 )
+            // InternalOCLstdlib.g:20299:2: rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__LetVariableCS__Group_2__0__Impl();
@@ -59078,17 +59078,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:20304:1: rule__LetVariableCS__Group_2__0__Impl : ( ':' ) ;
+    // InternalOCLstdlib.g:20306:1: rule__LetVariableCS__Group_2__0__Impl : ( ':' ) ;
     public final void rule__LetVariableCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20308:1: ( ( ':' ) )
-            // InternalOCLstdlib.g:20309:1: ( ':' )
+            // InternalOCLstdlib.g:20310:1: ( ( ':' ) )
+            // InternalOCLstdlib.g:20311:1: ( ':' )
             {
-            // InternalOCLstdlib.g:20309:1: ( ':' )
-            // InternalOCLstdlib.g:20310:1: ':'
+            // InternalOCLstdlib.g:20311:1: ( ':' )
+            // InternalOCLstdlib.g:20312:1: ':'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
@@ -59119,14 +59119,14 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__1"
-    // InternalOCLstdlib.g:20323:1: rule__LetVariableCS__Group_2__1 : rule__LetVariableCS__Group_2__1__Impl ;
+    // InternalOCLstdlib.g:20325:1: rule__LetVariableCS__Group_2__1 : rule__LetVariableCS__Group_2__1__Impl ;
     public final void rule__LetVariableCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20327:1: ( rule__LetVariableCS__Group_2__1__Impl )
-            // InternalOCLstdlib.g:20328:2: rule__LetVariableCS__Group_2__1__Impl
+            // InternalOCLstdlib.g:20329:1: ( rule__LetVariableCS__Group_2__1__Impl )
+            // InternalOCLstdlib.g:20330:2: rule__LetVariableCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__Group_2__1__Impl();
@@ -59152,23 +59152,23 @@
 
 
     // $ANTLR start "rule__LetVariableCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:20334:1: rule__LetVariableCS__Group_2__1__Impl : ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) ;
+    // InternalOCLstdlib.g:20336:1: rule__LetVariableCS__Group_2__1__Impl : ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) ;
     public final void rule__LetVariableCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20338:1: ( ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) )
-            // InternalOCLstdlib.g:20339:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
+            // InternalOCLstdlib.g:20340:1: ( ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) )
+            // InternalOCLstdlib.g:20341:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
             {
-            // InternalOCLstdlib.g:20339:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
-            // InternalOCLstdlib.g:20340:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
+            // InternalOCLstdlib.g:20341:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
+            // InternalOCLstdlib.g:20342:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1());
             }
-            // InternalOCLstdlib.g:20341:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
-            // InternalOCLstdlib.g:20341:2: rule__LetVariableCS__OwnedTypeAssignment_2_1
+            // InternalOCLstdlib.g:20343:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
+            // InternalOCLstdlib.g:20343:2: rule__LetVariableCS__OwnedTypeAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__LetVariableCS__OwnedTypeAssignment_2_1();
@@ -59203,14 +59203,14 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__0"
-    // InternalOCLstdlib.g:20355:1: rule__NestedExpCS__Group__0 : rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 ;
+    // InternalOCLstdlib.g:20357:1: rule__NestedExpCS__Group__0 : rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 ;
     public final void rule__NestedExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20359:1: ( rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 )
-            // InternalOCLstdlib.g:20360:2: rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1
+            // InternalOCLstdlib.g:20361:1: ( rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 )
+            // InternalOCLstdlib.g:20362:2: rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_32);
             rule__NestedExpCS__Group__0__Impl();
@@ -59241,17 +59241,17 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:20367:1: rule__NestedExpCS__Group__0__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:20369:1: rule__NestedExpCS__Group__0__Impl : ( '(' ) ;
     public final void rule__NestedExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20371:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:20372:1: ( '(' )
+            // InternalOCLstdlib.g:20373:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:20374:1: ( '(' )
             {
-            // InternalOCLstdlib.g:20372:1: ( '(' )
-            // InternalOCLstdlib.g:20373:1: '('
+            // InternalOCLstdlib.g:20374:1: ( '(' )
+            // InternalOCLstdlib.g:20375:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
@@ -59282,14 +59282,14 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__1"
-    // InternalOCLstdlib.g:20386:1: rule__NestedExpCS__Group__1 : rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 ;
+    // InternalOCLstdlib.g:20388:1: rule__NestedExpCS__Group__1 : rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 ;
     public final void rule__NestedExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20390:1: ( rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 )
-            // InternalOCLstdlib.g:20391:2: rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2
+            // InternalOCLstdlib.g:20392:1: ( rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 )
+            // InternalOCLstdlib.g:20393:2: rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_34);
             rule__NestedExpCS__Group__1__Impl();
@@ -59320,23 +59320,23 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:20398:1: rule__NestedExpCS__Group__1__Impl : ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:20400:1: rule__NestedExpCS__Group__1__Impl : ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) ;
     public final void rule__NestedExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20402:1: ( ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) )
-            // InternalOCLstdlib.g:20403:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
+            // InternalOCLstdlib.g:20404:1: ( ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) )
+            // InternalOCLstdlib.g:20405:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:20403:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
-            // InternalOCLstdlib.g:20404:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
+            // InternalOCLstdlib.g:20405:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
+            // InternalOCLstdlib.g:20406:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1());
             }
-            // InternalOCLstdlib.g:20405:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
-            // InternalOCLstdlib.g:20405:2: rule__NestedExpCS__OwnedExpressionAssignment_1
+            // InternalOCLstdlib.g:20407:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
+            // InternalOCLstdlib.g:20407:2: rule__NestedExpCS__OwnedExpressionAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NestedExpCS__OwnedExpressionAssignment_1();
@@ -59371,14 +59371,14 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__2"
-    // InternalOCLstdlib.g:20415:1: rule__NestedExpCS__Group__2 : rule__NestedExpCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:20417:1: rule__NestedExpCS__Group__2 : rule__NestedExpCS__Group__2__Impl ;
     public final void rule__NestedExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20419:1: ( rule__NestedExpCS__Group__2__Impl )
-            // InternalOCLstdlib.g:20420:2: rule__NestedExpCS__Group__2__Impl
+            // InternalOCLstdlib.g:20421:1: ( rule__NestedExpCS__Group__2__Impl )
+            // InternalOCLstdlib.g:20422:2: rule__NestedExpCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__NestedExpCS__Group__2__Impl();
@@ -59404,17 +59404,17 @@
 
 
     // $ANTLR start "rule__NestedExpCS__Group__2__Impl"
-    // InternalOCLstdlib.g:20426:1: rule__NestedExpCS__Group__2__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:20428:1: rule__NestedExpCS__Group__2__Impl : ( ')' ) ;
     public final void rule__NestedExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20430:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:20431:1: ( ')' )
+            // InternalOCLstdlib.g:20432:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:20433:1: ( ')' )
             {
-            // InternalOCLstdlib.g:20431:1: ( ')' )
-            // InternalOCLstdlib.g:20432:1: ')'
+            // InternalOCLstdlib.g:20433:1: ( ')' )
+            // InternalOCLstdlib.g:20434:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
@@ -59445,14 +59445,14 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__0"
-    // InternalOCLstdlib.g:20451:1: rule__SelfExpCS__Group__0 : rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 ;
+    // InternalOCLstdlib.g:20453:1: rule__SelfExpCS__Group__0 : rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 ;
     public final void rule__SelfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20455:1: ( rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 )
-            // InternalOCLstdlib.g:20456:2: rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1
+            // InternalOCLstdlib.g:20457:1: ( rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 )
+            // InternalOCLstdlib.g:20458:2: rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_95);
             rule__SelfExpCS__Group__0__Impl();
@@ -59483,23 +59483,23 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__0__Impl"
-    // InternalOCLstdlib.g:20463:1: rule__SelfExpCS__Group__0__Impl : ( () ) ;
+    // InternalOCLstdlib.g:20465:1: rule__SelfExpCS__Group__0__Impl : ( () ) ;
     public final void rule__SelfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20467:1: ( ( () ) )
-            // InternalOCLstdlib.g:20468:1: ( () )
+            // InternalOCLstdlib.g:20469:1: ( ( () ) )
+            // InternalOCLstdlib.g:20470:1: ( () )
             {
-            // InternalOCLstdlib.g:20468:1: ( () )
-            // InternalOCLstdlib.g:20469:1: ()
+            // InternalOCLstdlib.g:20470:1: ( () )
+            // InternalOCLstdlib.g:20471:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0());
             }
-            // InternalOCLstdlib.g:20470:1: ()
-            // InternalOCLstdlib.g:20472:1:
+            // InternalOCLstdlib.g:20472:1: ()
+            // InternalOCLstdlib.g:20474:1:
             {
             }
 
@@ -59524,14 +59524,14 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__1"
-    // InternalOCLstdlib.g:20482:1: rule__SelfExpCS__Group__1 : rule__SelfExpCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:20484:1: rule__SelfExpCS__Group__1 : rule__SelfExpCS__Group__1__Impl ;
     public final void rule__SelfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20486:1: ( rule__SelfExpCS__Group__1__Impl )
-            // InternalOCLstdlib.g:20487:2: rule__SelfExpCS__Group__1__Impl
+            // InternalOCLstdlib.g:20488:1: ( rule__SelfExpCS__Group__1__Impl )
+            // InternalOCLstdlib.g:20489:2: rule__SelfExpCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__SelfExpCS__Group__1__Impl();
@@ -59557,17 +59557,17 @@
 
 
     // $ANTLR start "rule__SelfExpCS__Group__1__Impl"
-    // InternalOCLstdlib.g:20493:1: rule__SelfExpCS__Group__1__Impl : ( 'self' ) ;
+    // InternalOCLstdlib.g:20495:1: rule__SelfExpCS__Group__1__Impl : ( 'self' ) ;
     public final void rule__SelfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20497:1: ( ( 'self' ) )
-            // InternalOCLstdlib.g:20498:1: ( 'self' )
+            // InternalOCLstdlib.g:20499:1: ( ( 'self' ) )
+            // InternalOCLstdlib.g:20500:1: ( 'self' )
             {
-            // InternalOCLstdlib.g:20498:1: ( 'self' )
-            // InternalOCLstdlib.g:20499:1: 'self'
+            // InternalOCLstdlib.g:20500:1: ( 'self' )
+            // InternalOCLstdlib.g:20501:1: 'self'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
@@ -59598,14 +59598,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__0"
-    // InternalOCLstdlib.g:20516:1: rule__MultiplicityBoundsCS__Group__0 : rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 ;
+    // InternalOCLstdlib.g:20518:1: rule__MultiplicityBoundsCS__Group__0 : rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 ;
     public final void rule__MultiplicityBoundsCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20520:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
-            // InternalOCLstdlib.g:20521:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
+            // InternalOCLstdlib.g:20522:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
+            // InternalOCLstdlib.g:20523:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_68);
             rule__MultiplicityBoundsCS__Group__0__Impl();
@@ -59636,23 +59636,23 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__0__Impl"
-    // InternalOCLstdlib.g:20528:1: rule__MultiplicityBoundsCS__Group__0__Impl : ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:20530:1: rule__MultiplicityBoundsCS__Group__0__Impl : ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) ;
     public final void rule__MultiplicityBoundsCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20532:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
-            // InternalOCLstdlib.g:20533:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
+            // InternalOCLstdlib.g:20534:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
+            // InternalOCLstdlib.g:20535:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:20533:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
-            // InternalOCLstdlib.g:20534:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
+            // InternalOCLstdlib.g:20535:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
+            // InternalOCLstdlib.g:20536:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
-            // InternalOCLstdlib.g:20535:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
-            // InternalOCLstdlib.g:20535:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
+            // InternalOCLstdlib.g:20537:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
+            // InternalOCLstdlib.g:20537:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__LowerBoundAssignment_0();
@@ -59687,14 +59687,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__1"
-    // InternalOCLstdlib.g:20545:1: rule__MultiplicityBoundsCS__Group__1 : rule__MultiplicityBoundsCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:20547:1: rule__MultiplicityBoundsCS__Group__1 : rule__MultiplicityBoundsCS__Group__1__Impl ;
     public final void rule__MultiplicityBoundsCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20549:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
-            // InternalOCLstdlib.g:20550:2: rule__MultiplicityBoundsCS__Group__1__Impl
+            // InternalOCLstdlib.g:20551:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
+            // InternalOCLstdlib.g:20552:2: rule__MultiplicityBoundsCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__Group__1__Impl();
@@ -59720,22 +59720,22 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group__1__Impl"
-    // InternalOCLstdlib.g:20556:1: rule__MultiplicityBoundsCS__Group__1__Impl : ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) ;
+    // InternalOCLstdlib.g:20558:1: rule__MultiplicityBoundsCS__Group__1__Impl : ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) ;
     public final void rule__MultiplicityBoundsCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20560:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
-            // InternalOCLstdlib.g:20561:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:20562:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
+            // InternalOCLstdlib.g:20563:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
             {
-            // InternalOCLstdlib.g:20561:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
-            // InternalOCLstdlib.g:20562:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
+            // InternalOCLstdlib.g:20563:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:20564:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:20563:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
+            // InternalOCLstdlib.g:20565:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             int alt168=2;
             int LA168_0 = input.LA(1);
 
@@ -59744,7 +59744,7 @@
             }
             switch (alt168) {
                 case 1 :
-                    // InternalOCLstdlib.g:20563:2: rule__MultiplicityBoundsCS__Group_1__0
+                    // InternalOCLstdlib.g:20565:2: rule__MultiplicityBoundsCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityBoundsCS__Group_1__0();
@@ -59782,14 +59782,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__0"
-    // InternalOCLstdlib.g:20577:1: rule__MultiplicityBoundsCS__Group_1__0 : rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 ;
+    // InternalOCLstdlib.g:20579:1: rule__MultiplicityBoundsCS__Group_1__0 : rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 ;
     public final void rule__MultiplicityBoundsCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20581:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
-            // InternalOCLstdlib.g:20582:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
+            // InternalOCLstdlib.g:20583:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
+            // InternalOCLstdlib.g:20584:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_96);
             rule__MultiplicityBoundsCS__Group_1__0__Impl();
@@ -59820,17 +59820,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:20589:1: rule__MultiplicityBoundsCS__Group_1__0__Impl : ( '..' ) ;
+    // InternalOCLstdlib.g:20591:1: rule__MultiplicityBoundsCS__Group_1__0__Impl : ( '..' ) ;
     public final void rule__MultiplicityBoundsCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20593:1: ( ( '..' ) )
-            // InternalOCLstdlib.g:20594:1: ( '..' )
+            // InternalOCLstdlib.g:20595:1: ( ( '..' ) )
+            // InternalOCLstdlib.g:20596:1: ( '..' )
             {
-            // InternalOCLstdlib.g:20594:1: ( '..' )
-            // InternalOCLstdlib.g:20595:1: '..'
+            // InternalOCLstdlib.g:20596:1: ( '..' )
+            // InternalOCLstdlib.g:20597:1: '..'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
@@ -59861,14 +59861,14 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__1"
-    // InternalOCLstdlib.g:20608:1: rule__MultiplicityBoundsCS__Group_1__1 : rule__MultiplicityBoundsCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:20610:1: rule__MultiplicityBoundsCS__Group_1__1 : rule__MultiplicityBoundsCS__Group_1__1__Impl ;
     public final void rule__MultiplicityBoundsCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20612:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:20613:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:20614:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:20615:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__Group_1__1__Impl();
@@ -59894,23 +59894,23 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:20619:1: rule__MultiplicityBoundsCS__Group_1__1__Impl : ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) ;
+    // InternalOCLstdlib.g:20621:1: rule__MultiplicityBoundsCS__Group_1__1__Impl : ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) ;
     public final void rule__MultiplicityBoundsCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20623:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
-            // InternalOCLstdlib.g:20624:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
+            // InternalOCLstdlib.g:20625:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
+            // InternalOCLstdlib.g:20626:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
             {
-            // InternalOCLstdlib.g:20624:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
-            // InternalOCLstdlib.g:20625:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
+            // InternalOCLstdlib.g:20626:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
+            // InternalOCLstdlib.g:20627:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
-            // InternalOCLstdlib.g:20626:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
-            // InternalOCLstdlib.g:20626:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
+            // InternalOCLstdlib.g:20628:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
+            // InternalOCLstdlib.g:20628:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1();
@@ -59945,14 +59945,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__0"
-    // InternalOCLstdlib.g:20640:1: rule__MultiplicityCS__Group__0 : rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 ;
+    // InternalOCLstdlib.g:20642:1: rule__MultiplicityCS__Group__0 : rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 ;
     public final void rule__MultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20644:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
-            // InternalOCLstdlib.g:20645:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
+            // InternalOCLstdlib.g:20646:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
+            // InternalOCLstdlib.g:20647:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_97);
             rule__MultiplicityCS__Group__0__Impl();
@@ -59983,17 +59983,17 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__0__Impl"
-    // InternalOCLstdlib.g:20652:1: rule__MultiplicityCS__Group__0__Impl : ( '[' ) ;
+    // InternalOCLstdlib.g:20654:1: rule__MultiplicityCS__Group__0__Impl : ( '[' ) ;
     public final void rule__MultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20656:1: ( ( '[' ) )
-            // InternalOCLstdlib.g:20657:1: ( '[' )
+            // InternalOCLstdlib.g:20658:1: ( ( '[' ) )
+            // InternalOCLstdlib.g:20659:1: ( '[' )
             {
-            // InternalOCLstdlib.g:20657:1: ( '[' )
-            // InternalOCLstdlib.g:20658:1: '['
+            // InternalOCLstdlib.g:20659:1: ( '[' )
+            // InternalOCLstdlib.g:20660:1: '['
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
@@ -60024,14 +60024,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__1"
-    // InternalOCLstdlib.g:20671:1: rule__MultiplicityCS__Group__1 : rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 ;
+    // InternalOCLstdlib.g:20673:1: rule__MultiplicityCS__Group__1 : rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 ;
     public final void rule__MultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20675:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
-            // InternalOCLstdlib.g:20676:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
+            // InternalOCLstdlib.g:20677:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
+            // InternalOCLstdlib.g:20678:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_98);
             rule__MultiplicityCS__Group__1__Impl();
@@ -60062,23 +60062,23 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__1__Impl"
-    // InternalOCLstdlib.g:20683:1: rule__MultiplicityCS__Group__1__Impl : ( ( rule__MultiplicityCS__Alternatives_1 ) ) ;
+    // InternalOCLstdlib.g:20685:1: rule__MultiplicityCS__Group__1__Impl : ( ( rule__MultiplicityCS__Alternatives_1 ) ) ;
     public final void rule__MultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20687:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
-            // InternalOCLstdlib.g:20688:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
+            // InternalOCLstdlib.g:20689:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
+            // InternalOCLstdlib.g:20690:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
             {
-            // InternalOCLstdlib.g:20688:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
-            // InternalOCLstdlib.g:20689:1: ( rule__MultiplicityCS__Alternatives_1 )
+            // InternalOCLstdlib.g:20690:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
+            // InternalOCLstdlib.g:20691:1: ( rule__MultiplicityCS__Alternatives_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
-            // InternalOCLstdlib.g:20690:1: ( rule__MultiplicityCS__Alternatives_1 )
-            // InternalOCLstdlib.g:20690:2: rule__MultiplicityCS__Alternatives_1
+            // InternalOCLstdlib.g:20692:1: ( rule__MultiplicityCS__Alternatives_1 )
+            // InternalOCLstdlib.g:20692:2: rule__MultiplicityCS__Alternatives_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityCS__Alternatives_1();
@@ -60113,14 +60113,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__2"
-    // InternalOCLstdlib.g:20700:1: rule__MultiplicityCS__Group__2 : rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 ;
+    // InternalOCLstdlib.g:20702:1: rule__MultiplicityCS__Group__2 : rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 ;
     public final void rule__MultiplicityCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20704:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
-            // InternalOCLstdlib.g:20705:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
+            // InternalOCLstdlib.g:20706:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
+            // InternalOCLstdlib.g:20707:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_98);
             rule__MultiplicityCS__Group__2__Impl();
@@ -60151,22 +60151,22 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__2__Impl"
-    // InternalOCLstdlib.g:20712:1: rule__MultiplicityCS__Group__2__Impl : ( ( rule__MultiplicityCS__Alternatives_2 )? ) ;
+    // InternalOCLstdlib.g:20714:1: rule__MultiplicityCS__Group__2__Impl : ( ( rule__MultiplicityCS__Alternatives_2 )? ) ;
     public final void rule__MultiplicityCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20716:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
-            // InternalOCLstdlib.g:20717:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
+            // InternalOCLstdlib.g:20718:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
+            // InternalOCLstdlib.g:20719:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
             {
-            // InternalOCLstdlib.g:20717:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
-            // InternalOCLstdlib.g:20718:1: ( rule__MultiplicityCS__Alternatives_2 )?
+            // InternalOCLstdlib.g:20719:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
+            // InternalOCLstdlib.g:20720:1: ( rule__MultiplicityCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
-            // InternalOCLstdlib.g:20719:1: ( rule__MultiplicityCS__Alternatives_2 )?
+            // InternalOCLstdlib.g:20721:1: ( rule__MultiplicityCS__Alternatives_2 )?
             int alt169=2;
             int LA169_0 = input.LA(1);
 
@@ -60175,7 +60175,7 @@
             }
             switch (alt169) {
                 case 1 :
-                    // InternalOCLstdlib.g:20719:2: rule__MultiplicityCS__Alternatives_2
+                    // InternalOCLstdlib.g:20721:2: rule__MultiplicityCS__Alternatives_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__MultiplicityCS__Alternatives_2();
@@ -60213,14 +60213,14 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__3"
-    // InternalOCLstdlib.g:20729:1: rule__MultiplicityCS__Group__3 : rule__MultiplicityCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:20731:1: rule__MultiplicityCS__Group__3 : rule__MultiplicityCS__Group__3__Impl ;
     public final void rule__MultiplicityCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20733:1: ( rule__MultiplicityCS__Group__3__Impl )
-            // InternalOCLstdlib.g:20734:2: rule__MultiplicityCS__Group__3__Impl
+            // InternalOCLstdlib.g:20735:1: ( rule__MultiplicityCS__Group__3__Impl )
+            // InternalOCLstdlib.g:20736:2: rule__MultiplicityCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityCS__Group__3__Impl();
@@ -60246,17 +60246,17 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__Group__3__Impl"
-    // InternalOCLstdlib.g:20740:1: rule__MultiplicityCS__Group__3__Impl : ( ']' ) ;
+    // InternalOCLstdlib.g:20742:1: rule__MultiplicityCS__Group__3__Impl : ( ']' ) ;
     public final void rule__MultiplicityCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20744:1: ( ( ']' ) )
-            // InternalOCLstdlib.g:20745:1: ( ']' )
+            // InternalOCLstdlib.g:20746:1: ( ( ']' ) )
+            // InternalOCLstdlib.g:20747:1: ( ']' )
             {
-            // InternalOCLstdlib.g:20745:1: ( ']' )
-            // InternalOCLstdlib.g:20746:1: ']'
+            // InternalOCLstdlib.g:20747:1: ( ']' )
+            // InternalOCLstdlib.g:20748:1: ']'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
@@ -60287,14 +60287,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__0"
-    // InternalOCLstdlib.g:20767:1: rule__PathNameCS__Group__0 : rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 ;
+    // InternalOCLstdlib.g:20769:1: rule__PathNameCS__Group__0 : rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 ;
     public final void rule__PathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20771:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
-            // InternalOCLstdlib.g:20772:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
+            // InternalOCLstdlib.g:20773:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
+            // InternalOCLstdlib.g:20774:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_8);
             rule__PathNameCS__Group__0__Impl();
@@ -60325,23 +60325,23 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__0__Impl"
-    // InternalOCLstdlib.g:20779:1: rule__PathNameCS__Group__0__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:20781:1: rule__PathNameCS__Group__0__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) ;
     public final void rule__PathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20783:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
-            // InternalOCLstdlib.g:20784:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalOCLstdlib.g:20785:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
+            // InternalOCLstdlib.g:20786:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:20784:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
-            // InternalOCLstdlib.g:20785:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalOCLstdlib.g:20786:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
+            // InternalOCLstdlib.g:20787:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
-            // InternalOCLstdlib.g:20786:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
-            // InternalOCLstdlib.g:20786:2: rule__PathNameCS__OwnedPathElementsAssignment_0
+            // InternalOCLstdlib.g:20788:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
+            // InternalOCLstdlib.g:20788:2: rule__PathNameCS__OwnedPathElementsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__OwnedPathElementsAssignment_0();
@@ -60376,14 +60376,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__1"
-    // InternalOCLstdlib.g:20796:1: rule__PathNameCS__Group__1 : rule__PathNameCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:20798:1: rule__PathNameCS__Group__1 : rule__PathNameCS__Group__1__Impl ;
     public final void rule__PathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20800:1: ( rule__PathNameCS__Group__1__Impl )
-            // InternalOCLstdlib.g:20801:2: rule__PathNameCS__Group__1__Impl
+            // InternalOCLstdlib.g:20802:1: ( rule__PathNameCS__Group__1__Impl )
+            // InternalOCLstdlib.g:20803:2: rule__PathNameCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__Group__1__Impl();
@@ -60409,22 +60409,22 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group__1__Impl"
-    // InternalOCLstdlib.g:20807:1: rule__PathNameCS__Group__1__Impl : ( ( rule__PathNameCS__Group_1__0 )* ) ;
+    // InternalOCLstdlib.g:20809:1: rule__PathNameCS__Group__1__Impl : ( ( rule__PathNameCS__Group_1__0 )* ) ;
     public final void rule__PathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20811:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
-            // InternalOCLstdlib.g:20812:1: ( ( rule__PathNameCS__Group_1__0 )* )
+            // InternalOCLstdlib.g:20813:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
+            // InternalOCLstdlib.g:20814:1: ( ( rule__PathNameCS__Group_1__0 )* )
             {
-            // InternalOCLstdlib.g:20812:1: ( ( rule__PathNameCS__Group_1__0 )* )
-            // InternalOCLstdlib.g:20813:1: ( rule__PathNameCS__Group_1__0 )*
+            // InternalOCLstdlib.g:20814:1: ( ( rule__PathNameCS__Group_1__0 )* )
+            // InternalOCLstdlib.g:20815:1: ( rule__PathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:20814:1: ( rule__PathNameCS__Group_1__0 )*
+            // InternalOCLstdlib.g:20816:1: ( rule__PathNameCS__Group_1__0 )*
             loop170:
             do {
                 int alt170=2;
@@ -60437,7 +60437,7 @@
 
                 switch (alt170) {
             	case 1 :
-            	    // InternalOCLstdlib.g:20814:2: rule__PathNameCS__Group_1__0
+            	    // InternalOCLstdlib.g:20816:2: rule__PathNameCS__Group_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_9);
             	    rule__PathNameCS__Group_1__0();
@@ -60478,14 +60478,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__0"
-    // InternalOCLstdlib.g:20828:1: rule__PathNameCS__Group_1__0 : rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 ;
+    // InternalOCLstdlib.g:20830:1: rule__PathNameCS__Group_1__0 : rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 ;
     public final void rule__PathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20832:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
-            // InternalOCLstdlib.g:20833:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
+            // InternalOCLstdlib.g:20834:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
+            // InternalOCLstdlib.g:20835:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_63);
             rule__PathNameCS__Group_1__0__Impl();
@@ -60516,17 +60516,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:20840:1: rule__PathNameCS__Group_1__0__Impl : ( '::' ) ;
+    // InternalOCLstdlib.g:20842:1: rule__PathNameCS__Group_1__0__Impl : ( '::' ) ;
     public final void rule__PathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20844:1: ( ( '::' ) )
-            // InternalOCLstdlib.g:20845:1: ( '::' )
+            // InternalOCLstdlib.g:20846:1: ( ( '::' ) )
+            // InternalOCLstdlib.g:20847:1: ( '::' )
             {
-            // InternalOCLstdlib.g:20845:1: ( '::' )
-            // InternalOCLstdlib.g:20846:1: '::'
+            // InternalOCLstdlib.g:20847:1: ( '::' )
+            // InternalOCLstdlib.g:20848:1: '::'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
@@ -60557,14 +60557,14 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__1"
-    // InternalOCLstdlib.g:20859:1: rule__PathNameCS__Group_1__1 : rule__PathNameCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:20861:1: rule__PathNameCS__Group_1__1 : rule__PathNameCS__Group_1__1__Impl ;
     public final void rule__PathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20863:1: ( rule__PathNameCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:20864:2: rule__PathNameCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:20865:1: ( rule__PathNameCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:20866:2: rule__PathNameCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__Group_1__1__Impl();
@@ -60590,23 +60590,23 @@
 
 
     // $ANTLR start "rule__PathNameCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:20870:1: rule__PathNameCS__Group_1__1__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
+    // InternalOCLstdlib.g:20872:1: rule__PathNameCS__Group_1__1__Impl : ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) ;
     public final void rule__PathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20874:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
-            // InternalOCLstdlib.g:20875:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalOCLstdlib.g:20876:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
+            // InternalOCLstdlib.g:20877:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
             {
-            // InternalOCLstdlib.g:20875:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
-            // InternalOCLstdlib.g:20876:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalOCLstdlib.g:20877:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
+            // InternalOCLstdlib.g:20878:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
-            // InternalOCLstdlib.g:20877:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
-            // InternalOCLstdlib.g:20877:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
+            // InternalOCLstdlib.g:20879:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
+            // InternalOCLstdlib.g:20879:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__PathNameCS__OwnedPathElementsAssignment_1_1();
@@ -60641,14 +60641,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__0"
-    // InternalOCLstdlib.g:20891:1: rule__TemplateBindingCS__Group__0 : rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 ;
+    // InternalOCLstdlib.g:20895:1: rule__TemplateBindingCS__Group__0 : rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 ;
     public final void rule__TemplateBindingCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20895:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
-            // InternalOCLstdlib.g:20896:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
+            // InternalOCLstdlib.g:20899:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
+            // InternalOCLstdlib.g:20900:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_99);
             rule__TemplateBindingCS__Group__0__Impl();
@@ -60679,23 +60679,23 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__0__Impl"
-    // InternalOCLstdlib.g:20903:1: rule__TemplateBindingCS__Group__0__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:20907:1: rule__TemplateBindingCS__Group__0__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) ;
     public final void rule__TemplateBindingCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20907:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
-            // InternalOCLstdlib.g:20908:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
+            // InternalOCLstdlib.g:20911:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
+            // InternalOCLstdlib.g:20912:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:20908:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
-            // InternalOCLstdlib.g:20909:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
+            // InternalOCLstdlib.g:20912:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
+            // InternalOCLstdlib.g:20913:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
-            // InternalOCLstdlib.g:20910:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
-            // InternalOCLstdlib.g:20910:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
+            // InternalOCLstdlib.g:20914:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
+            // InternalOCLstdlib.g:20914:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0();
@@ -60730,14 +60730,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__1"
-    // InternalOCLstdlib.g:20920:1: rule__TemplateBindingCS__Group__1 : rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 ;
+    // InternalOCLstdlib.g:20924:1: rule__TemplateBindingCS__Group__1 : rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 ;
     public final void rule__TemplateBindingCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20924:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
-            // InternalOCLstdlib.g:20925:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
+            // InternalOCLstdlib.g:20928:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
+            // InternalOCLstdlib.g:20929:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_99);
             rule__TemplateBindingCS__Group__1__Impl();
@@ -60768,22 +60768,22 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__1__Impl"
-    // InternalOCLstdlib.g:20932:1: rule__TemplateBindingCS__Group__1__Impl : ( ( rule__TemplateBindingCS__Group_1__0 )* ) ;
+    // InternalOCLstdlib.g:20936:1: rule__TemplateBindingCS__Group__1__Impl : ( ( rule__TemplateBindingCS__Group_1__0 )* ) ;
     public final void rule__TemplateBindingCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20936:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
-            // InternalOCLstdlib.g:20937:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
+            // InternalOCLstdlib.g:20940:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
+            // InternalOCLstdlib.g:20941:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
             {
-            // InternalOCLstdlib.g:20937:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
-            // InternalOCLstdlib.g:20938:1: ( rule__TemplateBindingCS__Group_1__0 )*
+            // InternalOCLstdlib.g:20941:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
+            // InternalOCLstdlib.g:20942:1: ( rule__TemplateBindingCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:20939:1: ( rule__TemplateBindingCS__Group_1__0 )*
+            // InternalOCLstdlib.g:20943:1: ( rule__TemplateBindingCS__Group_1__0 )*
             loop171:
             do {
                 int alt171=2;
@@ -60796,7 +60796,7 @@
 
                 switch (alt171) {
             	case 1 :
-            	    // InternalOCLstdlib.g:20939:2: rule__TemplateBindingCS__Group_1__0
+            	    // InternalOCLstdlib.g:20943:2: rule__TemplateBindingCS__Group_1__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__TemplateBindingCS__Group_1__0();
@@ -60837,14 +60837,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__2"
-    // InternalOCLstdlib.g:20949:1: rule__TemplateBindingCS__Group__2 : rule__TemplateBindingCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:20953:1: rule__TemplateBindingCS__Group__2 : rule__TemplateBindingCS__Group__2__Impl ;
     public final void rule__TemplateBindingCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20953:1: ( rule__TemplateBindingCS__Group__2__Impl )
-            // InternalOCLstdlib.g:20954:2: rule__TemplateBindingCS__Group__2__Impl
+            // InternalOCLstdlib.g:20957:1: ( rule__TemplateBindingCS__Group__2__Impl )
+            // InternalOCLstdlib.g:20958:2: rule__TemplateBindingCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group__2__Impl();
@@ -60870,22 +60870,22 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group__2__Impl"
-    // InternalOCLstdlib.g:20960:1: rule__TemplateBindingCS__Group__2__Impl : ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) ;
+    // InternalOCLstdlib.g:20964:1: rule__TemplateBindingCS__Group__2__Impl : ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) ;
     public final void rule__TemplateBindingCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20964:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
-            // InternalOCLstdlib.g:20965:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
+            // InternalOCLstdlib.g:20968:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
+            // InternalOCLstdlib.g:20969:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
             {
-            // InternalOCLstdlib.g:20965:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
-            // InternalOCLstdlib.g:20966:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
+            // InternalOCLstdlib.g:20969:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
+            // InternalOCLstdlib.g:20970:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
-            // InternalOCLstdlib.g:20967:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
+            // InternalOCLstdlib.g:20971:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             int alt172=2;
             int LA172_0 = input.LA(1);
 
@@ -60894,7 +60894,7 @@
             }
             switch (alt172) {
                 case 1 :
-                    // InternalOCLstdlib.g:20967:2: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2
+                    // InternalOCLstdlib.g:20971:2: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TemplateBindingCS__OwnedMultiplicityAssignment_2();
@@ -60932,14 +60932,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__0"
-    // InternalOCLstdlib.g:20983:1: rule__TemplateBindingCS__Group_1__0 : rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 ;
+    // InternalOCLstdlib.g:20987:1: rule__TemplateBindingCS__Group_1__0 : rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 ;
     public final void rule__TemplateBindingCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20987:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
-            // InternalOCLstdlib.g:20988:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
+            // InternalOCLstdlib.g:20991:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
+            // InternalOCLstdlib.g:20992:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_62);
             rule__TemplateBindingCS__Group_1__0__Impl();
@@ -60970,17 +60970,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:20995:1: rule__TemplateBindingCS__Group_1__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:20999:1: rule__TemplateBindingCS__Group_1__0__Impl : ( ',' ) ;
     public final void rule__TemplateBindingCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:20999:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:21000:1: ( ',' )
+            // InternalOCLstdlib.g:21003:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:21004:1: ( ',' )
             {
-            // InternalOCLstdlib.g:21000:1: ( ',' )
-            // InternalOCLstdlib.g:21001:1: ','
+            // InternalOCLstdlib.g:21004:1: ( ',' )
+            // InternalOCLstdlib.g:21005:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
@@ -61011,14 +61011,14 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__1"
-    // InternalOCLstdlib.g:21014:1: rule__TemplateBindingCS__Group_1__1 : rule__TemplateBindingCS__Group_1__1__Impl ;
+    // InternalOCLstdlib.g:21018:1: rule__TemplateBindingCS__Group_1__1 : rule__TemplateBindingCS__Group_1__1__Impl ;
     public final void rule__TemplateBindingCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21018:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
-            // InternalOCLstdlib.g:21019:2: rule__TemplateBindingCS__Group_1__1__Impl
+            // InternalOCLstdlib.g:21022:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
+            // InternalOCLstdlib.g:21023:2: rule__TemplateBindingCS__Group_1__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__Group_1__1__Impl();
@@ -61044,23 +61044,23 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:21025:1: rule__TemplateBindingCS__Group_1__1__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) ;
+    // InternalOCLstdlib.g:21029:1: rule__TemplateBindingCS__Group_1__1__Impl : ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) ;
     public final void rule__TemplateBindingCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21029:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
-            // InternalOCLstdlib.g:21030:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
+            // InternalOCLstdlib.g:21033:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
+            // InternalOCLstdlib.g:21034:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
             {
-            // InternalOCLstdlib.g:21030:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
-            // InternalOCLstdlib.g:21031:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
+            // InternalOCLstdlib.g:21034:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
+            // InternalOCLstdlib.g:21035:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
-            // InternalOCLstdlib.g:21032:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
-            // InternalOCLstdlib.g:21032:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
+            // InternalOCLstdlib.g:21036:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
+            // InternalOCLstdlib.g:21036:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1();
@@ -61095,14 +61095,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group__0"
-    // InternalOCLstdlib.g:21046:1: rule__TemplateSignatureCS__Group__0 : rule__TemplateSignatureCS__Group__0__Impl rule__TemplateSignatureCS__Group__1 ;
+    // InternalOCLstdlib.g:21050:1: rule__TemplateSignatureCS__Group__0 : rule__TemplateSignatureCS__Group__0__Impl rule__TemplateSignatureCS__Group__1 ;
     public final void rule__TemplateSignatureCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21050:1: ( rule__TemplateSignatureCS__Group__0__Impl rule__TemplateSignatureCS__Group__1 )
-            // InternalOCLstdlib.g:21051:2: rule__TemplateSignatureCS__Group__0__Impl rule__TemplateSignatureCS__Group__1
+            // InternalOCLstdlib.g:21054:1: ( rule__TemplateSignatureCS__Group__0__Impl rule__TemplateSignatureCS__Group__1 )
+            // InternalOCLstdlib.g:21055:2: rule__TemplateSignatureCS__Group__0__Impl rule__TemplateSignatureCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__TemplateSignatureCS__Group__0__Impl();
@@ -61133,17 +61133,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group__0__Impl"
-    // InternalOCLstdlib.g:21058:1: rule__TemplateSignatureCS__Group__0__Impl : ( '(' ) ;
+    // InternalOCLstdlib.g:21062:1: rule__TemplateSignatureCS__Group__0__Impl : ( '(' ) ;
     public final void rule__TemplateSignatureCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21062:1: ( ( '(' ) )
-            // InternalOCLstdlib.g:21063:1: ( '(' )
+            // InternalOCLstdlib.g:21066:1: ( ( '(' ) )
+            // InternalOCLstdlib.g:21067:1: ( '(' )
             {
-            // InternalOCLstdlib.g:21063:1: ( '(' )
-            // InternalOCLstdlib.g:21064:1: '('
+            // InternalOCLstdlib.g:21067:1: ( '(' )
+            // InternalOCLstdlib.g:21068:1: '('
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0());
@@ -61174,14 +61174,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group__1"
-    // InternalOCLstdlib.g:21077:1: rule__TemplateSignatureCS__Group__1 : rule__TemplateSignatureCS__Group__1__Impl rule__TemplateSignatureCS__Group__2 ;
+    // InternalOCLstdlib.g:21081:1: rule__TemplateSignatureCS__Group__1 : rule__TemplateSignatureCS__Group__1__Impl rule__TemplateSignatureCS__Group__2 ;
     public final void rule__TemplateSignatureCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21081:1: ( rule__TemplateSignatureCS__Group__1__Impl rule__TemplateSignatureCS__Group__2 )
-            // InternalOCLstdlib.g:21082:2: rule__TemplateSignatureCS__Group__1__Impl rule__TemplateSignatureCS__Group__2
+            // InternalOCLstdlib.g:21085:1: ( rule__TemplateSignatureCS__Group__1__Impl rule__TemplateSignatureCS__Group__2 )
+            // InternalOCLstdlib.g:21086:2: rule__TemplateSignatureCS__Group__1__Impl rule__TemplateSignatureCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__TemplateSignatureCS__Group__1__Impl();
@@ -61212,23 +61212,23 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group__1__Impl"
-    // InternalOCLstdlib.g:21089:1: rule__TemplateSignatureCS__Group__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 ) ) ;
+    // InternalOCLstdlib.g:21093:1: rule__TemplateSignatureCS__Group__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 ) ) ;
     public final void rule__TemplateSignatureCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21093:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 ) ) )
-            // InternalOCLstdlib.g:21094:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 ) )
+            // InternalOCLstdlib.g:21097:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 ) ) )
+            // InternalOCLstdlib.g:21098:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 ) )
             {
-            // InternalOCLstdlib.g:21094:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 ) )
-            // InternalOCLstdlib.g:21095:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 )
+            // InternalOCLstdlib.g:21098:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 ) )
+            // InternalOCLstdlib.g:21099:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1());
             }
-            // InternalOCLstdlib.g:21096:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 )
-            // InternalOCLstdlib.g:21096:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1
+            // InternalOCLstdlib.g:21100:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 )
+            // InternalOCLstdlib.g:21100:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__OwnedParametersAssignment_1();
@@ -61263,14 +61263,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group__2"
-    // InternalOCLstdlib.g:21106:1: rule__TemplateSignatureCS__Group__2 : rule__TemplateSignatureCS__Group__2__Impl rule__TemplateSignatureCS__Group__3 ;
+    // InternalOCLstdlib.g:21110:1: rule__TemplateSignatureCS__Group__2 : rule__TemplateSignatureCS__Group__2__Impl rule__TemplateSignatureCS__Group__3 ;
     public final void rule__TemplateSignatureCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21110:1: ( rule__TemplateSignatureCS__Group__2__Impl rule__TemplateSignatureCS__Group__3 )
-            // InternalOCLstdlib.g:21111:2: rule__TemplateSignatureCS__Group__2__Impl rule__TemplateSignatureCS__Group__3
+            // InternalOCLstdlib.g:21114:1: ( rule__TemplateSignatureCS__Group__2__Impl rule__TemplateSignatureCS__Group__3 )
+            // InternalOCLstdlib.g:21115:2: rule__TemplateSignatureCS__Group__2__Impl rule__TemplateSignatureCS__Group__3
             {
             pushFollow(FollowSets000.FOLLOW_16);
             rule__TemplateSignatureCS__Group__2__Impl();
@@ -61301,22 +61301,22 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group__2__Impl"
-    // InternalOCLstdlib.g:21118:1: rule__TemplateSignatureCS__Group__2__Impl : ( ( rule__TemplateSignatureCS__Group_2__0 )* ) ;
+    // InternalOCLstdlib.g:21122:1: rule__TemplateSignatureCS__Group__2__Impl : ( ( rule__TemplateSignatureCS__Group_2__0 )* ) ;
     public final void rule__TemplateSignatureCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21122:1: ( ( ( rule__TemplateSignatureCS__Group_2__0 )* ) )
-            // InternalOCLstdlib.g:21123:1: ( ( rule__TemplateSignatureCS__Group_2__0 )* )
+            // InternalOCLstdlib.g:21126:1: ( ( ( rule__TemplateSignatureCS__Group_2__0 )* ) )
+            // InternalOCLstdlib.g:21127:1: ( ( rule__TemplateSignatureCS__Group_2__0 )* )
             {
-            // InternalOCLstdlib.g:21123:1: ( ( rule__TemplateSignatureCS__Group_2__0 )* )
-            // InternalOCLstdlib.g:21124:1: ( rule__TemplateSignatureCS__Group_2__0 )*
+            // InternalOCLstdlib.g:21127:1: ( ( rule__TemplateSignatureCS__Group_2__0 )* )
+            // InternalOCLstdlib.g:21128:1: ( rule__TemplateSignatureCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:21125:1: ( rule__TemplateSignatureCS__Group_2__0 )*
+            // InternalOCLstdlib.g:21129:1: ( rule__TemplateSignatureCS__Group_2__0 )*
             loop173:
             do {
                 int alt173=2;
@@ -61329,7 +61329,7 @@
 
                 switch (alt173) {
             	case 1 :
-            	    // InternalOCLstdlib.g:21125:2: rule__TemplateSignatureCS__Group_2__0
+            	    // InternalOCLstdlib.g:21129:2: rule__TemplateSignatureCS__Group_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_17);
             	    rule__TemplateSignatureCS__Group_2__0();
@@ -61370,14 +61370,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group__3"
-    // InternalOCLstdlib.g:21135:1: rule__TemplateSignatureCS__Group__3 : rule__TemplateSignatureCS__Group__3__Impl ;
+    // InternalOCLstdlib.g:21139:1: rule__TemplateSignatureCS__Group__3 : rule__TemplateSignatureCS__Group__3__Impl ;
     public final void rule__TemplateSignatureCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21139:1: ( rule__TemplateSignatureCS__Group__3__Impl )
-            // InternalOCLstdlib.g:21140:2: rule__TemplateSignatureCS__Group__3__Impl
+            // InternalOCLstdlib.g:21143:1: ( rule__TemplateSignatureCS__Group__3__Impl )
+            // InternalOCLstdlib.g:21144:2: rule__TemplateSignatureCS__Group__3__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__Group__3__Impl();
@@ -61403,17 +61403,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group__3__Impl"
-    // InternalOCLstdlib.g:21146:1: rule__TemplateSignatureCS__Group__3__Impl : ( ')' ) ;
+    // InternalOCLstdlib.g:21150:1: rule__TemplateSignatureCS__Group__3__Impl : ( ')' ) ;
     public final void rule__TemplateSignatureCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21150:1: ( ( ')' ) )
-            // InternalOCLstdlib.g:21151:1: ( ')' )
+            // InternalOCLstdlib.g:21154:1: ( ( ')' ) )
+            // InternalOCLstdlib.g:21155:1: ( ')' )
             {
-            // InternalOCLstdlib.g:21151:1: ( ')' )
-            // InternalOCLstdlib.g:21152:1: ')'
+            // InternalOCLstdlib.g:21155:1: ( ')' )
+            // InternalOCLstdlib.g:21156:1: ')'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_3());
@@ -61444,14 +61444,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_2__0"
-    // InternalOCLstdlib.g:21173:1: rule__TemplateSignatureCS__Group_2__0 : rule__TemplateSignatureCS__Group_2__0__Impl rule__TemplateSignatureCS__Group_2__1 ;
+    // InternalOCLstdlib.g:21177:1: rule__TemplateSignatureCS__Group_2__0 : rule__TemplateSignatureCS__Group_2__0__Impl rule__TemplateSignatureCS__Group_2__1 ;
     public final void rule__TemplateSignatureCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21177:1: ( rule__TemplateSignatureCS__Group_2__0__Impl rule__TemplateSignatureCS__Group_2__1 )
-            // InternalOCLstdlib.g:21178:2: rule__TemplateSignatureCS__Group_2__0__Impl rule__TemplateSignatureCS__Group_2__1
+            // InternalOCLstdlib.g:21181:1: ( rule__TemplateSignatureCS__Group_2__0__Impl rule__TemplateSignatureCS__Group_2__1 )
+            // InternalOCLstdlib.g:21182:2: rule__TemplateSignatureCS__Group_2__0__Impl rule__TemplateSignatureCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_39);
             rule__TemplateSignatureCS__Group_2__0__Impl();
@@ -61482,17 +61482,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:21185:1: rule__TemplateSignatureCS__Group_2__0__Impl : ( ',' ) ;
+    // InternalOCLstdlib.g:21189:1: rule__TemplateSignatureCS__Group_2__0__Impl : ( ',' ) ;
     public final void rule__TemplateSignatureCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21189:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:21190:1: ( ',' )
+            // InternalOCLstdlib.g:21193:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:21194:1: ( ',' )
             {
-            // InternalOCLstdlib.g:21190:1: ( ',' )
-            // InternalOCLstdlib.g:21191:1: ','
+            // InternalOCLstdlib.g:21194:1: ( ',' )
+            // InternalOCLstdlib.g:21195:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_2_0());
@@ -61523,14 +61523,14 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_2__1"
-    // InternalOCLstdlib.g:21204:1: rule__TemplateSignatureCS__Group_2__1 : rule__TemplateSignatureCS__Group_2__1__Impl ;
+    // InternalOCLstdlib.g:21208:1: rule__TemplateSignatureCS__Group_2__1 : rule__TemplateSignatureCS__Group_2__1__Impl ;
     public final void rule__TemplateSignatureCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21208:1: ( rule__TemplateSignatureCS__Group_2__1__Impl )
-            // InternalOCLstdlib.g:21209:2: rule__TemplateSignatureCS__Group_2__1__Impl
+            // InternalOCLstdlib.g:21212:1: ( rule__TemplateSignatureCS__Group_2__1__Impl )
+            // InternalOCLstdlib.g:21213:2: rule__TemplateSignatureCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__Group_2__1__Impl();
@@ -61556,23 +61556,23 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:21215:1: rule__TemplateSignatureCS__Group_2__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 ) ) ;
+    // InternalOCLstdlib.g:21219:1: rule__TemplateSignatureCS__Group_2__1__Impl : ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 ) ) ;
     public final void rule__TemplateSignatureCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21219:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 ) ) )
-            // InternalOCLstdlib.g:21220:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 ) )
+            // InternalOCLstdlib.g:21223:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 ) ) )
+            // InternalOCLstdlib.g:21224:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 ) )
             {
-            // InternalOCLstdlib.g:21220:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 ) )
-            // InternalOCLstdlib.g:21221:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 )
+            // InternalOCLstdlib.g:21224:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 ) )
+            // InternalOCLstdlib.g:21225:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_2_1());
             }
-            // InternalOCLstdlib.g:21222:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 )
-            // InternalOCLstdlib.g:21222:2: rule__TemplateSignatureCS__OwnedParametersAssignment_2_1
+            // InternalOCLstdlib.g:21226:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 )
+            // InternalOCLstdlib.g:21226:2: rule__TemplateSignatureCS__OwnedParametersAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TemplateSignatureCS__OwnedParametersAssignment_2_1();
@@ -61607,14 +61607,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__0"
-    // InternalOCLstdlib.g:21236:1: rule__TypeParameterCS__Group__0 : rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 ;
+    // InternalOCLstdlib.g:21240:1: rule__TypeParameterCS__Group__0 : rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 ;
     public final void rule__TypeParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21240:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
-            // InternalOCLstdlib.g:21241:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
+            // InternalOCLstdlib.g:21244:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
+            // InternalOCLstdlib.g:21245:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_100);
             rule__TypeParameterCS__Group__0__Impl();
@@ -61645,23 +61645,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__0__Impl"
-    // InternalOCLstdlib.g:21248:1: rule__TypeParameterCS__Group__0__Impl : ( ( rule__TypeParameterCS__NameAssignment_0 ) ) ;
+    // InternalOCLstdlib.g:21252:1: rule__TypeParameterCS__Group__0__Impl : ( ( rule__TypeParameterCS__NameAssignment_0 ) ) ;
     public final void rule__TypeParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21252:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
-            // InternalOCLstdlib.g:21253:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:21256:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
+            // InternalOCLstdlib.g:21257:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
             {
-            // InternalOCLstdlib.g:21253:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
-            // InternalOCLstdlib.g:21254:1: ( rule__TypeParameterCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:21257:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
+            // InternalOCLstdlib.g:21258:1: ( rule__TypeParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
-            // InternalOCLstdlib.g:21255:1: ( rule__TypeParameterCS__NameAssignment_0 )
-            // InternalOCLstdlib.g:21255:2: rule__TypeParameterCS__NameAssignment_0
+            // InternalOCLstdlib.g:21259:1: ( rule__TypeParameterCS__NameAssignment_0 )
+            // InternalOCLstdlib.g:21259:2: rule__TypeParameterCS__NameAssignment_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__NameAssignment_0();
@@ -61696,14 +61696,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__1"
-    // InternalOCLstdlib.g:21265:1: rule__TypeParameterCS__Group__1 : rule__TypeParameterCS__Group__1__Impl ;
+    // InternalOCLstdlib.g:21269:1: rule__TypeParameterCS__Group__1 : rule__TypeParameterCS__Group__1__Impl ;
     public final void rule__TypeParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21269:1: ( rule__TypeParameterCS__Group__1__Impl )
-            // InternalOCLstdlib.g:21270:2: rule__TypeParameterCS__Group__1__Impl
+            // InternalOCLstdlib.g:21273:1: ( rule__TypeParameterCS__Group__1__Impl )
+            // InternalOCLstdlib.g:21274:2: rule__TypeParameterCS__Group__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group__1__Impl();
@@ -61729,22 +61729,22 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group__1__Impl"
-    // InternalOCLstdlib.g:21276:1: rule__TypeParameterCS__Group__1__Impl : ( ( rule__TypeParameterCS__Group_1__0 )? ) ;
+    // InternalOCLstdlib.g:21280:1: rule__TypeParameterCS__Group__1__Impl : ( ( rule__TypeParameterCS__Group_1__0 )? ) ;
     public final void rule__TypeParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21280:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
-            // InternalOCLstdlib.g:21281:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:21284:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
+            // InternalOCLstdlib.g:21285:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
             {
-            // InternalOCLstdlib.g:21281:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
-            // InternalOCLstdlib.g:21282:1: ( rule__TypeParameterCS__Group_1__0 )?
+            // InternalOCLstdlib.g:21285:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
+            // InternalOCLstdlib.g:21286:1: ( rule__TypeParameterCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
-            // InternalOCLstdlib.g:21283:1: ( rule__TypeParameterCS__Group_1__0 )?
+            // InternalOCLstdlib.g:21287:1: ( rule__TypeParameterCS__Group_1__0 )?
             int alt174=2;
             int LA174_0 = input.LA(1);
 
@@ -61753,7 +61753,7 @@
             }
             switch (alt174) {
                 case 1 :
-                    // InternalOCLstdlib.g:21283:2: rule__TypeParameterCS__Group_1__0
+                    // InternalOCLstdlib.g:21287:2: rule__TypeParameterCS__Group_1__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__TypeParameterCS__Group_1__0();
@@ -61791,14 +61791,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__0"
-    // InternalOCLstdlib.g:21297:1: rule__TypeParameterCS__Group_1__0 : rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 ;
+    // InternalOCLstdlib.g:21301:1: rule__TypeParameterCS__Group_1__0 : rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 ;
     public final void rule__TypeParameterCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21301:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
-            // InternalOCLstdlib.g:21302:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
+            // InternalOCLstdlib.g:21305:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
+            // InternalOCLstdlib.g:21306:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__TypeParameterCS__Group_1__0__Impl();
@@ -61829,17 +61829,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__0__Impl"
-    // InternalOCLstdlib.g:21309:1: rule__TypeParameterCS__Group_1__0__Impl : ( 'extends' ) ;
+    // InternalOCLstdlib.g:21313:1: rule__TypeParameterCS__Group_1__0__Impl : ( 'extends' ) ;
     public final void rule__TypeParameterCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21313:1: ( ( 'extends' ) )
-            // InternalOCLstdlib.g:21314:1: ( 'extends' )
+            // InternalOCLstdlib.g:21317:1: ( ( 'extends' ) )
+            // InternalOCLstdlib.g:21318:1: ( 'extends' )
             {
-            // InternalOCLstdlib.g:21314:1: ( 'extends' )
-            // InternalOCLstdlib.g:21315:1: 'extends'
+            // InternalOCLstdlib.g:21318:1: ( 'extends' )
+            // InternalOCLstdlib.g:21319:1: 'extends'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
@@ -61870,14 +61870,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__1"
-    // InternalOCLstdlib.g:21328:1: rule__TypeParameterCS__Group_1__1 : rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 ;
+    // InternalOCLstdlib.g:21332:1: rule__TypeParameterCS__Group_1__1 : rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 ;
     public final void rule__TypeParameterCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21332:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
-            // InternalOCLstdlib.g:21333:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
+            // InternalOCLstdlib.g:21336:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
+            // InternalOCLstdlib.g:21337:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
             {
             pushFollow(FollowSets000.FOLLOW_101);
             rule__TypeParameterCS__Group_1__1__Impl();
@@ -61908,23 +61908,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__1__Impl"
-    // InternalOCLstdlib.g:21340:1: rule__TypeParameterCS__Group_1__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) ;
+    // InternalOCLstdlib.g:21344:1: rule__TypeParameterCS__Group_1__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) ;
     public final void rule__TypeParameterCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21344:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
-            // InternalOCLstdlib.g:21345:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
+            // InternalOCLstdlib.g:21348:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
+            // InternalOCLstdlib.g:21349:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
             {
-            // InternalOCLstdlib.g:21345:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
-            // InternalOCLstdlib.g:21346:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
+            // InternalOCLstdlib.g:21349:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
+            // InternalOCLstdlib.g:21350:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
-            // InternalOCLstdlib.g:21347:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
-            // InternalOCLstdlib.g:21347:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
+            // InternalOCLstdlib.g:21351:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
+            // InternalOCLstdlib.g:21351:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__OwnedExtendsAssignment_1_1();
@@ -61959,14 +61959,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__2"
-    // InternalOCLstdlib.g:21357:1: rule__TypeParameterCS__Group_1__2 : rule__TypeParameterCS__Group_1__2__Impl ;
+    // InternalOCLstdlib.g:21361:1: rule__TypeParameterCS__Group_1__2 : rule__TypeParameterCS__Group_1__2__Impl ;
     public final void rule__TypeParameterCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21361:1: ( rule__TypeParameterCS__Group_1__2__Impl )
-            // InternalOCLstdlib.g:21362:2: rule__TypeParameterCS__Group_1__2__Impl
+            // InternalOCLstdlib.g:21365:1: ( rule__TypeParameterCS__Group_1__2__Impl )
+            // InternalOCLstdlib.g:21366:2: rule__TypeParameterCS__Group_1__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group_1__2__Impl();
@@ -61992,22 +61992,22 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1__2__Impl"
-    // InternalOCLstdlib.g:21368:1: rule__TypeParameterCS__Group_1__2__Impl : ( ( rule__TypeParameterCS__Group_1_2__0 )* ) ;
+    // InternalOCLstdlib.g:21372:1: rule__TypeParameterCS__Group_1__2__Impl : ( ( rule__TypeParameterCS__Group_1_2__0 )* ) ;
     public final void rule__TypeParameterCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21372:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
-            // InternalOCLstdlib.g:21373:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
+            // InternalOCLstdlib.g:21376:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
+            // InternalOCLstdlib.g:21377:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
             {
-            // InternalOCLstdlib.g:21373:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
-            // InternalOCLstdlib.g:21374:1: ( rule__TypeParameterCS__Group_1_2__0 )*
+            // InternalOCLstdlib.g:21377:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
+            // InternalOCLstdlib.g:21378:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
-            // InternalOCLstdlib.g:21375:1: ( rule__TypeParameterCS__Group_1_2__0 )*
+            // InternalOCLstdlib.g:21379:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             loop175:
             do {
                 int alt175=2;
@@ -62020,7 +62020,7 @@
 
                 switch (alt175) {
             	case 1 :
-            	    // InternalOCLstdlib.g:21375:2: rule__TypeParameterCS__Group_1_2__0
+            	    // InternalOCLstdlib.g:21379:2: rule__TypeParameterCS__Group_1_2__0
             	    {
             	    pushFollow(FollowSets000.FOLLOW_102);
             	    rule__TypeParameterCS__Group_1_2__0();
@@ -62061,14 +62061,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__0"
-    // InternalOCLstdlib.g:21391:1: rule__TypeParameterCS__Group_1_2__0 : rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 ;
+    // InternalOCLstdlib.g:21395:1: rule__TypeParameterCS__Group_1_2__0 : rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 ;
     public final void rule__TypeParameterCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21395:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
-            // InternalOCLstdlib.g:21396:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
+            // InternalOCLstdlib.g:21399:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
+            // InternalOCLstdlib.g:21400:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__TypeParameterCS__Group_1_2__0__Impl();
@@ -62099,17 +62099,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__0__Impl"
-    // InternalOCLstdlib.g:21403:1: rule__TypeParameterCS__Group_1_2__0__Impl : ( '&&' ) ;
+    // InternalOCLstdlib.g:21407:1: rule__TypeParameterCS__Group_1_2__0__Impl : ( '&&' ) ;
     public final void rule__TypeParameterCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21407:1: ( ( '&&' ) )
-            // InternalOCLstdlib.g:21408:1: ( '&&' )
+            // InternalOCLstdlib.g:21411:1: ( ( '&&' ) )
+            // InternalOCLstdlib.g:21412:1: ( '&&' )
             {
-            // InternalOCLstdlib.g:21408:1: ( '&&' )
-            // InternalOCLstdlib.g:21409:1: '&&'
+            // InternalOCLstdlib.g:21412:1: ( '&&' )
+            // InternalOCLstdlib.g:21413:1: '&&'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
@@ -62140,14 +62140,14 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__1"
-    // InternalOCLstdlib.g:21422:1: rule__TypeParameterCS__Group_1_2__1 : rule__TypeParameterCS__Group_1_2__1__Impl ;
+    // InternalOCLstdlib.g:21426:1: rule__TypeParameterCS__Group_1_2__1 : rule__TypeParameterCS__Group_1_2__1__Impl ;
     public final void rule__TypeParameterCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21426:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
-            // InternalOCLstdlib.g:21427:2: rule__TypeParameterCS__Group_1_2__1__Impl
+            // InternalOCLstdlib.g:21430:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
+            // InternalOCLstdlib.g:21431:2: rule__TypeParameterCS__Group_1_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__Group_1_2__1__Impl();
@@ -62173,23 +62173,23 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__Group_1_2__1__Impl"
-    // InternalOCLstdlib.g:21433:1: rule__TypeParameterCS__Group_1_2__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) ;
+    // InternalOCLstdlib.g:21437:1: rule__TypeParameterCS__Group_1_2__1__Impl : ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) ;
     public final void rule__TypeParameterCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21437:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
-            // InternalOCLstdlib.g:21438:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
+            // InternalOCLstdlib.g:21441:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
+            // InternalOCLstdlib.g:21442:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
             {
-            // InternalOCLstdlib.g:21438:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
-            // InternalOCLstdlib.g:21439:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
+            // InternalOCLstdlib.g:21442:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
+            // InternalOCLstdlib.g:21443:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
-            // InternalOCLstdlib.g:21440:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
-            // InternalOCLstdlib.g:21440:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
+            // InternalOCLstdlib.g:21444:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
+            // InternalOCLstdlib.g:21444:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1();
@@ -62224,14 +62224,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__0"
-    // InternalOCLstdlib.g:21454:1: rule__WildcardTypeRefCS__Group__0 : rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 ;
+    // InternalOCLstdlib.g:21458:1: rule__WildcardTypeRefCS__Group__0 : rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 ;
     public final void rule__WildcardTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21458:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
-            // InternalOCLstdlib.g:21459:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
+            // InternalOCLstdlib.g:21462:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
+            // InternalOCLstdlib.g:21463:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
             {
             pushFollow(FollowSets000.FOLLOW_62);
             rule__WildcardTypeRefCS__Group__0__Impl();
@@ -62262,23 +62262,23 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__0__Impl"
-    // InternalOCLstdlib.g:21466:1: rule__WildcardTypeRefCS__Group__0__Impl : ( () ) ;
+    // InternalOCLstdlib.g:21470:1: rule__WildcardTypeRefCS__Group__0__Impl : ( () ) ;
     public final void rule__WildcardTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21470:1: ( ( () ) )
-            // InternalOCLstdlib.g:21471:1: ( () )
+            // InternalOCLstdlib.g:21474:1: ( ( () ) )
+            // InternalOCLstdlib.g:21475:1: ( () )
             {
-            // InternalOCLstdlib.g:21471:1: ( () )
-            // InternalOCLstdlib.g:21472:1: ()
+            // InternalOCLstdlib.g:21475:1: ( () )
+            // InternalOCLstdlib.g:21476:1: ()
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
-            // InternalOCLstdlib.g:21473:1: ()
-            // InternalOCLstdlib.g:21475:1:
+            // InternalOCLstdlib.g:21477:1: ()
+            // InternalOCLstdlib.g:21479:1:
             {
             }
 
@@ -62303,14 +62303,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__1"
-    // InternalOCLstdlib.g:21485:1: rule__WildcardTypeRefCS__Group__1 : rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 ;
+    // InternalOCLstdlib.g:21489:1: rule__WildcardTypeRefCS__Group__1 : rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 ;
     public final void rule__WildcardTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21489:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
-            // InternalOCLstdlib.g:21490:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
+            // InternalOCLstdlib.g:21493:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
+            // InternalOCLstdlib.g:21494:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
             {
             pushFollow(FollowSets000.FOLLOW_100);
             rule__WildcardTypeRefCS__Group__1__Impl();
@@ -62341,17 +62341,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__1__Impl"
-    // InternalOCLstdlib.g:21497:1: rule__WildcardTypeRefCS__Group__1__Impl : ( '?' ) ;
+    // InternalOCLstdlib.g:21501:1: rule__WildcardTypeRefCS__Group__1__Impl : ( '?' ) ;
     public final void rule__WildcardTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21501:1: ( ( '?' ) )
-            // InternalOCLstdlib.g:21502:1: ( '?' )
+            // InternalOCLstdlib.g:21505:1: ( ( '?' ) )
+            // InternalOCLstdlib.g:21506:1: ( '?' )
             {
-            // InternalOCLstdlib.g:21502:1: ( '?' )
-            // InternalOCLstdlib.g:21503:1: '?'
+            // InternalOCLstdlib.g:21506:1: ( '?' )
+            // InternalOCLstdlib.g:21507:1: '?'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
@@ -62382,14 +62382,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__2"
-    // InternalOCLstdlib.g:21516:1: rule__WildcardTypeRefCS__Group__2 : rule__WildcardTypeRefCS__Group__2__Impl ;
+    // InternalOCLstdlib.g:21520:1: rule__WildcardTypeRefCS__Group__2 : rule__WildcardTypeRefCS__Group__2__Impl ;
     public final void rule__WildcardTypeRefCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21520:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
-            // InternalOCLstdlib.g:21521:2: rule__WildcardTypeRefCS__Group__2__Impl
+            // InternalOCLstdlib.g:21524:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
+            // InternalOCLstdlib.g:21525:2: rule__WildcardTypeRefCS__Group__2__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group__2__Impl();
@@ -62415,22 +62415,22 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group__2__Impl"
-    // InternalOCLstdlib.g:21527:1: rule__WildcardTypeRefCS__Group__2__Impl : ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) ;
+    // InternalOCLstdlib.g:21531:1: rule__WildcardTypeRefCS__Group__2__Impl : ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) ;
     public final void rule__WildcardTypeRefCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21531:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
-            // InternalOCLstdlib.g:21532:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:21535:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
+            // InternalOCLstdlib.g:21536:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
             {
-            // InternalOCLstdlib.g:21532:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
-            // InternalOCLstdlib.g:21533:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
+            // InternalOCLstdlib.g:21536:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
+            // InternalOCLstdlib.g:21537:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
-            // InternalOCLstdlib.g:21534:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
+            // InternalOCLstdlib.g:21538:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             int alt176=2;
             int LA176_0 = input.LA(1);
 
@@ -62439,7 +62439,7 @@
             }
             switch (alt176) {
                 case 1 :
-                    // InternalOCLstdlib.g:21534:2: rule__WildcardTypeRefCS__Group_2__0
+                    // InternalOCLstdlib.g:21538:2: rule__WildcardTypeRefCS__Group_2__0
                     {
                     pushFollow(FollowSets000.FOLLOW_2);
                     rule__WildcardTypeRefCS__Group_2__0();
@@ -62477,14 +62477,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__0"
-    // InternalOCLstdlib.g:21550:1: rule__WildcardTypeRefCS__Group_2__0 : rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 ;
+    // InternalOCLstdlib.g:21554:1: rule__WildcardTypeRefCS__Group_2__0 : rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 ;
     public final void rule__WildcardTypeRefCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21554:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
-            // InternalOCLstdlib.g:21555:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
+            // InternalOCLstdlib.g:21558:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
+            // InternalOCLstdlib.g:21559:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
             {
             pushFollow(FollowSets000.FOLLOW_12);
             rule__WildcardTypeRefCS__Group_2__0__Impl();
@@ -62515,17 +62515,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__0__Impl"
-    // InternalOCLstdlib.g:21562:1: rule__WildcardTypeRefCS__Group_2__0__Impl : ( 'extends' ) ;
+    // InternalOCLstdlib.g:21566:1: rule__WildcardTypeRefCS__Group_2__0__Impl : ( 'extends' ) ;
     public final void rule__WildcardTypeRefCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21566:1: ( ( 'extends' ) )
-            // InternalOCLstdlib.g:21567:1: ( 'extends' )
+            // InternalOCLstdlib.g:21570:1: ( ( 'extends' ) )
+            // InternalOCLstdlib.g:21571:1: ( 'extends' )
             {
-            // InternalOCLstdlib.g:21567:1: ( 'extends' )
-            // InternalOCLstdlib.g:21568:1: 'extends'
+            // InternalOCLstdlib.g:21571:1: ( 'extends' )
+            // InternalOCLstdlib.g:21572:1: 'extends'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
@@ -62556,14 +62556,14 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__1"
-    // InternalOCLstdlib.g:21581:1: rule__WildcardTypeRefCS__Group_2__1 : rule__WildcardTypeRefCS__Group_2__1__Impl ;
+    // InternalOCLstdlib.g:21585:1: rule__WildcardTypeRefCS__Group_2__1 : rule__WildcardTypeRefCS__Group_2__1__Impl ;
     public final void rule__WildcardTypeRefCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21585:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
-            // InternalOCLstdlib.g:21586:2: rule__WildcardTypeRefCS__Group_2__1__Impl
+            // InternalOCLstdlib.g:21589:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
+            // InternalOCLstdlib.g:21590:2: rule__WildcardTypeRefCS__Group_2__1__Impl
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__Group_2__1__Impl();
@@ -62589,23 +62589,23 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__Group_2__1__Impl"
-    // InternalOCLstdlib.g:21592:1: rule__WildcardTypeRefCS__Group_2__1__Impl : ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) ;
+    // InternalOCLstdlib.g:21596:1: rule__WildcardTypeRefCS__Group_2__1__Impl : ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) ;
     public final void rule__WildcardTypeRefCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21596:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
-            // InternalOCLstdlib.g:21597:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
+            // InternalOCLstdlib.g:21600:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
+            // InternalOCLstdlib.g:21601:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
             {
-            // InternalOCLstdlib.g:21597:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
-            // InternalOCLstdlib.g:21598:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
+            // InternalOCLstdlib.g:21601:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
+            // InternalOCLstdlib.g:21602:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
-            // InternalOCLstdlib.g:21599:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
-            // InternalOCLstdlib.g:21599:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
+            // InternalOCLstdlib.g:21603:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
+            // InternalOCLstdlib.g:21603:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1();
@@ -62640,17 +62640,17 @@
 
 
     // $ANTLR start "rule__Library__OwnedImportsAssignment_0_0"
-    // InternalOCLstdlib.g:21614:1: rule__Library__OwnedImportsAssignment_0_0 : ( ruleImportCS ) ;
+    // InternalOCLstdlib.g:21618:1: rule__Library__OwnedImportsAssignment_0_0 : ( ruleImportCS ) ;
     public final void rule__Library__OwnedImportsAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21618:1: ( ( ruleImportCS ) )
-            // InternalOCLstdlib.g:21619:1: ( ruleImportCS )
+            // InternalOCLstdlib.g:21622:1: ( ( ruleImportCS ) )
+            // InternalOCLstdlib.g:21623:1: ( ruleImportCS )
             {
-            // InternalOCLstdlib.g:21619:1: ( ruleImportCS )
-            // InternalOCLstdlib.g:21620:1: ruleImportCS
+            // InternalOCLstdlib.g:21623:1: ( ruleImportCS )
+            // InternalOCLstdlib.g:21624:1: ruleImportCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibraryAccess().getOwnedImportsImportCSParserRuleCall_0_0_0());
@@ -62685,17 +62685,17 @@
 
 
     // $ANTLR start "rule__Library__OwnedPackagesAssignment_1"
-    // InternalOCLstdlib.g:21629:1: rule__Library__OwnedPackagesAssignment_1 : ( ruleLibPackageCS ) ;
+    // InternalOCLstdlib.g:21633:1: rule__Library__OwnedPackagesAssignment_1 : ( ruleLibPackageCS ) ;
     public final void rule__Library__OwnedPackagesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21633:1: ( ( ruleLibPackageCS ) )
-            // InternalOCLstdlib.g:21634:1: ( ruleLibPackageCS )
+            // InternalOCLstdlib.g:21637:1: ( ( ruleLibPackageCS ) )
+            // InternalOCLstdlib.g:21638:1: ( ruleLibPackageCS )
             {
-            // InternalOCLstdlib.g:21634:1: ( ruleLibPackageCS )
-            // InternalOCLstdlib.g:21635:1: ruleLibPackageCS
+            // InternalOCLstdlib.g:21638:1: ( ruleLibPackageCS )
+            // InternalOCLstdlib.g:21639:1: ruleLibPackageCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibraryAccess().getOwnedPackagesLibPackageCSParserRuleCall_1_0());
@@ -62730,17 +62730,17 @@
 
 
     // $ANTLR start "rule__LibPathNameCS__OwnedPathElementsAssignment_0"
-    // InternalOCLstdlib.g:21644:1: rule__LibPathNameCS__OwnedPathElementsAssignment_0 : ( ruleLibPathElementCS ) ;
+    // InternalOCLstdlib.g:21648:1: rule__LibPathNameCS__OwnedPathElementsAssignment_0 : ( ruleLibPathElementCS ) ;
     public final void rule__LibPathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21648:1: ( ( ruleLibPathElementCS ) )
-            // InternalOCLstdlib.g:21649:1: ( ruleLibPathElementCS )
+            // InternalOCLstdlib.g:21652:1: ( ( ruleLibPathElementCS ) )
+            // InternalOCLstdlib.g:21653:1: ( ruleLibPathElementCS )
             {
-            // InternalOCLstdlib.g:21649:1: ( ruleLibPathElementCS )
-            // InternalOCLstdlib.g:21650:1: ruleLibPathElementCS
+            // InternalOCLstdlib.g:21653:1: ( ruleLibPathElementCS )
+            // InternalOCLstdlib.g:21654:1: ruleLibPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_0_0());
@@ -62775,17 +62775,17 @@
 
 
     // $ANTLR start "rule__LibPathNameCS__OwnedPathElementsAssignment_1_1"
-    // InternalOCLstdlib.g:21659:1: rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleLibPathElementCS ) ;
+    // InternalOCLstdlib.g:21663:1: rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleLibPathElementCS ) ;
     public final void rule__LibPathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21663:1: ( ( ruleLibPathElementCS ) )
-            // InternalOCLstdlib.g:21664:1: ( ruleLibPathElementCS )
+            // InternalOCLstdlib.g:21667:1: ( ( ruleLibPathElementCS ) )
+            // InternalOCLstdlib.g:21668:1: ( ruleLibPathElementCS )
             {
-            // InternalOCLstdlib.g:21664:1: ( ruleLibPathElementCS )
-            // InternalOCLstdlib.g:21665:1: ruleLibPathElementCS
+            // InternalOCLstdlib.g:21668:1: ( ruleLibPathElementCS )
+            // InternalOCLstdlib.g:21669:1: ruleLibPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_1_1_0());
@@ -62820,23 +62820,23 @@
 
 
     // $ANTLR start "rule__LibPathElementCS__ReferredElementAssignment"
-    // InternalOCLstdlib.g:21674:1: rule__LibPathElementCS__ReferredElementAssignment : ( ( ruleName ) ) ;
+    // InternalOCLstdlib.g:21678:1: rule__LibPathElementCS__ReferredElementAssignment : ( ( ruleName ) ) ;
     public final void rule__LibPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21678:1: ( ( ( ruleName ) ) )
-            // InternalOCLstdlib.g:21679:1: ( ( ruleName ) )
+            // InternalOCLstdlib.g:21682:1: ( ( ( ruleName ) ) )
+            // InternalOCLstdlib.g:21683:1: ( ( ruleName ) )
             {
-            // InternalOCLstdlib.g:21679:1: ( ( ruleName ) )
-            // InternalOCLstdlib.g:21680:1: ( ruleName )
+            // InternalOCLstdlib.g:21683:1: ( ( ruleName ) )
+            // InternalOCLstdlib.g:21684:1: ( ruleName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
-            // InternalOCLstdlib.g:21681:1: ( ruleName )
-            // InternalOCLstdlib.g:21682:1: ruleName
+            // InternalOCLstdlib.g:21685:1: ( ruleName )
+            // InternalOCLstdlib.g:21686:1: ruleName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementNameParserRuleCall_0_1());
@@ -62877,17 +62877,17 @@
 
 
     // $ANTLR start "rule__AccumulatorCS__NameAssignment_0"
-    // InternalOCLstdlib.g:21693:1: rule__AccumulatorCS__NameAssignment_0 : ( ruleIdentifier ) ;
+    // InternalOCLstdlib.g:21697:1: rule__AccumulatorCS__NameAssignment_0 : ( ruleIdentifier ) ;
     public final void rule__AccumulatorCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21697:1: ( ( ruleIdentifier ) )
-            // InternalOCLstdlib.g:21698:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:21701:1: ( ( ruleIdentifier ) )
+            // InternalOCLstdlib.g:21702:1: ( ruleIdentifier )
             {
-            // InternalOCLstdlib.g:21698:1: ( ruleIdentifier )
-            // InternalOCLstdlib.g:21699:1: ruleIdentifier
+            // InternalOCLstdlib.g:21702:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:21703:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAccumulatorCSAccess().getNameIdentifierParserRuleCall_0_0());
@@ -62922,17 +62922,17 @@
 
 
     // $ANTLR start "rule__AccumulatorCS__OwnedTypeAssignment_2"
-    // InternalOCLstdlib.g:21708:1: rule__AccumulatorCS__OwnedTypeAssignment_2 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLstdlib.g:21712:1: rule__AccumulatorCS__OwnedTypeAssignment_2 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__AccumulatorCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21712:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLstdlib.g:21713:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:21716:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLstdlib.g:21717:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLstdlib.g:21713:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLstdlib.g:21714:1: ruleTypedMultiplicityRefCS
+            // InternalOCLstdlib.g:21717:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:21718:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAccumulatorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
@@ -62967,23 +62967,23 @@
 
 
     // $ANTLR start "rule__AnnotationCS__NameAssignment_1"
-    // InternalOCLstdlib.g:21723:1: rule__AnnotationCS__NameAssignment_1 : ( ( rule__AnnotationCS__NameAlternatives_1_0 ) ) ;
+    // InternalOCLstdlib.g:21727:1: rule__AnnotationCS__NameAssignment_1 : ( ( rule__AnnotationCS__NameAlternatives_1_0 ) ) ;
     public final void rule__AnnotationCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21727:1: ( ( ( rule__AnnotationCS__NameAlternatives_1_0 ) ) )
-            // InternalOCLstdlib.g:21728:1: ( ( rule__AnnotationCS__NameAlternatives_1_0 ) )
+            // InternalOCLstdlib.g:21731:1: ( ( ( rule__AnnotationCS__NameAlternatives_1_0 ) ) )
+            // InternalOCLstdlib.g:21732:1: ( ( rule__AnnotationCS__NameAlternatives_1_0 ) )
             {
-            // InternalOCLstdlib.g:21728:1: ( ( rule__AnnotationCS__NameAlternatives_1_0 ) )
-            // InternalOCLstdlib.g:21729:1: ( rule__AnnotationCS__NameAlternatives_1_0 )
+            // InternalOCLstdlib.g:21732:1: ( ( rule__AnnotationCS__NameAlternatives_1_0 ) )
+            // InternalOCLstdlib.g:21733:1: ( rule__AnnotationCS__NameAlternatives_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getNameAlternatives_1_0());
             }
-            // InternalOCLstdlib.g:21730:1: ( rule__AnnotationCS__NameAlternatives_1_0 )
-            // InternalOCLstdlib.g:21730:2: rule__AnnotationCS__NameAlternatives_1_0
+            // InternalOCLstdlib.g:21734:1: ( rule__AnnotationCS__NameAlternatives_1_0 )
+            // InternalOCLstdlib.g:21734:2: rule__AnnotationCS__NameAlternatives_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__AnnotationCS__NameAlternatives_1_0();
@@ -63018,17 +63018,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__OwnedDetailsAssignment_2_1"
-    // InternalOCLstdlib.g:21739:1: rule__AnnotationCS__OwnedDetailsAssignment_2_1 : ( ruleDetailCS ) ;
+    // InternalOCLstdlib.g:21743:1: rule__AnnotationCS__OwnedDetailsAssignment_2_1 : ( ruleDetailCS ) ;
     public final void rule__AnnotationCS__OwnedDetailsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21743:1: ( ( ruleDetailCS ) )
-            // InternalOCLstdlib.g:21744:1: ( ruleDetailCS )
+            // InternalOCLstdlib.g:21747:1: ( ( ruleDetailCS ) )
+            // InternalOCLstdlib.g:21748:1: ( ruleDetailCS )
             {
-            // InternalOCLstdlib.g:21744:1: ( ruleDetailCS )
-            // InternalOCLstdlib.g:21745:1: ruleDetailCS
+            // InternalOCLstdlib.g:21748:1: ( ruleDetailCS )
+            // InternalOCLstdlib.g:21749:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_0());
@@ -63063,17 +63063,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__OwnedDetailsAssignment_2_2_1"
-    // InternalOCLstdlib.g:21754:1: rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 : ( ruleDetailCS ) ;
+    // InternalOCLstdlib.g:21758:1: rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 : ( ruleDetailCS ) ;
     public final void rule__AnnotationCS__OwnedDetailsAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21758:1: ( ( ruleDetailCS ) )
-            // InternalOCLstdlib.g:21759:1: ( ruleDetailCS )
+            // InternalOCLstdlib.g:21762:1: ( ( ruleDetailCS ) )
+            // InternalOCLstdlib.g:21763:1: ( ruleDetailCS )
             {
-            // InternalOCLstdlib.g:21759:1: ( ruleDetailCS )
-            // InternalOCLstdlib.g:21760:1: ruleDetailCS
+            // InternalOCLstdlib.g:21763:1: ( ruleDetailCS )
+            // InternalOCLstdlib.g:21764:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_2_1_0());
@@ -63108,17 +63108,17 @@
 
 
     // $ANTLR start "rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1"
-    // InternalOCLstdlib.g:21769:1: rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLstdlib.g:21773:1: rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 : ( ruleAnnotationElementCS ) ;
     public final void rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21773:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLstdlib.g:21774:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:21777:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLstdlib.g:21778:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLstdlib.g:21774:1: ( ruleAnnotationElementCS )
-            // InternalOCLstdlib.g:21775:1: ruleAnnotationElementCS
+            // InternalOCLstdlib.g:21778:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:21779:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_0_1_0());
@@ -63153,23 +63153,23 @@
 
 
     // $ANTLR start "rule__LibClassCS__IsAbstractAssignment_0"
-    // InternalOCLstdlib.g:21784:1: rule__LibClassCS__IsAbstractAssignment_0 : ( ( 'abstract' ) ) ;
+    // InternalOCLstdlib.g:21788:1: rule__LibClassCS__IsAbstractAssignment_0 : ( ( 'abstract' ) ) ;
     public final void rule__LibClassCS__IsAbstractAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21788:1: ( ( ( 'abstract' ) ) )
-            // InternalOCLstdlib.g:21789:1: ( ( 'abstract' ) )
+            // InternalOCLstdlib.g:21792:1: ( ( ( 'abstract' ) ) )
+            // InternalOCLstdlib.g:21793:1: ( ( 'abstract' ) )
             {
-            // InternalOCLstdlib.g:21789:1: ( ( 'abstract' ) )
-            // InternalOCLstdlib.g:21790:1: ( 'abstract' )
+            // InternalOCLstdlib.g:21793:1: ( ( 'abstract' ) )
+            // InternalOCLstdlib.g:21794:1: ( 'abstract' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0());
             }
-            // InternalOCLstdlib.g:21791:1: ( 'abstract' )
-            // InternalOCLstdlib.g:21792:1: 'abstract'
+            // InternalOCLstdlib.g:21795:1: ( 'abstract' )
+            // InternalOCLstdlib.g:21796:1: 'abstract'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0());
@@ -63206,17 +63206,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__NameAssignment_2"
-    // InternalOCLstdlib.g:21807:1: rule__LibClassCS__NameAssignment_2 : ( ruleAnyName ) ;
+    // InternalOCLstdlib.g:21811:1: rule__LibClassCS__NameAssignment_2 : ( ruleAnyName ) ;
     public final void rule__LibClassCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21811:1: ( ( ruleAnyName ) )
-            // InternalOCLstdlib.g:21812:1: ( ruleAnyName )
+            // InternalOCLstdlib.g:21815:1: ( ( ruleAnyName ) )
+            // InternalOCLstdlib.g:21816:1: ( ruleAnyName )
             {
-            // InternalOCLstdlib.g:21812:1: ( ruleAnyName )
-            // InternalOCLstdlib.g:21813:1: ruleAnyName
+            // InternalOCLstdlib.g:21816:1: ( ruleAnyName )
+            // InternalOCLstdlib.g:21817:1: ruleAnyName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getNameAnyNameParserRuleCall_2_0());
@@ -63251,17 +63251,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__OwnedSignatureAssignment_3"
-    // InternalOCLstdlib.g:21822:1: rule__LibClassCS__OwnedSignatureAssignment_3 : ( ruleTemplateSignatureCS ) ;
+    // InternalOCLstdlib.g:21826:1: rule__LibClassCS__OwnedSignatureAssignment_3 : ( ruleTemplateSignatureCS ) ;
     public final void rule__LibClassCS__OwnedSignatureAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21826:1: ( ( ruleTemplateSignatureCS ) )
-            // InternalOCLstdlib.g:21827:1: ( ruleTemplateSignatureCS )
+            // InternalOCLstdlib.g:21830:1: ( ( ruleTemplateSignatureCS ) )
+            // InternalOCLstdlib.g:21831:1: ( ruleTemplateSignatureCS )
             {
-            // InternalOCLstdlib.g:21827:1: ( ruleTemplateSignatureCS )
-            // InternalOCLstdlib.g:21828:1: ruleTemplateSignatureCS
+            // InternalOCLstdlib.g:21831:1: ( ruleTemplateSignatureCS )
+            // InternalOCLstdlib.g:21832:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
@@ -63296,23 +63296,23 @@
 
 
     // $ANTLR start "rule__LibClassCS__MetaclassNameAssignment_4_1"
-    // InternalOCLstdlib.g:21837:1: rule__LibClassCS__MetaclassNameAssignment_4_1 : ( ( ruleAnyName ) ) ;
+    // InternalOCLstdlib.g:21841:1: rule__LibClassCS__MetaclassNameAssignment_4_1 : ( ( ruleAnyName ) ) ;
     public final void rule__LibClassCS__MetaclassNameAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21841:1: ( ( ( ruleAnyName ) ) )
-            // InternalOCLstdlib.g:21842:1: ( ( ruleAnyName ) )
+            // InternalOCLstdlib.g:21845:1: ( ( ( ruleAnyName ) ) )
+            // InternalOCLstdlib.g:21846:1: ( ( ruleAnyName ) )
             {
-            // InternalOCLstdlib.g:21842:1: ( ( ruleAnyName ) )
-            // InternalOCLstdlib.g:21843:1: ( ruleAnyName )
+            // InternalOCLstdlib.g:21846:1: ( ( ruleAnyName ) )
+            // InternalOCLstdlib.g:21847:1: ( ruleAnyName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSCrossReference_4_1_0());
             }
-            // InternalOCLstdlib.g:21844:1: ( ruleAnyName )
-            // InternalOCLstdlib.g:21845:1: ruleAnyName
+            // InternalOCLstdlib.g:21848:1: ( ruleAnyName )
+            // InternalOCLstdlib.g:21849:1: ruleAnyName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSAnyNameParserRuleCall_4_1_0_1());
@@ -63353,17 +63353,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__OwnedSuperTypesAssignment_5_1"
-    // InternalOCLstdlib.g:21856:1: rule__LibClassCS__OwnedSuperTypesAssignment_5_1 : ( ruleTypedRefCS ) ;
+    // InternalOCLstdlib.g:21860:1: rule__LibClassCS__OwnedSuperTypesAssignment_5_1 : ( ruleTypedRefCS ) ;
     public final void rule__LibClassCS__OwnedSuperTypesAssignment_5_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21860:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLstdlib.g:21861:1: ( ruleTypedRefCS )
+            // InternalOCLstdlib.g:21864:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLstdlib.g:21865:1: ( ruleTypedRefCS )
             {
-            // InternalOCLstdlib.g:21861:1: ( ruleTypedRefCS )
-            // InternalOCLstdlib.g:21862:1: ruleTypedRefCS
+            // InternalOCLstdlib.g:21865:1: ( ruleTypedRefCS )
+            // InternalOCLstdlib.g:21866:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_1_0());
@@ -63398,17 +63398,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1"
-    // InternalOCLstdlib.g:21871:1: rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 : ( ruleTypedRefCS ) ;
+    // InternalOCLstdlib.g:21875:1: rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21875:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLstdlib.g:21876:1: ( ruleTypedRefCS )
+            // InternalOCLstdlib.g:21879:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLstdlib.g:21880:1: ( ruleTypedRefCS )
             {
-            // InternalOCLstdlib.g:21876:1: ( ruleTypedRefCS )
-            // InternalOCLstdlib.g:21877:1: ruleTypedRefCS
+            // InternalOCLstdlib.g:21880:1: ( ruleTypedRefCS )
+            // InternalOCLstdlib.g:21881:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_2_1_0());
@@ -63443,17 +63443,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__OwnedOperationsAssignment_7_0"
-    // InternalOCLstdlib.g:21886:1: rule__LibClassCS__OwnedOperationsAssignment_7_0 : ( ruleOperationCS ) ;
+    // InternalOCLstdlib.g:21890:1: rule__LibClassCS__OwnedOperationsAssignment_7_0 : ( ruleOperationCS ) ;
     public final void rule__LibClassCS__OwnedOperationsAssignment_7_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21890:1: ( ( ruleOperationCS ) )
-            // InternalOCLstdlib.g:21891:1: ( ruleOperationCS )
+            // InternalOCLstdlib.g:21894:1: ( ( ruleOperationCS ) )
+            // InternalOCLstdlib.g:21895:1: ( ruleOperationCS )
             {
-            // InternalOCLstdlib.g:21891:1: ( ruleOperationCS )
-            // InternalOCLstdlib.g:21892:1: ruleOperationCS
+            // InternalOCLstdlib.g:21895:1: ( ruleOperationCS )
+            // InternalOCLstdlib.g:21896:1: ruleOperationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_0());
@@ -63488,17 +63488,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__OwnedPropertiesAssignment_7_1"
-    // InternalOCLstdlib.g:21901:1: rule__LibClassCS__OwnedPropertiesAssignment_7_1 : ( ruleLibPropertyCS ) ;
+    // InternalOCLstdlib.g:21905:1: rule__LibClassCS__OwnedPropertiesAssignment_7_1 : ( ruleLibPropertyCS ) ;
     public final void rule__LibClassCS__OwnedPropertiesAssignment_7_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21905:1: ( ( ruleLibPropertyCS ) )
-            // InternalOCLstdlib.g:21906:1: ( ruleLibPropertyCS )
+            // InternalOCLstdlib.g:21909:1: ( ( ruleLibPropertyCS ) )
+            // InternalOCLstdlib.g:21910:1: ( ruleLibPropertyCS )
             {
-            // InternalOCLstdlib.g:21906:1: ( ruleLibPropertyCS )
-            // InternalOCLstdlib.g:21907:1: ruleLibPropertyCS
+            // InternalOCLstdlib.g:21910:1: ( ruleLibPropertyCS )
+            // InternalOCLstdlib.g:21911:1: ruleLibPropertyCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getOwnedPropertiesLibPropertyCSParserRuleCall_7_1_0());
@@ -63533,17 +63533,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__OwnedConstraintsAssignment_7_2"
-    // InternalOCLstdlib.g:21916:1: rule__LibClassCS__OwnedConstraintsAssignment_7_2 : ( ruleInvCS ) ;
+    // InternalOCLstdlib.g:21920:1: rule__LibClassCS__OwnedConstraintsAssignment_7_2 : ( ruleInvCS ) ;
     public final void rule__LibClassCS__OwnedConstraintsAssignment_7_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21920:1: ( ( ruleInvCS ) )
-            // InternalOCLstdlib.g:21921:1: ( ruleInvCS )
+            // InternalOCLstdlib.g:21924:1: ( ( ruleInvCS ) )
+            // InternalOCLstdlib.g:21925:1: ( ruleInvCS )
             {
-            // InternalOCLstdlib.g:21921:1: ( ruleInvCS )
-            // InternalOCLstdlib.g:21922:1: ruleInvCS
+            // InternalOCLstdlib.g:21925:1: ( ruleInvCS )
+            // InternalOCLstdlib.g:21926:1: ruleInvCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getOwnedConstraintsInvCSParserRuleCall_7_2_0());
@@ -63578,17 +63578,17 @@
 
 
     // $ANTLR start "rule__LibClassCS__OwnedAnnotationsAssignment_7_3"
-    // InternalOCLstdlib.g:21931:1: rule__LibClassCS__OwnedAnnotationsAssignment_7_3 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLstdlib.g:21935:1: rule__LibClassCS__OwnedAnnotationsAssignment_7_3 : ( ruleAnnotationElementCS ) ;
     public final void rule__LibClassCS__OwnedAnnotationsAssignment_7_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21935:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLstdlib.g:21936:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:21939:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLstdlib.g:21940:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLstdlib.g:21936:1: ( ruleAnnotationElementCS )
-            // InternalOCLstdlib.g:21937:1: ruleAnnotationElementCS
+            // InternalOCLstdlib.g:21940:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:21941:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_3_0());
@@ -63623,23 +63623,23 @@
 
 
     // $ANTLR start "rule__DetailCS__NameAssignment_0"
-    // InternalOCLstdlib.g:21946:1: rule__DetailCS__NameAssignment_0 : ( ( rule__DetailCS__NameAlternatives_0_0 ) ) ;
+    // InternalOCLstdlib.g:21950:1: rule__DetailCS__NameAssignment_0 : ( ( rule__DetailCS__NameAlternatives_0_0 ) ) ;
     public final void rule__DetailCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21950:1: ( ( ( rule__DetailCS__NameAlternatives_0_0 ) ) )
-            // InternalOCLstdlib.g:21951:1: ( ( rule__DetailCS__NameAlternatives_0_0 ) )
+            // InternalOCLstdlib.g:21954:1: ( ( ( rule__DetailCS__NameAlternatives_0_0 ) ) )
+            // InternalOCLstdlib.g:21955:1: ( ( rule__DetailCS__NameAlternatives_0_0 ) )
             {
-            // InternalOCLstdlib.g:21951:1: ( ( rule__DetailCS__NameAlternatives_0_0 ) )
-            // InternalOCLstdlib.g:21952:1: ( rule__DetailCS__NameAlternatives_0_0 )
+            // InternalOCLstdlib.g:21955:1: ( ( rule__DetailCS__NameAlternatives_0_0 ) )
+            // InternalOCLstdlib.g:21956:1: ( rule__DetailCS__NameAlternatives_0_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDetailCSAccess().getNameAlternatives_0_0());
             }
-            // InternalOCLstdlib.g:21953:1: ( rule__DetailCS__NameAlternatives_0_0 )
-            // InternalOCLstdlib.g:21953:2: rule__DetailCS__NameAlternatives_0_0
+            // InternalOCLstdlib.g:21957:1: ( rule__DetailCS__NameAlternatives_0_0 )
+            // InternalOCLstdlib.g:21957:2: rule__DetailCS__NameAlternatives_0_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DetailCS__NameAlternatives_0_0();
@@ -63674,23 +63674,23 @@
 
 
     // $ANTLR start "rule__DetailCS__ValuesAssignment_2"
-    // InternalOCLstdlib.g:21962:1: rule__DetailCS__ValuesAssignment_2 : ( ( rule__DetailCS__ValuesAlternatives_2_0 ) ) ;
+    // InternalOCLstdlib.g:21966:1: rule__DetailCS__ValuesAssignment_2 : ( ( rule__DetailCS__ValuesAlternatives_2_0 ) ) ;
     public final void rule__DetailCS__ValuesAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21966:1: ( ( ( rule__DetailCS__ValuesAlternatives_2_0 ) ) )
-            // InternalOCLstdlib.g:21967:1: ( ( rule__DetailCS__ValuesAlternatives_2_0 ) )
+            // InternalOCLstdlib.g:21970:1: ( ( ( rule__DetailCS__ValuesAlternatives_2_0 ) ) )
+            // InternalOCLstdlib.g:21971:1: ( ( rule__DetailCS__ValuesAlternatives_2_0 ) )
             {
-            // InternalOCLstdlib.g:21967:1: ( ( rule__DetailCS__ValuesAlternatives_2_0 ) )
-            // InternalOCLstdlib.g:21968:1: ( rule__DetailCS__ValuesAlternatives_2_0 )
+            // InternalOCLstdlib.g:21971:1: ( ( rule__DetailCS__ValuesAlternatives_2_0 ) )
+            // InternalOCLstdlib.g:21972:1: ( rule__DetailCS__ValuesAlternatives_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDetailCSAccess().getValuesAlternatives_2_0());
             }
-            // InternalOCLstdlib.g:21969:1: ( rule__DetailCS__ValuesAlternatives_2_0 )
-            // InternalOCLstdlib.g:21969:2: rule__DetailCS__ValuesAlternatives_2_0
+            // InternalOCLstdlib.g:21973:1: ( rule__DetailCS__ValuesAlternatives_2_0 )
+            // InternalOCLstdlib.g:21973:2: rule__DetailCS__ValuesAlternatives_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__DetailCS__ValuesAlternatives_2_0();
@@ -63725,17 +63725,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__ValueAssignment_2"
-    // InternalOCLstdlib.g:21978:1: rule__DocumentationCS__ValueAssignment_2 : ( RULE_SINGLE_QUOTED_STRING ) ;
+    // InternalOCLstdlib.g:21982:1: rule__DocumentationCS__ValueAssignment_2 : ( RULE_SINGLE_QUOTED_STRING ) ;
     public final void rule__DocumentationCS__ValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21982:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLstdlib.g:21983:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:21986:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:21987:1: ( RULE_SINGLE_QUOTED_STRING )
             {
-            // InternalOCLstdlib.g:21983:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLstdlib.g:21984:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLstdlib.g:21987:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:21988:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0());
@@ -63766,17 +63766,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__OwnedDetailsAssignment_3_1"
-    // InternalOCLstdlib.g:21993:1: rule__DocumentationCS__OwnedDetailsAssignment_3_1 : ( ruleDetailCS ) ;
+    // InternalOCLstdlib.g:21997:1: rule__DocumentationCS__OwnedDetailsAssignment_3_1 : ( ruleDetailCS ) ;
     public final void rule__DocumentationCS__OwnedDetailsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:21997:1: ( ( ruleDetailCS ) )
-            // InternalOCLstdlib.g:21998:1: ( ruleDetailCS )
+            // InternalOCLstdlib.g:22001:1: ( ( ruleDetailCS ) )
+            // InternalOCLstdlib.g:22002:1: ( ruleDetailCS )
             {
-            // InternalOCLstdlib.g:21998:1: ( ruleDetailCS )
-            // InternalOCLstdlib.g:21999:1: ruleDetailCS
+            // InternalOCLstdlib.g:22002:1: ( ruleDetailCS )
+            // InternalOCLstdlib.g:22003:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
@@ -63811,17 +63811,17 @@
 
 
     // $ANTLR start "rule__DocumentationCS__OwnedDetailsAssignment_3_2_1"
-    // InternalOCLstdlib.g:22008:1: rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 : ( ruleDetailCS ) ;
+    // InternalOCLstdlib.g:22012:1: rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 : ( ruleDetailCS ) ;
     public final void rule__DocumentationCS__OwnedDetailsAssignment_3_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22012:1: ( ( ruleDetailCS ) )
-            // InternalOCLstdlib.g:22013:1: ( ruleDetailCS )
+            // InternalOCLstdlib.g:22016:1: ( ( ruleDetailCS ) )
+            // InternalOCLstdlib.g:22017:1: ( ruleDetailCS )
             {
-            // InternalOCLstdlib.g:22013:1: ( ruleDetailCS )
-            // InternalOCLstdlib.g:22014:1: ruleDetailCS
+            // InternalOCLstdlib.g:22017:1: ( ruleDetailCS )
+            // InternalOCLstdlib.g:22018:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
@@ -63856,17 +63856,17 @@
 
 
     // $ANTLR start "rule__ImportCS__NameAssignment_1_0"
-    // InternalOCLstdlib.g:22023:1: rule__ImportCS__NameAssignment_1_0 : ( ruleIdentifier ) ;
+    // InternalOCLstdlib.g:22027:1: rule__ImportCS__NameAssignment_1_0 : ( ruleIdentifier ) ;
     public final void rule__ImportCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22027:1: ( ( ruleIdentifier ) )
-            // InternalOCLstdlib.g:22028:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:22031:1: ( ( ruleIdentifier ) )
+            // InternalOCLstdlib.g:22032:1: ( ruleIdentifier )
             {
-            // InternalOCLstdlib.g:22028:1: ( ruleIdentifier )
-            // InternalOCLstdlib.g:22029:1: ruleIdentifier
+            // InternalOCLstdlib.g:22032:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:22033:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0());
@@ -63901,17 +63901,17 @@
 
 
     // $ANTLR start "rule__ImportCS__OwnedPathNameAssignment_2"
-    // InternalOCLstdlib.g:22038:1: rule__ImportCS__OwnedPathNameAssignment_2 : ( ruleURIPathNameCS ) ;
+    // InternalOCLstdlib.g:22042:1: rule__ImportCS__OwnedPathNameAssignment_2 : ( ruleURIPathNameCS ) ;
     public final void rule__ImportCS__OwnedPathNameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22042:1: ( ( ruleURIPathNameCS ) )
-            // InternalOCLstdlib.g:22043:1: ( ruleURIPathNameCS )
+            // InternalOCLstdlib.g:22046:1: ( ( ruleURIPathNameCS ) )
+            // InternalOCLstdlib.g:22047:1: ( ruleURIPathNameCS )
             {
-            // InternalOCLstdlib.g:22043:1: ( ruleURIPathNameCS )
-            // InternalOCLstdlib.g:22044:1: ruleURIPathNameCS
+            // InternalOCLstdlib.g:22047:1: ( ruleURIPathNameCS )
+            // InternalOCLstdlib.g:22048:1: ruleURIPathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
@@ -63946,23 +63946,23 @@
 
 
     // $ANTLR start "rule__ImportCS__IsAllAssignment_3"
-    // InternalOCLstdlib.g:22053:1: rule__ImportCS__IsAllAssignment_3 : ( ( '::*' ) ) ;
+    // InternalOCLstdlib.g:22057:1: rule__ImportCS__IsAllAssignment_3 : ( ( '::*' ) ) ;
     public final void rule__ImportCS__IsAllAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22057:1: ( ( ( '::*' ) ) )
-            // InternalOCLstdlib.g:22058:1: ( ( '::*' ) )
+            // InternalOCLstdlib.g:22061:1: ( ( ( '::*' ) ) )
+            // InternalOCLstdlib.g:22062:1: ( ( '::*' ) )
             {
-            // InternalOCLstdlib.g:22058:1: ( ( '::*' ) )
-            // InternalOCLstdlib.g:22059:1: ( '::*' )
+            // InternalOCLstdlib.g:22062:1: ( ( '::*' ) )
+            // InternalOCLstdlib.g:22063:1: ( '::*' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
-            // InternalOCLstdlib.g:22060:1: ( '::*' )
-            // InternalOCLstdlib.g:22061:1: '::*'
+            // InternalOCLstdlib.g:22064:1: ( '::*' )
+            // InternalOCLstdlib.g:22065:1: '::*'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
@@ -63999,23 +63999,23 @@
 
 
     // $ANTLR start "rule__InvCS__StereotypeAssignment_0"
-    // InternalOCLstdlib.g:22076:1: rule__InvCS__StereotypeAssignment_0 : ( ( 'inv' ) ) ;
+    // InternalOCLstdlib.g:22080:1: rule__InvCS__StereotypeAssignment_0 : ( ( 'inv' ) ) ;
     public final void rule__InvCS__StereotypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22080:1: ( ( ( 'inv' ) ) )
-            // InternalOCLstdlib.g:22081:1: ( ( 'inv' ) )
+            // InternalOCLstdlib.g:22084:1: ( ( ( 'inv' ) ) )
+            // InternalOCLstdlib.g:22085:1: ( ( 'inv' ) )
             {
-            // InternalOCLstdlib.g:22081:1: ( ( 'inv' ) )
-            // InternalOCLstdlib.g:22082:1: ( 'inv' )
+            // InternalOCLstdlib.g:22085:1: ( ( 'inv' ) )
+            // InternalOCLstdlib.g:22086:1: ( 'inv' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0());
             }
-            // InternalOCLstdlib.g:22083:1: ( 'inv' )
-            // InternalOCLstdlib.g:22084:1: 'inv'
+            // InternalOCLstdlib.g:22087:1: ( 'inv' )
+            // InternalOCLstdlib.g:22088:1: 'inv'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0());
@@ -64052,17 +64052,17 @@
 
 
     // $ANTLR start "rule__InvCS__NameAssignment_1_0"
-    // InternalOCLstdlib.g:22099:1: rule__InvCS__NameAssignment_1_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLstdlib.g:22103:1: rule__InvCS__NameAssignment_1_0 : ( ruleUnrestrictedName ) ;
     public final void rule__InvCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22103:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:22104:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:22107:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:22108:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLstdlib.g:22104:1: ( ruleUnrestrictedName )
-            // InternalOCLstdlib.g:22105:1: ruleUnrestrictedName
+            // InternalOCLstdlib.g:22108:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:22109:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
@@ -64097,17 +64097,17 @@
 
 
     // $ANTLR start "rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1"
-    // InternalOCLstdlib.g:22114:1: rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 : ( ruleSpecificationCS ) ;
+    // InternalOCLstdlib.g:22118:1: rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 : ( ruleSpecificationCS ) ;
     public final void rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22118:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLstdlib.g:22119:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:22122:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLstdlib.g:22123:1: ( ruleSpecificationCS )
             {
-            // InternalOCLstdlib.g:22119:1: ( ruleSpecificationCS )
-            // InternalOCLstdlib.g:22120:1: ruleSpecificationCS
+            // InternalOCLstdlib.g:22123:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:22124:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
@@ -64142,17 +64142,17 @@
 
 
     // $ANTLR start "rule__InvCS__OwnedSpecificationAssignment_3"
-    // InternalOCLstdlib.g:22129:1: rule__InvCS__OwnedSpecificationAssignment_3 : ( ruleSpecificationCS ) ;
+    // InternalOCLstdlib.g:22133:1: rule__InvCS__OwnedSpecificationAssignment_3 : ( ruleSpecificationCS ) ;
     public final void rule__InvCS__OwnedSpecificationAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22133:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLstdlib.g:22134:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:22137:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLstdlib.g:22138:1: ( ruleSpecificationCS )
             {
-            // InternalOCLstdlib.g:22134:1: ( ruleSpecificationCS )
-            // InternalOCLstdlib.g:22135:1: ruleSpecificationCS
+            // InternalOCLstdlib.g:22138:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:22139:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getInvCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
@@ -64187,17 +64187,17 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__NameAssignment_1"
-    // InternalOCLstdlib.g:22144:1: rule__LibCoercionCS__NameAssignment_1 : ( ruleName ) ;
+    // InternalOCLstdlib.g:22148:1: rule__LibCoercionCS__NameAssignment_1 : ( ruleName ) ;
     public final void rule__LibCoercionCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22148:1: ( ( ruleName ) )
-            // InternalOCLstdlib.g:22149:1: ( ruleName )
+            // InternalOCLstdlib.g:22152:1: ( ( ruleName ) )
+            // InternalOCLstdlib.g:22153:1: ( ruleName )
             {
-            // InternalOCLstdlib.g:22149:1: ( ruleName )
-            // InternalOCLstdlib.g:22150:1: ruleName
+            // InternalOCLstdlib.g:22153:1: ( ruleName )
+            // InternalOCLstdlib.g:22154:1: ruleName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getNameNameParserRuleCall_1_0());
@@ -64232,17 +64232,17 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__OwnedTypeAssignment_5"
-    // InternalOCLstdlib.g:22159:1: rule__LibCoercionCS__OwnedTypeAssignment_5 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLstdlib.g:22163:1: rule__LibCoercionCS__OwnedTypeAssignment_5 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__LibCoercionCS__OwnedTypeAssignment_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22163:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLstdlib.g:22164:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22167:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLstdlib.g:22168:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLstdlib.g:22164:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLstdlib.g:22165:1: ruleTypedMultiplicityRefCS
+            // InternalOCLstdlib.g:22168:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22169:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_5_0());
@@ -64277,23 +64277,23 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__ImplementationAssignment_6_1"
-    // InternalOCLstdlib.g:22174:1: rule__LibCoercionCS__ImplementationAssignment_6_1 : ( ( RULE_SINGLE_QUOTED_STRING ) ) ;
+    // InternalOCLstdlib.g:22178:1: rule__LibCoercionCS__ImplementationAssignment_6_1 : ( ( RULE_SINGLE_QUOTED_STRING ) ) ;
     public final void rule__LibCoercionCS__ImplementationAssignment_6_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22178:1: ( ( ( RULE_SINGLE_QUOTED_STRING ) ) )
-            // InternalOCLstdlib.g:22179:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:22182:1: ( ( ( RULE_SINGLE_QUOTED_STRING ) ) )
+            // InternalOCLstdlib.g:22183:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
             {
-            // InternalOCLstdlib.g:22179:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLstdlib.g:22180:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:22183:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:22184:1: ( RULE_SINGLE_QUOTED_STRING )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSCrossReference_6_1_0());
             }
-            // InternalOCLstdlib.g:22181:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLstdlib.g:22182:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLstdlib.g:22185:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:22186:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_6_1_0_1());
@@ -64330,17 +64330,17 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0"
-    // InternalOCLstdlib.g:22193:1: rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLstdlib.g:22197:1: rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 : ( ruleAnnotationElementCS ) ;
     public final void rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22197:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLstdlib.g:22198:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:22201:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLstdlib.g:22202:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLstdlib.g:22198:1: ( ruleAnnotationElementCS )
-            // InternalOCLstdlib.g:22199:1: ruleAnnotationElementCS
+            // InternalOCLstdlib.g:22202:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:22203:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
@@ -64375,17 +64375,17 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1"
-    // InternalOCLstdlib.g:22208:1: rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 : ( rulePostCS ) ;
+    // InternalOCLstdlib.g:22212:1: rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 : ( rulePostCS ) ;
     public final void rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22212:1: ( ( rulePostCS ) )
-            // InternalOCLstdlib.g:22213:1: ( rulePostCS )
+            // InternalOCLstdlib.g:22216:1: ( ( rulePostCS ) )
+            // InternalOCLstdlib.g:22217:1: ( rulePostCS )
             {
-            // InternalOCLstdlib.g:22213:1: ( rulePostCS )
-            // InternalOCLstdlib.g:22214:1: rulePostCS
+            // InternalOCLstdlib.g:22217:1: ( rulePostCS )
+            // InternalOCLstdlib.g:22218:1: rulePostCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsPostCSParserRuleCall_7_0_1_1_0());
@@ -64420,17 +64420,17 @@
 
 
     // $ANTLR start "rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2"
-    // InternalOCLstdlib.g:22223:1: rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 : ( rulePreCS ) ;
+    // InternalOCLstdlib.g:22227:1: rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 : ( rulePreCS ) ;
     public final void rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22227:1: ( ( rulePreCS ) )
-            // InternalOCLstdlib.g:22228:1: ( rulePreCS )
+            // InternalOCLstdlib.g:22231:1: ( ( rulePreCS ) )
+            // InternalOCLstdlib.g:22232:1: ( rulePreCS )
             {
-            // InternalOCLstdlib.g:22228:1: ( rulePreCS )
-            // InternalOCLstdlib.g:22229:1: rulePreCS
+            // InternalOCLstdlib.g:22232:1: ( rulePreCS )
+            // InternalOCLstdlib.g:22233:1: rulePreCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsPreCSParserRuleCall_7_0_1_2_0());
@@ -64465,17 +64465,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__NameAssignment_1"
-    // InternalOCLstdlib.g:22238:1: rule__LibIterationCS__NameAssignment_1 : ( ruleName ) ;
+    // InternalOCLstdlib.g:22242:1: rule__LibIterationCS__NameAssignment_1 : ( ruleName ) ;
     public final void rule__LibIterationCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22242:1: ( ( ruleName ) )
-            // InternalOCLstdlib.g:22243:1: ( ruleName )
+            // InternalOCLstdlib.g:22246:1: ( ( ruleName ) )
+            // InternalOCLstdlib.g:22247:1: ( ruleName )
             {
-            // InternalOCLstdlib.g:22243:1: ( ruleName )
-            // InternalOCLstdlib.g:22244:1: ruleName
+            // InternalOCLstdlib.g:22247:1: ( ruleName )
+            // InternalOCLstdlib.g:22248:1: ruleName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getNameNameParserRuleCall_1_0());
@@ -64510,17 +64510,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__OwnedSignatureAssignment_2"
-    // InternalOCLstdlib.g:22253:1: rule__LibIterationCS__OwnedSignatureAssignment_2 : ( ruleTemplateSignatureCS ) ;
+    // InternalOCLstdlib.g:22257:1: rule__LibIterationCS__OwnedSignatureAssignment_2 : ( ruleTemplateSignatureCS ) ;
     public final void rule__LibIterationCS__OwnedSignatureAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22257:1: ( ( ruleTemplateSignatureCS ) )
-            // InternalOCLstdlib.g:22258:1: ( ruleTemplateSignatureCS )
+            // InternalOCLstdlib.g:22261:1: ( ( ruleTemplateSignatureCS ) )
+            // InternalOCLstdlib.g:22262:1: ( ruleTemplateSignatureCS )
             {
-            // InternalOCLstdlib.g:22258:1: ( ruleTemplateSignatureCS )
-            // InternalOCLstdlib.g:22259:1: ruleTemplateSignatureCS
+            // InternalOCLstdlib.g:22262:1: ( ruleTemplateSignatureCS )
+            // InternalOCLstdlib.g:22263:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
@@ -64555,17 +64555,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__OwnedIteratorsAssignment_4"
-    // InternalOCLstdlib.g:22268:1: rule__LibIterationCS__OwnedIteratorsAssignment_4 : ( ruleIteratorCS ) ;
+    // InternalOCLstdlib.g:22272:1: rule__LibIterationCS__OwnedIteratorsAssignment_4 : ( ruleIteratorCS ) ;
     public final void rule__LibIterationCS__OwnedIteratorsAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22272:1: ( ( ruleIteratorCS ) )
-            // InternalOCLstdlib.g:22273:1: ( ruleIteratorCS )
+            // InternalOCLstdlib.g:22276:1: ( ( ruleIteratorCS ) )
+            // InternalOCLstdlib.g:22277:1: ( ruleIteratorCS )
             {
-            // InternalOCLstdlib.g:22273:1: ( ruleIteratorCS )
-            // InternalOCLstdlib.g:22274:1: ruleIteratorCS
+            // InternalOCLstdlib.g:22277:1: ( ruleIteratorCS )
+            // InternalOCLstdlib.g:22278:1: ruleIteratorCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_4_0());
@@ -64600,17 +64600,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__OwnedIteratorsAssignment_5_1"
-    // InternalOCLstdlib.g:22283:1: rule__LibIterationCS__OwnedIteratorsAssignment_5_1 : ( ruleIteratorCS ) ;
+    // InternalOCLstdlib.g:22287:1: rule__LibIterationCS__OwnedIteratorsAssignment_5_1 : ( ruleIteratorCS ) ;
     public final void rule__LibIterationCS__OwnedIteratorsAssignment_5_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22287:1: ( ( ruleIteratorCS ) )
-            // InternalOCLstdlib.g:22288:1: ( ruleIteratorCS )
+            // InternalOCLstdlib.g:22291:1: ( ( ruleIteratorCS ) )
+            // InternalOCLstdlib.g:22292:1: ( ruleIteratorCS )
             {
-            // InternalOCLstdlib.g:22288:1: ( ruleIteratorCS )
-            // InternalOCLstdlib.g:22289:1: ruleIteratorCS
+            // InternalOCLstdlib.g:22292:1: ( ruleIteratorCS )
+            // InternalOCLstdlib.g:22293:1: ruleIteratorCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_5_1_0());
@@ -64645,17 +64645,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1"
-    // InternalOCLstdlib.g:22298:1: rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 : ( ruleAccumulatorCS ) ;
+    // InternalOCLstdlib.g:22302:1: rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 : ( ruleAccumulatorCS ) ;
     public final void rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22302:1: ( ( ruleAccumulatorCS ) )
-            // InternalOCLstdlib.g:22303:1: ( ruleAccumulatorCS )
+            // InternalOCLstdlib.g:22306:1: ( ( ruleAccumulatorCS ) )
+            // InternalOCLstdlib.g:22307:1: ( ruleAccumulatorCS )
             {
-            // InternalOCLstdlib.g:22303:1: ( ruleAccumulatorCS )
-            // InternalOCLstdlib.g:22304:1: ruleAccumulatorCS
+            // InternalOCLstdlib.g:22307:1: ( ruleAccumulatorCS )
+            // InternalOCLstdlib.g:22308:1: ruleAccumulatorCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_1_0());
@@ -64690,17 +64690,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1"
-    // InternalOCLstdlib.g:22313:1: rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 : ( ruleAccumulatorCS ) ;
+    // InternalOCLstdlib.g:22317:1: rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 : ( ruleAccumulatorCS ) ;
     public final void rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22317:1: ( ( ruleAccumulatorCS ) )
-            // InternalOCLstdlib.g:22318:1: ( ruleAccumulatorCS )
+            // InternalOCLstdlib.g:22321:1: ( ( ruleAccumulatorCS ) )
+            // InternalOCLstdlib.g:22322:1: ( ruleAccumulatorCS )
             {
-            // InternalOCLstdlib.g:22318:1: ( ruleAccumulatorCS )
-            // InternalOCLstdlib.g:22319:1: ruleAccumulatorCS
+            // InternalOCLstdlib.g:22322:1: ( ruleAccumulatorCS )
+            // InternalOCLstdlib.g:22323:1: ruleAccumulatorCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_2_1_0());
@@ -64735,17 +64735,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__OwnedParametersAssignment_7_1"
-    // InternalOCLstdlib.g:22328:1: rule__LibIterationCS__OwnedParametersAssignment_7_1 : ( ruleParameterCS ) ;
+    // InternalOCLstdlib.g:22332:1: rule__LibIterationCS__OwnedParametersAssignment_7_1 : ( ruleParameterCS ) ;
     public final void rule__LibIterationCS__OwnedParametersAssignment_7_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22332:1: ( ( ruleParameterCS ) )
-            // InternalOCLstdlib.g:22333:1: ( ruleParameterCS )
+            // InternalOCLstdlib.g:22336:1: ( ( ruleParameterCS ) )
+            // InternalOCLstdlib.g:22337:1: ( ruleParameterCS )
             {
-            // InternalOCLstdlib.g:22333:1: ( ruleParameterCS )
-            // InternalOCLstdlib.g:22334:1: ruleParameterCS
+            // InternalOCLstdlib.g:22337:1: ( ruleParameterCS )
+            // InternalOCLstdlib.g:22338:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_1_0());
@@ -64780,17 +64780,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__OwnedParametersAssignment_7_2_1"
-    // InternalOCLstdlib.g:22343:1: rule__LibIterationCS__OwnedParametersAssignment_7_2_1 : ( ruleParameterCS ) ;
+    // InternalOCLstdlib.g:22347:1: rule__LibIterationCS__OwnedParametersAssignment_7_2_1 : ( ruleParameterCS ) ;
     public final void rule__LibIterationCS__OwnedParametersAssignment_7_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22347:1: ( ( ruleParameterCS ) )
-            // InternalOCLstdlib.g:22348:1: ( ruleParameterCS )
+            // InternalOCLstdlib.g:22351:1: ( ( ruleParameterCS ) )
+            // InternalOCLstdlib.g:22352:1: ( ruleParameterCS )
             {
-            // InternalOCLstdlib.g:22348:1: ( ruleParameterCS )
-            // InternalOCLstdlib.g:22349:1: ruleParameterCS
+            // InternalOCLstdlib.g:22352:1: ( ruleParameterCS )
+            // InternalOCLstdlib.g:22353:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_2_1_0());
@@ -64825,17 +64825,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__OwnedTypeAssignment_10"
-    // InternalOCLstdlib.g:22358:1: rule__LibIterationCS__OwnedTypeAssignment_10 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLstdlib.g:22362:1: rule__LibIterationCS__OwnedTypeAssignment_10 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__LibIterationCS__OwnedTypeAssignment_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22362:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLstdlib.g:22363:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22366:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLstdlib.g:22367:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLstdlib.g:22363:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLstdlib.g:22364:1: ruleTypedMultiplicityRefCS
+            // InternalOCLstdlib.g:22367:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22368:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_10_0());
@@ -64870,23 +64870,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__IsInvalidatingAssignment_11"
-    // InternalOCLstdlib.g:22373:1: rule__LibIterationCS__IsInvalidatingAssignment_11 : ( ( 'invalidating' ) ) ;
+    // InternalOCLstdlib.g:22377:1: rule__LibIterationCS__IsInvalidatingAssignment_11 : ( ( 'invalidating' ) ) ;
     public final void rule__LibIterationCS__IsInvalidatingAssignment_11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22377:1: ( ( ( 'invalidating' ) ) )
-            // InternalOCLstdlib.g:22378:1: ( ( 'invalidating' ) )
+            // InternalOCLstdlib.g:22381:1: ( ( ( 'invalidating' ) ) )
+            // InternalOCLstdlib.g:22382:1: ( ( 'invalidating' ) )
             {
-            // InternalOCLstdlib.g:22378:1: ( ( 'invalidating' ) )
-            // InternalOCLstdlib.g:22379:1: ( 'invalidating' )
+            // InternalOCLstdlib.g:22382:1: ( ( 'invalidating' ) )
+            // InternalOCLstdlib.g:22383:1: ( 'invalidating' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0());
             }
-            // InternalOCLstdlib.g:22380:1: ( 'invalidating' )
-            // InternalOCLstdlib.g:22381:1: 'invalidating'
+            // InternalOCLstdlib.g:22384:1: ( 'invalidating' )
+            // InternalOCLstdlib.g:22385:1: 'invalidating'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0());
@@ -64923,23 +64923,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__IsValidatingAssignment_12"
-    // InternalOCLstdlib.g:22396:1: rule__LibIterationCS__IsValidatingAssignment_12 : ( ( 'validating' ) ) ;
+    // InternalOCLstdlib.g:22400:1: rule__LibIterationCS__IsValidatingAssignment_12 : ( ( 'validating' ) ) ;
     public final void rule__LibIterationCS__IsValidatingAssignment_12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22400:1: ( ( ( 'validating' ) ) )
-            // InternalOCLstdlib.g:22401:1: ( ( 'validating' ) )
+            // InternalOCLstdlib.g:22404:1: ( ( ( 'validating' ) ) )
+            // InternalOCLstdlib.g:22405:1: ( ( 'validating' ) )
             {
-            // InternalOCLstdlib.g:22401:1: ( ( 'validating' ) )
-            // InternalOCLstdlib.g:22402:1: ( 'validating' )
+            // InternalOCLstdlib.g:22405:1: ( ( 'validating' ) )
+            // InternalOCLstdlib.g:22406:1: ( 'validating' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0());
             }
-            // InternalOCLstdlib.g:22403:1: ( 'validating' )
-            // InternalOCLstdlib.g:22404:1: 'validating'
+            // InternalOCLstdlib.g:22407:1: ( 'validating' )
+            // InternalOCLstdlib.g:22408:1: 'validating'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0());
@@ -64976,23 +64976,23 @@
 
 
     // $ANTLR start "rule__LibIterationCS__ImplementationAssignment_13_1"
-    // InternalOCLstdlib.g:22419:1: rule__LibIterationCS__ImplementationAssignment_13_1 : ( ( RULE_SINGLE_QUOTED_STRING ) ) ;
+    // InternalOCLstdlib.g:22423:1: rule__LibIterationCS__ImplementationAssignment_13_1 : ( ( RULE_SINGLE_QUOTED_STRING ) ) ;
     public final void rule__LibIterationCS__ImplementationAssignment_13_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22423:1: ( ( ( RULE_SINGLE_QUOTED_STRING ) ) )
-            // InternalOCLstdlib.g:22424:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:22427:1: ( ( ( RULE_SINGLE_QUOTED_STRING ) ) )
+            // InternalOCLstdlib.g:22428:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
             {
-            // InternalOCLstdlib.g:22424:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLstdlib.g:22425:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:22428:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:22429:1: ( RULE_SINGLE_QUOTED_STRING )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSCrossReference_13_1_0());
             }
-            // InternalOCLstdlib.g:22426:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLstdlib.g:22427:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLstdlib.g:22430:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:22431:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_13_1_0_1());
@@ -65029,17 +65029,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0"
-    // InternalOCLstdlib.g:22438:1: rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLstdlib.g:22442:1: rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 : ( ruleAnnotationElementCS ) ;
     public final void rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22442:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLstdlib.g:22443:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:22446:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLstdlib.g:22447:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLstdlib.g:22443:1: ( ruleAnnotationElementCS )
-            // InternalOCLstdlib.g:22444:1: ruleAnnotationElementCS
+            // InternalOCLstdlib.g:22447:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:22448:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_14_0_1_0_0());
@@ -65074,17 +65074,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1"
-    // InternalOCLstdlib.g:22453:1: rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 : ( rulePostCS ) ;
+    // InternalOCLstdlib.g:22457:1: rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 : ( rulePostCS ) ;
     public final void rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22457:1: ( ( rulePostCS ) )
-            // InternalOCLstdlib.g:22458:1: ( rulePostCS )
+            // InternalOCLstdlib.g:22461:1: ( ( rulePostCS ) )
+            // InternalOCLstdlib.g:22462:1: ( rulePostCS )
             {
-            // InternalOCLstdlib.g:22458:1: ( rulePostCS )
-            // InternalOCLstdlib.g:22459:1: rulePostCS
+            // InternalOCLstdlib.g:22462:1: ( rulePostCS )
+            // InternalOCLstdlib.g:22463:1: rulePostCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsPostCSParserRuleCall_14_0_1_1_0());
@@ -65119,17 +65119,17 @@
 
 
     // $ANTLR start "rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2"
-    // InternalOCLstdlib.g:22468:1: rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 : ( rulePreCS ) ;
+    // InternalOCLstdlib.g:22472:1: rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 : ( rulePreCS ) ;
     public final void rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22472:1: ( ( rulePreCS ) )
-            // InternalOCLstdlib.g:22473:1: ( rulePreCS )
+            // InternalOCLstdlib.g:22476:1: ( ( rulePreCS ) )
+            // InternalOCLstdlib.g:22477:1: ( rulePreCS )
             {
-            // InternalOCLstdlib.g:22473:1: ( rulePreCS )
-            // InternalOCLstdlib.g:22474:1: rulePreCS
+            // InternalOCLstdlib.g:22477:1: ( rulePreCS )
+            // InternalOCLstdlib.g:22478:1: rulePreCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsPreCSParserRuleCall_14_0_1_2_0());
@@ -65164,17 +65164,17 @@
 
 
     // $ANTLR start "rule__IteratorCS__NameAssignment_0"
-    // InternalOCLstdlib.g:22483:1: rule__IteratorCS__NameAssignment_0 : ( ruleIdentifier ) ;
+    // InternalOCLstdlib.g:22487:1: rule__IteratorCS__NameAssignment_0 : ( ruleIdentifier ) ;
     public final void rule__IteratorCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22487:1: ( ( ruleIdentifier ) )
-            // InternalOCLstdlib.g:22488:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:22491:1: ( ( ruleIdentifier ) )
+            // InternalOCLstdlib.g:22492:1: ( ruleIdentifier )
             {
-            // InternalOCLstdlib.g:22488:1: ( ruleIdentifier )
-            // InternalOCLstdlib.g:22489:1: ruleIdentifier
+            // InternalOCLstdlib.g:22492:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:22493:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIteratorCSAccess().getNameIdentifierParserRuleCall_0_0());
@@ -65209,17 +65209,17 @@
 
 
     // $ANTLR start "rule__IteratorCS__OwnedTypeAssignment_2"
-    // InternalOCLstdlib.g:22498:1: rule__IteratorCS__OwnedTypeAssignment_2 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLstdlib.g:22502:1: rule__IteratorCS__OwnedTypeAssignment_2 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__IteratorCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22502:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLstdlib.g:22503:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22506:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLstdlib.g:22507:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLstdlib.g:22503:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLstdlib.g:22504:1: ruleTypedMultiplicityRefCS
+            // InternalOCLstdlib.g:22507:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22508:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIteratorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
@@ -65254,23 +65254,23 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__NameAssignment_0"
-    // InternalOCLstdlib.g:22513:1: rule__LambdaTypeCS__NameAssignment_0 : ( ( 'Lambda' ) ) ;
+    // InternalOCLstdlib.g:22517:1: rule__LambdaTypeCS__NameAssignment_0 : ( ( 'Lambda' ) ) ;
     public final void rule__LambdaTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22517:1: ( ( ( 'Lambda' ) ) )
-            // InternalOCLstdlib.g:22518:1: ( ( 'Lambda' ) )
+            // InternalOCLstdlib.g:22521:1: ( ( ( 'Lambda' ) ) )
+            // InternalOCLstdlib.g:22522:1: ( ( 'Lambda' ) )
             {
-            // InternalOCLstdlib.g:22518:1: ( ( 'Lambda' ) )
-            // InternalOCLstdlib.g:22519:1: ( 'Lambda' )
+            // InternalOCLstdlib.g:22522:1: ( ( 'Lambda' ) )
+            // InternalOCLstdlib.g:22523:1: ( 'Lambda' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0());
             }
-            // InternalOCLstdlib.g:22520:1: ( 'Lambda' )
-            // InternalOCLstdlib.g:22521:1: 'Lambda'
+            // InternalOCLstdlib.g:22524:1: ( 'Lambda' )
+            // InternalOCLstdlib.g:22525:1: 'Lambda'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0());
@@ -65307,17 +65307,17 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__OwnedSignatureAssignment_1"
-    // InternalOCLstdlib.g:22536:1: rule__LambdaTypeCS__OwnedSignatureAssignment_1 : ( ruleTemplateSignatureCS ) ;
+    // InternalOCLstdlib.g:22540:1: rule__LambdaTypeCS__OwnedSignatureAssignment_1 : ( ruleTemplateSignatureCS ) ;
     public final void rule__LambdaTypeCS__OwnedSignatureAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22540:1: ( ( ruleTemplateSignatureCS ) )
-            // InternalOCLstdlib.g:22541:1: ( ruleTemplateSignatureCS )
+            // InternalOCLstdlib.g:22544:1: ( ( ruleTemplateSignatureCS ) )
+            // InternalOCLstdlib.g:22545:1: ( ruleTemplateSignatureCS )
             {
-            // InternalOCLstdlib.g:22541:1: ( ruleTemplateSignatureCS )
-            // InternalOCLstdlib.g:22542:1: ruleTemplateSignatureCS
+            // InternalOCLstdlib.g:22545:1: ( ruleTemplateSignatureCS )
+            // InternalOCLstdlib.g:22546:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
@@ -65352,17 +65352,17 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__OwnedContextTypeAssignment_2"
-    // InternalOCLstdlib.g:22551:1: rule__LambdaTypeCS__OwnedContextTypeAssignment_2 : ( ruleLambdaContextTypeRefCS ) ;
+    // InternalOCLstdlib.g:22555:1: rule__LambdaTypeCS__OwnedContextTypeAssignment_2 : ( ruleLambdaContextTypeRefCS ) ;
     public final void rule__LambdaTypeCS__OwnedContextTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22555:1: ( ( ruleLambdaContextTypeRefCS ) )
-            // InternalOCLstdlib.g:22556:1: ( ruleLambdaContextTypeRefCS )
+            // InternalOCLstdlib.g:22559:1: ( ( ruleLambdaContextTypeRefCS ) )
+            // InternalOCLstdlib.g:22560:1: ( ruleLambdaContextTypeRefCS )
             {
-            // InternalOCLstdlib.g:22556:1: ( ruleLambdaContextTypeRefCS )
-            // InternalOCLstdlib.g:22557:1: ruleLambdaContextTypeRefCS
+            // InternalOCLstdlib.g:22560:1: ( ruleLambdaContextTypeRefCS )
+            // InternalOCLstdlib.g:22561:1: ruleLambdaContextTypeRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeLambdaContextTypeRefCSParserRuleCall_2_0());
@@ -65397,17 +65397,17 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0"
-    // InternalOCLstdlib.g:22566:1: rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLstdlib.g:22570:1: rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22570:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLstdlib.g:22571:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22574:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLstdlib.g:22575:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLstdlib.g:22571:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLstdlib.g:22572:1: ruleTypedMultiplicityRefCS
+            // InternalOCLstdlib.g:22575:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22576:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_0_0());
@@ -65442,17 +65442,17 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1"
-    // InternalOCLstdlib.g:22581:1: rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLstdlib.g:22585:1: rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22585:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLstdlib.g:22586:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22589:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLstdlib.g:22590:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLstdlib.g:22586:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLstdlib.g:22587:1: ruleTypedMultiplicityRefCS
+            // InternalOCLstdlib.g:22590:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22591:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_1_1_0());
@@ -65487,17 +65487,17 @@
 
 
     // $ANTLR start "rule__LambdaTypeCS__OwnedResultTypeAssignment_7"
-    // InternalOCLstdlib.g:22596:1: rule__LambdaTypeCS__OwnedResultTypeAssignment_7 : ( ruleTypedRefCS ) ;
+    // InternalOCLstdlib.g:22600:1: rule__LambdaTypeCS__OwnedResultTypeAssignment_7 : ( ruleTypedRefCS ) ;
     public final void rule__LambdaTypeCS__OwnedResultTypeAssignment_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22600:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLstdlib.g:22601:1: ( ruleTypedRefCS )
+            // InternalOCLstdlib.g:22604:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLstdlib.g:22605:1: ( ruleTypedRefCS )
             {
-            // InternalOCLstdlib.g:22601:1: ( ruleTypedRefCS )
-            // InternalOCLstdlib.g:22602:1: ruleTypedRefCS
+            // InternalOCLstdlib.g:22605:1: ( ruleTypedRefCS )
+            // InternalOCLstdlib.g:22606:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeTypedRefCSParserRuleCall_7_0());
@@ -65532,17 +65532,17 @@
 
 
     // $ANTLR start "rule__LambdaContextTypeRefCS__OwnedPathNameAssignment"
-    // InternalOCLstdlib.g:22611:1: rule__LambdaContextTypeRefCS__OwnedPathNameAssignment : ( ruleLibPathNameCS ) ;
+    // InternalOCLstdlib.g:22615:1: rule__LambdaContextTypeRefCS__OwnedPathNameAssignment : ( ruleLibPathNameCS ) ;
     public final void rule__LambdaContextTypeRefCS__OwnedPathNameAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22615:1: ( ( ruleLibPathNameCS ) )
-            // InternalOCLstdlib.g:22616:1: ( ruleLibPathNameCS )
+            // InternalOCLstdlib.g:22619:1: ( ( ruleLibPathNameCS ) )
+            // InternalOCLstdlib.g:22620:1: ( ruleLibPathNameCS )
             {
-            // InternalOCLstdlib.g:22616:1: ( ruleLibPathNameCS )
-            // InternalOCLstdlib.g:22617:1: ruleLibPathNameCS
+            // InternalOCLstdlib.g:22620:1: ( ruleLibPathNameCS )
+            // InternalOCLstdlib.g:22621:1: ruleLibPathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0());
@@ -65577,23 +65577,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__IsStaticAssignment_0"
-    // InternalOCLstdlib.g:22626:1: rule__LibOperationCS__IsStaticAssignment_0 : ( ( 'static' ) ) ;
+    // InternalOCLstdlib.g:22630:1: rule__LibOperationCS__IsStaticAssignment_0 : ( ( 'static' ) ) ;
     public final void rule__LibOperationCS__IsStaticAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22630:1: ( ( ( 'static' ) ) )
-            // InternalOCLstdlib.g:22631:1: ( ( 'static' ) )
+            // InternalOCLstdlib.g:22634:1: ( ( ( 'static' ) ) )
+            // InternalOCLstdlib.g:22635:1: ( ( 'static' ) )
             {
-            // InternalOCLstdlib.g:22631:1: ( ( 'static' ) )
-            // InternalOCLstdlib.g:22632:1: ( 'static' )
+            // InternalOCLstdlib.g:22635:1: ( ( 'static' ) )
+            // InternalOCLstdlib.g:22636:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0());
             }
-            // InternalOCLstdlib.g:22633:1: ( 'static' )
-            // InternalOCLstdlib.g:22634:1: 'static'
+            // InternalOCLstdlib.g:22637:1: ( 'static' )
+            // InternalOCLstdlib.g:22638:1: 'static'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0());
@@ -65630,17 +65630,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__NameAssignment_2"
-    // InternalOCLstdlib.g:22649:1: rule__LibOperationCS__NameAssignment_2 : ( ruleName ) ;
+    // InternalOCLstdlib.g:22653:1: rule__LibOperationCS__NameAssignment_2 : ( ruleName ) ;
     public final void rule__LibOperationCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22653:1: ( ( ruleName ) )
-            // InternalOCLstdlib.g:22654:1: ( ruleName )
+            // InternalOCLstdlib.g:22657:1: ( ( ruleName ) )
+            // InternalOCLstdlib.g:22658:1: ( ruleName )
             {
-            // InternalOCLstdlib.g:22654:1: ( ruleName )
-            // InternalOCLstdlib.g:22655:1: ruleName
+            // InternalOCLstdlib.g:22658:1: ( ruleName )
+            // InternalOCLstdlib.g:22659:1: ruleName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getNameNameParserRuleCall_2_0());
@@ -65675,17 +65675,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__OwnedSignatureAssignment_3"
-    // InternalOCLstdlib.g:22664:1: rule__LibOperationCS__OwnedSignatureAssignment_3 : ( ruleTemplateSignatureCS ) ;
+    // InternalOCLstdlib.g:22668:1: rule__LibOperationCS__OwnedSignatureAssignment_3 : ( ruleTemplateSignatureCS ) ;
     public final void rule__LibOperationCS__OwnedSignatureAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22668:1: ( ( ruleTemplateSignatureCS ) )
-            // InternalOCLstdlib.g:22669:1: ( ruleTemplateSignatureCS )
+            // InternalOCLstdlib.g:22672:1: ( ( ruleTemplateSignatureCS ) )
+            // InternalOCLstdlib.g:22673:1: ( ruleTemplateSignatureCS )
             {
-            // InternalOCLstdlib.g:22669:1: ( ruleTemplateSignatureCS )
-            // InternalOCLstdlib.g:22670:1: ruleTemplateSignatureCS
+            // InternalOCLstdlib.g:22673:1: ( ruleTemplateSignatureCS )
+            // InternalOCLstdlib.g:22674:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
@@ -65720,17 +65720,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__OwnedParametersAssignment_5_0"
-    // InternalOCLstdlib.g:22679:1: rule__LibOperationCS__OwnedParametersAssignment_5_0 : ( ruleParameterCS ) ;
+    // InternalOCLstdlib.g:22683:1: rule__LibOperationCS__OwnedParametersAssignment_5_0 : ( ruleParameterCS ) ;
     public final void rule__LibOperationCS__OwnedParametersAssignment_5_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22683:1: ( ( ruleParameterCS ) )
-            // InternalOCLstdlib.g:22684:1: ( ruleParameterCS )
+            // InternalOCLstdlib.g:22687:1: ( ( ruleParameterCS ) )
+            // InternalOCLstdlib.g:22688:1: ( ruleParameterCS )
             {
-            // InternalOCLstdlib.g:22684:1: ( ruleParameterCS )
-            // InternalOCLstdlib.g:22685:1: ruleParameterCS
+            // InternalOCLstdlib.g:22688:1: ( ruleParameterCS )
+            // InternalOCLstdlib.g:22689:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0());
@@ -65765,17 +65765,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__OwnedParametersAssignment_5_1_1"
-    // InternalOCLstdlib.g:22694:1: rule__LibOperationCS__OwnedParametersAssignment_5_1_1 : ( ruleParameterCS ) ;
+    // InternalOCLstdlib.g:22698:1: rule__LibOperationCS__OwnedParametersAssignment_5_1_1 : ( ruleParameterCS ) ;
     public final void rule__LibOperationCS__OwnedParametersAssignment_5_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22698:1: ( ( ruleParameterCS ) )
-            // InternalOCLstdlib.g:22699:1: ( ruleParameterCS )
+            // InternalOCLstdlib.g:22702:1: ( ( ruleParameterCS ) )
+            // InternalOCLstdlib.g:22703:1: ( ruleParameterCS )
             {
-            // InternalOCLstdlib.g:22699:1: ( ruleParameterCS )
-            // InternalOCLstdlib.g:22700:1: ruleParameterCS
+            // InternalOCLstdlib.g:22703:1: ( ruleParameterCS )
+            // InternalOCLstdlib.g:22704:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0());
@@ -65810,17 +65810,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__OwnedTypeAssignment_8"
-    // InternalOCLstdlib.g:22709:1: rule__LibOperationCS__OwnedTypeAssignment_8 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLstdlib.g:22713:1: rule__LibOperationCS__OwnedTypeAssignment_8 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__LibOperationCS__OwnedTypeAssignment_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22713:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLstdlib.g:22714:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22717:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLstdlib.g:22718:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLstdlib.g:22714:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLstdlib.g:22715:1: ruleTypedMultiplicityRefCS
+            // InternalOCLstdlib.g:22718:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22719:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_8_0());
@@ -65855,23 +65855,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__IsValidatingAssignment_9"
-    // InternalOCLstdlib.g:22724:1: rule__LibOperationCS__IsValidatingAssignment_9 : ( ( 'validating' ) ) ;
+    // InternalOCLstdlib.g:22728:1: rule__LibOperationCS__IsValidatingAssignment_9 : ( ( 'validating' ) ) ;
     public final void rule__LibOperationCS__IsValidatingAssignment_9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22728:1: ( ( ( 'validating' ) ) )
-            // InternalOCLstdlib.g:22729:1: ( ( 'validating' ) )
+            // InternalOCLstdlib.g:22732:1: ( ( ( 'validating' ) ) )
+            // InternalOCLstdlib.g:22733:1: ( ( 'validating' ) )
             {
-            // InternalOCLstdlib.g:22729:1: ( ( 'validating' ) )
-            // InternalOCLstdlib.g:22730:1: ( 'validating' )
+            // InternalOCLstdlib.g:22733:1: ( ( 'validating' ) )
+            // InternalOCLstdlib.g:22734:1: ( 'validating' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0());
             }
-            // InternalOCLstdlib.g:22731:1: ( 'validating' )
-            // InternalOCLstdlib.g:22732:1: 'validating'
+            // InternalOCLstdlib.g:22735:1: ( 'validating' )
+            // InternalOCLstdlib.g:22736:1: 'validating'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0());
@@ -65908,23 +65908,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__IsInvalidatingAssignment_10"
-    // InternalOCLstdlib.g:22747:1: rule__LibOperationCS__IsInvalidatingAssignment_10 : ( ( 'invalidating' ) ) ;
+    // InternalOCLstdlib.g:22751:1: rule__LibOperationCS__IsInvalidatingAssignment_10 : ( ( 'invalidating' ) ) ;
     public final void rule__LibOperationCS__IsInvalidatingAssignment_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22751:1: ( ( ( 'invalidating' ) ) )
-            // InternalOCLstdlib.g:22752:1: ( ( 'invalidating' ) )
+            // InternalOCLstdlib.g:22755:1: ( ( ( 'invalidating' ) ) )
+            // InternalOCLstdlib.g:22756:1: ( ( 'invalidating' ) )
             {
-            // InternalOCLstdlib.g:22752:1: ( ( 'invalidating' ) )
-            // InternalOCLstdlib.g:22753:1: ( 'invalidating' )
+            // InternalOCLstdlib.g:22756:1: ( ( 'invalidating' ) )
+            // InternalOCLstdlib.g:22757:1: ( 'invalidating' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0());
             }
-            // InternalOCLstdlib.g:22754:1: ( 'invalidating' )
-            // InternalOCLstdlib.g:22755:1: 'invalidating'
+            // InternalOCLstdlib.g:22758:1: ( 'invalidating' )
+            // InternalOCLstdlib.g:22759:1: 'invalidating'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0());
@@ -65961,23 +65961,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__PrecedenceAssignment_11_2"
-    // InternalOCLstdlib.g:22770:1: rule__LibOperationCS__PrecedenceAssignment_11_2 : ( ( ruleName ) ) ;
+    // InternalOCLstdlib.g:22774:1: rule__LibOperationCS__PrecedenceAssignment_11_2 : ( ( ruleName ) ) ;
     public final void rule__LibOperationCS__PrecedenceAssignment_11_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22774:1: ( ( ( ruleName ) ) )
-            // InternalOCLstdlib.g:22775:1: ( ( ruleName ) )
+            // InternalOCLstdlib.g:22778:1: ( ( ( ruleName ) ) )
+            // InternalOCLstdlib.g:22779:1: ( ( ruleName ) )
             {
-            // InternalOCLstdlib.g:22775:1: ( ( ruleName ) )
-            // InternalOCLstdlib.g:22776:1: ( ruleName )
+            // InternalOCLstdlib.g:22779:1: ( ( ruleName ) )
+            // InternalOCLstdlib.g:22780:1: ( ruleName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceCrossReference_11_2_0());
             }
-            // InternalOCLstdlib.g:22777:1: ( ruleName )
-            // InternalOCLstdlib.g:22778:1: ruleName
+            // InternalOCLstdlib.g:22781:1: ( ruleName )
+            // InternalOCLstdlib.g:22782:1: ruleName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceNameParserRuleCall_11_2_0_1());
@@ -66018,23 +66018,23 @@
 
 
     // $ANTLR start "rule__LibOperationCS__ImplementationAssignment_12_1"
-    // InternalOCLstdlib.g:22789:1: rule__LibOperationCS__ImplementationAssignment_12_1 : ( ( RULE_SINGLE_QUOTED_STRING ) ) ;
+    // InternalOCLstdlib.g:22793:1: rule__LibOperationCS__ImplementationAssignment_12_1 : ( ( RULE_SINGLE_QUOTED_STRING ) ) ;
     public final void rule__LibOperationCS__ImplementationAssignment_12_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22793:1: ( ( ( RULE_SINGLE_QUOTED_STRING ) ) )
-            // InternalOCLstdlib.g:22794:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:22797:1: ( ( ( RULE_SINGLE_QUOTED_STRING ) ) )
+            // InternalOCLstdlib.g:22798:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
             {
-            // InternalOCLstdlib.g:22794:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLstdlib.g:22795:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:22798:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:22799:1: ( RULE_SINGLE_QUOTED_STRING )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSCrossReference_12_1_0());
             }
-            // InternalOCLstdlib.g:22796:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLstdlib.g:22797:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLstdlib.g:22800:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:22801:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_12_1_0_1());
@@ -66071,17 +66071,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0"
-    // InternalOCLstdlib.g:22808:1: rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLstdlib.g:22812:1: rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 : ( ruleAnnotationElementCS ) ;
     public final void rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22812:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLstdlib.g:22813:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:22816:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLstdlib.g:22817:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLstdlib.g:22813:1: ( ruleAnnotationElementCS )
-            // InternalOCLstdlib.g:22814:1: ruleAnnotationElementCS
+            // InternalOCLstdlib.g:22817:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:22818:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_13_0_1_0_0());
@@ -66116,17 +66116,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3"
-    // InternalOCLstdlib.g:22823:1: rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 : ( ruleSpecificationCS ) ;
+    // InternalOCLstdlib.g:22827:1: rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 : ( ruleSpecificationCS ) ;
     public final void rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22827:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLstdlib.g:22828:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:22831:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLstdlib.g:22832:1: ( ruleSpecificationCS )
             {
-            // InternalOCLstdlib.g:22828:1: ( ruleSpecificationCS )
-            // InternalOCLstdlib.g:22829:1: ruleSpecificationCS
+            // InternalOCLstdlib.g:22832:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:22833:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_13_0_1_1_3_0());
@@ -66161,17 +66161,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2"
-    // InternalOCLstdlib.g:22838:1: rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 : ( rulePostCS ) ;
+    // InternalOCLstdlib.g:22842:1: rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 : ( rulePostCS ) ;
     public final void rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22842:1: ( ( rulePostCS ) )
-            // InternalOCLstdlib.g:22843:1: ( rulePostCS )
+            // InternalOCLstdlib.g:22846:1: ( ( rulePostCS ) )
+            // InternalOCLstdlib.g:22847:1: ( rulePostCS )
             {
-            // InternalOCLstdlib.g:22843:1: ( rulePostCS )
-            // InternalOCLstdlib.g:22844:1: rulePostCS
+            // InternalOCLstdlib.g:22847:1: ( rulePostCS )
+            // InternalOCLstdlib.g:22848:1: rulePostCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsPostCSParserRuleCall_13_0_1_2_0());
@@ -66206,17 +66206,17 @@
 
 
     // $ANTLR start "rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3"
-    // InternalOCLstdlib.g:22853:1: rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 : ( rulePreCS ) ;
+    // InternalOCLstdlib.g:22857:1: rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 : ( rulePreCS ) ;
     public final void rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22857:1: ( ( rulePreCS ) )
-            // InternalOCLstdlib.g:22858:1: ( rulePreCS )
+            // InternalOCLstdlib.g:22861:1: ( ( rulePreCS ) )
+            // InternalOCLstdlib.g:22862:1: ( rulePreCS )
             {
-            // InternalOCLstdlib.g:22858:1: ( rulePreCS )
-            // InternalOCLstdlib.g:22859:1: rulePreCS
+            // InternalOCLstdlib.g:22862:1: ( rulePreCS )
+            // InternalOCLstdlib.g:22863:1: rulePreCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsPreCSParserRuleCall_13_0_1_3_0());
@@ -66251,17 +66251,17 @@
 
 
     // $ANTLR start "rule__LibOppositeCS__NameAssignment_1"
-    // InternalOCLstdlib.g:22868:1: rule__LibOppositeCS__NameAssignment_1 : ( ruleName ) ;
+    // InternalOCLstdlib.g:22872:1: rule__LibOppositeCS__NameAssignment_1 : ( ruleName ) ;
     public final void rule__LibOppositeCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22872:1: ( ( ruleName ) )
-            // InternalOCLstdlib.g:22873:1: ( ruleName )
+            // InternalOCLstdlib.g:22876:1: ( ( ruleName ) )
+            // InternalOCLstdlib.g:22877:1: ( ruleName )
             {
-            // InternalOCLstdlib.g:22873:1: ( ruleName )
-            // InternalOCLstdlib.g:22874:1: ruleName
+            // InternalOCLstdlib.g:22877:1: ( ruleName )
+            // InternalOCLstdlib.g:22878:1: ruleName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOppositeCSAccess().getNameNameParserRuleCall_1_0());
@@ -66296,17 +66296,17 @@
 
 
     // $ANTLR start "rule__LibOppositeCS__OwnedTypeAssignment_3"
-    // InternalOCLstdlib.g:22883:1: rule__LibOppositeCS__OwnedTypeAssignment_3 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLstdlib.g:22887:1: rule__LibOppositeCS__OwnedTypeAssignment_3 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__LibOppositeCS__OwnedTypeAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22887:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLstdlib.g:22888:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22891:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLstdlib.g:22892:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLstdlib.g:22888:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLstdlib.g:22889:1: ruleTypedMultiplicityRefCS
+            // InternalOCLstdlib.g:22892:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:22893:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibOppositeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_0());
@@ -66341,17 +66341,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__NameAssignment_1"
-    // InternalOCLstdlib.g:22898:1: rule__LibPackageCS__NameAssignment_1 : ( ruleName ) ;
+    // InternalOCLstdlib.g:22902:1: rule__LibPackageCS__NameAssignment_1 : ( ruleName ) ;
     public final void rule__LibPackageCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22902:1: ( ( ruleName ) )
-            // InternalOCLstdlib.g:22903:1: ( ruleName )
+            // InternalOCLstdlib.g:22906:1: ( ( ruleName ) )
+            // InternalOCLstdlib.g:22907:1: ( ruleName )
             {
-            // InternalOCLstdlib.g:22903:1: ( ruleName )
-            // InternalOCLstdlib.g:22904:1: ruleName
+            // InternalOCLstdlib.g:22907:1: ( ruleName )
+            // InternalOCLstdlib.g:22908:1: ruleName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getNameNameParserRuleCall_1_0());
@@ -66386,17 +66386,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__NsPrefixAssignment_2_1"
-    // InternalOCLstdlib.g:22913:1: rule__LibPackageCS__NsPrefixAssignment_2_1 : ( ruleIdentifier ) ;
+    // InternalOCLstdlib.g:22917:1: rule__LibPackageCS__NsPrefixAssignment_2_1 : ( ruleIdentifier ) ;
     public final void rule__LibPackageCS__NsPrefixAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22917:1: ( ( ruleIdentifier ) )
-            // InternalOCLstdlib.g:22918:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:22921:1: ( ( ruleIdentifier ) )
+            // InternalOCLstdlib.g:22922:1: ( ruleIdentifier )
             {
-            // InternalOCLstdlib.g:22918:1: ( ruleIdentifier )
-            // InternalOCLstdlib.g:22919:1: ruleIdentifier
+            // InternalOCLstdlib.g:22922:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:22923:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0());
@@ -66431,17 +66431,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__NsURIAssignment_2_3"
-    // InternalOCLstdlib.g:22928:1: rule__LibPackageCS__NsURIAssignment_2_3 : ( ruleURI ) ;
+    // InternalOCLstdlib.g:22932:1: rule__LibPackageCS__NsURIAssignment_2_3 : ( ruleURI ) ;
     public final void rule__LibPackageCS__NsURIAssignment_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22932:1: ( ( ruleURI ) )
-            // InternalOCLstdlib.g:22933:1: ( ruleURI )
+            // InternalOCLstdlib.g:22936:1: ( ( ruleURI ) )
+            // InternalOCLstdlib.g:22937:1: ( ruleURI )
             {
-            // InternalOCLstdlib.g:22933:1: ( ruleURI )
-            // InternalOCLstdlib.g:22934:1: ruleURI
+            // InternalOCLstdlib.g:22937:1: ( ruleURI )
+            // InternalOCLstdlib.g:22938:1: ruleURI
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getNsURIURIParserRuleCall_2_3_0());
@@ -66476,17 +66476,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__OwnedPackagesAssignment_4_0"
-    // InternalOCLstdlib.g:22943:1: rule__LibPackageCS__OwnedPackagesAssignment_4_0 : ( rulePackageCS ) ;
+    // InternalOCLstdlib.g:22947:1: rule__LibPackageCS__OwnedPackagesAssignment_4_0 : ( rulePackageCS ) ;
     public final void rule__LibPackageCS__OwnedPackagesAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22947:1: ( ( rulePackageCS ) )
-            // InternalOCLstdlib.g:22948:1: ( rulePackageCS )
+            // InternalOCLstdlib.g:22951:1: ( ( rulePackageCS ) )
+            // InternalOCLstdlib.g:22952:1: ( rulePackageCS )
             {
-            // InternalOCLstdlib.g:22948:1: ( rulePackageCS )
-            // InternalOCLstdlib.g:22949:1: rulePackageCS
+            // InternalOCLstdlib.g:22952:1: ( rulePackageCS )
+            // InternalOCLstdlib.g:22953:1: rulePackageCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0());
@@ -66521,17 +66521,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1"
-    // InternalOCLstdlib.g:22958:1: rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 : ( rulePrecedenceCS ) ;
+    // InternalOCLstdlib.g:22962:1: rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 : ( rulePrecedenceCS ) ;
     public final void rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22962:1: ( ( rulePrecedenceCS ) )
-            // InternalOCLstdlib.g:22963:1: ( rulePrecedenceCS )
+            // InternalOCLstdlib.g:22966:1: ( ( rulePrecedenceCS ) )
+            // InternalOCLstdlib.g:22967:1: ( rulePrecedenceCS )
             {
-            // InternalOCLstdlib.g:22963:1: ( rulePrecedenceCS )
-            // InternalOCLstdlib.g:22964:1: rulePrecedenceCS
+            // InternalOCLstdlib.g:22967:1: ( rulePrecedenceCS )
+            // InternalOCLstdlib.g:22968:1: rulePrecedenceCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesPrecedenceCSParserRuleCall_4_1_1_0());
@@ -66566,17 +66566,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__OwnedClassesAssignment_4_2"
-    // InternalOCLstdlib.g:22973:1: rule__LibPackageCS__OwnedClassesAssignment_4_2 : ( ruleClassCS ) ;
+    // InternalOCLstdlib.g:22977:1: rule__LibPackageCS__OwnedClassesAssignment_4_2 : ( ruleClassCS ) ;
     public final void rule__LibPackageCS__OwnedClassesAssignment_4_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22977:1: ( ( ruleClassCS ) )
-            // InternalOCLstdlib.g:22978:1: ( ruleClassCS )
+            // InternalOCLstdlib.g:22981:1: ( ( ruleClassCS ) )
+            // InternalOCLstdlib.g:22982:1: ( ruleClassCS )
             {
-            // InternalOCLstdlib.g:22978:1: ( ruleClassCS )
-            // InternalOCLstdlib.g:22979:1: ruleClassCS
+            // InternalOCLstdlib.g:22982:1: ( ruleClassCS )
+            // InternalOCLstdlib.g:22983:1: ruleClassCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_2_0());
@@ -66611,17 +66611,17 @@
 
 
     // $ANTLR start "rule__LibPackageCS__OwnedAnnotationsAssignment_4_3"
-    // InternalOCLstdlib.g:22988:1: rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLstdlib.g:22992:1: rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 : ( ruleAnnotationElementCS ) ;
     public final void rule__LibPackageCS__OwnedAnnotationsAssignment_4_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:22992:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLstdlib.g:22993:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:22996:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLstdlib.g:22997:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLstdlib.g:22993:1: ( ruleAnnotationElementCS )
-            // InternalOCLstdlib.g:22994:1: ruleAnnotationElementCS
+            // InternalOCLstdlib.g:22997:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:22998:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_3_0());
@@ -66656,17 +66656,17 @@
 
 
     // $ANTLR start "rule__PackageCS__NameAssignment_1"
-    // InternalOCLstdlib.g:23003:1: rule__PackageCS__NameAssignment_1 : ( ruleName ) ;
+    // InternalOCLstdlib.g:23007:1: rule__PackageCS__NameAssignment_1 : ( ruleName ) ;
     public final void rule__PackageCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23007:1: ( ( ruleName ) )
-            // InternalOCLstdlib.g:23008:1: ( ruleName )
+            // InternalOCLstdlib.g:23011:1: ( ( ruleName ) )
+            // InternalOCLstdlib.g:23012:1: ( ruleName )
             {
-            // InternalOCLstdlib.g:23008:1: ( ruleName )
-            // InternalOCLstdlib.g:23009:1: ruleName
+            // InternalOCLstdlib.g:23012:1: ( ruleName )
+            // InternalOCLstdlib.g:23013:1: ruleName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getNameNameParserRuleCall_1_0());
@@ -66701,17 +66701,17 @@
 
 
     // $ANTLR start "rule__PackageCS__NsPrefixAssignment_2_1"
-    // InternalOCLstdlib.g:23018:1: rule__PackageCS__NsPrefixAssignment_2_1 : ( ruleIdentifier ) ;
+    // InternalOCLstdlib.g:23022:1: rule__PackageCS__NsPrefixAssignment_2_1 : ( ruleIdentifier ) ;
     public final void rule__PackageCS__NsPrefixAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23022:1: ( ( ruleIdentifier ) )
-            // InternalOCLstdlib.g:23023:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:23026:1: ( ( ruleIdentifier ) )
+            // InternalOCLstdlib.g:23027:1: ( ruleIdentifier )
             {
-            // InternalOCLstdlib.g:23023:1: ( ruleIdentifier )
-            // InternalOCLstdlib.g:23024:1: ruleIdentifier
+            // InternalOCLstdlib.g:23027:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:23028:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0());
@@ -66746,17 +66746,17 @@
 
 
     // $ANTLR start "rule__PackageCS__NsURIAssignment_2_3"
-    // InternalOCLstdlib.g:23033:1: rule__PackageCS__NsURIAssignment_2_3 : ( ruleURI ) ;
+    // InternalOCLstdlib.g:23037:1: rule__PackageCS__NsURIAssignment_2_3 : ( ruleURI ) ;
     public final void rule__PackageCS__NsURIAssignment_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23037:1: ( ( ruleURI ) )
-            // InternalOCLstdlib.g:23038:1: ( ruleURI )
+            // InternalOCLstdlib.g:23041:1: ( ( ruleURI ) )
+            // InternalOCLstdlib.g:23042:1: ( ruleURI )
             {
-            // InternalOCLstdlib.g:23038:1: ( ruleURI )
-            // InternalOCLstdlib.g:23039:1: ruleURI
+            // InternalOCLstdlib.g:23042:1: ( ruleURI )
+            // InternalOCLstdlib.g:23043:1: ruleURI
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_2_3_0());
@@ -66791,17 +66791,17 @@
 
 
     // $ANTLR start "rule__PackageCS__OwnedPackagesAssignment_4_0"
-    // InternalOCLstdlib.g:23048:1: rule__PackageCS__OwnedPackagesAssignment_4_0 : ( rulePackageCS ) ;
+    // InternalOCLstdlib.g:23052:1: rule__PackageCS__OwnedPackagesAssignment_4_0 : ( rulePackageCS ) ;
     public final void rule__PackageCS__OwnedPackagesAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23052:1: ( ( rulePackageCS ) )
-            // InternalOCLstdlib.g:23053:1: ( rulePackageCS )
+            // InternalOCLstdlib.g:23056:1: ( ( rulePackageCS ) )
+            // InternalOCLstdlib.g:23057:1: ( rulePackageCS )
             {
-            // InternalOCLstdlib.g:23053:1: ( rulePackageCS )
-            // InternalOCLstdlib.g:23054:1: rulePackageCS
+            // InternalOCLstdlib.g:23057:1: ( rulePackageCS )
+            // InternalOCLstdlib.g:23058:1: rulePackageCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0());
@@ -66836,17 +66836,17 @@
 
 
     // $ANTLR start "rule__PackageCS__OwnedClassesAssignment_4_1"
-    // InternalOCLstdlib.g:23063:1: rule__PackageCS__OwnedClassesAssignment_4_1 : ( ruleClassCS ) ;
+    // InternalOCLstdlib.g:23067:1: rule__PackageCS__OwnedClassesAssignment_4_1 : ( ruleClassCS ) ;
     public final void rule__PackageCS__OwnedClassesAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23067:1: ( ( ruleClassCS ) )
-            // InternalOCLstdlib.g:23068:1: ( ruleClassCS )
+            // InternalOCLstdlib.g:23071:1: ( ( ruleClassCS ) )
+            // InternalOCLstdlib.g:23072:1: ( ruleClassCS )
             {
-            // InternalOCLstdlib.g:23068:1: ( ruleClassCS )
-            // InternalOCLstdlib.g:23069:1: ruleClassCS
+            // InternalOCLstdlib.g:23072:1: ( ruleClassCS )
+            // InternalOCLstdlib.g:23073:1: ruleClassCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_1_0());
@@ -66881,17 +66881,17 @@
 
 
     // $ANTLR start "rule__PackageCS__OwnedAnnotationsAssignment_4_2"
-    // InternalOCLstdlib.g:23078:1: rule__PackageCS__OwnedAnnotationsAssignment_4_2 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLstdlib.g:23082:1: rule__PackageCS__OwnedAnnotationsAssignment_4_2 : ( ruleAnnotationElementCS ) ;
     public final void rule__PackageCS__OwnedAnnotationsAssignment_4_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23082:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLstdlib.g:23083:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:23086:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLstdlib.g:23087:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLstdlib.g:23083:1: ( ruleAnnotationElementCS )
-            // InternalOCLstdlib.g:23084:1: ruleAnnotationElementCS
+            // InternalOCLstdlib.g:23087:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:23088:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_2_0());
@@ -66926,17 +66926,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__NameAssignment_0"
-    // InternalOCLstdlib.g:23093:1: rule__ParameterCS__NameAssignment_0 : ( ruleIdentifier ) ;
+    // InternalOCLstdlib.g:23097:1: rule__ParameterCS__NameAssignment_0 : ( ruleIdentifier ) ;
     public final void rule__ParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23097:1: ( ( ruleIdentifier ) )
-            // InternalOCLstdlib.g:23098:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:23101:1: ( ( ruleIdentifier ) )
+            // InternalOCLstdlib.g:23102:1: ( ruleIdentifier )
             {
-            // InternalOCLstdlib.g:23098:1: ( ruleIdentifier )
-            // InternalOCLstdlib.g:23099:1: ruleIdentifier
+            // InternalOCLstdlib.g:23102:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:23103:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getNameIdentifierParserRuleCall_0_0());
@@ -66971,17 +66971,17 @@
 
 
     // $ANTLR start "rule__ParameterCS__OwnedTypeAssignment_2"
-    // InternalOCLstdlib.g:23108:1: rule__ParameterCS__OwnedTypeAssignment_2 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLstdlib.g:23112:1: rule__ParameterCS__OwnedTypeAssignment_2 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__ParameterCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23112:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLstdlib.g:23113:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:23116:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLstdlib.g:23117:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLstdlib.g:23113:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLstdlib.g:23114:1: ruleTypedMultiplicityRefCS
+            // InternalOCLstdlib.g:23117:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:23118:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
@@ -67016,23 +67016,23 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__IsStaticAssignment_0"
-    // InternalOCLstdlib.g:23123:1: rule__LibPropertyCS__IsStaticAssignment_0 : ( ( 'static' ) ) ;
+    // InternalOCLstdlib.g:23127:1: rule__LibPropertyCS__IsStaticAssignment_0 : ( ( 'static' ) ) ;
     public final void rule__LibPropertyCS__IsStaticAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23127:1: ( ( ( 'static' ) ) )
-            // InternalOCLstdlib.g:23128:1: ( ( 'static' ) )
+            // InternalOCLstdlib.g:23131:1: ( ( ( 'static' ) ) )
+            // InternalOCLstdlib.g:23132:1: ( ( 'static' ) )
             {
-            // InternalOCLstdlib.g:23128:1: ( ( 'static' ) )
-            // InternalOCLstdlib.g:23129:1: ( 'static' )
+            // InternalOCLstdlib.g:23132:1: ( ( 'static' ) )
+            // InternalOCLstdlib.g:23133:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0());
             }
-            // InternalOCLstdlib.g:23130:1: ( 'static' )
-            // InternalOCLstdlib.g:23131:1: 'static'
+            // InternalOCLstdlib.g:23134:1: ( 'static' )
+            // InternalOCLstdlib.g:23135:1: 'static'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0());
@@ -67069,17 +67069,17 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__NameAssignment_2"
-    // InternalOCLstdlib.g:23146:1: rule__LibPropertyCS__NameAssignment_2 : ( ruleName ) ;
+    // InternalOCLstdlib.g:23150:1: rule__LibPropertyCS__NameAssignment_2 : ( ruleName ) ;
     public final void rule__LibPropertyCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23150:1: ( ( ruleName ) )
-            // InternalOCLstdlib.g:23151:1: ( ruleName )
+            // InternalOCLstdlib.g:23154:1: ( ( ruleName ) )
+            // InternalOCLstdlib.g:23155:1: ( ruleName )
             {
-            // InternalOCLstdlib.g:23151:1: ( ruleName )
-            // InternalOCLstdlib.g:23152:1: ruleName
+            // InternalOCLstdlib.g:23155:1: ( ruleName )
+            // InternalOCLstdlib.g:23156:1: ruleName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getNameNameParserRuleCall_2_0());
@@ -67114,17 +67114,17 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__OwnedTypeAssignment_4"
-    // InternalOCLstdlib.g:23161:1: rule__LibPropertyCS__OwnedTypeAssignment_4 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLstdlib.g:23165:1: rule__LibPropertyCS__OwnedTypeAssignment_4 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__LibPropertyCS__OwnedTypeAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23165:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLstdlib.g:23166:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:23169:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLstdlib.g:23170:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLstdlib.g:23166:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLstdlib.g:23167:1: ruleTypedMultiplicityRefCS
+            // InternalOCLstdlib.g:23170:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:23171:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_0());
@@ -67159,17 +67159,17 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__OwnedOppositeAssignment_5"
-    // InternalOCLstdlib.g:23176:1: rule__LibPropertyCS__OwnedOppositeAssignment_5 : ( ruleLibOppositeCS ) ;
+    // InternalOCLstdlib.g:23180:1: rule__LibPropertyCS__OwnedOppositeAssignment_5 : ( ruleLibOppositeCS ) ;
     public final void rule__LibPropertyCS__OwnedOppositeAssignment_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23180:1: ( ( ruleLibOppositeCS ) )
-            // InternalOCLstdlib.g:23181:1: ( ruleLibOppositeCS )
+            // InternalOCLstdlib.g:23184:1: ( ( ruleLibOppositeCS ) )
+            // InternalOCLstdlib.g:23185:1: ( ruleLibOppositeCS )
             {
-            // InternalOCLstdlib.g:23181:1: ( ruleLibOppositeCS )
-            // InternalOCLstdlib.g:23182:1: ruleLibOppositeCS
+            // InternalOCLstdlib.g:23185:1: ( ruleLibOppositeCS )
+            // InternalOCLstdlib.g:23186:1: ruleLibOppositeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getOwnedOppositeLibOppositeCSParserRuleCall_5_0());
@@ -67204,23 +67204,23 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__ImplementationAssignment_6_1"
-    // InternalOCLstdlib.g:23191:1: rule__LibPropertyCS__ImplementationAssignment_6_1 : ( ( RULE_SINGLE_QUOTED_STRING ) ) ;
+    // InternalOCLstdlib.g:23195:1: rule__LibPropertyCS__ImplementationAssignment_6_1 : ( ( RULE_SINGLE_QUOTED_STRING ) ) ;
     public final void rule__LibPropertyCS__ImplementationAssignment_6_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23195:1: ( ( ( RULE_SINGLE_QUOTED_STRING ) ) )
-            // InternalOCLstdlib.g:23196:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:23199:1: ( ( ( RULE_SINGLE_QUOTED_STRING ) ) )
+            // InternalOCLstdlib.g:23200:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
             {
-            // InternalOCLstdlib.g:23196:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
-            // InternalOCLstdlib.g:23197:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:23200:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
+            // InternalOCLstdlib.g:23201:1: ( RULE_SINGLE_QUOTED_STRING )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSCrossReference_6_1_0());
             }
-            // InternalOCLstdlib.g:23198:1: ( RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLstdlib.g:23199:1: RULE_SINGLE_QUOTED_STRING
+            // InternalOCLstdlib.g:23202:1: ( RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:23203:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_6_1_0_1());
@@ -67257,17 +67257,17 @@
 
 
     // $ANTLR start "rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1"
-    // InternalOCLstdlib.g:23210:1: rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 : ( ruleAnnotationElementCS ) ;
+    // InternalOCLstdlib.g:23214:1: rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1 : ( ruleAnnotationElementCS ) ;
     public final void rule__LibPropertyCS__OwnedAnnotationsAssignment_7_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23214:1: ( ( ruleAnnotationElementCS ) )
-            // InternalOCLstdlib.g:23215:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:23218:1: ( ( ruleAnnotationElementCS ) )
+            // InternalOCLstdlib.g:23219:1: ( ruleAnnotationElementCS )
             {
-            // InternalOCLstdlib.g:23215:1: ( ruleAnnotationElementCS )
-            // InternalOCLstdlib.g:23216:1: ruleAnnotationElementCS
+            // InternalOCLstdlib.g:23219:1: ( ruleAnnotationElementCS )
+            // InternalOCLstdlib.g:23220:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0());
@@ -67302,23 +67302,23 @@
 
 
     // $ANTLR start "rule__PostCS__StereotypeAssignment_0"
-    // InternalOCLstdlib.g:23225:1: rule__PostCS__StereotypeAssignment_0 : ( ( 'post' ) ) ;
+    // InternalOCLstdlib.g:23229:1: rule__PostCS__StereotypeAssignment_0 : ( ( 'post' ) ) ;
     public final void rule__PostCS__StereotypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23229:1: ( ( ( 'post' ) ) )
-            // InternalOCLstdlib.g:23230:1: ( ( 'post' ) )
+            // InternalOCLstdlib.g:23233:1: ( ( ( 'post' ) ) )
+            // InternalOCLstdlib.g:23234:1: ( ( 'post' ) )
             {
-            // InternalOCLstdlib.g:23230:1: ( ( 'post' ) )
-            // InternalOCLstdlib.g:23231:1: ( 'post' )
+            // InternalOCLstdlib.g:23234:1: ( ( 'post' ) )
+            // InternalOCLstdlib.g:23235:1: ( 'post' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0());
             }
-            // InternalOCLstdlib.g:23232:1: ( 'post' )
-            // InternalOCLstdlib.g:23233:1: 'post'
+            // InternalOCLstdlib.g:23236:1: ( 'post' )
+            // InternalOCLstdlib.g:23237:1: 'post'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0());
@@ -67355,17 +67355,17 @@
 
 
     // $ANTLR start "rule__PostCS__NameAssignment_1_0"
-    // InternalOCLstdlib.g:23248:1: rule__PostCS__NameAssignment_1_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLstdlib.g:23252:1: rule__PostCS__NameAssignment_1_0 : ( ruleUnrestrictedName ) ;
     public final void rule__PostCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23252:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:23253:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:23256:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:23257:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLstdlib.g:23253:1: ( ruleUnrestrictedName )
-            // InternalOCLstdlib.g:23254:1: ruleUnrestrictedName
+            // InternalOCLstdlib.g:23257:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:23258:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
@@ -67400,17 +67400,17 @@
 
 
     // $ANTLR start "rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1"
-    // InternalOCLstdlib.g:23263:1: rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 : ( ruleSpecificationCS ) ;
+    // InternalOCLstdlib.g:23267:1: rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 : ( ruleSpecificationCS ) ;
     public final void rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23267:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLstdlib.g:23268:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:23271:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLstdlib.g:23272:1: ( ruleSpecificationCS )
             {
-            // InternalOCLstdlib.g:23268:1: ( ruleSpecificationCS )
-            // InternalOCLstdlib.g:23269:1: ruleSpecificationCS
+            // InternalOCLstdlib.g:23272:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:23273:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
@@ -67445,17 +67445,17 @@
 
 
     // $ANTLR start "rule__PostCS__OwnedSpecificationAssignment_3"
-    // InternalOCLstdlib.g:23278:1: rule__PostCS__OwnedSpecificationAssignment_3 : ( ruleSpecificationCS ) ;
+    // InternalOCLstdlib.g:23282:1: rule__PostCS__OwnedSpecificationAssignment_3 : ( ruleSpecificationCS ) ;
     public final void rule__PostCS__OwnedSpecificationAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23282:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLstdlib.g:23283:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:23286:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLstdlib.g:23287:1: ( ruleSpecificationCS )
             {
-            // InternalOCLstdlib.g:23283:1: ( ruleSpecificationCS )
-            // InternalOCLstdlib.g:23284:1: ruleSpecificationCS
+            // InternalOCLstdlib.g:23287:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:23288:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPostCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
@@ -67490,23 +67490,23 @@
 
 
     // $ANTLR start "rule__PreCS__StereotypeAssignment_0"
-    // InternalOCLstdlib.g:23293:1: rule__PreCS__StereotypeAssignment_0 : ( ( 'pre' ) ) ;
+    // InternalOCLstdlib.g:23297:1: rule__PreCS__StereotypeAssignment_0 : ( ( 'pre' ) ) ;
     public final void rule__PreCS__StereotypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23297:1: ( ( ( 'pre' ) ) )
-            // InternalOCLstdlib.g:23298:1: ( ( 'pre' ) )
+            // InternalOCLstdlib.g:23301:1: ( ( ( 'pre' ) ) )
+            // InternalOCLstdlib.g:23302:1: ( ( 'pre' ) )
             {
-            // InternalOCLstdlib.g:23298:1: ( ( 'pre' ) )
-            // InternalOCLstdlib.g:23299:1: ( 'pre' )
+            // InternalOCLstdlib.g:23302:1: ( ( 'pre' ) )
+            // InternalOCLstdlib.g:23303:1: ( 'pre' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0());
             }
-            // InternalOCLstdlib.g:23300:1: ( 'pre' )
-            // InternalOCLstdlib.g:23301:1: 'pre'
+            // InternalOCLstdlib.g:23304:1: ( 'pre' )
+            // InternalOCLstdlib.g:23305:1: 'pre'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0());
@@ -67543,17 +67543,17 @@
 
 
     // $ANTLR start "rule__PreCS__NameAssignment_1_0"
-    // InternalOCLstdlib.g:23316:1: rule__PreCS__NameAssignment_1_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLstdlib.g:23320:1: rule__PreCS__NameAssignment_1_0 : ( ruleUnrestrictedName ) ;
     public final void rule__PreCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23320:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:23321:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:23324:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:23325:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLstdlib.g:23321:1: ( ruleUnrestrictedName )
-            // InternalOCLstdlib.g:23322:1: ruleUnrestrictedName
+            // InternalOCLstdlib.g:23325:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:23326:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
@@ -67588,17 +67588,17 @@
 
 
     // $ANTLR start "rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1"
-    // InternalOCLstdlib.g:23331:1: rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 : ( ruleSpecificationCS ) ;
+    // InternalOCLstdlib.g:23335:1: rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 : ( ruleSpecificationCS ) ;
     public final void rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23335:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLstdlib.g:23336:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:23339:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLstdlib.g:23340:1: ( ruleSpecificationCS )
             {
-            // InternalOCLstdlib.g:23336:1: ( ruleSpecificationCS )
-            // InternalOCLstdlib.g:23337:1: ruleSpecificationCS
+            // InternalOCLstdlib.g:23340:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:23341:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
@@ -67633,17 +67633,17 @@
 
 
     // $ANTLR start "rule__PreCS__OwnedSpecificationAssignment_3"
-    // InternalOCLstdlib.g:23346:1: rule__PreCS__OwnedSpecificationAssignment_3 : ( ruleSpecificationCS ) ;
+    // InternalOCLstdlib.g:23350:1: rule__PreCS__OwnedSpecificationAssignment_3 : ( ruleSpecificationCS ) ;
     public final void rule__PreCS__OwnedSpecificationAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23350:1: ( ( ruleSpecificationCS ) )
-            // InternalOCLstdlib.g:23351:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:23354:1: ( ( ruleSpecificationCS ) )
+            // InternalOCLstdlib.g:23355:1: ( ruleSpecificationCS )
             {
-            // InternalOCLstdlib.g:23351:1: ( ruleSpecificationCS )
-            // InternalOCLstdlib.g:23352:1: ruleSpecificationCS
+            // InternalOCLstdlib.g:23355:1: ( ruleSpecificationCS )
+            // InternalOCLstdlib.g:23356:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPreCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
@@ -67678,23 +67678,23 @@
 
 
     // $ANTLR start "rule__PrecedenceCS__IsRightAssociativeAssignment_0_1"
-    // InternalOCLstdlib.g:23361:1: rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 : ( ( 'right' ) ) ;
+    // InternalOCLstdlib.g:23365:1: rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 : ( ( 'right' ) ) ;
     public final void rule__PrecedenceCS__IsRightAssociativeAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23365:1: ( ( ( 'right' ) ) )
-            // InternalOCLstdlib.g:23366:1: ( ( 'right' ) )
+            // InternalOCLstdlib.g:23369:1: ( ( ( 'right' ) ) )
+            // InternalOCLstdlib.g:23370:1: ( ( 'right' ) )
             {
-            // InternalOCLstdlib.g:23366:1: ( ( 'right' ) )
-            // InternalOCLstdlib.g:23367:1: ( 'right' )
+            // InternalOCLstdlib.g:23370:1: ( ( 'right' ) )
+            // InternalOCLstdlib.g:23371:1: ( 'right' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0());
             }
-            // InternalOCLstdlib.g:23368:1: ( 'right' )
-            // InternalOCLstdlib.g:23369:1: 'right'
+            // InternalOCLstdlib.g:23372:1: ( 'right' )
+            // InternalOCLstdlib.g:23373:1: 'right'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0());
@@ -67731,17 +67731,17 @@
 
 
     // $ANTLR start "rule__PrecedenceCS__NameAssignment_2"
-    // InternalOCLstdlib.g:23384:1: rule__PrecedenceCS__NameAssignment_2 : ( ruleName ) ;
+    // InternalOCLstdlib.g:23388:1: rule__PrecedenceCS__NameAssignment_2 : ( ruleName ) ;
     public final void rule__PrecedenceCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23388:1: ( ( ruleName ) )
-            // InternalOCLstdlib.g:23389:1: ( ruleName )
+            // InternalOCLstdlib.g:23392:1: ( ( ruleName ) )
+            // InternalOCLstdlib.g:23393:1: ( ruleName )
             {
-            // InternalOCLstdlib.g:23389:1: ( ruleName )
-            // InternalOCLstdlib.g:23390:1: ruleName
+            // InternalOCLstdlib.g:23393:1: ( ruleName )
+            // InternalOCLstdlib.g:23394:1: ruleName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrecedenceCSAccess().getNameNameParserRuleCall_2_0());
@@ -67776,17 +67776,17 @@
 
 
     // $ANTLR start "rule__SpecificationCS__OwnedExpressionAssignment"
-    // InternalOCLstdlib.g:23399:1: rule__SpecificationCS__OwnedExpressionAssignment : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:23403:1: rule__SpecificationCS__OwnedExpressionAssignment : ( ruleExpCS ) ;
     public final void rule__SpecificationCS__OwnedExpressionAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23403:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:23404:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:23407:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:23408:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:23404:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:23405:1: ruleExpCS
+            // InternalOCLstdlib.g:23408:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:23409:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0());
@@ -67821,17 +67821,17 @@
 
 
     // $ANTLR start "rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1"
-    // InternalOCLstdlib.g:23414:1: rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
+    // InternalOCLstdlib.g:23418:1: rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
     public final void rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23418:1: ( ( ruleMultiplicityCS ) )
-            // InternalOCLstdlib.g:23419:1: ( ruleMultiplicityCS )
+            // InternalOCLstdlib.g:23422:1: ( ( ruleMultiplicityCS ) )
+            // InternalOCLstdlib.g:23423:1: ( ruleMultiplicityCS )
             {
-            // InternalOCLstdlib.g:23419:1: ( ruleMultiplicityCS )
-            // InternalOCLstdlib.g:23420:1: ruleMultiplicityCS
+            // InternalOCLstdlib.g:23423:1: ( ruleMultiplicityCS )
+            // InternalOCLstdlib.g:23424:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
@@ -67866,23 +67866,23 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__IsTypeofAssignment_0_0"
-    // InternalOCLstdlib.g:23429:1: rule__TypedTypeRefCS__IsTypeofAssignment_0_0 : ( ( 'typeof' ) ) ;
+    // InternalOCLstdlib.g:23433:1: rule__TypedTypeRefCS__IsTypeofAssignment_0_0 : ( ( 'typeof' ) ) ;
     public final void rule__TypedTypeRefCS__IsTypeofAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23433:1: ( ( ( 'typeof' ) ) )
-            // InternalOCLstdlib.g:23434:1: ( ( 'typeof' ) )
+            // InternalOCLstdlib.g:23437:1: ( ( ( 'typeof' ) ) )
+            // InternalOCLstdlib.g:23438:1: ( ( 'typeof' ) )
             {
-            // InternalOCLstdlib.g:23434:1: ( ( 'typeof' ) )
-            // InternalOCLstdlib.g:23435:1: ( 'typeof' )
+            // InternalOCLstdlib.g:23438:1: ( ( 'typeof' ) )
+            // InternalOCLstdlib.g:23439:1: ( 'typeof' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0());
             }
-            // InternalOCLstdlib.g:23436:1: ( 'typeof' )
-            // InternalOCLstdlib.g:23437:1: 'typeof'
+            // InternalOCLstdlib.g:23440:1: ( 'typeof' )
+            // InternalOCLstdlib.g:23441:1: 'typeof'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0());
@@ -67919,17 +67919,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2"
-    // InternalOCLstdlib.g:23452:1: rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 : ( ruleLibPathNameCS ) ;
+    // InternalOCLstdlib.g:23456:1: rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 : ( ruleLibPathNameCS ) ;
     public final void rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23456:1: ( ( ruleLibPathNameCS ) )
-            // InternalOCLstdlib.g:23457:1: ( ruleLibPathNameCS )
+            // InternalOCLstdlib.g:23460:1: ( ( ruleLibPathNameCS ) )
+            // InternalOCLstdlib.g:23461:1: ( ruleLibPathNameCS )
             {
-            // InternalOCLstdlib.g:23457:1: ( ruleLibPathNameCS )
-            // InternalOCLstdlib.g:23458:1: ruleLibPathNameCS
+            // InternalOCLstdlib.g:23461:1: ( ruleLibPathNameCS )
+            // InternalOCLstdlib.g:23462:1: ruleLibPathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0_2_0());
@@ -67964,17 +67964,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0"
-    // InternalOCLstdlib.g:23467:1: rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 : ( ruleLibPathNameCS ) ;
+    // InternalOCLstdlib.g:23471:1: rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 : ( ruleLibPathNameCS ) ;
     public final void rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23471:1: ( ( ruleLibPathNameCS ) )
-            // InternalOCLstdlib.g:23472:1: ( ruleLibPathNameCS )
+            // InternalOCLstdlib.g:23475:1: ( ( ruleLibPathNameCS ) )
+            // InternalOCLstdlib.g:23476:1: ( ruleLibPathNameCS )
             {
-            // InternalOCLstdlib.g:23472:1: ( ruleLibPathNameCS )
-            // InternalOCLstdlib.g:23473:1: ruleLibPathNameCS
+            // InternalOCLstdlib.g:23476:1: ( ruleLibPathNameCS )
+            // InternalOCLstdlib.g:23477:1: ruleLibPathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_1_0_0());
@@ -68009,17 +68009,17 @@
 
 
     // $ANTLR start "rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1"
-    // InternalOCLstdlib.g:23482:1: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 : ( ruleTemplateBindingCS ) ;
+    // InternalOCLstdlib.g:23486:1: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 : ( ruleTemplateBindingCS ) ;
     public final void rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23486:1: ( ( ruleTemplateBindingCS ) )
-            // InternalOCLstdlib.g:23487:1: ( ruleTemplateBindingCS )
+            // InternalOCLstdlib.g:23490:1: ( ( ruleTemplateBindingCS ) )
+            // InternalOCLstdlib.g:23491:1: ( ruleTemplateBindingCS )
             {
-            // InternalOCLstdlib.g:23487:1: ( ruleTemplateBindingCS )
-            // InternalOCLstdlib.g:23488:1: ruleTemplateBindingCS
+            // InternalOCLstdlib.g:23491:1: ( ruleTemplateBindingCS )
+            // InternalOCLstdlib.g:23492:1: ruleTemplateBindingCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0());
@@ -68054,17 +68054,17 @@
 
 
     // $ANTLR start "rule__TuplePartCS__NameAssignment_0"
-    // InternalOCLstdlib.g:23497:1: rule__TuplePartCS__NameAssignment_0 : ( ruleIdentifier ) ;
+    // InternalOCLstdlib.g:23501:1: rule__TuplePartCS__NameAssignment_0 : ( ruleIdentifier ) ;
     public final void rule__TuplePartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23501:1: ( ( ruleIdentifier ) )
-            // InternalOCLstdlib.g:23502:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:23505:1: ( ( ruleIdentifier ) )
+            // InternalOCLstdlib.g:23506:1: ( ruleIdentifier )
             {
-            // InternalOCLstdlib.g:23502:1: ( ruleIdentifier )
-            // InternalOCLstdlib.g:23503:1: ruleIdentifier
+            // InternalOCLstdlib.g:23506:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:23507:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getNameIdentifierParserRuleCall_0_0());
@@ -68099,17 +68099,17 @@
 
 
     // $ANTLR start "rule__TuplePartCS__OwnedTypeAssignment_2"
-    // InternalOCLstdlib.g:23512:1: rule__TuplePartCS__OwnedTypeAssignment_2 : ( ruleTypedMultiplicityRefCS ) ;
+    // InternalOCLstdlib.g:23516:1: rule__TuplePartCS__OwnedTypeAssignment_2 : ( ruleTypedMultiplicityRefCS ) ;
     public final void rule__TuplePartCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23516:1: ( ( ruleTypedMultiplicityRefCS ) )
-            // InternalOCLstdlib.g:23517:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:23520:1: ( ( ruleTypedMultiplicityRefCS ) )
+            // InternalOCLstdlib.g:23521:1: ( ruleTypedMultiplicityRefCS )
             {
-            // InternalOCLstdlib.g:23517:1: ( ruleTypedMultiplicityRefCS )
-            // InternalOCLstdlib.g:23518:1: ruleTypedMultiplicityRefCS
+            // InternalOCLstdlib.g:23521:1: ( ruleTypedMultiplicityRefCS )
+            // InternalOCLstdlib.g:23522:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
@@ -68144,17 +68144,17 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__OwnedPathElementsAssignment_0"
-    // InternalOCLstdlib.g:23528:1: rule__URIPathNameCS__OwnedPathElementsAssignment_0 : ( ruleURIFirstPathElementCS ) ;
+    // InternalOCLstdlib.g:23532:1: rule__URIPathNameCS__OwnedPathElementsAssignment_0 : ( ruleURIFirstPathElementCS ) ;
     public final void rule__URIPathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23532:1: ( ( ruleURIFirstPathElementCS ) )
-            // InternalOCLstdlib.g:23533:1: ( ruleURIFirstPathElementCS )
+            // InternalOCLstdlib.g:23536:1: ( ( ruleURIFirstPathElementCS ) )
+            // InternalOCLstdlib.g:23537:1: ( ruleURIFirstPathElementCS )
             {
-            // InternalOCLstdlib.g:23533:1: ( ruleURIFirstPathElementCS )
-            // InternalOCLstdlib.g:23534:1: ruleURIFirstPathElementCS
+            // InternalOCLstdlib.g:23537:1: ( ruleURIFirstPathElementCS )
+            // InternalOCLstdlib.g:23538:1: ruleURIFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
@@ -68189,17 +68189,17 @@
 
 
     // $ANTLR start "rule__URIPathNameCS__OwnedPathElementsAssignment_1_1"
-    // InternalOCLstdlib.g:23543:1: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
+    // InternalOCLstdlib.g:23547:1: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
     public final void rule__URIPathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23547:1: ( ( ruleNextPathElementCS ) )
-            // InternalOCLstdlib.g:23548:1: ( ruleNextPathElementCS )
+            // InternalOCLstdlib.g:23551:1: ( ( ruleNextPathElementCS ) )
+            // InternalOCLstdlib.g:23552:1: ( ruleNextPathElementCS )
             {
-            // InternalOCLstdlib.g:23548:1: ( ruleNextPathElementCS )
-            // InternalOCLstdlib.g:23549:1: ruleNextPathElementCS
+            // InternalOCLstdlib.g:23552:1: ( ruleNextPathElementCS )
+            // InternalOCLstdlib.g:23553:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
@@ -68234,23 +68234,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__ReferredElementAssignment_0"
-    // InternalOCLstdlib.g:23558:1: rule__URIFirstPathElementCS__ReferredElementAssignment_0 : ( ( ruleUnrestrictedName ) ) ;
+    // InternalOCLstdlib.g:23562:1: rule__URIFirstPathElementCS__ReferredElementAssignment_0 : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23562:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalOCLstdlib.g:23563:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:23566:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalOCLstdlib.g:23567:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalOCLstdlib.g:23563:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:23564:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:23567:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:23568:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
             }
-            // InternalOCLstdlib.g:23565:1: ( ruleUnrestrictedName )
-            // InternalOCLstdlib.g:23566:1: ruleUnrestrictedName
+            // InternalOCLstdlib.g:23569:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:23570:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1());
@@ -68291,23 +68291,23 @@
 
 
     // $ANTLR start "rule__URIFirstPathElementCS__ReferredElementAssignment_1_1"
-    // InternalOCLstdlib.g:23577:1: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 : ( ( ruleURI ) ) ;
+    // InternalOCLstdlib.g:23581:1: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 : ( ( ruleURI ) ) ;
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23581:1: ( ( ( ruleURI ) ) )
-            // InternalOCLstdlib.g:23582:1: ( ( ruleURI ) )
+            // InternalOCLstdlib.g:23585:1: ( ( ( ruleURI ) ) )
+            // InternalOCLstdlib.g:23586:1: ( ( ruleURI ) )
             {
-            // InternalOCLstdlib.g:23582:1: ( ( ruleURI ) )
-            // InternalOCLstdlib.g:23583:1: ( ruleURI )
+            // InternalOCLstdlib.g:23586:1: ( ( ruleURI ) )
+            // InternalOCLstdlib.g:23587:1: ( ruleURI )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
             }
-            // InternalOCLstdlib.g:23584:1: ( ruleURI )
-            // InternalOCLstdlib.g:23585:1: ruleURI
+            // InternalOCLstdlib.g:23588:1: ( ruleURI )
+            // InternalOCLstdlib.g:23589:1: ruleURI
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1());
@@ -68348,17 +68348,17 @@
 
 
     // $ANTLR start "rule__PrimitiveTypeCS__NameAssignment"
-    // InternalOCLstdlib.g:23597:1: rule__PrimitiveTypeCS__NameAssignment : ( rulePrimitiveTypeIdentifier ) ;
+    // InternalOCLstdlib.g:23601:1: rule__PrimitiveTypeCS__NameAssignment : ( rulePrimitiveTypeIdentifier ) ;
     public final void rule__PrimitiveTypeCS__NameAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23601:1: ( ( rulePrimitiveTypeIdentifier ) )
-            // InternalOCLstdlib.g:23602:1: ( rulePrimitiveTypeIdentifier )
+            // InternalOCLstdlib.g:23605:1: ( ( rulePrimitiveTypeIdentifier ) )
+            // InternalOCLstdlib.g:23606:1: ( rulePrimitiveTypeIdentifier )
             {
-            // InternalOCLstdlib.g:23602:1: ( rulePrimitiveTypeIdentifier )
-            // InternalOCLstdlib.g:23603:1: rulePrimitiveTypeIdentifier
+            // InternalOCLstdlib.g:23606:1: ( rulePrimitiveTypeIdentifier )
+            // InternalOCLstdlib.g:23607:1: rulePrimitiveTypeIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
@@ -68393,17 +68393,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__NameAssignment_0"
-    // InternalOCLstdlib.g:23612:1: rule__CollectionTypeCS__NameAssignment_0 : ( ruleCollectionTypeIdentifier ) ;
+    // InternalOCLstdlib.g:23616:1: rule__CollectionTypeCS__NameAssignment_0 : ( ruleCollectionTypeIdentifier ) ;
     public final void rule__CollectionTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23616:1: ( ( ruleCollectionTypeIdentifier ) )
-            // InternalOCLstdlib.g:23617:1: ( ruleCollectionTypeIdentifier )
+            // InternalOCLstdlib.g:23620:1: ( ( ruleCollectionTypeIdentifier ) )
+            // InternalOCLstdlib.g:23621:1: ( ruleCollectionTypeIdentifier )
             {
-            // InternalOCLstdlib.g:23617:1: ( ruleCollectionTypeIdentifier )
-            // InternalOCLstdlib.g:23618:1: ruleCollectionTypeIdentifier
+            // InternalOCLstdlib.g:23621:1: ( ruleCollectionTypeIdentifier )
+            // InternalOCLstdlib.g:23622:1: ruleCollectionTypeIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
@@ -68438,17 +68438,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__OwnedTypeAssignment_1_1"
-    // InternalOCLstdlib.g:23627:1: rule__CollectionTypeCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpWithoutMultiplicityCS ) ;
+    // InternalOCLstdlib.g:23631:1: rule__CollectionTypeCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpWithoutMultiplicityCS ) ;
     public final void rule__CollectionTypeCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23631:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
-            // InternalOCLstdlib.g:23632:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalOCLstdlib.g:23635:1: ( ( ruleTypeExpWithoutMultiplicityCS ) )
+            // InternalOCLstdlib.g:23636:1: ( ruleTypeExpWithoutMultiplicityCS )
             {
-            // InternalOCLstdlib.g:23632:1: ( ruleTypeExpWithoutMultiplicityCS )
-            // InternalOCLstdlib.g:23633:1: ruleTypeExpWithoutMultiplicityCS
+            // InternalOCLstdlib.g:23636:1: ( ruleTypeExpWithoutMultiplicityCS )
+            // InternalOCLstdlib.g:23637:1: ruleTypeExpWithoutMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpWithoutMultiplicityCSParserRuleCall_1_1_0());
@@ -68483,17 +68483,17 @@
 
 
     // $ANTLR start "rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2"
-    // InternalOCLstdlib.g:23642:1: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 : ( ruleMultiplicityCS ) ;
+    // InternalOCLstdlib.g:23646:1: rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2 : ( ruleMultiplicityCS ) ;
     public final void rule__CollectionTypeCS__OwnedCollectionMultiplicityAssignment_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23646:1: ( ( ruleMultiplicityCS ) )
-            // InternalOCLstdlib.g:23647:1: ( ruleMultiplicityCS )
+            // InternalOCLstdlib.g:23650:1: ( ( ruleMultiplicityCS ) )
+            // InternalOCLstdlib.g:23651:1: ( ruleMultiplicityCS )
             {
-            // InternalOCLstdlib.g:23647:1: ( ruleMultiplicityCS )
-            // InternalOCLstdlib.g:23648:1: ruleMultiplicityCS
+            // InternalOCLstdlib.g:23651:1: ( ruleMultiplicityCS )
+            // InternalOCLstdlib.g:23652:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionTypeCSAccess().getOwnedCollectionMultiplicityMultiplicityCSParserRuleCall_1_2_0());
@@ -68528,23 +68528,23 @@
 
 
     // $ANTLR start "rule__MapTypeCS__NameAssignment_0"
-    // InternalOCLstdlib.g:23657:1: rule__MapTypeCS__NameAssignment_0 : ( ( 'Map' ) ) ;
+    // InternalOCLstdlib.g:23661:1: rule__MapTypeCS__NameAssignment_0 : ( ( 'Map' ) ) ;
     public final void rule__MapTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23661:1: ( ( ( 'Map' ) ) )
-            // InternalOCLstdlib.g:23662:1: ( ( 'Map' ) )
+            // InternalOCLstdlib.g:23665:1: ( ( ( 'Map' ) ) )
+            // InternalOCLstdlib.g:23666:1: ( ( 'Map' ) )
             {
-            // InternalOCLstdlib.g:23662:1: ( ( 'Map' ) )
-            // InternalOCLstdlib.g:23663:1: ( 'Map' )
+            // InternalOCLstdlib.g:23666:1: ( ( 'Map' ) )
+            // InternalOCLstdlib.g:23667:1: ( 'Map' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
-            // InternalOCLstdlib.g:23664:1: ( 'Map' )
-            // InternalOCLstdlib.g:23665:1: 'Map'
+            // InternalOCLstdlib.g:23668:1: ( 'Map' )
+            // InternalOCLstdlib.g:23669:1: 'Map'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
@@ -68581,17 +68581,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__OwnedKeyTypeAssignment_1_1"
-    // InternalOCLstdlib.g:23680:1: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:23684:1: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__MapTypeCS__OwnedKeyTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23684:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:23685:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:23688:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:23689:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:23685:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:23686:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:23689:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:23690:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
@@ -68626,17 +68626,17 @@
 
 
     // $ANTLR start "rule__MapTypeCS__OwnedValueTypeAssignment_1_3"
-    // InternalOCLstdlib.g:23695:1: rule__MapTypeCS__OwnedValueTypeAssignment_1_3 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:23699:1: rule__MapTypeCS__OwnedValueTypeAssignment_1_3 : ( ruleTypeExpCS ) ;
     public final void rule__MapTypeCS__OwnedValueTypeAssignment_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23699:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:23700:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:23703:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:23704:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:23700:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:23701:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:23704:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:23705:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
@@ -68671,23 +68671,23 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__NameAssignment_0"
-    // InternalOCLstdlib.g:23710:1: rule__TupleTypeCS__NameAssignment_0 : ( ( 'Tuple' ) ) ;
+    // InternalOCLstdlib.g:23714:1: rule__TupleTypeCS__NameAssignment_0 : ( ( 'Tuple' ) ) ;
     public final void rule__TupleTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23714:1: ( ( ( 'Tuple' ) ) )
-            // InternalOCLstdlib.g:23715:1: ( ( 'Tuple' ) )
+            // InternalOCLstdlib.g:23718:1: ( ( ( 'Tuple' ) ) )
+            // InternalOCLstdlib.g:23719:1: ( ( 'Tuple' ) )
             {
-            // InternalOCLstdlib.g:23715:1: ( ( 'Tuple' ) )
-            // InternalOCLstdlib.g:23716:1: ( 'Tuple' )
+            // InternalOCLstdlib.g:23719:1: ( ( 'Tuple' ) )
+            // InternalOCLstdlib.g:23720:1: ( 'Tuple' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
-            // InternalOCLstdlib.g:23717:1: ( 'Tuple' )
-            // InternalOCLstdlib.g:23718:1: 'Tuple'
+            // InternalOCLstdlib.g:23721:1: ( 'Tuple' )
+            // InternalOCLstdlib.g:23722:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
@@ -68724,17 +68724,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__OwnedPartsAssignment_1_1_0"
-    // InternalOCLstdlib.g:23733:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 : ( ruleTuplePartCS ) ;
+    // InternalOCLstdlib.g:23737:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 : ( ruleTuplePartCS ) ;
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23737:1: ( ( ruleTuplePartCS ) )
-            // InternalOCLstdlib.g:23738:1: ( ruleTuplePartCS )
+            // InternalOCLstdlib.g:23741:1: ( ( ruleTuplePartCS ) )
+            // InternalOCLstdlib.g:23742:1: ( ruleTuplePartCS )
             {
-            // InternalOCLstdlib.g:23738:1: ( ruleTuplePartCS )
-            // InternalOCLstdlib.g:23739:1: ruleTuplePartCS
+            // InternalOCLstdlib.g:23742:1: ( ruleTuplePartCS )
+            // InternalOCLstdlib.g:23743:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
@@ -68769,17 +68769,17 @@
 
 
     // $ANTLR start "rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1"
-    // InternalOCLstdlib.g:23748:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 : ( ruleTuplePartCS ) ;
+    // InternalOCLstdlib.g:23752:1: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 : ( ruleTuplePartCS ) ;
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23752:1: ( ( ruleTuplePartCS ) )
-            // InternalOCLstdlib.g:23753:1: ( ruleTuplePartCS )
+            // InternalOCLstdlib.g:23756:1: ( ( ruleTuplePartCS ) )
+            // InternalOCLstdlib.g:23757:1: ( ruleTuplePartCS )
             {
-            // InternalOCLstdlib.g:23753:1: ( ruleTuplePartCS )
-            // InternalOCLstdlib.g:23754:1: ruleTuplePartCS
+            // InternalOCLstdlib.g:23757:1: ( ruleTuplePartCS )
+            // InternalOCLstdlib.g:23758:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
@@ -68814,17 +68814,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__OwnedTypeAssignment_0"
-    // InternalOCLstdlib.g:23763:1: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
+    // InternalOCLstdlib.g:23767:1: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
     public final void rule__CollectionLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23767:1: ( ( ruleCollectionTypeCS ) )
-            // InternalOCLstdlib.g:23768:1: ( ruleCollectionTypeCS )
+            // InternalOCLstdlib.g:23771:1: ( ( ruleCollectionTypeCS ) )
+            // InternalOCLstdlib.g:23772:1: ( ruleCollectionTypeCS )
             {
-            // InternalOCLstdlib.g:23768:1: ( ruleCollectionTypeCS )
-            // InternalOCLstdlib.g:23769:1: ruleCollectionTypeCS
+            // InternalOCLstdlib.g:23772:1: ( ruleCollectionTypeCS )
+            // InternalOCLstdlib.g:23773:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
@@ -68859,17 +68859,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0"
-    // InternalOCLstdlib.g:23778:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleCollectionLiteralPartCS ) ;
+    // InternalOCLstdlib.g:23782:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleCollectionLiteralPartCS ) ;
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23782:1: ( ( ruleCollectionLiteralPartCS ) )
-            // InternalOCLstdlib.g:23783:1: ( ruleCollectionLiteralPartCS )
+            // InternalOCLstdlib.g:23786:1: ( ( ruleCollectionLiteralPartCS ) )
+            // InternalOCLstdlib.g:23787:1: ( ruleCollectionLiteralPartCS )
             {
-            // InternalOCLstdlib.g:23783:1: ( ruleCollectionLiteralPartCS )
-            // InternalOCLstdlib.g:23784:1: ruleCollectionLiteralPartCS
+            // InternalOCLstdlib.g:23787:1: ( ruleCollectionLiteralPartCS )
+            // InternalOCLstdlib.g:23788:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
@@ -68904,17 +68904,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1"
-    // InternalOCLstdlib.g:23793:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleCollectionLiteralPartCS ) ;
+    // InternalOCLstdlib.g:23797:1: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleCollectionLiteralPartCS ) ;
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23797:1: ( ( ruleCollectionLiteralPartCS ) )
-            // InternalOCLstdlib.g:23798:1: ( ruleCollectionLiteralPartCS )
+            // InternalOCLstdlib.g:23801:1: ( ( ruleCollectionLiteralPartCS ) )
+            // InternalOCLstdlib.g:23802:1: ( ruleCollectionLiteralPartCS )
             {
-            // InternalOCLstdlib.g:23798:1: ( ruleCollectionLiteralPartCS )
-            // InternalOCLstdlib.g:23799:1: ruleCollectionLiteralPartCS
+            // InternalOCLstdlib.g:23802:1: ( ruleCollectionLiteralPartCS )
+            // InternalOCLstdlib.g:23803:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
@@ -68949,17 +68949,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0"
-    // InternalOCLstdlib.g:23808:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:23812:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 : ( ruleExpCS ) ;
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23812:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:23813:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:23816:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:23817:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:23813:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:23814:1: ruleExpCS
+            // InternalOCLstdlib.g:23817:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:23818:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
@@ -68994,17 +68994,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1"
-    // InternalOCLstdlib.g:23823:1: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:23827:1: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 : ( ruleExpCS ) ;
     public final void rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23827:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:23828:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:23831:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:23832:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:23828:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:23829:1: ruleExpCS
+            // InternalOCLstdlib.g:23832:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:23833:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
@@ -69039,17 +69039,17 @@
 
 
     // $ANTLR start "rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1"
-    // InternalOCLstdlib.g:23838:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 : ( rulePatternExpCS ) ;
+    // InternalOCLstdlib.g:23842:1: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 : ( rulePatternExpCS ) ;
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23842:1: ( ( rulePatternExpCS ) )
-            // InternalOCLstdlib.g:23843:1: ( rulePatternExpCS )
+            // InternalOCLstdlib.g:23846:1: ( ( rulePatternExpCS ) )
+            // InternalOCLstdlib.g:23847:1: ( rulePatternExpCS )
             {
-            // InternalOCLstdlib.g:23843:1: ( rulePatternExpCS )
-            // InternalOCLstdlib.g:23844:1: rulePatternExpCS
+            // InternalOCLstdlib.g:23847:1: ( rulePatternExpCS )
+            // InternalOCLstdlib.g:23848:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
@@ -69084,17 +69084,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__OwnedTypeAssignment_0"
-    // InternalOCLstdlib.g:23853:1: rule__CollectionPatternCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
+    // InternalOCLstdlib.g:23857:1: rule__CollectionPatternCS__OwnedTypeAssignment_0 : ( ruleCollectionTypeCS ) ;
     public final void rule__CollectionPatternCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23857:1: ( ( ruleCollectionTypeCS ) )
-            // InternalOCLstdlib.g:23858:1: ( ruleCollectionTypeCS )
+            // InternalOCLstdlib.g:23861:1: ( ( ruleCollectionTypeCS ) )
+            // InternalOCLstdlib.g:23862:1: ( ruleCollectionTypeCS )
             {
-            // InternalOCLstdlib.g:23858:1: ( ruleCollectionTypeCS )
-            // InternalOCLstdlib.g:23859:1: ruleCollectionTypeCS
+            // InternalOCLstdlib.g:23862:1: ( ruleCollectionTypeCS )
+            // InternalOCLstdlib.g:23863:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
@@ -69129,17 +69129,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__OwnedPartsAssignment_2_0"
-    // InternalOCLstdlib.g:23868:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_0 : ( rulePatternExpCS ) ;
+    // InternalOCLstdlib.g:23872:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_0 : ( rulePatternExpCS ) ;
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23872:1: ( ( rulePatternExpCS ) )
-            // InternalOCLstdlib.g:23873:1: ( rulePatternExpCS )
+            // InternalOCLstdlib.g:23876:1: ( ( rulePatternExpCS ) )
+            // InternalOCLstdlib.g:23877:1: ( rulePatternExpCS )
             {
-            // InternalOCLstdlib.g:23873:1: ( rulePatternExpCS )
-            // InternalOCLstdlib.g:23874:1: rulePatternExpCS
+            // InternalOCLstdlib.g:23877:1: ( rulePatternExpCS )
+            // InternalOCLstdlib.g:23878:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
@@ -69174,17 +69174,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1"
-    // InternalOCLstdlib.g:23883:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 : ( rulePatternExpCS ) ;
+    // InternalOCLstdlib.g:23887:1: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 : ( rulePatternExpCS ) ;
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23887:1: ( ( rulePatternExpCS ) )
-            // InternalOCLstdlib.g:23888:1: ( rulePatternExpCS )
+            // InternalOCLstdlib.g:23891:1: ( ( rulePatternExpCS ) )
+            // InternalOCLstdlib.g:23892:1: ( rulePatternExpCS )
             {
-            // InternalOCLstdlib.g:23888:1: ( rulePatternExpCS )
-            // InternalOCLstdlib.g:23889:1: rulePatternExpCS
+            // InternalOCLstdlib.g:23892:1: ( rulePatternExpCS )
+            // InternalOCLstdlib.g:23893:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
@@ -69219,17 +69219,17 @@
 
 
     // $ANTLR start "rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1"
-    // InternalOCLstdlib.g:23898:1: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 : ( ruleIdentifier ) ;
+    // InternalOCLstdlib.g:23902:1: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 : ( ruleIdentifier ) ;
     public final void rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23902:1: ( ( ruleIdentifier ) )
-            // InternalOCLstdlib.g:23903:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:23906:1: ( ( ruleIdentifier ) )
+            // InternalOCLstdlib.g:23907:1: ( ruleIdentifier )
             {
-            // InternalOCLstdlib.g:23903:1: ( ruleIdentifier )
-            // InternalOCLstdlib.g:23904:1: ruleIdentifier
+            // InternalOCLstdlib.g:23907:1: ( ruleIdentifier )
+            // InternalOCLstdlib.g:23908:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
@@ -69264,23 +69264,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__ReferredPropertyAssignment_0_0"
-    // InternalOCLstdlib.g:23913:1: rule__ShadowPartCS__ReferredPropertyAssignment_0_0 : ( ( ruleUnrestrictedName ) ) ;
+    // InternalOCLstdlib.g:23917:1: rule__ShadowPartCS__ReferredPropertyAssignment_0_0 : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__ShadowPartCS__ReferredPropertyAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23917:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalOCLstdlib.g:23918:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:23921:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalOCLstdlib.g:23922:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalOCLstdlib.g:23918:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:23919:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:23922:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:23923:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0_0());
             }
-            // InternalOCLstdlib.g:23920:1: ( ruleUnrestrictedName )
-            // InternalOCLstdlib.g:23921:1: ruleUnrestrictedName
+            // InternalOCLstdlib.g:23924:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:23925:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_0_1());
@@ -69321,23 +69321,23 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2"
-    // InternalOCLstdlib.g:23932:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 : ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) ;
+    // InternalOCLstdlib.g:23936:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2 : ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) ;
     public final void rule__ShadowPartCS__OwnedInitExpressionAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23936:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) )
-            // InternalOCLstdlib.g:23937:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
+            // InternalOCLstdlib.g:23940:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) ) )
+            // InternalOCLstdlib.g:23941:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
             {
-            // InternalOCLstdlib.g:23937:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
-            // InternalOCLstdlib.g:23938:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
+            // InternalOCLstdlib.g:23941:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 ) )
+            // InternalOCLstdlib.g:23942:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_0_2_0());
             }
-            // InternalOCLstdlib.g:23939:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
-            // InternalOCLstdlib.g:23939:2: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0
+            // InternalOCLstdlib.g:23943:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 )
+            // InternalOCLstdlib.g:23943:2: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0();
@@ -69372,17 +69372,17 @@
 
 
     // $ANTLR start "rule__ShadowPartCS__OwnedInitExpressionAssignment_1"
-    // InternalOCLstdlib.g:23948:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_1 : ( ruleStringLiteralExpCS ) ;
+    // InternalOCLstdlib.g:23952:1: rule__ShadowPartCS__OwnedInitExpressionAssignment_1 : ( ruleStringLiteralExpCS ) ;
     public final void rule__ShadowPartCS__OwnedInitExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23952:1: ( ( ruleStringLiteralExpCS ) )
-            // InternalOCLstdlib.g:23953:1: ( ruleStringLiteralExpCS )
+            // InternalOCLstdlib.g:23956:1: ( ( ruleStringLiteralExpCS ) )
+            // InternalOCLstdlib.g:23957:1: ( ruleStringLiteralExpCS )
             {
-            // InternalOCLstdlib.g:23953:1: ( ruleStringLiteralExpCS )
-            // InternalOCLstdlib.g:23954:1: ruleStringLiteralExpCS
+            // InternalOCLstdlib.g:23957:1: ( ruleStringLiteralExpCS )
+            // InternalOCLstdlib.g:23958:1: ruleStringLiteralExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionStringLiteralExpCSParserRuleCall_1_0());
@@ -69417,17 +69417,17 @@
 
 
     // $ANTLR start "rule__PatternExpCS__PatternVariableNameAssignment_0"
-    // InternalOCLstdlib.g:23963:1: rule__PatternExpCS__PatternVariableNameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLstdlib.g:23967:1: rule__PatternExpCS__PatternVariableNameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__PatternExpCS__PatternVariableNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23967:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:23968:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:23971:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:23972:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLstdlib.g:23968:1: ( ruleUnrestrictedName )
-            // InternalOCLstdlib.g:23969:1: ruleUnrestrictedName
+            // InternalOCLstdlib.g:23972:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:23973:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
@@ -69462,17 +69462,17 @@
 
 
     // $ANTLR start "rule__PatternExpCS__OwnedPatternTypeAssignment_2"
-    // InternalOCLstdlib.g:23978:1: rule__PatternExpCS__OwnedPatternTypeAssignment_2 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:23982:1: rule__PatternExpCS__OwnedPatternTypeAssignment_2 : ( ruleTypeExpCS ) ;
     public final void rule__PatternExpCS__OwnedPatternTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23982:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:23983:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:23986:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:23987:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:23983:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:23984:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:23987:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:23988:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
@@ -69507,17 +69507,17 @@
 
 
     // $ANTLR start "rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2"
-    // InternalOCLstdlib.g:23993:1: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:23997:1: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 : ( ruleExpCS ) ;
     public final void rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:23997:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:23998:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24001:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24002:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:23998:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:23999:1: ruleExpCS
+            // InternalOCLstdlib.g:24002:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24003:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
@@ -69552,17 +69552,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__OwnedTypeAssignment_0"
-    // InternalOCLstdlib.g:24008:1: rule__MapLiteralExpCS__OwnedTypeAssignment_0 : ( ruleMapTypeCS ) ;
+    // InternalOCLstdlib.g:24012:1: rule__MapLiteralExpCS__OwnedTypeAssignment_0 : ( ruleMapTypeCS ) ;
     public final void rule__MapLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24012:1: ( ( ruleMapTypeCS ) )
-            // InternalOCLstdlib.g:24013:1: ( ruleMapTypeCS )
+            // InternalOCLstdlib.g:24016:1: ( ( ruleMapTypeCS ) )
+            // InternalOCLstdlib.g:24017:1: ( ruleMapTypeCS )
             {
-            // InternalOCLstdlib.g:24013:1: ( ruleMapTypeCS )
-            // InternalOCLstdlib.g:24014:1: ruleMapTypeCS
+            // InternalOCLstdlib.g:24017:1: ( ruleMapTypeCS )
+            // InternalOCLstdlib.g:24018:1: ruleMapTypeCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
@@ -69597,17 +69597,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__OwnedPartsAssignment_2_0"
-    // InternalOCLstdlib.g:24023:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleMapLiteralPartCS ) ;
+    // InternalOCLstdlib.g:24027:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 : ( ruleMapLiteralPartCS ) ;
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24027:1: ( ( ruleMapLiteralPartCS ) )
-            // InternalOCLstdlib.g:24028:1: ( ruleMapLiteralPartCS )
+            // InternalOCLstdlib.g:24031:1: ( ( ruleMapLiteralPartCS ) )
+            // InternalOCLstdlib.g:24032:1: ( ruleMapLiteralPartCS )
             {
-            // InternalOCLstdlib.g:24028:1: ( ruleMapLiteralPartCS )
-            // InternalOCLstdlib.g:24029:1: ruleMapLiteralPartCS
+            // InternalOCLstdlib.g:24032:1: ( ruleMapLiteralPartCS )
+            // InternalOCLstdlib.g:24033:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
@@ -69642,17 +69642,17 @@
 
 
     // $ANTLR start "rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1"
-    // InternalOCLstdlib.g:24038:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleMapLiteralPartCS ) ;
+    // InternalOCLstdlib.g:24042:1: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 : ( ruleMapLiteralPartCS ) ;
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24042:1: ( ( ruleMapLiteralPartCS ) )
-            // InternalOCLstdlib.g:24043:1: ( ruleMapLiteralPartCS )
+            // InternalOCLstdlib.g:24046:1: ( ( ruleMapLiteralPartCS ) )
+            // InternalOCLstdlib.g:24047:1: ( ruleMapLiteralPartCS )
             {
-            // InternalOCLstdlib.g:24043:1: ( ruleMapLiteralPartCS )
-            // InternalOCLstdlib.g:24044:1: ruleMapLiteralPartCS
+            // InternalOCLstdlib.g:24047:1: ( ruleMapLiteralPartCS )
+            // InternalOCLstdlib.g:24048:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
@@ -69687,17 +69687,17 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__OwnedKeyAssignment_0"
-    // InternalOCLstdlib.g:24053:1: rule__MapLiteralPartCS__OwnedKeyAssignment_0 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24057:1: rule__MapLiteralPartCS__OwnedKeyAssignment_0 : ( ruleExpCS ) ;
     public final void rule__MapLiteralPartCS__OwnedKeyAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24057:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24058:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24061:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24062:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24058:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24059:1: ruleExpCS
+            // InternalOCLstdlib.g:24062:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24063:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
@@ -69732,17 +69732,17 @@
 
 
     // $ANTLR start "rule__MapLiteralPartCS__OwnedValueAssignment_2"
-    // InternalOCLstdlib.g:24068:1: rule__MapLiteralPartCS__OwnedValueAssignment_2 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24072:1: rule__MapLiteralPartCS__OwnedValueAssignment_2 : ( ruleExpCS ) ;
     public final void rule__MapLiteralPartCS__OwnedValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24072:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24073:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24076:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24077:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24073:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24074:1: ruleExpCS
+            // InternalOCLstdlib.g:24077:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24078:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
@@ -69777,17 +69777,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__OwnedPartsAssignment_2"
-    // InternalOCLstdlib.g:24083:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_2 : ( ruleTupleLiteralPartCS ) ;
+    // InternalOCLstdlib.g:24087:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_2 : ( ruleTupleLiteralPartCS ) ;
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24087:1: ( ( ruleTupleLiteralPartCS ) )
-            // InternalOCLstdlib.g:24088:1: ( ruleTupleLiteralPartCS )
+            // InternalOCLstdlib.g:24091:1: ( ( ruleTupleLiteralPartCS ) )
+            // InternalOCLstdlib.g:24092:1: ( ruleTupleLiteralPartCS )
             {
-            // InternalOCLstdlib.g:24088:1: ( ruleTupleLiteralPartCS )
-            // InternalOCLstdlib.g:24089:1: ruleTupleLiteralPartCS
+            // InternalOCLstdlib.g:24092:1: ( ruleTupleLiteralPartCS )
+            // InternalOCLstdlib.g:24093:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
@@ -69822,17 +69822,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1"
-    // InternalOCLstdlib.g:24098:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 : ( ruleTupleLiteralPartCS ) ;
+    // InternalOCLstdlib.g:24102:1: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 : ( ruleTupleLiteralPartCS ) ;
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24102:1: ( ( ruleTupleLiteralPartCS ) )
-            // InternalOCLstdlib.g:24103:1: ( ruleTupleLiteralPartCS )
+            // InternalOCLstdlib.g:24106:1: ( ( ruleTupleLiteralPartCS ) )
+            // InternalOCLstdlib.g:24107:1: ( ruleTupleLiteralPartCS )
             {
-            // InternalOCLstdlib.g:24103:1: ( ruleTupleLiteralPartCS )
-            // InternalOCLstdlib.g:24104:1: ruleTupleLiteralPartCS
+            // InternalOCLstdlib.g:24107:1: ( ruleTupleLiteralPartCS )
+            // InternalOCLstdlib.g:24108:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
@@ -69867,17 +69867,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__NameAssignment_0"
-    // InternalOCLstdlib.g:24113:1: rule__TupleLiteralPartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLstdlib.g:24117:1: rule__TupleLiteralPartCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__TupleLiteralPartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24117:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:24118:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:24121:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:24122:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLstdlib.g:24118:1: ( ruleUnrestrictedName )
-            // InternalOCLstdlib.g:24119:1: ruleUnrestrictedName
+            // InternalOCLstdlib.g:24122:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:24123:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -69912,17 +69912,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1"
-    // InternalOCLstdlib.g:24128:1: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:24132:1: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24132:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:24133:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24136:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:24137:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:24133:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:24134:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:24137:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24138:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
@@ -69957,17 +69957,17 @@
 
 
     // $ANTLR start "rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3"
-    // InternalOCLstdlib.g:24143:1: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24147:1: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 : ( ruleExpCS ) ;
     public final void rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24147:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24148:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24151:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24152:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24148:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24149:1: ruleExpCS
+            // InternalOCLstdlib.g:24152:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24153:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
@@ -70002,17 +70002,17 @@
 
 
     // $ANTLR start "rule__NumberLiteralExpCS__SymbolAssignment"
-    // InternalOCLstdlib.g:24158:1: rule__NumberLiteralExpCS__SymbolAssignment : ( ruleNUMBER_LITERAL ) ;
+    // InternalOCLstdlib.g:24162:1: rule__NumberLiteralExpCS__SymbolAssignment : ( ruleNUMBER_LITERAL ) ;
     public final void rule__NumberLiteralExpCS__SymbolAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24162:1: ( ( ruleNUMBER_LITERAL ) )
-            // InternalOCLstdlib.g:24163:1: ( ruleNUMBER_LITERAL )
+            // InternalOCLstdlib.g:24166:1: ( ( ruleNUMBER_LITERAL ) )
+            // InternalOCLstdlib.g:24167:1: ( ruleNUMBER_LITERAL )
             {
-            // InternalOCLstdlib.g:24163:1: ( ruleNUMBER_LITERAL )
-            // InternalOCLstdlib.g:24164:1: ruleNUMBER_LITERAL
+            // InternalOCLstdlib.g:24167:1: ( ruleNUMBER_LITERAL )
+            // InternalOCLstdlib.g:24168:1: ruleNUMBER_LITERAL
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
@@ -70047,17 +70047,17 @@
 
 
     // $ANTLR start "rule__StringLiteralExpCS__SegmentsAssignment"
-    // InternalOCLstdlib.g:24173:1: rule__StringLiteralExpCS__SegmentsAssignment : ( ruleStringLiteral ) ;
+    // InternalOCLstdlib.g:24177:1: rule__StringLiteralExpCS__SegmentsAssignment : ( ruleStringLiteral ) ;
     public final void rule__StringLiteralExpCS__SegmentsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24177:1: ( ( ruleStringLiteral ) )
-            // InternalOCLstdlib.g:24178:1: ( ruleStringLiteral )
+            // InternalOCLstdlib.g:24181:1: ( ( ruleStringLiteral ) )
+            // InternalOCLstdlib.g:24182:1: ( ruleStringLiteral )
             {
-            // InternalOCLstdlib.g:24178:1: ( ruleStringLiteral )
-            // InternalOCLstdlib.g:24179:1: ruleStringLiteral
+            // InternalOCLstdlib.g:24182:1: ( ruleStringLiteral )
+            // InternalOCLstdlib.g:24183:1: ruleStringLiteral
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
@@ -70092,23 +70092,23 @@
 
 
     // $ANTLR start "rule__BooleanLiteralExpCS__SymbolAssignment_0"
-    // InternalOCLstdlib.g:24188:1: rule__BooleanLiteralExpCS__SymbolAssignment_0 : ( ( 'true' ) ) ;
+    // InternalOCLstdlib.g:24192:1: rule__BooleanLiteralExpCS__SymbolAssignment_0 : ( ( 'true' ) ) ;
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24192:1: ( ( ( 'true' ) ) )
-            // InternalOCLstdlib.g:24193:1: ( ( 'true' ) )
+            // InternalOCLstdlib.g:24196:1: ( ( ( 'true' ) ) )
+            // InternalOCLstdlib.g:24197:1: ( ( 'true' ) )
             {
-            // InternalOCLstdlib.g:24193:1: ( ( 'true' ) )
-            // InternalOCLstdlib.g:24194:1: ( 'true' )
+            // InternalOCLstdlib.g:24197:1: ( ( 'true' ) )
+            // InternalOCLstdlib.g:24198:1: ( 'true' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
-            // InternalOCLstdlib.g:24195:1: ( 'true' )
-            // InternalOCLstdlib.g:24196:1: 'true'
+            // InternalOCLstdlib.g:24199:1: ( 'true' )
+            // InternalOCLstdlib.g:24200:1: 'true'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
@@ -70145,23 +70145,23 @@
 
 
     // $ANTLR start "rule__BooleanLiteralExpCS__SymbolAssignment_1"
-    // InternalOCLstdlib.g:24211:1: rule__BooleanLiteralExpCS__SymbolAssignment_1 : ( ( 'false' ) ) ;
+    // InternalOCLstdlib.g:24215:1: rule__BooleanLiteralExpCS__SymbolAssignment_1 : ( ( 'false' ) ) ;
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24215:1: ( ( ( 'false' ) ) )
-            // InternalOCLstdlib.g:24216:1: ( ( 'false' ) )
+            // InternalOCLstdlib.g:24219:1: ( ( ( 'false' ) ) )
+            // InternalOCLstdlib.g:24220:1: ( ( 'false' ) )
             {
-            // InternalOCLstdlib.g:24216:1: ( ( 'false' ) )
-            // InternalOCLstdlib.g:24217:1: ( 'false' )
+            // InternalOCLstdlib.g:24220:1: ( ( 'false' ) )
+            // InternalOCLstdlib.g:24221:1: ( 'false' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
-            // InternalOCLstdlib.g:24218:1: ( 'false' )
-            // InternalOCLstdlib.g:24219:1: 'false'
+            // InternalOCLstdlib.g:24222:1: ( 'false' )
+            // InternalOCLstdlib.g:24223:1: 'false'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
@@ -70198,17 +70198,17 @@
 
 
     // $ANTLR start "rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1"
-    // InternalOCLstdlib.g:24234:1: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
+    // InternalOCLstdlib.g:24238:1: rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
     public final void rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24238:1: ( ( ruleMultiplicityCS ) )
-            // InternalOCLstdlib.g:24239:1: ( ruleMultiplicityCS )
+            // InternalOCLstdlib.g:24242:1: ( ( ruleMultiplicityCS ) )
+            // InternalOCLstdlib.g:24243:1: ( ruleMultiplicityCS )
             {
-            // InternalOCLstdlib.g:24239:1: ( ruleMultiplicityCS )
-            // InternalOCLstdlib.g:24240:1: ruleMultiplicityCS
+            // InternalOCLstdlib.g:24243:1: ( ruleMultiplicityCS )
+            // InternalOCLstdlib.g:24244:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
@@ -70243,17 +70243,17 @@
 
 
     // $ANTLR start "rule__TypeLiteralExpCS__OwnedTypeAssignment"
-    // InternalOCLstdlib.g:24249:1: rule__TypeLiteralExpCS__OwnedTypeAssignment : ( ruleTypeLiteralWithMultiplicityCS ) ;
+    // InternalOCLstdlib.g:24253:1: rule__TypeLiteralExpCS__OwnedTypeAssignment : ( ruleTypeLiteralWithMultiplicityCS ) ;
     public final void rule__TypeLiteralExpCS__OwnedTypeAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24253:1: ( ( ruleTypeLiteralWithMultiplicityCS ) )
-            // InternalOCLstdlib.g:24254:1: ( ruleTypeLiteralWithMultiplicityCS )
+            // InternalOCLstdlib.g:24257:1: ( ( ruleTypeLiteralWithMultiplicityCS ) )
+            // InternalOCLstdlib.g:24258:1: ( ruleTypeLiteralWithMultiplicityCS )
             {
-            // InternalOCLstdlib.g:24254:1: ( ruleTypeLiteralWithMultiplicityCS )
-            // InternalOCLstdlib.g:24255:1: ruleTypeLiteralWithMultiplicityCS
+            // InternalOCLstdlib.g:24258:1: ( ruleTypeLiteralWithMultiplicityCS )
+            // InternalOCLstdlib.g:24259:1: ruleTypeLiteralWithMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
@@ -70288,17 +70288,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__OwnedPathNameAssignment_0"
-    // InternalOCLstdlib.g:24264:1: rule__TypeNameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
+    // InternalOCLstdlib.g:24268:1: rule__TypeNameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
     public final void rule__TypeNameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24268:1: ( ( rulePathNameCS ) )
-            // InternalOCLstdlib.g:24269:1: ( rulePathNameCS )
+            // InternalOCLstdlib.g:24272:1: ( ( rulePathNameCS ) )
+            // InternalOCLstdlib.g:24273:1: ( rulePathNameCS )
             {
-            // InternalOCLstdlib.g:24269:1: ( rulePathNameCS )
-            // InternalOCLstdlib.g:24270:1: rulePathNameCS
+            // InternalOCLstdlib.g:24273:1: ( rulePathNameCS )
+            // InternalOCLstdlib.g:24274:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
@@ -70333,17 +70333,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0"
-    // InternalOCLstdlib.g:24279:1: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 : ( ruleCurlyBracketedClauseCS ) ;
+    // InternalOCLstdlib.g:24283:1: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 : ( ruleCurlyBracketedClauseCS ) ;
     public final void rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24283:1: ( ( ruleCurlyBracketedClauseCS ) )
-            // InternalOCLstdlib.g:24284:1: ( ruleCurlyBracketedClauseCS )
+            // InternalOCLstdlib.g:24287:1: ( ( ruleCurlyBracketedClauseCS ) )
+            // InternalOCLstdlib.g:24288:1: ( ruleCurlyBracketedClauseCS )
             {
-            // InternalOCLstdlib.g:24284:1: ( ruleCurlyBracketedClauseCS )
-            // InternalOCLstdlib.g:24285:1: ruleCurlyBracketedClauseCS
+            // InternalOCLstdlib.g:24288:1: ( ruleCurlyBracketedClauseCS )
+            // InternalOCLstdlib.g:24289:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
@@ -70378,17 +70378,17 @@
 
 
     // $ANTLR start "rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1"
-    // InternalOCLstdlib.g:24294:1: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24298:1: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 : ( ruleExpCS ) ;
     public final void rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24298:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24299:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24302:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24303:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24299:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24300:1: ruleExpCS
+            // InternalOCLstdlib.g:24303:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24304:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
@@ -70423,17 +70423,17 @@
 
 
     // $ANTLR start "rule__TypeExpCS__OwnedMultiplicityAssignment_1"
-    // InternalOCLstdlib.g:24309:1: rule__TypeExpCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
+    // InternalOCLstdlib.g:24313:1: rule__TypeExpCS__OwnedMultiplicityAssignment_1 : ( ruleMultiplicityCS ) ;
     public final void rule__TypeExpCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24313:1: ( ( ruleMultiplicityCS ) )
-            // InternalOCLstdlib.g:24314:1: ( ruleMultiplicityCS )
+            // InternalOCLstdlib.g:24317:1: ( ( ruleMultiplicityCS ) )
+            // InternalOCLstdlib.g:24318:1: ( ruleMultiplicityCS )
             {
-            // InternalOCLstdlib.g:24314:1: ( ruleMultiplicityCS )
-            // InternalOCLstdlib.g:24315:1: ruleMultiplicityCS
+            // InternalOCLstdlib.g:24318:1: ( ruleMultiplicityCS )
+            // InternalOCLstdlib.g:24319:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
@@ -70468,17 +70468,17 @@
 
 
     // $ANTLR start "rule__ExpCS__NameAssignment_0_1_1"
-    // InternalOCLstdlib.g:24324:1: rule__ExpCS__NameAssignment_0_1_1 : ( ruleBinaryOperatorName ) ;
+    // InternalOCLstdlib.g:24328:1: rule__ExpCS__NameAssignment_0_1_1 : ( ruleBinaryOperatorName ) ;
     public final void rule__ExpCS__NameAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24328:1: ( ( ruleBinaryOperatorName ) )
-            // InternalOCLstdlib.g:24329:1: ( ruleBinaryOperatorName )
+            // InternalOCLstdlib.g:24332:1: ( ( ruleBinaryOperatorName ) )
+            // InternalOCLstdlib.g:24333:1: ( ruleBinaryOperatorName )
             {
-            // InternalOCLstdlib.g:24329:1: ( ruleBinaryOperatorName )
-            // InternalOCLstdlib.g:24330:1: ruleBinaryOperatorName
+            // InternalOCLstdlib.g:24333:1: ( ruleBinaryOperatorName )
+            // InternalOCLstdlib.g:24334:1: ruleBinaryOperatorName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
@@ -70513,17 +70513,17 @@
 
 
     // $ANTLR start "rule__ExpCS__OwnedRightAssignment_0_1_2"
-    // InternalOCLstdlib.g:24339:1: rule__ExpCS__OwnedRightAssignment_0_1_2 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24343:1: rule__ExpCS__OwnedRightAssignment_0_1_2 : ( ruleExpCS ) ;
     public final void rule__ExpCS__OwnedRightAssignment_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24343:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24344:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24347:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24348:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24344:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24345:1: ruleExpCS
+            // InternalOCLstdlib.g:24348:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24349:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
@@ -70558,17 +70558,17 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__NameAssignment_0_1"
-    // InternalOCLstdlib.g:24354:1: rule__PrefixedLetExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
+    // InternalOCLstdlib.g:24358:1: rule__PrefixedLetExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
     public final void rule__PrefixedLetExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24358:1: ( ( ruleUnaryOperatorName ) )
-            // InternalOCLstdlib.g:24359:1: ( ruleUnaryOperatorName )
+            // InternalOCLstdlib.g:24362:1: ( ( ruleUnaryOperatorName ) )
+            // InternalOCLstdlib.g:24363:1: ( ruleUnaryOperatorName )
             {
-            // InternalOCLstdlib.g:24359:1: ( ruleUnaryOperatorName )
-            // InternalOCLstdlib.g:24360:1: ruleUnaryOperatorName
+            // InternalOCLstdlib.g:24363:1: ( ruleUnaryOperatorName )
+            // InternalOCLstdlib.g:24364:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
@@ -70603,17 +70603,17 @@
 
 
     // $ANTLR start "rule__PrefixedLetExpCS__OwnedRightAssignment_0_2"
-    // InternalOCLstdlib.g:24369:1: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedLetExpCS ) ;
+    // InternalOCLstdlib.g:24373:1: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedLetExpCS ) ;
     public final void rule__PrefixedLetExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24373:1: ( ( rulePrefixedLetExpCS ) )
-            // InternalOCLstdlib.g:24374:1: ( rulePrefixedLetExpCS )
+            // InternalOCLstdlib.g:24377:1: ( ( rulePrefixedLetExpCS ) )
+            // InternalOCLstdlib.g:24378:1: ( rulePrefixedLetExpCS )
             {
-            // InternalOCLstdlib.g:24374:1: ( rulePrefixedLetExpCS )
-            // InternalOCLstdlib.g:24375:1: rulePrefixedLetExpCS
+            // InternalOCLstdlib.g:24378:1: ( rulePrefixedLetExpCS )
+            // InternalOCLstdlib.g:24379:1: rulePrefixedLetExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
@@ -70648,17 +70648,17 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__NameAssignment_0_1"
-    // InternalOCLstdlib.g:24384:1: rule__PrefixedPrimaryExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
+    // InternalOCLstdlib.g:24388:1: rule__PrefixedPrimaryExpCS__NameAssignment_0_1 : ( ruleUnaryOperatorName ) ;
     public final void rule__PrefixedPrimaryExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24388:1: ( ( ruleUnaryOperatorName ) )
-            // InternalOCLstdlib.g:24389:1: ( ruleUnaryOperatorName )
+            // InternalOCLstdlib.g:24392:1: ( ( ruleUnaryOperatorName ) )
+            // InternalOCLstdlib.g:24393:1: ( ruleUnaryOperatorName )
             {
-            // InternalOCLstdlib.g:24389:1: ( ruleUnaryOperatorName )
-            // InternalOCLstdlib.g:24390:1: ruleUnaryOperatorName
+            // InternalOCLstdlib.g:24393:1: ( ruleUnaryOperatorName )
+            // InternalOCLstdlib.g:24394:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
@@ -70693,17 +70693,17 @@
 
 
     // $ANTLR start "rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2"
-    // InternalOCLstdlib.g:24399:1: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedPrimaryExpCS ) ;
+    // InternalOCLstdlib.g:24403:1: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 : ( rulePrefixedPrimaryExpCS ) ;
     public final void rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24403:1: ( ( rulePrefixedPrimaryExpCS ) )
-            // InternalOCLstdlib.g:24404:1: ( rulePrefixedPrimaryExpCS )
+            // InternalOCLstdlib.g:24407:1: ( ( rulePrefixedPrimaryExpCS ) )
+            // InternalOCLstdlib.g:24408:1: ( rulePrefixedPrimaryExpCS )
             {
-            // InternalOCLstdlib.g:24404:1: ( rulePrefixedPrimaryExpCS )
-            // InternalOCLstdlib.g:24405:1: rulePrefixedPrimaryExpCS
+            // InternalOCLstdlib.g:24408:1: ( rulePrefixedPrimaryExpCS )
+            // InternalOCLstdlib.g:24409:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
@@ -70738,17 +70738,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedPathNameAssignment_0"
-    // InternalOCLstdlib.g:24414:1: rule__NameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
+    // InternalOCLstdlib.g:24418:1: rule__NameExpCS__OwnedPathNameAssignment_0 : ( rulePathNameCS ) ;
     public final void rule__NameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24418:1: ( ( rulePathNameCS ) )
-            // InternalOCLstdlib.g:24419:1: ( rulePathNameCS )
+            // InternalOCLstdlib.g:24422:1: ( ( rulePathNameCS ) )
+            // InternalOCLstdlib.g:24423:1: ( rulePathNameCS )
             {
-            // InternalOCLstdlib.g:24419:1: ( rulePathNameCS )
-            // InternalOCLstdlib.g:24420:1: rulePathNameCS
+            // InternalOCLstdlib.g:24423:1: ( rulePathNameCS )
+            // InternalOCLstdlib.g:24424:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
@@ -70783,17 +70783,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1"
-    // InternalOCLstdlib.g:24429:1: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 : ( ruleSquareBracketedClauseCS ) ;
+    // InternalOCLstdlib.g:24433:1: rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 : ( ruleSquareBracketedClauseCS ) ;
     public final void rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24433:1: ( ( ruleSquareBracketedClauseCS ) )
-            // InternalOCLstdlib.g:24434:1: ( ruleSquareBracketedClauseCS )
+            // InternalOCLstdlib.g:24437:1: ( ( ruleSquareBracketedClauseCS ) )
+            // InternalOCLstdlib.g:24438:1: ( ruleSquareBracketedClauseCS )
             {
-            // InternalOCLstdlib.g:24434:1: ( ruleSquareBracketedClauseCS )
-            // InternalOCLstdlib.g:24435:1: ruleSquareBracketedClauseCS
+            // InternalOCLstdlib.g:24438:1: ( ruleSquareBracketedClauseCS )
+            // InternalOCLstdlib.g:24439:1: ruleSquareBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
@@ -70828,17 +70828,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2"
-    // InternalOCLstdlib.g:24444:1: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 : ( ruleRoundBracketedClauseCS ) ;
+    // InternalOCLstdlib.g:24448:1: rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 : ( ruleRoundBracketedClauseCS ) ;
     public final void rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24448:1: ( ( ruleRoundBracketedClauseCS ) )
-            // InternalOCLstdlib.g:24449:1: ( ruleRoundBracketedClauseCS )
+            // InternalOCLstdlib.g:24452:1: ( ( ruleRoundBracketedClauseCS ) )
+            // InternalOCLstdlib.g:24453:1: ( ruleRoundBracketedClauseCS )
             {
-            // InternalOCLstdlib.g:24449:1: ( ruleRoundBracketedClauseCS )
-            // InternalOCLstdlib.g:24450:1: ruleRoundBracketedClauseCS
+            // InternalOCLstdlib.g:24453:1: ( ruleRoundBracketedClauseCS )
+            // InternalOCLstdlib.g:24454:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
@@ -70873,17 +70873,17 @@
 
 
     // $ANTLR start "rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3"
-    // InternalOCLstdlib.g:24459:1: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 : ( ruleCurlyBracketedClauseCS ) ;
+    // InternalOCLstdlib.g:24463:1: rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 : ( ruleCurlyBracketedClauseCS ) ;
     public final void rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24463:1: ( ( ruleCurlyBracketedClauseCS ) )
-            // InternalOCLstdlib.g:24464:1: ( ruleCurlyBracketedClauseCS )
+            // InternalOCLstdlib.g:24467:1: ( ( ruleCurlyBracketedClauseCS ) )
+            // InternalOCLstdlib.g:24468:1: ( ruleCurlyBracketedClauseCS )
             {
-            // InternalOCLstdlib.g:24464:1: ( ruleCurlyBracketedClauseCS )
-            // InternalOCLstdlib.g:24465:1: ruleCurlyBracketedClauseCS
+            // InternalOCLstdlib.g:24468:1: ( ruleCurlyBracketedClauseCS )
+            // InternalOCLstdlib.g:24469:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
@@ -70918,23 +70918,23 @@
 
 
     // $ANTLR start "rule__NameExpCS__IsPreAssignment_4_0"
-    // InternalOCLstdlib.g:24474:1: rule__NameExpCS__IsPreAssignment_4_0 : ( ( '@' ) ) ;
+    // InternalOCLstdlib.g:24478:1: rule__NameExpCS__IsPreAssignment_4_0 : ( ( '@' ) ) ;
     public final void rule__NameExpCS__IsPreAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24478:1: ( ( ( '@' ) ) )
-            // InternalOCLstdlib.g:24479:1: ( ( '@' ) )
+            // InternalOCLstdlib.g:24482:1: ( ( ( '@' ) ) )
+            // InternalOCLstdlib.g:24483:1: ( ( '@' ) )
             {
-            // InternalOCLstdlib.g:24479:1: ( ( '@' ) )
-            // InternalOCLstdlib.g:24480:1: ( '@' )
+            // InternalOCLstdlib.g:24483:1: ( ( '@' ) )
+            // InternalOCLstdlib.g:24484:1: ( '@' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
-            // InternalOCLstdlib.g:24481:1: ( '@' )
-            // InternalOCLstdlib.g:24482:1: '@'
+            // InternalOCLstdlib.g:24485:1: ( '@' )
+            // InternalOCLstdlib.g:24486:1: '@'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
@@ -70971,17 +70971,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0"
-    // InternalOCLstdlib.g:24497:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 : ( ruleShadowPartCS ) ;
+    // InternalOCLstdlib.g:24501:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0 : ( ruleShadowPartCS ) ;
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24501:1: ( ( ruleShadowPartCS ) )
-            // InternalOCLstdlib.g:24502:1: ( ruleShadowPartCS )
+            // InternalOCLstdlib.g:24505:1: ( ( ruleShadowPartCS ) )
+            // InternalOCLstdlib.g:24506:1: ( ruleShadowPartCS )
             {
-            // InternalOCLstdlib.g:24502:1: ( ruleShadowPartCS )
-            // InternalOCLstdlib.g:24503:1: ruleShadowPartCS
+            // InternalOCLstdlib.g:24506:1: ( ruleShadowPartCS )
+            // InternalOCLstdlib.g:24507:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0());
@@ -71016,17 +71016,17 @@
 
 
     // $ANTLR start "rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1"
-    // InternalOCLstdlib.g:24512:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 : ( ruleShadowPartCS ) ;
+    // InternalOCLstdlib.g:24516:1: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1 : ( ruleShadowPartCS ) ;
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24516:1: ( ( ruleShadowPartCS ) )
-            // InternalOCLstdlib.g:24517:1: ( ruleShadowPartCS )
+            // InternalOCLstdlib.g:24520:1: ( ( ruleShadowPartCS ) )
+            // InternalOCLstdlib.g:24521:1: ( ruleShadowPartCS )
             {
-            // InternalOCLstdlib.g:24517:1: ( ruleShadowPartCS )
-            // InternalOCLstdlib.g:24518:1: ruleShadowPartCS
+            // InternalOCLstdlib.g:24521:1: ( ruleShadowPartCS )
+            // InternalOCLstdlib.g:24522:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_1_1_0());
@@ -71061,17 +71061,17 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0"
-    // InternalOCLstdlib.g:24527:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 : ( ruleNavigatingArgCS ) ;
+    // InternalOCLstdlib.g:24531:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 : ( ruleNavigatingArgCS ) ;
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24531:1: ( ( ruleNavigatingArgCS ) )
-            // InternalOCLstdlib.g:24532:1: ( ruleNavigatingArgCS )
+            // InternalOCLstdlib.g:24535:1: ( ( ruleNavigatingArgCS ) )
+            // InternalOCLstdlib.g:24536:1: ( ruleNavigatingArgCS )
             {
-            // InternalOCLstdlib.g:24532:1: ( ruleNavigatingArgCS )
-            // InternalOCLstdlib.g:24533:1: ruleNavigatingArgCS
+            // InternalOCLstdlib.g:24536:1: ( ruleNavigatingArgCS )
+            // InternalOCLstdlib.g:24537:1: ruleNavigatingArgCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
@@ -71106,23 +71106,23 @@
 
 
     // $ANTLR start "rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1"
-    // InternalOCLstdlib.g:24542:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) ;
+    // InternalOCLstdlib.g:24546:1: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 : ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) ;
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24546:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) )
-            // InternalOCLstdlib.g:24547:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
+            // InternalOCLstdlib.g:24550:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) ) )
+            // InternalOCLstdlib.g:24551:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
             {
-            // InternalOCLstdlib.g:24547:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
-            // InternalOCLstdlib.g:24548:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
+            // InternalOCLstdlib.g:24551:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 ) )
+            // InternalOCLstdlib.g:24552:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAlternatives_2_1_0());
             }
-            // InternalOCLstdlib.g:24549:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
-            // InternalOCLstdlib.g:24549:2: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0
+            // InternalOCLstdlib.g:24553:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0 )
+            // InternalOCLstdlib.g:24553:2: rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__RoundBracketedClauseCS__OwnedArgumentsAlternatives_2_1_0();
@@ -71157,17 +71157,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__OwnedTermsAssignment_1"
-    // InternalOCLstdlib.g:24558:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24562:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 : ( ruleExpCS ) ;
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24562:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24563:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24566:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24567:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24563:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24564:1: ruleExpCS
+            // InternalOCLstdlib.g:24567:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24568:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
@@ -71202,17 +71202,17 @@
 
 
     // $ANTLR start "rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1"
-    // InternalOCLstdlib.g:24573:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24577:1: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 : ( ruleExpCS ) ;
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24577:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24578:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24581:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24582:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24578:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24579:1: ruleExpCS
+            // InternalOCLstdlib.g:24582:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24583:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
@@ -71247,17 +71247,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0"
-    // InternalOCLstdlib.g:24588:1: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 : ( ruleNavigatingArgExpCS ) ;
+    // InternalOCLstdlib.g:24592:1: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24592:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalOCLstdlib.g:24593:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLstdlib.g:24596:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalOCLstdlib.g:24597:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalOCLstdlib.g:24593:1: ( ruleNavigatingArgExpCS )
-            // InternalOCLstdlib.g:24594:1: ruleNavigatingArgExpCS
+            // InternalOCLstdlib.g:24597:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLstdlib.g:24598:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
@@ -71292,17 +71292,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1"
-    // InternalOCLstdlib.g:24603:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalOCLstdlib.g:24607:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24607:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalOCLstdlib.g:24608:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLstdlib.g:24611:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalOCLstdlib.g:24612:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalOCLstdlib.g:24608:1: ( ruleCoIteratorVariableCS )
-            // InternalOCLstdlib.g:24609:1: ruleCoIteratorVariableCS
+            // InternalOCLstdlib.g:24612:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLstdlib.g:24613:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_0_1_0());
@@ -71337,17 +71337,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1"
-    // InternalOCLstdlib.g:24618:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24622:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24622:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24623:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24626:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24627:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24623:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24624:1: ruleExpCS
+            // InternalOCLstdlib.g:24627:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24628:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
@@ -71382,17 +71382,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1"
-    // InternalOCLstdlib.g:24633:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:24637:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_0_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24637:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:24638:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24641:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:24642:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:24638:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:24639:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:24642:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24643:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_1_1_0());
@@ -71427,17 +71427,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1"
-    // InternalOCLstdlib.g:24648:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalOCLstdlib.g:24652:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24652:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalOCLstdlib.g:24653:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLstdlib.g:24656:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalOCLstdlib.g:24657:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalOCLstdlib.g:24653:1: ( ruleCoIteratorVariableCS )
-            // InternalOCLstdlib.g:24654:1: ruleCoIteratorVariableCS
+            // InternalOCLstdlib.g:24657:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLstdlib.g:24658:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_1_2_1_0());
@@ -71472,17 +71472,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1"
-    // InternalOCLstdlib.g:24663:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24667:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24667:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24668:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24671:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24672:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24668:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24669:1: ruleExpCS
+            // InternalOCLstdlib.g:24672:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24673:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_3_1_0());
@@ -71517,17 +71517,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1"
-    // InternalOCLstdlib.g:24678:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:24682:1: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_0_1_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24682:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:24683:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24686:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:24687:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:24683:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:24684:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:24687:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24688:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_2_0_1_0());
@@ -71562,17 +71562,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1"
-    // InternalOCLstdlib.g:24693:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalOCLstdlib.g:24697:1: rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingArgCS__OwnedCoIteratorAssignment_0_1_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24697:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalOCLstdlib.g:24698:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLstdlib.g:24701:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalOCLstdlib.g:24702:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalOCLstdlib.g:24698:1: ( ruleCoIteratorVariableCS )
-            // InternalOCLstdlib.g:24699:1: ruleCoIteratorVariableCS
+            // InternalOCLstdlib.g:24702:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLstdlib.g:24703:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_2_1_1_0());
@@ -71607,17 +71607,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3"
-    // InternalOCLstdlib.g:24708:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24712:1: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3 : ( ruleExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24712:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24713:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24716:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24717:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24713:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24714:1: ruleExpCS
+            // InternalOCLstdlib.g:24717:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24718:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_2_3_0());
@@ -71652,17 +71652,17 @@
 
 
     // $ANTLR start "rule__NavigatingArgCS__OwnedTypeAssignment_1_1"
-    // InternalOCLstdlib.g:24723:1: rule__NavigatingArgCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:24727:1: rule__NavigatingArgCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24727:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:24728:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24731:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:24732:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:24728:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:24729:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:24732:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24733:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
@@ -71697,23 +71697,23 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__PrefixAssignment_0"
-    // InternalOCLstdlib.g:24738:1: rule__NavigatingBarArgCS__PrefixAssignment_0 : ( ( '|' ) ) ;
+    // InternalOCLstdlib.g:24742:1: rule__NavigatingBarArgCS__PrefixAssignment_0 : ( ( '|' ) ) ;
     public final void rule__NavigatingBarArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24742:1: ( ( ( '|' ) ) )
-            // InternalOCLstdlib.g:24743:1: ( ( '|' ) )
+            // InternalOCLstdlib.g:24746:1: ( ( ( '|' ) ) )
+            // InternalOCLstdlib.g:24747:1: ( ( '|' ) )
             {
-            // InternalOCLstdlib.g:24743:1: ( ( '|' ) )
-            // InternalOCLstdlib.g:24744:1: ( '|' )
+            // InternalOCLstdlib.g:24747:1: ( ( '|' ) )
+            // InternalOCLstdlib.g:24748:1: ( '|' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
-            // InternalOCLstdlib.g:24745:1: ( '|' )
-            // InternalOCLstdlib.g:24746:1: '|'
+            // InternalOCLstdlib.g:24749:1: ( '|' )
+            // InternalOCLstdlib.g:24750:1: '|'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
@@ -71750,17 +71750,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1"
-    // InternalOCLstdlib.g:24761:1: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
+    // InternalOCLstdlib.g:24765:1: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24765:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalOCLstdlib.g:24766:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLstdlib.g:24769:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalOCLstdlib.g:24770:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalOCLstdlib.g:24766:1: ( ruleNavigatingArgExpCS )
-            // InternalOCLstdlib.g:24767:1: ruleNavigatingArgExpCS
+            // InternalOCLstdlib.g:24770:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLstdlib.g:24771:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
@@ -71795,17 +71795,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1"
-    // InternalOCLstdlib.g:24776:1: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:24780:1: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24780:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:24781:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24784:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:24785:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:24781:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:24782:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:24785:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24786:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
@@ -71840,17 +71840,17 @@
 
 
     // $ANTLR start "rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1"
-    // InternalOCLstdlib.g:24791:1: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24795:1: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24795:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24796:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24799:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24800:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24796:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24797:1: ruleExpCS
+            // InternalOCLstdlib.g:24800:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24801:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
@@ -71885,23 +71885,23 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__PrefixAssignment_0"
-    // InternalOCLstdlib.g:24806:1: rule__NavigatingCommaArgCS__PrefixAssignment_0 : ( ( ',' ) ) ;
+    // InternalOCLstdlib.g:24810:1: rule__NavigatingCommaArgCS__PrefixAssignment_0 : ( ( ',' ) ) ;
     public final void rule__NavigatingCommaArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24810:1: ( ( ( ',' ) ) )
-            // InternalOCLstdlib.g:24811:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:24814:1: ( ( ( ',' ) ) )
+            // InternalOCLstdlib.g:24815:1: ( ( ',' ) )
             {
-            // InternalOCLstdlib.g:24811:1: ( ( ',' ) )
-            // InternalOCLstdlib.g:24812:1: ( ',' )
+            // InternalOCLstdlib.g:24815:1: ( ( ',' ) )
+            // InternalOCLstdlib.g:24816:1: ( ',' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
-            // InternalOCLstdlib.g:24813:1: ( ',' )
-            // InternalOCLstdlib.g:24814:1: ','
+            // InternalOCLstdlib.g:24817:1: ( ',' )
+            // InternalOCLstdlib.g:24818:1: ','
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
@@ -71938,17 +71938,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1"
-    // InternalOCLstdlib.g:24829:1: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
+    // InternalOCLstdlib.g:24833:1: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24833:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalOCLstdlib.g:24834:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLstdlib.g:24837:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalOCLstdlib.g:24838:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalOCLstdlib.g:24834:1: ( ruleNavigatingArgExpCS )
-            // InternalOCLstdlib.g:24835:1: ruleNavigatingArgExpCS
+            // InternalOCLstdlib.g:24838:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLstdlib.g:24839:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
@@ -71983,17 +71983,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1"
-    // InternalOCLstdlib.g:24844:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalOCLstdlib.g:24848:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24848:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalOCLstdlib.g:24849:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLstdlib.g:24852:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalOCLstdlib.g:24853:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalOCLstdlib.g:24849:1: ( ruleCoIteratorVariableCS )
-            // InternalOCLstdlib.g:24850:1: ruleCoIteratorVariableCS
+            // InternalOCLstdlib.g:24853:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLstdlib.g:24854:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_0_1_0());
@@ -72028,17 +72028,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1"
-    // InternalOCLstdlib.g:24859:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24863:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24863:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24864:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24867:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24868:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24864:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24865:1: ruleExpCS
+            // InternalOCLstdlib.g:24868:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24869:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
@@ -72073,17 +72073,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1"
-    // InternalOCLstdlib.g:24874:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:24878:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24878:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:24879:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24882:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:24883:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:24879:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:24880:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:24883:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24884:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_1_0());
@@ -72118,17 +72118,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1"
-    // InternalOCLstdlib.g:24889:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalOCLstdlib.g:24893:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24893:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalOCLstdlib.g:24894:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLstdlib.g:24897:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalOCLstdlib.g:24898:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalOCLstdlib.g:24894:1: ( ruleCoIteratorVariableCS )
-            // InternalOCLstdlib.g:24895:1: ruleCoIteratorVariableCS
+            // InternalOCLstdlib.g:24898:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLstdlib.g:24899:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_1_2_1_0());
@@ -72163,17 +72163,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1"
-    // InternalOCLstdlib.g:24904:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24908:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24908:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24909:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24912:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24913:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24909:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24910:1: ruleExpCS
+            // InternalOCLstdlib.g:24913:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24914:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_3_1_0());
@@ -72208,17 +72208,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1"
-    // InternalOCLstdlib.g:24919:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:24923:1: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24923:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:24924:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24927:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:24928:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:24924:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:24925:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:24928:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:24929:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_2_0_1_0());
@@ -72253,17 +72253,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1"
-    // InternalOCLstdlib.g:24934:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 : ( ruleCoIteratorVariableCS ) ;
+    // InternalOCLstdlib.g:24938:1: rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1 : ( ruleCoIteratorVariableCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedCoIteratorAssignment_2_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24938:1: ( ( ruleCoIteratorVariableCS ) )
-            // InternalOCLstdlib.g:24939:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLstdlib.g:24942:1: ( ( ruleCoIteratorVariableCS ) )
+            // InternalOCLstdlib.g:24943:1: ( ruleCoIteratorVariableCS )
             {
-            // InternalOCLstdlib.g:24939:1: ( ruleCoIteratorVariableCS )
-            // InternalOCLstdlib.g:24940:1: ruleCoIteratorVariableCS
+            // InternalOCLstdlib.g:24943:1: ( ruleCoIteratorVariableCS )
+            // InternalOCLstdlib.g:24944:1: ruleCoIteratorVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_2_1_1_0());
@@ -72298,17 +72298,17 @@
 
 
     // $ANTLR start "rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3"
-    // InternalOCLstdlib.g:24949:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:24953:1: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3 : ( ruleExpCS ) ;
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24953:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:24954:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24957:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:24958:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:24954:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:24955:1: ruleExpCS
+            // InternalOCLstdlib.g:24958:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:24959:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_3_0());
@@ -72343,23 +72343,23 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__PrefixAssignment_0"
-    // InternalOCLstdlib.g:24964:1: rule__NavigatingSemiArgCS__PrefixAssignment_0 : ( ( ';' ) ) ;
+    // InternalOCLstdlib.g:24968:1: rule__NavigatingSemiArgCS__PrefixAssignment_0 : ( ( ';' ) ) ;
     public final void rule__NavigatingSemiArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24968:1: ( ( ( ';' ) ) )
-            // InternalOCLstdlib.g:24969:1: ( ( ';' ) )
+            // InternalOCLstdlib.g:24972:1: ( ( ( ';' ) ) )
+            // InternalOCLstdlib.g:24973:1: ( ( ';' ) )
             {
-            // InternalOCLstdlib.g:24969:1: ( ( ';' ) )
-            // InternalOCLstdlib.g:24970:1: ( ';' )
+            // InternalOCLstdlib.g:24973:1: ( ( ';' ) )
+            // InternalOCLstdlib.g:24974:1: ( ';' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
-            // InternalOCLstdlib.g:24971:1: ( ';' )
-            // InternalOCLstdlib.g:24972:1: ';'
+            // InternalOCLstdlib.g:24975:1: ( ';' )
+            // InternalOCLstdlib.g:24976:1: ';'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
@@ -72396,17 +72396,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1"
-    // InternalOCLstdlib.g:24987:1: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
+    // InternalOCLstdlib.g:24991:1: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 : ( ruleNavigatingArgExpCS ) ;
     public final void rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:24991:1: ( ( ruleNavigatingArgExpCS ) )
-            // InternalOCLstdlib.g:24992:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLstdlib.g:24995:1: ( ( ruleNavigatingArgExpCS ) )
+            // InternalOCLstdlib.g:24996:1: ( ruleNavigatingArgExpCS )
             {
-            // InternalOCLstdlib.g:24992:1: ( ruleNavigatingArgExpCS )
-            // InternalOCLstdlib.g:24993:1: ruleNavigatingArgExpCS
+            // InternalOCLstdlib.g:24996:1: ( ruleNavigatingArgExpCS )
+            // InternalOCLstdlib.g:24997:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
@@ -72441,17 +72441,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1"
-    // InternalOCLstdlib.g:25002:1: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:25006:1: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
     public final void rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25006:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:25007:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:25010:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:25011:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:25007:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:25008:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:25011:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:25012:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
@@ -72486,17 +72486,17 @@
 
 
     // $ANTLR start "rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1"
-    // InternalOCLstdlib.g:25017:1: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:25021:1: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 : ( ruleExpCS ) ;
     public final void rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25021:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:25022:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25025:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:25026:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:25022:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:25023:1: ruleExpCS
+            // InternalOCLstdlib.g:25026:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25027:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
@@ -72531,17 +72531,17 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__NameAssignment_0"
-    // InternalOCLstdlib.g:25032:1: rule__CoIteratorVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLstdlib.g:25036:1: rule__CoIteratorVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__CoIteratorVariableCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25036:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:25037:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:25040:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:25041:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLstdlib.g:25037:1: ( ruleUnrestrictedName )
-            // InternalOCLstdlib.g:25038:1: ruleUnrestrictedName
+            // InternalOCLstdlib.g:25041:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:25042:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -72576,17 +72576,17 @@
 
 
     // $ANTLR start "rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1"
-    // InternalOCLstdlib.g:25047:1: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:25051:1: rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1 : ( ruleTypeExpCS ) ;
     public final void rule__CoIteratorVariableCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25051:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:25052:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:25055:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:25056:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:25052:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:25053:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:25056:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:25057:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getCoIteratorVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
@@ -72621,23 +72621,23 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedConditionAssignment_1"
-    // InternalOCLstdlib.g:25062:1: rule__IfExpCS__OwnedConditionAssignment_1 : ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) ;
+    // InternalOCLstdlib.g:25066:1: rule__IfExpCS__OwnedConditionAssignment_1 : ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) ;
     public final void rule__IfExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25066:1: ( ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) )
-            // InternalOCLstdlib.g:25067:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
+            // InternalOCLstdlib.g:25070:1: ( ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) )
+            // InternalOCLstdlib.g:25071:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
             {
-            // InternalOCLstdlib.g:25067:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
-            // InternalOCLstdlib.g:25068:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
+            // InternalOCLstdlib.g:25071:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
+            // InternalOCLstdlib.g:25072:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0());
             }
-            // InternalOCLstdlib.g:25069:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
-            // InternalOCLstdlib.g:25069:2: rule__IfExpCS__OwnedConditionAlternatives_1_0
+            // InternalOCLstdlib.g:25073:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
+            // InternalOCLstdlib.g:25073:2: rule__IfExpCS__OwnedConditionAlternatives_1_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__IfExpCS__OwnedConditionAlternatives_1_0();
@@ -72672,17 +72672,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedThenExpressionAssignment_3"
-    // InternalOCLstdlib.g:25078:1: rule__IfExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:25082:1: rule__IfExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
     public final void rule__IfExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25082:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:25083:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25086:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:25087:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:25083:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:25084:1: ruleExpCS
+            // InternalOCLstdlib.g:25087:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25088:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
@@ -72717,17 +72717,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedIfThenExpressionsAssignment_4"
-    // InternalOCLstdlib.g:25093:1: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 : ( ruleElseIfThenExpCS ) ;
+    // InternalOCLstdlib.g:25097:1: rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 : ( ruleElseIfThenExpCS ) ;
     public final void rule__IfExpCS__OwnedIfThenExpressionsAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25097:1: ( ( ruleElseIfThenExpCS ) )
-            // InternalOCLstdlib.g:25098:1: ( ruleElseIfThenExpCS )
+            // InternalOCLstdlib.g:25101:1: ( ( ruleElseIfThenExpCS ) )
+            // InternalOCLstdlib.g:25102:1: ( ruleElseIfThenExpCS )
             {
-            // InternalOCLstdlib.g:25098:1: ( ruleElseIfThenExpCS )
-            // InternalOCLstdlib.g:25099:1: ruleElseIfThenExpCS
+            // InternalOCLstdlib.g:25102:1: ( ruleElseIfThenExpCS )
+            // InternalOCLstdlib.g:25103:1: ruleElseIfThenExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
@@ -72762,17 +72762,17 @@
 
 
     // $ANTLR start "rule__IfExpCS__OwnedElseExpressionAssignment_6"
-    // InternalOCLstdlib.g:25108:1: rule__IfExpCS__OwnedElseExpressionAssignment_6 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:25112:1: rule__IfExpCS__OwnedElseExpressionAssignment_6 : ( ruleExpCS ) ;
     public final void rule__IfExpCS__OwnedElseExpressionAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25112:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:25113:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25116:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:25117:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:25113:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:25114:1: ruleExpCS
+            // InternalOCLstdlib.g:25117:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25118:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
@@ -72807,17 +72807,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__OwnedConditionAssignment_1"
-    // InternalOCLstdlib.g:25123:1: rule__ElseIfThenExpCS__OwnedConditionAssignment_1 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:25127:1: rule__ElseIfThenExpCS__OwnedConditionAssignment_1 : ( ruleExpCS ) ;
     public final void rule__ElseIfThenExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25127:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:25128:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25131:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:25132:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:25128:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:25129:1: ruleExpCS
+            // InternalOCLstdlib.g:25132:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25133:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
@@ -72852,17 +72852,17 @@
 
 
     // $ANTLR start "rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3"
-    // InternalOCLstdlib.g:25138:1: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:25142:1: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 : ( ruleExpCS ) ;
     public final void rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25142:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:25143:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25146:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:25147:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:25143:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:25144:1: ruleExpCS
+            // InternalOCLstdlib.g:25147:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25148:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
@@ -72897,17 +72897,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__OwnedVariablesAssignment_1"
-    // InternalOCLstdlib.g:25153:1: rule__LetExpCS__OwnedVariablesAssignment_1 : ( ruleLetVariableCS ) ;
+    // InternalOCLstdlib.g:25157:1: rule__LetExpCS__OwnedVariablesAssignment_1 : ( ruleLetVariableCS ) ;
     public final void rule__LetExpCS__OwnedVariablesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25157:1: ( ( ruleLetVariableCS ) )
-            // InternalOCLstdlib.g:25158:1: ( ruleLetVariableCS )
+            // InternalOCLstdlib.g:25161:1: ( ( ruleLetVariableCS ) )
+            // InternalOCLstdlib.g:25162:1: ( ruleLetVariableCS )
             {
-            // InternalOCLstdlib.g:25158:1: ( ruleLetVariableCS )
-            // InternalOCLstdlib.g:25159:1: ruleLetVariableCS
+            // InternalOCLstdlib.g:25162:1: ( ruleLetVariableCS )
+            // InternalOCLstdlib.g:25163:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
@@ -72942,17 +72942,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__OwnedVariablesAssignment_2_1"
-    // InternalOCLstdlib.g:25168:1: rule__LetExpCS__OwnedVariablesAssignment_2_1 : ( ruleLetVariableCS ) ;
+    // InternalOCLstdlib.g:25172:1: rule__LetExpCS__OwnedVariablesAssignment_2_1 : ( ruleLetVariableCS ) ;
     public final void rule__LetExpCS__OwnedVariablesAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25172:1: ( ( ruleLetVariableCS ) )
-            // InternalOCLstdlib.g:25173:1: ( ruleLetVariableCS )
+            // InternalOCLstdlib.g:25176:1: ( ( ruleLetVariableCS ) )
+            // InternalOCLstdlib.g:25177:1: ( ruleLetVariableCS )
             {
-            // InternalOCLstdlib.g:25173:1: ( ruleLetVariableCS )
-            // InternalOCLstdlib.g:25174:1: ruleLetVariableCS
+            // InternalOCLstdlib.g:25177:1: ( ruleLetVariableCS )
+            // InternalOCLstdlib.g:25178:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
@@ -72987,17 +72987,17 @@
 
 
     // $ANTLR start "rule__LetExpCS__OwnedInExpressionAssignment_4"
-    // InternalOCLstdlib.g:25183:1: rule__LetExpCS__OwnedInExpressionAssignment_4 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:25187:1: rule__LetExpCS__OwnedInExpressionAssignment_4 : ( ruleExpCS ) ;
     public final void rule__LetExpCS__OwnedInExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25187:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:25188:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25191:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:25192:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:25188:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:25189:1: ruleExpCS
+            // InternalOCLstdlib.g:25192:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25193:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
@@ -73032,17 +73032,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__NameAssignment_0"
-    // InternalOCLstdlib.g:25198:1: rule__LetVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLstdlib.g:25202:1: rule__LetVariableCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__LetVariableCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25202:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:25203:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:25206:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:25207:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLstdlib.g:25203:1: ( ruleUnrestrictedName )
-            // InternalOCLstdlib.g:25204:1: ruleUnrestrictedName
+            // InternalOCLstdlib.g:25207:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:25208:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -73077,17 +73077,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1"
-    // InternalOCLstdlib.g:25213:1: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 : ( ruleRoundBracketedClauseCS ) ;
+    // InternalOCLstdlib.g:25217:1: rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 : ( ruleRoundBracketedClauseCS ) ;
     public final void rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25217:1: ( ( ruleRoundBracketedClauseCS ) )
-            // InternalOCLstdlib.g:25218:1: ( ruleRoundBracketedClauseCS )
+            // InternalOCLstdlib.g:25221:1: ( ( ruleRoundBracketedClauseCS ) )
+            // InternalOCLstdlib.g:25222:1: ( ruleRoundBracketedClauseCS )
             {
-            // InternalOCLstdlib.g:25218:1: ( ruleRoundBracketedClauseCS )
-            // InternalOCLstdlib.g:25219:1: ruleRoundBracketedClauseCS
+            // InternalOCLstdlib.g:25222:1: ( ruleRoundBracketedClauseCS )
+            // InternalOCLstdlib.g:25223:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
@@ -73122,17 +73122,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__OwnedTypeAssignment_2_1"
-    // InternalOCLstdlib.g:25228:1: rule__LetVariableCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
+    // InternalOCLstdlib.g:25232:1: rule__LetVariableCS__OwnedTypeAssignment_2_1 : ( ruleTypeExpCS ) ;
     public final void rule__LetVariableCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25232:1: ( ( ruleTypeExpCS ) )
-            // InternalOCLstdlib.g:25233:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:25236:1: ( ( ruleTypeExpCS ) )
+            // InternalOCLstdlib.g:25237:1: ( ruleTypeExpCS )
             {
-            // InternalOCLstdlib.g:25233:1: ( ruleTypeExpCS )
-            // InternalOCLstdlib.g:25234:1: ruleTypeExpCS
+            // InternalOCLstdlib.g:25237:1: ( ruleTypeExpCS )
+            // InternalOCLstdlib.g:25238:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
@@ -73167,17 +73167,17 @@
 
 
     // $ANTLR start "rule__LetVariableCS__OwnedInitExpressionAssignment_4"
-    // InternalOCLstdlib.g:25243:1: rule__LetVariableCS__OwnedInitExpressionAssignment_4 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:25247:1: rule__LetVariableCS__OwnedInitExpressionAssignment_4 : ( ruleExpCS ) ;
     public final void rule__LetVariableCS__OwnedInitExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25247:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:25248:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25251:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:25252:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:25248:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:25249:1: ruleExpCS
+            // InternalOCLstdlib.g:25252:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25253:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
@@ -73212,17 +73212,17 @@
 
 
     // $ANTLR start "rule__NestedExpCS__OwnedExpressionAssignment_1"
-    // InternalOCLstdlib.g:25258:1: rule__NestedExpCS__OwnedExpressionAssignment_1 : ( ruleExpCS ) ;
+    // InternalOCLstdlib.g:25262:1: rule__NestedExpCS__OwnedExpressionAssignment_1 : ( ruleExpCS ) ;
     public final void rule__NestedExpCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25262:1: ( ( ruleExpCS ) )
-            // InternalOCLstdlib.g:25263:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25266:1: ( ( ruleExpCS ) )
+            // InternalOCLstdlib.g:25267:1: ( ruleExpCS )
             {
-            // InternalOCLstdlib.g:25263:1: ( ruleExpCS )
-            // InternalOCLstdlib.g:25264:1: ruleExpCS
+            // InternalOCLstdlib.g:25267:1: ( ruleExpCS )
+            // InternalOCLstdlib.g:25268:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
@@ -73257,17 +73257,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__LowerBoundAssignment_0"
-    // InternalOCLstdlib.g:25273:1: rule__MultiplicityBoundsCS__LowerBoundAssignment_0 : ( ruleLOWER ) ;
+    // InternalOCLstdlib.g:25277:1: rule__MultiplicityBoundsCS__LowerBoundAssignment_0 : ( ruleLOWER ) ;
     public final void rule__MultiplicityBoundsCS__LowerBoundAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25277:1: ( ( ruleLOWER ) )
-            // InternalOCLstdlib.g:25278:1: ( ruleLOWER )
+            // InternalOCLstdlib.g:25281:1: ( ( ruleLOWER ) )
+            // InternalOCLstdlib.g:25282:1: ( ruleLOWER )
             {
-            // InternalOCLstdlib.g:25278:1: ( ruleLOWER )
-            // InternalOCLstdlib.g:25279:1: ruleLOWER
+            // InternalOCLstdlib.g:25282:1: ( ruleLOWER )
+            // InternalOCLstdlib.g:25283:1: ruleLOWER
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
@@ -73302,17 +73302,17 @@
 
 
     // $ANTLR start "rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1"
-    // InternalOCLstdlib.g:25288:1: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 : ( ruleUPPER ) ;
+    // InternalOCLstdlib.g:25292:1: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 : ( ruleUPPER ) ;
     public final void rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25292:1: ( ( ruleUPPER ) )
-            // InternalOCLstdlib.g:25293:1: ( ruleUPPER )
+            // InternalOCLstdlib.g:25296:1: ( ( ruleUPPER ) )
+            // InternalOCLstdlib.g:25297:1: ( ruleUPPER )
             {
-            // InternalOCLstdlib.g:25293:1: ( ruleUPPER )
-            // InternalOCLstdlib.g:25294:1: ruleUPPER
+            // InternalOCLstdlib.g:25297:1: ( ruleUPPER )
+            // InternalOCLstdlib.g:25298:1: ruleUPPER
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
@@ -73347,23 +73347,23 @@
 
 
     // $ANTLR start "rule__MultiplicityCS__IsNullFreeAssignment_2_1"
-    // InternalOCLstdlib.g:25303:1: rule__MultiplicityCS__IsNullFreeAssignment_2_1 : ( ( '|1' ) ) ;
+    // InternalOCLstdlib.g:25307:1: rule__MultiplicityCS__IsNullFreeAssignment_2_1 : ( ( '|1' ) ) ;
     public final void rule__MultiplicityCS__IsNullFreeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25307:1: ( ( ( '|1' ) ) )
-            // InternalOCLstdlib.g:25308:1: ( ( '|1' ) )
+            // InternalOCLstdlib.g:25311:1: ( ( ( '|1' ) ) )
+            // InternalOCLstdlib.g:25312:1: ( ( '|1' ) )
             {
-            // InternalOCLstdlib.g:25308:1: ( ( '|1' ) )
-            // InternalOCLstdlib.g:25309:1: ( '|1' )
+            // InternalOCLstdlib.g:25312:1: ( ( '|1' ) )
+            // InternalOCLstdlib.g:25313:1: ( '|1' )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
-            // InternalOCLstdlib.g:25310:1: ( '|1' )
-            // InternalOCLstdlib.g:25311:1: '|1'
+            // InternalOCLstdlib.g:25314:1: ( '|1' )
+            // InternalOCLstdlib.g:25315:1: '|1'
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
@@ -73400,23 +73400,23 @@
 
 
     // $ANTLR start "rule__MultiplicityStringCS__StringBoundsAssignment"
-    // InternalOCLstdlib.g:25326:1: rule__MultiplicityStringCS__StringBoundsAssignment : ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) ;
+    // InternalOCLstdlib.g:25330:1: rule__MultiplicityStringCS__StringBoundsAssignment : ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) ;
     public final void rule__MultiplicityStringCS__StringBoundsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25330:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
-            // InternalOCLstdlib.g:25331:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
+            // InternalOCLstdlib.g:25334:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
+            // InternalOCLstdlib.g:25335:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
             {
-            // InternalOCLstdlib.g:25331:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
-            // InternalOCLstdlib.g:25332:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
+            // InternalOCLstdlib.g:25335:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
+            // InternalOCLstdlib.g:25336:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
-            // InternalOCLstdlib.g:25333:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
-            // InternalOCLstdlib.g:25333:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
+            // InternalOCLstdlib.g:25337:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
+            // InternalOCLstdlib.g:25337:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
             {
             pushFollow(FollowSets000.FOLLOW_2);
             rule__MultiplicityStringCS__StringBoundsAlternatives_0();
@@ -73451,17 +73451,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__OwnedPathElementsAssignment_0"
-    // InternalOCLstdlib.g:25342:1: rule__PathNameCS__OwnedPathElementsAssignment_0 : ( ruleFirstPathElementCS ) ;
+    // InternalOCLstdlib.g:25346:1: rule__PathNameCS__OwnedPathElementsAssignment_0 : ( ruleFirstPathElementCS ) ;
     public final void rule__PathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25346:1: ( ( ruleFirstPathElementCS ) )
-            // InternalOCLstdlib.g:25347:1: ( ruleFirstPathElementCS )
+            // InternalOCLstdlib.g:25350:1: ( ( ruleFirstPathElementCS ) )
+            // InternalOCLstdlib.g:25351:1: ( ruleFirstPathElementCS )
             {
-            // InternalOCLstdlib.g:25347:1: ( ruleFirstPathElementCS )
-            // InternalOCLstdlib.g:25348:1: ruleFirstPathElementCS
+            // InternalOCLstdlib.g:25351:1: ( ruleFirstPathElementCS )
+            // InternalOCLstdlib.g:25352:1: ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
@@ -73496,17 +73496,17 @@
 
 
     // $ANTLR start "rule__PathNameCS__OwnedPathElementsAssignment_1_1"
-    // InternalOCLstdlib.g:25357:1: rule__PathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
+    // InternalOCLstdlib.g:25361:1: rule__PathNameCS__OwnedPathElementsAssignment_1_1 : ( ruleNextPathElementCS ) ;
     public final void rule__PathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25361:1: ( ( ruleNextPathElementCS ) )
-            // InternalOCLstdlib.g:25362:1: ( ruleNextPathElementCS )
+            // InternalOCLstdlib.g:25365:1: ( ( ruleNextPathElementCS ) )
+            // InternalOCLstdlib.g:25366:1: ( ruleNextPathElementCS )
             {
-            // InternalOCLstdlib.g:25362:1: ( ruleNextPathElementCS )
-            // InternalOCLstdlib.g:25363:1: ruleNextPathElementCS
+            // InternalOCLstdlib.g:25366:1: ( ruleNextPathElementCS )
+            // InternalOCLstdlib.g:25367:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
@@ -73541,23 +73541,23 @@
 
 
     // $ANTLR start "rule__FirstPathElementCS__ReferredElementAssignment"
-    // InternalOCLstdlib.g:25372:1: rule__FirstPathElementCS__ReferredElementAssignment : ( ( ruleUnrestrictedName ) ) ;
+    // InternalOCLstdlib.g:25378:1: rule__FirstPathElementCS__ReferredElementAssignment : ( ( ruleUnrestrictedName ) ) ;
     public final void rule__FirstPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25376:1: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalOCLstdlib.g:25377:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:25382:1: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalOCLstdlib.g:25383:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalOCLstdlib.g:25377:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:25378:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:25383:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:25384:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
-            // InternalOCLstdlib.g:25379:1: ( ruleUnrestrictedName )
-            // InternalOCLstdlib.g:25380:1: ruleUnrestrictedName
+            // InternalOCLstdlib.g:25385:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:25386:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
@@ -73598,23 +73598,23 @@
 
 
     // $ANTLR start "rule__NextPathElementCS__ReferredElementAssignment"
-    // InternalOCLstdlib.g:25391:1: rule__NextPathElementCS__ReferredElementAssignment : ( ( ruleUnreservedName ) ) ;
+    // InternalOCLstdlib.g:25397:1: rule__NextPathElementCS__ReferredElementAssignment : ( ( ruleUnreservedName ) ) ;
     public final void rule__NextPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25395:1: ( ( ( ruleUnreservedName ) ) )
-            // InternalOCLstdlib.g:25396:1: ( ( ruleUnreservedName ) )
+            // InternalOCLstdlib.g:25401:1: ( ( ( ruleUnreservedName ) ) )
+            // InternalOCLstdlib.g:25402:1: ( ( ruleUnreservedName ) )
             {
-            // InternalOCLstdlib.g:25396:1: ( ( ruleUnreservedName ) )
-            // InternalOCLstdlib.g:25397:1: ( ruleUnreservedName )
+            // InternalOCLstdlib.g:25402:1: ( ( ruleUnreservedName ) )
+            // InternalOCLstdlib.g:25403:1: ( ruleUnreservedName )
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
-            // InternalOCLstdlib.g:25398:1: ( ruleUnreservedName )
-            // InternalOCLstdlib.g:25399:1: ruleUnreservedName
+            // InternalOCLstdlib.g:25404:1: ( ruleUnreservedName )
+            // InternalOCLstdlib.g:25405:1: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
@@ -73655,17 +73655,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0"
-    // InternalOCLstdlib.g:25410:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 : ( ruleTemplateParameterSubstitutionCS ) ;
+    // InternalOCLstdlib.g:25416:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 : ( ruleTemplateParameterSubstitutionCS ) ;
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25414:1: ( ( ruleTemplateParameterSubstitutionCS ) )
-            // InternalOCLstdlib.g:25415:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalOCLstdlib.g:25420:1: ( ( ruleTemplateParameterSubstitutionCS ) )
+            // InternalOCLstdlib.g:25421:1: ( ruleTemplateParameterSubstitutionCS )
             {
-            // InternalOCLstdlib.g:25415:1: ( ruleTemplateParameterSubstitutionCS )
-            // InternalOCLstdlib.g:25416:1: ruleTemplateParameterSubstitutionCS
+            // InternalOCLstdlib.g:25421:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalOCLstdlib.g:25422:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
@@ -73700,17 +73700,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1"
-    // InternalOCLstdlib.g:25425:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 : ( ruleTemplateParameterSubstitutionCS ) ;
+    // InternalOCLstdlib.g:25431:1: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 : ( ruleTemplateParameterSubstitutionCS ) ;
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25429:1: ( ( ruleTemplateParameterSubstitutionCS ) )
-            // InternalOCLstdlib.g:25430:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalOCLstdlib.g:25435:1: ( ( ruleTemplateParameterSubstitutionCS ) )
+            // InternalOCLstdlib.g:25436:1: ( ruleTemplateParameterSubstitutionCS )
             {
-            // InternalOCLstdlib.g:25430:1: ( ruleTemplateParameterSubstitutionCS )
-            // InternalOCLstdlib.g:25431:1: ruleTemplateParameterSubstitutionCS
+            // InternalOCLstdlib.g:25436:1: ( ruleTemplateParameterSubstitutionCS )
+            // InternalOCLstdlib.g:25437:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
@@ -73745,17 +73745,17 @@
 
 
     // $ANTLR start "rule__TemplateBindingCS__OwnedMultiplicityAssignment_2"
-    // InternalOCLstdlib.g:25440:1: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 : ( ruleMultiplicityCS ) ;
+    // InternalOCLstdlib.g:25446:1: rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 : ( ruleMultiplicityCS ) ;
     public final void rule__TemplateBindingCS__OwnedMultiplicityAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25444:1: ( ( ruleMultiplicityCS ) )
-            // InternalOCLstdlib.g:25445:1: ( ruleMultiplicityCS )
+            // InternalOCLstdlib.g:25450:1: ( ( ruleMultiplicityCS ) )
+            // InternalOCLstdlib.g:25451:1: ( ruleMultiplicityCS )
             {
-            // InternalOCLstdlib.g:25445:1: ( ruleMultiplicityCS )
-            // InternalOCLstdlib.g:25446:1: ruleMultiplicityCS
+            // InternalOCLstdlib.g:25451:1: ( ruleMultiplicityCS )
+            // InternalOCLstdlib.g:25452:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
@@ -73790,17 +73790,17 @@
 
 
     // $ANTLR start "rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment"
-    // InternalOCLstdlib.g:25455:1: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment : ( ruleTypeRefCS ) ;
+    // InternalOCLstdlib.g:25461:1: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment : ( ruleTypeRefCS ) ;
     public final void rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25459:1: ( ( ruleTypeRefCS ) )
-            // InternalOCLstdlib.g:25460:1: ( ruleTypeRefCS )
+            // InternalOCLstdlib.g:25465:1: ( ( ruleTypeRefCS ) )
+            // InternalOCLstdlib.g:25466:1: ( ruleTypeRefCS )
             {
-            // InternalOCLstdlib.g:25460:1: ( ruleTypeRefCS )
-            // InternalOCLstdlib.g:25461:1: ruleTypeRefCS
+            // InternalOCLstdlib.g:25466:1: ( ruleTypeRefCS )
+            // InternalOCLstdlib.g:25467:1: ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
@@ -73835,17 +73835,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__OwnedParametersAssignment_1"
-    // InternalOCLstdlib.g:25470:1: rule__TemplateSignatureCS__OwnedParametersAssignment_1 : ( ruleTypeParameterCS ) ;
+    // InternalOCLstdlib.g:25476:1: rule__TemplateSignatureCS__OwnedParametersAssignment_1 : ( ruleTypeParameterCS ) ;
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25474:1: ( ( ruleTypeParameterCS ) )
-            // InternalOCLstdlib.g:25475:1: ( ruleTypeParameterCS )
+            // InternalOCLstdlib.g:25480:1: ( ( ruleTypeParameterCS ) )
+            // InternalOCLstdlib.g:25481:1: ( ruleTypeParameterCS )
             {
-            // InternalOCLstdlib.g:25475:1: ( ruleTypeParameterCS )
-            // InternalOCLstdlib.g:25476:1: ruleTypeParameterCS
+            // InternalOCLstdlib.g:25481:1: ( ruleTypeParameterCS )
+            // InternalOCLstdlib.g:25482:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_0());
@@ -73880,17 +73880,17 @@
 
 
     // $ANTLR start "rule__TemplateSignatureCS__OwnedParametersAssignment_2_1"
-    // InternalOCLstdlib.g:25485:1: rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 : ( ruleTypeParameterCS ) ;
+    // InternalOCLstdlib.g:25491:1: rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 : ( ruleTypeParameterCS ) ;
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25489:1: ( ( ruleTypeParameterCS ) )
-            // InternalOCLstdlib.g:25490:1: ( ruleTypeParameterCS )
+            // InternalOCLstdlib.g:25495:1: ( ( ruleTypeParameterCS ) )
+            // InternalOCLstdlib.g:25496:1: ( ruleTypeParameterCS )
             {
-            // InternalOCLstdlib.g:25490:1: ( ruleTypeParameterCS )
-            // InternalOCLstdlib.g:25491:1: ruleTypeParameterCS
+            // InternalOCLstdlib.g:25496:1: ( ruleTypeParameterCS )
+            // InternalOCLstdlib.g:25497:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_2_1_0());
@@ -73925,17 +73925,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__NameAssignment_0"
-    // InternalOCLstdlib.g:25500:1: rule__TypeParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
+    // InternalOCLstdlib.g:25506:1: rule__TypeParameterCS__NameAssignment_0 : ( ruleUnrestrictedName ) ;
     public final void rule__TypeParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25504:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:25505:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:25510:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:25511:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLstdlib.g:25505:1: ( ruleUnrestrictedName )
-            // InternalOCLstdlib.g:25506:1: ruleUnrestrictedName
+            // InternalOCLstdlib.g:25511:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:25512:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
@@ -73970,17 +73970,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__OwnedExtendsAssignment_1_1"
-    // InternalOCLstdlib.g:25515:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_1 : ( ruleTypedRefCS ) ;
+    // InternalOCLstdlib.g:25521:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_1 : ( ruleTypedRefCS ) ;
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25519:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLstdlib.g:25520:1: ( ruleTypedRefCS )
+            // InternalOCLstdlib.g:25525:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLstdlib.g:25526:1: ( ruleTypedRefCS )
             {
-            // InternalOCLstdlib.g:25520:1: ( ruleTypedRefCS )
-            // InternalOCLstdlib.g:25521:1: ruleTypedRefCS
+            // InternalOCLstdlib.g:25526:1: ( ruleTypedRefCS )
+            // InternalOCLstdlib.g:25527:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
@@ -74015,17 +74015,17 @@
 
 
     // $ANTLR start "rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1"
-    // InternalOCLstdlib.g:25530:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 : ( ruleTypedRefCS ) ;
+    // InternalOCLstdlib.g:25536:1: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25534:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLstdlib.g:25535:1: ( ruleTypedRefCS )
+            // InternalOCLstdlib.g:25540:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLstdlib.g:25541:1: ( ruleTypedRefCS )
             {
-            // InternalOCLstdlib.g:25535:1: ( ruleTypedRefCS )
-            // InternalOCLstdlib.g:25536:1: ruleTypedRefCS
+            // InternalOCLstdlib.g:25541:1: ( ruleTypedRefCS )
+            // InternalOCLstdlib.g:25542:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
@@ -74060,17 +74060,17 @@
 
 
     // $ANTLR start "rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1"
-    // InternalOCLstdlib.g:25545:1: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 : ( ruleTypedRefCS ) ;
+    // InternalOCLstdlib.g:25551:1: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 : ( ruleTypedRefCS ) ;
     public final void rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
 
         try {
-            // InternalOCLstdlib.g:25549:1: ( ( ruleTypedRefCS ) )
-            // InternalOCLstdlib.g:25550:1: ( ruleTypedRefCS )
+            // InternalOCLstdlib.g:25555:1: ( ( ruleTypedRefCS ) )
+            // InternalOCLstdlib.g:25556:1: ( ruleTypedRefCS )
             {
-            // InternalOCLstdlib.g:25550:1: ( ruleTypedRefCS )
-            // InternalOCLstdlib.g:25551:1: ruleTypedRefCS
+            // InternalOCLstdlib.g:25556:1: ( ruleTypedRefCS )
+            // InternalOCLstdlib.g:25557:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
                before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
@@ -74105,11 +74105,11 @@
 
     // $ANTLR start synpred132_InternalOCLstdlib
     public final void synpred132_InternalOCLstdlib_fragment() throws RecognitionException {
-        // InternalOCLstdlib.g:4938:6: ( ( ruleTypeLiteralCS ) )
-        // InternalOCLstdlib.g:4938:6: ( ruleTypeLiteralCS )
+        // InternalOCLstdlib.g:4940:6: ( ( ruleTypeLiteralCS ) )
+        // InternalOCLstdlib.g:4940:6: ( ruleTypeLiteralCS )
         {
-        // InternalOCLstdlib.g:4938:6: ( ruleTypeLiteralCS )
-        // InternalOCLstdlib.g:4939:1: ruleTypeLiteralCS
+        // InternalOCLstdlib.g:4940:6: ( ruleTypeLiteralCS )
+        // InternalOCLstdlib.g:4941:1: ruleTypeLiteralCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_1());
@@ -74129,17 +74129,17 @@
 
     // $ANTLR start synpred133_InternalOCLstdlib
     public final void synpred133_InternalOCLstdlib_fragment() throws RecognitionException {
-        // InternalOCLstdlib.g:4960:1: ( ( ( rule__ExpCS__Group_0__0 ) ) )
-        // InternalOCLstdlib.g:4960:1: ( ( rule__ExpCS__Group_0__0 ) )
+        // InternalOCLstdlib.g:4962:1: ( ( ( rule__ExpCS__Group_0__0 ) ) )
+        // InternalOCLstdlib.g:4962:1: ( ( rule__ExpCS__Group_0__0 ) )
         {
-        // InternalOCLstdlib.g:4960:1: ( ( rule__ExpCS__Group_0__0 ) )
-        // InternalOCLstdlib.g:4961:1: ( rule__ExpCS__Group_0__0 )
+        // InternalOCLstdlib.g:4962:1: ( ( rule__ExpCS__Group_0__0 ) )
+        // InternalOCLstdlib.g:4963:1: ( rule__ExpCS__Group_0__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getExpCSAccess().getGroup_0());
         }
-        // InternalOCLstdlib.g:4962:1: ( rule__ExpCS__Group_0__0 )
-        // InternalOCLstdlib.g:4962:2: rule__ExpCS__Group_0__0
+        // InternalOCLstdlib.g:4964:1: ( rule__ExpCS__Group_0__0 )
+        // InternalOCLstdlib.g:4964:2: rule__ExpCS__Group_0__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__ExpCS__Group_0__0();
@@ -74159,11 +74159,11 @@
 
     // $ANTLR start synpred140_InternalOCLstdlib
     public final void synpred140_InternalOCLstdlib_fragment() throws RecognitionException {
-        // InternalOCLstdlib.g:5050:6: ( ( ruleTupleLiteralExpCS ) )
-        // InternalOCLstdlib.g:5050:6: ( ruleTupleLiteralExpCS )
+        // InternalOCLstdlib.g:5052:6: ( ( ruleTupleLiteralExpCS ) )
+        // InternalOCLstdlib.g:5052:6: ( ruleTupleLiteralExpCS )
         {
-        // InternalOCLstdlib.g:5050:6: ( ruleTupleLiteralExpCS )
-        // InternalOCLstdlib.g:5051:1: ruleTupleLiteralExpCS
+        // InternalOCLstdlib.g:5052:6: ( ruleTupleLiteralExpCS )
+        // InternalOCLstdlib.g:5053:1: ruleTupleLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
@@ -74183,11 +74183,11 @@
 
     // $ANTLR start synpred141_InternalOCLstdlib
     public final void synpred141_InternalOCLstdlib_fragment() throws RecognitionException {
-        // InternalOCLstdlib.g:5056:6: ( ( ruleMapLiteralExpCS ) )
-        // InternalOCLstdlib.g:5056:6: ( ruleMapLiteralExpCS )
+        // InternalOCLstdlib.g:5058:6: ( ( ruleMapLiteralExpCS ) )
+        // InternalOCLstdlib.g:5058:6: ( ruleMapLiteralExpCS )
         {
-        // InternalOCLstdlib.g:5056:6: ( ruleMapLiteralExpCS )
-        // InternalOCLstdlib.g:5057:1: ruleMapLiteralExpCS
+        // InternalOCLstdlib.g:5058:6: ( ruleMapLiteralExpCS )
+        // InternalOCLstdlib.g:5059:1: ruleMapLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
@@ -74207,11 +74207,11 @@
 
     // $ANTLR start synpred142_InternalOCLstdlib
     public final void synpred142_InternalOCLstdlib_fragment() throws RecognitionException {
-        // InternalOCLstdlib.g:5062:6: ( ( ruleCollectionLiteralExpCS ) )
-        // InternalOCLstdlib.g:5062:6: ( ruleCollectionLiteralExpCS )
+        // InternalOCLstdlib.g:5064:6: ( ( ruleCollectionLiteralExpCS ) )
+        // InternalOCLstdlib.g:5064:6: ( ruleCollectionLiteralExpCS )
         {
-        // InternalOCLstdlib.g:5062:6: ( ruleCollectionLiteralExpCS )
-        // InternalOCLstdlib.g:5063:1: ruleCollectionLiteralExpCS
+        // InternalOCLstdlib.g:5064:6: ( ruleCollectionLiteralExpCS )
+        // InternalOCLstdlib.g:5065:1: ruleCollectionLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
@@ -74231,11 +74231,11 @@
 
     // $ANTLR start synpred144_InternalOCLstdlib
     public final void synpred144_InternalOCLstdlib_fragment() throws RecognitionException {
-        // InternalOCLstdlib.g:5074:6: ( ( ruleTypeLiteralExpCS ) )
-        // InternalOCLstdlib.g:5074:6: ( ruleTypeLiteralExpCS )
+        // InternalOCLstdlib.g:5076:6: ( ( ruleTypeLiteralExpCS ) )
+        // InternalOCLstdlib.g:5076:6: ( ruleTypeLiteralExpCS )
         {
-        // InternalOCLstdlib.g:5074:6: ( ruleTypeLiteralExpCS )
-        // InternalOCLstdlib.g:5075:1: ruleTypeLiteralExpCS
+        // InternalOCLstdlib.g:5076:6: ( ruleTypeLiteralExpCS )
+        // InternalOCLstdlib.g:5077:1: ruleTypeLiteralExpCS
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
@@ -74255,17 +74255,17 @@
 
     // $ANTLR start synpred148_InternalOCLstdlib
     public final void synpred148_InternalOCLstdlib_fragment() throws RecognitionException {
-        // InternalOCLstdlib.g:5146:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) )
-        // InternalOCLstdlib.g:5146:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+        // InternalOCLstdlib.g:5148:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) )
+        // InternalOCLstdlib.g:5148:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
         {
-        // InternalOCLstdlib.g:5146:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
-        // InternalOCLstdlib.g:5147:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+        // InternalOCLstdlib.g:5148:1: ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) )
+        // InternalOCLstdlib.g:5149:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
         }
-        // InternalOCLstdlib.g:5148:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
-        // InternalOCLstdlib.g:5148:2: rule__NavigatingArgCS__Group_0_1_0__0
+        // InternalOCLstdlib.g:5150:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
+        // InternalOCLstdlib.g:5150:2: rule__NavigatingArgCS__Group_0_1_0__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingArgCS__Group_0_1_0__0();
@@ -74285,17 +74285,17 @@
 
     // $ANTLR start synpred149_InternalOCLstdlib
     public final void synpred149_InternalOCLstdlib_fragment() throws RecognitionException {
-        // InternalOCLstdlib.g:5152:6: ( ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) )
-        // InternalOCLstdlib.g:5152:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+        // InternalOCLstdlib.g:5154:6: ( ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) )
+        // InternalOCLstdlib.g:5154:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
         {
-        // InternalOCLstdlib.g:5152:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
-        // InternalOCLstdlib.g:5153:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+        // InternalOCLstdlib.g:5154:6: ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) )
+        // InternalOCLstdlib.g:5155:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
         }
-        // InternalOCLstdlib.g:5154:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
-        // InternalOCLstdlib.g:5154:2: rule__NavigatingArgCS__Group_0_1_1__0
+        // InternalOCLstdlib.g:5156:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
+        // InternalOCLstdlib.g:5156:2: rule__NavigatingArgCS__Group_0_1_1__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingArgCS__Group_0_1_1__0();
@@ -74315,17 +74315,17 @@
 
     // $ANTLR start synpred150_InternalOCLstdlib
     public final void synpred150_InternalOCLstdlib_fragment() throws RecognitionException {
-        // InternalOCLstdlib.g:5174:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) )
-        // InternalOCLstdlib.g:5174:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+        // InternalOCLstdlib.g:5176:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) )
+        // InternalOCLstdlib.g:5176:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
         {
-        // InternalOCLstdlib.g:5174:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
-        // InternalOCLstdlib.g:5175:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+        // InternalOCLstdlib.g:5176:1: ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) )
+        // InternalOCLstdlib.g:5177:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
         }
-        // InternalOCLstdlib.g:5176:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
-        // InternalOCLstdlib.g:5176:2: rule__NavigatingCommaArgCS__Group_2_0__0
+        // InternalOCLstdlib.g:5178:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
+        // InternalOCLstdlib.g:5178:2: rule__NavigatingCommaArgCS__Group_2_0__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingCommaArgCS__Group_2_0__0();
@@ -74345,17 +74345,17 @@
 
     // $ANTLR start synpred151_InternalOCLstdlib
     public final void synpred151_InternalOCLstdlib_fragment() throws RecognitionException {
-        // InternalOCLstdlib.g:5180:6: ( ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) )
-        // InternalOCLstdlib.g:5180:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+        // InternalOCLstdlib.g:5182:6: ( ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) )
+        // InternalOCLstdlib.g:5182:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
         {
-        // InternalOCLstdlib.g:5180:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
-        // InternalOCLstdlib.g:5181:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+        // InternalOCLstdlib.g:5182:6: ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) )
+        // InternalOCLstdlib.g:5183:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
         {
         if ( state.backtracking==0 ) {
            before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
         }
-        // InternalOCLstdlib.g:5182:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
-        // InternalOCLstdlib.g:5182:2: rule__NavigatingCommaArgCS__Group_2_1__0
+        // InternalOCLstdlib.g:5184:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
+        // InternalOCLstdlib.g:5184:2: rule__NavigatingCommaArgCS__Group_2_1__0
         {
         pushFollow(FollowSets000.FOLLOW_2);
         rule__NavigatingCommaArgCS__Group_2_1__0();
@@ -74584,7 +74584,7 @@
             this.transition = dfa_7;
         }
         public String getDescription() {
-            return "4759:1: rule__CollectionLiteralPartCS__Alternatives : ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) );";
+            return "4761:1: rule__CollectionLiteralPartCS__Alternatives : ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) );";
         }
     }
     static final String[] dfa_8s = {
@@ -74632,7 +74632,7 @@
             this.transition = dfa_8;
         }
         public String getDescription() {
-            return "4803:1: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );";
+            return "4805:1: rule__ShadowPartCS__OwnedInitExpressionAlternatives_0_2_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );";
         }
     }
     static final String dfa_9s = "\51\uffff";
@@ -74705,7 +74705,7 @@
             this.transition = dfa_14;
         }
         public String getDescription() {
-            return "4927:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );";
+            return "4929:1: rule__TypeExpWithoutMultiplicityCS__Alternatives : ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             TokenStream input = (TokenStream)_input;
@@ -74878,7 +74878,7 @@
             this.transition = dfa_20;
         }
         public String getDescription() {
-            return "4955:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );";
+            return "4957:1: rule__ExpCS__Alternatives : ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             TokenStream input = (TokenStream)_input;
@@ -75020,7 +75020,7 @@
             this.transition = dfa_26;
         }
         public String getDescription() {
-            return "5021:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );";
+            return "5023:1: rule__PrimaryExpCS__Alternatives : ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             TokenStream input = (TokenStream)_input;
@@ -75184,7 +75184,7 @@
             this.transition = dfa_27;
         }
         public String getDescription() {
-            return "5197:1: rule__IfExpCS__OwnedConditionAlternatives_1_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );";
+            return "5199:1: rule__IfExpCS__OwnedConditionAlternatives_1_0 : ( ( ruleExpCS ) | ( rulePatternExpCS ) );";
         }
     }
     static final String dfa_28s = "\1\uffff\30\31\2\uffff";
@@ -75240,7 +75240,7 @@
             this.transition = dfa_32;
         }
         public String getDescription() {
-            return "7120:1: ( rule__ImportCS__Group_1__0 )?";
+            return "7122:1: ( rule__ImportCS__Group_1__0 )?";
         }
     }
     static final String dfa_33s = "\34\uffff";
@@ -75300,7 +75300,7 @@
             this.transition = dfa_38;
         }
         public String getDescription() {
-            return "8066:1: ( rule__LibIterationCS__OwnedSignatureAssignment_2 )?";
+            return "8068:1: ( rule__LibIterationCS__OwnedSignatureAssignment_2 )?";
         }
     }
     static final String dfa_39s = "\1\131\1\132\30\133\2\uffff";
@@ -75353,7 +75353,7 @@
             this.transition = dfa_41;
         }
         public String getDescription() {
-            return "9574:1: ( rule__LibOperationCS__OwnedSignatureAssignment_3 )?";
+            return "9576:1: ( rule__LibOperationCS__OwnedSignatureAssignment_3 )?";
         }
     }
 
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/OCLstdlib.xtextbin b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/OCLstdlib.xtextbin
index 6d04e37..55ea200 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/OCLstdlib.xtextbin
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/OCLstdlib.xtextbin
Binary files differ
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/OCLstdlibGrammarResource.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/OCLstdlibGrammarResource.java
index f429042..13c969d 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/OCLstdlibGrammarResource.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/OCLstdlibGrammarResource.java
@@ -1378,6 +1378,7 @@
 		private static final @NonNull ParserRule PR_UPPER = createParserRule("UPPER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.EINT));
 		private static final @NonNull ParserRule PR_URI = createParserRule("URI", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_UnreservedName = createParserRule("UnreservedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
+		private static final @NonNull ParserRule PR_UnreservedPathNameCS = createParserRule("UnreservedPathNameCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.PATH_NAME_CS));
 		private static final @NonNull ParserRule PR_UnrestrictedName = createParserRule("UnrestrictedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_WildcardTypeRefCS = createParserRule("WildcardTypeRefCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.WILDCARD_TYPE_REF_CS));
 
@@ -1474,6 +1475,12 @@
 				createRuleCall(TR_SINGLE_QUOTED_STRING));
 			PR_UnreservedName.setAlternatives(
 				createRuleCall(_EssentialOCL.PR_UnrestrictedName));
+			PR_UnreservedPathNameCS.setAlternatives(
+				createGroup(
+					createAssignment("ownedPathElements", "+=", createRuleCall(PR_NextPathElementCS)),
+					setCardinality("*", createGroup(
+						createKeyword("::"),
+						createAssignment("ownedPathElements", "+=", createRuleCall(PR_NextPathElementCS))))));
 			PR_UnrestrictedName.setAlternatives(
 				createRuleCall(_OCLstdlib.PR_Identifier));
 			PR_WildcardTypeRefCS.setAlternatives(
@@ -1502,6 +1509,7 @@
 				rules.add(PR_MultiplicityCS);
 				rules.add(PR_MultiplicityStringCS);
 				rules.add(PR_PathNameCS);
+				rules.add(PR_UnreservedPathNameCS);
 				rules.add(PR_FirstPathElementCS);
 				rules.add(PR_NextPathElementCS);
 				rules.add(PR_TemplateBindingCS);
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/internal/InternalOCLstdlib.g b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/internal/InternalOCLstdlib.g
index b2cfe83..c75e4f5 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/internal/InternalOCLstdlib.g
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/internal/InternalOCLstdlib.g
@@ -8806,6 +8806,8 @@
 
 
 
+
+
 // Entry rule entryRuleFirstPathElementCS
 entryRuleFirstPathElementCS returns [EObject current=null]
 	:
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/internal/InternalOCLstdlibLexer.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/internal/InternalOCLstdlibLexer.java
index c48632c..fade0f0 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/internal/InternalOCLstdlibLexer.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/internal/InternalOCLstdlibLexer.java
@@ -2188,8 +2188,8 @@
     // $ANTLR start "RULE_ESCAPED_CHARACTER"
     public final void mRULE_ESCAPED_CHARACTER() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:9442:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
-            // InternalOCLstdlib.g:9442:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+            // InternalOCLstdlib.g:9444:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
+            // InternalOCLstdlib.g:9444:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
             match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -2213,8 +2213,8 @@
     // $ANTLR start "RULE_LETTER_CHARACTER"
     public final void mRULE_LETTER_CHARACTER() throws RecognitionException {
         try {
-            // InternalOCLstdlib.g:9444:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
-            // InternalOCLstdlib.g:9444:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
+            // InternalOCLstdlib.g:9446:32: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) )
+            // InternalOCLstdlib.g:9446:34: ( 'a' .. 'z' | 'A' .. 'Z' | '_' )
             {
             if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
                 input.consume();
@@ -2239,11 +2239,11 @@
         try {
             int _type = RULE_DOUBLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:9446:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
-            // InternalOCLstdlib.g:9446:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+            // InternalOCLstdlib.g:9448:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
+            // InternalOCLstdlib.g:9448:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
             match('\"');
-            // InternalOCLstdlib.g:9446:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
+            // InternalOCLstdlib.g:9448:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
                 int alt1=3;
@@ -2259,14 +2259,14 @@
 
                 switch (alt1) {
             	case 1 :
-            	    // InternalOCLstdlib.g:9446:34: RULE_ESCAPED_CHARACTER
+            	    // InternalOCLstdlib.g:9448:34: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalOCLstdlib.g:9446:57: ~ ( ( '\\\\' | '\"' ) )
+            	    // InternalOCLstdlib.g:9448:57: ~ ( ( '\\\\' | '\"' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2303,11 +2303,11 @@
         try {
             int _type = RULE_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:9448:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            // InternalOCLstdlib.g:9448:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+            // InternalOCLstdlib.g:9450:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // InternalOCLstdlib.g:9450:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
             match('\'');
-            // InternalOCLstdlib.g:9448:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
+            // InternalOCLstdlib.g:9450:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
                 int alt2=3;
@@ -2323,14 +2323,14 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // InternalOCLstdlib.g:9448:35: RULE_ESCAPED_CHARACTER
+            	    // InternalOCLstdlib.g:9450:35: RULE_ESCAPED_CHARACTER
             	    {
             	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
             	case 2 :
-            	    // InternalOCLstdlib.g:9448:58: ~ ( ( '\\\\' | '\\'' ) )
+            	    // InternalOCLstdlib.g:9450:58: ~ ( ( '\\\\' | '\\'' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2367,12 +2367,12 @@
         try {
             int _type = RULE_ML_SINGLE_QUOTED_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:9450:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
-            // InternalOCLstdlib.g:9450:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
+            // InternalOCLstdlib.g:9452:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
+            // InternalOCLstdlib.g:9452:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
             match("/'");
 
-            // InternalOCLstdlib.g:9450:38: ( options {greedy=false; } : . )*
+            // InternalOCLstdlib.g:9452:38: ( options {greedy=false; } : . )*
             loop3:
             do {
                 int alt3=2;
@@ -2397,7 +2397,7 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // InternalOCLstdlib.g:9450:66: .
+            	    // InternalOCLstdlib.g:9452:66: .
             	    {
             	    matchAny();
 
@@ -2427,11 +2427,11 @@
         try {
             int _type = RULE_SIMPLE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:9452:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
-            // InternalOCLstdlib.g:9452:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalOCLstdlib.g:9454:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
+            // InternalOCLstdlib.g:9454:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
             mRULE_LETTER_CHARACTER();
-            // InternalOCLstdlib.g:9452:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
+            // InternalOCLstdlib.g:9454:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
                 int alt4=2;
@@ -2480,8 +2480,8 @@
         try {
             int _type = RULE_ESCAPED_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:9454:17: ( '_' RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLstdlib.g:9454:19: '_' RULE_SINGLE_QUOTED_STRING
+            // InternalOCLstdlib.g:9456:17: ( '_' RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:9456:19: '_' RULE_SINGLE_QUOTED_STRING
             {
             match('_');
             mRULE_SINGLE_QUOTED_STRING();
@@ -2501,10 +2501,10 @@
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:9456:10: ( ( '0' .. '9' )+ )
-            // InternalOCLstdlib.g:9456:12: ( '0' .. '9' )+
+            // InternalOCLstdlib.g:9458:10: ( ( '0' .. '9' )+ )
+            // InternalOCLstdlib.g:9458:12: ( '0' .. '9' )+
             {
-            // InternalOCLstdlib.g:9456:12: ( '0' .. '9' )+
+            // InternalOCLstdlib.g:9458:12: ( '0' .. '9' )+
             int cnt5=0;
             loop5:
             do {
@@ -2518,7 +2518,7 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // InternalOCLstdlib.g:9456:13: '0' .. '9'
+            	    // InternalOCLstdlib.g:9458:13: '0' .. '9'
             	    {
             	    matchRange('0','9');
 
@@ -2550,12 +2550,12 @@
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:9458:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // InternalOCLstdlib.g:9458:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // InternalOCLstdlib.g:9460:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // InternalOCLstdlib.g:9460:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*");
 
-            // InternalOCLstdlib.g:9458:24: ( options {greedy=false; } : . )*
+            // InternalOCLstdlib.g:9460:24: ( options {greedy=false; } : . )*
             loop6:
             do {
                 int alt6=2;
@@ -2580,7 +2580,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // InternalOCLstdlib.g:9458:52: .
+            	    // InternalOCLstdlib.g:9460:52: .
             	    {
             	    matchAny();
 
@@ -2610,12 +2610,12 @@
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:9460:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // InternalOCLstdlib.g:9460:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // InternalOCLstdlib.g:9462:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // InternalOCLstdlib.g:9462:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("--");
 
-            // InternalOCLstdlib.g:9460:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // InternalOCLstdlib.g:9462:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
             do {
                 int alt7=2;
@@ -2628,7 +2628,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // InternalOCLstdlib.g:9460:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // InternalOCLstdlib.g:9462:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -2648,7 +2648,7 @@
                 }
             } while (true);
 
-            // InternalOCLstdlib.g:9460:40: ( ( '\\r' )? '\\n' )?
+            // InternalOCLstdlib.g:9462:40: ( ( '\\r' )? '\\n' )?
             int alt9=2;
             int LA9_0 = input.LA(1);
 
@@ -2657,9 +2657,9 @@
             }
             switch (alt9) {
                 case 1 :
-                    // InternalOCLstdlib.g:9460:41: ( '\\r' )? '\\n'
+                    // InternalOCLstdlib.g:9462:41: ( '\\r' )? '\\n'
                     {
-                    // InternalOCLstdlib.g:9460:41: ( '\\r' )?
+                    // InternalOCLstdlib.g:9462:41: ( '\\r' )?
                     int alt8=2;
                     int LA8_0 = input.LA(1);
 
@@ -2668,7 +2668,7 @@
                     }
                     switch (alt8) {
                         case 1 :
-                            // InternalOCLstdlib.g:9460:41: '\\r'
+                            // InternalOCLstdlib.g:9462:41: '\\r'
                             {
                             match('\r');
 
@@ -2700,10 +2700,10 @@
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:9462:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // InternalOCLstdlib.g:9462:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalOCLstdlib.g:9464:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // InternalOCLstdlib.g:9464:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // InternalOCLstdlib.g:9462:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // InternalOCLstdlib.g:9464:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt10=0;
             loop10:
             do {
@@ -2757,8 +2757,8 @@
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // InternalOCLstdlib.g:9464:16: ( . )
-            // InternalOCLstdlib.g:9464:18: .
+            // InternalOCLstdlib.g:9466:16: ( . )
+            // InternalOCLstdlib.g:9466:18: .
             {
             matchAny();
 
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/internal/InternalOCLstdlibParser.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/internal/InternalOCLstdlibParser.java
index 7e29ea2..9ca2a9d 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/internal/InternalOCLstdlibParser.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/internal/InternalOCLstdlibParser.java
@@ -25080,7 +25080,7 @@
 
 
     // $ANTLR start "entryRuleFirstPathElementCS"
-    // InternalOCLstdlib.g:8810:1: entryRuleFirstPathElementCS returns [EObject current=null] : iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ;
+    // InternalOCLstdlib.g:8812:1: entryRuleFirstPathElementCS returns [EObject current=null] : iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ;
     public final EObject entryRuleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
@@ -25088,8 +25088,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:8811:2: (iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF )
-            // InternalOCLstdlib.g:8812:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
+            // InternalOCLstdlib.g:8813:2: (iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF )
+            // InternalOCLstdlib.g:8814:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getFirstPathElementCSRule());
@@ -25120,21 +25120,21 @@
 
 
     // $ANTLR start "ruleFirstPathElementCS"
-    // InternalOCLstdlib.g:8819:1: ruleFirstPathElementCS returns [EObject current=null] : ( ( ruleUnrestrictedName ) ) ;
+    // InternalOCLstdlib.g:8821:1: ruleFirstPathElementCS returns [EObject current=null] : ( ( ruleUnrestrictedName ) ) ;
     public final EObject ruleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:8822:28: ( ( ( ruleUnrestrictedName ) ) )
-            // InternalOCLstdlib.g:8823:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:8824:28: ( ( ( ruleUnrestrictedName ) ) )
+            // InternalOCLstdlib.g:8825:1: ( ( ruleUnrestrictedName ) )
             {
-            // InternalOCLstdlib.g:8823:1: ( ( ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:8824:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:8825:1: ( ( ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:8826:1: ( ruleUnrestrictedName )
             {
-            // InternalOCLstdlib.g:8824:1: ( ruleUnrestrictedName )
-            // InternalOCLstdlib.g:8825:3: ruleUnrestrictedName
+            // InternalOCLstdlib.g:8826:1: ( ruleUnrestrictedName )
+            // InternalOCLstdlib.g:8827:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
 
@@ -25189,7 +25189,7 @@
 
 
     // $ANTLR start "entryRuleNextPathElementCS"
-    // InternalOCLstdlib.g:8849:1: entryRuleNextPathElementCS returns [EObject current=null] : iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ;
+    // InternalOCLstdlib.g:8851:1: entryRuleNextPathElementCS returns [EObject current=null] : iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ;
     public final EObject entryRuleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
@@ -25197,8 +25197,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:8850:2: (iv_ruleNextPathElementCS= ruleNextPathElementCS EOF )
-            // InternalOCLstdlib.g:8851:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
+            // InternalOCLstdlib.g:8852:2: (iv_ruleNextPathElementCS= ruleNextPathElementCS EOF )
+            // InternalOCLstdlib.g:8853:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getNextPathElementCSRule());
@@ -25229,21 +25229,21 @@
 
 
     // $ANTLR start "ruleNextPathElementCS"
-    // InternalOCLstdlib.g:8858:1: ruleNextPathElementCS returns [EObject current=null] : ( ( ruleUnreservedName ) ) ;
+    // InternalOCLstdlib.g:8860:1: ruleNextPathElementCS returns [EObject current=null] : ( ( ruleUnreservedName ) ) ;
     public final EObject ruleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:8861:28: ( ( ( ruleUnreservedName ) ) )
-            // InternalOCLstdlib.g:8862:1: ( ( ruleUnreservedName ) )
+            // InternalOCLstdlib.g:8863:28: ( ( ( ruleUnreservedName ) ) )
+            // InternalOCLstdlib.g:8864:1: ( ( ruleUnreservedName ) )
             {
-            // InternalOCLstdlib.g:8862:1: ( ( ruleUnreservedName ) )
-            // InternalOCLstdlib.g:8863:1: ( ruleUnreservedName )
+            // InternalOCLstdlib.g:8864:1: ( ( ruleUnreservedName ) )
+            // InternalOCLstdlib.g:8865:1: ( ruleUnreservedName )
             {
-            // InternalOCLstdlib.g:8863:1: ( ruleUnreservedName )
-            // InternalOCLstdlib.g:8864:3: ruleUnreservedName
+            // InternalOCLstdlib.g:8865:1: ( ruleUnreservedName )
+            // InternalOCLstdlib.g:8866:3: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
 
@@ -25298,7 +25298,7 @@
 
 
     // $ANTLR start "entryRuleTemplateBindingCS"
-    // InternalOCLstdlib.g:8888:1: entryRuleTemplateBindingCS returns [EObject current=null] : iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ;
+    // InternalOCLstdlib.g:8890:1: entryRuleTemplateBindingCS returns [EObject current=null] : iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ;
     public final EObject entryRuleTemplateBindingCS() throws RecognitionException {
         EObject current = null;
 
@@ -25306,8 +25306,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:8889:2: (iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF )
-            // InternalOCLstdlib.g:8890:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
+            // InternalOCLstdlib.g:8891:2: (iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF )
+            // InternalOCLstdlib.g:8892:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTemplateBindingCSRule());
@@ -25338,7 +25338,7 @@
 
 
     // $ANTLR start "ruleTemplateBindingCS"
-    // InternalOCLstdlib.g:8897:1: ruleTemplateBindingCS returns [EObject current=null] : ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) ;
+    // InternalOCLstdlib.g:8899:1: ruleTemplateBindingCS returns [EObject current=null] : ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) ;
     public final EObject ruleTemplateBindingCS() throws RecognitionException {
         EObject current = null;
 
@@ -25353,17 +25353,17 @@
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:8900:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
-            // InternalOCLstdlib.g:8901:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
+            // InternalOCLstdlib.g:8902:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
+            // InternalOCLstdlib.g:8903:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
             {
-            // InternalOCLstdlib.g:8901:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
-            // InternalOCLstdlib.g:8901:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
+            // InternalOCLstdlib.g:8903:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
+            // InternalOCLstdlib.g:8903:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
             {
-            // InternalOCLstdlib.g:8901:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) )
-            // InternalOCLstdlib.g:8902:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
+            // InternalOCLstdlib.g:8903:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) )
+            // InternalOCLstdlib.g:8904:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
             {
-            // InternalOCLstdlib.g:8902:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
-            // InternalOCLstdlib.g:8903:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
+            // InternalOCLstdlib.g:8904:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
+            // InternalOCLstdlib.g:8905:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
 
@@ -25394,7 +25394,7 @@
 
             }
 
-            // InternalOCLstdlib.g:8919:2: (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )*
+            // InternalOCLstdlib.g:8921:2: (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )*
             loop159:
             do {
                 int alt159=2;
@@ -25407,7 +25407,7 @@
 
                 switch (alt159) {
             	case 1 :
-            	    // InternalOCLstdlib.g:8919:4: otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
+            	    // InternalOCLstdlib.g:8921:4: otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
             	    {
             	    otherlv_1=(Token)match(input,45,FollowSets000.FOLLOW_62); if (state.failed) return current;
             	    if ( state.backtracking==0 ) {
@@ -25415,11 +25415,11 @@
             	          	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
 
             	    }
-            	    // InternalOCLstdlib.g:8923:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
-            	    // InternalOCLstdlib.g:8924:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
+            	    // InternalOCLstdlib.g:8925:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
+            	    // InternalOCLstdlib.g:8926:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
             	    {
-            	    // InternalOCLstdlib.g:8924:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
-            	    // InternalOCLstdlib.g:8925:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
+            	    // InternalOCLstdlib.g:8926:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
+            	    // InternalOCLstdlib.g:8927:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
             	    {
             	    if ( state.backtracking==0 ) {
 
@@ -25459,7 +25459,7 @@
                 }
             } while (true);
 
-            // InternalOCLstdlib.g:8941:4: ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
+            // InternalOCLstdlib.g:8943:4: ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
             int alt160=2;
             int LA160_0 = input.LA(1);
 
@@ -25468,10 +25468,10 @@
             }
             switch (alt160) {
                 case 1 :
-                    // InternalOCLstdlib.g:8942:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
+                    // InternalOCLstdlib.g:8944:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
                     {
-                    // InternalOCLstdlib.g:8942:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
-                    // InternalOCLstdlib.g:8943:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
+                    // InternalOCLstdlib.g:8944:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
+                    // InternalOCLstdlib.g:8945:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -25528,7 +25528,7 @@
 
 
     // $ANTLR start "entryRuleTemplateParameterSubstitutionCS"
-    // InternalOCLstdlib.g:8967:1: entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] : iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ;
+    // InternalOCLstdlib.g:8969:1: entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] : iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ;
     public final EObject entryRuleTemplateParameterSubstitutionCS() throws RecognitionException {
         EObject current = null;
 
@@ -25536,8 +25536,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:8968:2: (iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF )
-            // InternalOCLstdlib.g:8969:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
+            // InternalOCLstdlib.g:8970:2: (iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF )
+            // InternalOCLstdlib.g:8971:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule());
@@ -25568,7 +25568,7 @@
 
 
     // $ANTLR start "ruleTemplateParameterSubstitutionCS"
-    // InternalOCLstdlib.g:8976:1: ruleTemplateParameterSubstitutionCS returns [EObject current=null] : ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) ;
+    // InternalOCLstdlib.g:8978:1: ruleTemplateParameterSubstitutionCS returns [EObject current=null] : ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) ;
     public final EObject ruleTemplateParameterSubstitutionCS() throws RecognitionException {
         EObject current = null;
 
@@ -25578,14 +25578,14 @@
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:8979:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
-            // InternalOCLstdlib.g:8980:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
+            // InternalOCLstdlib.g:8981:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
+            // InternalOCLstdlib.g:8982:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
             {
-            // InternalOCLstdlib.g:8980:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
-            // InternalOCLstdlib.g:8981:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
+            // InternalOCLstdlib.g:8982:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
+            // InternalOCLstdlib.g:8983:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
             {
-            // InternalOCLstdlib.g:8981:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
-            // InternalOCLstdlib.g:8982:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
+            // InternalOCLstdlib.g:8983:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
+            // InternalOCLstdlib.g:8984:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
 
@@ -25636,7 +25636,7 @@
 
 
     // $ANTLR start "entryRuleTemplateSignatureCS"
-    // InternalOCLstdlib.g:9006:1: entryRuleTemplateSignatureCS returns [EObject current=null] : iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF ;
+    // InternalOCLstdlib.g:9008:1: entryRuleTemplateSignatureCS returns [EObject current=null] : iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF ;
     public final EObject entryRuleTemplateSignatureCS() throws RecognitionException {
         EObject current = null;
 
@@ -25644,8 +25644,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:9007:2: (iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF )
-            // InternalOCLstdlib.g:9008:2: iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF
+            // InternalOCLstdlib.g:9009:2: (iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF )
+            // InternalOCLstdlib.g:9010:2: iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTemplateSignatureCSRule());
@@ -25676,7 +25676,7 @@
 
 
     // $ANTLR start "ruleTemplateSignatureCS"
-    // InternalOCLstdlib.g:9015:1: ruleTemplateSignatureCS returns [EObject current=null] : (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) ;
+    // InternalOCLstdlib.g:9017:1: ruleTemplateSignatureCS returns [EObject current=null] : (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) ;
     public final EObject ruleTemplateSignatureCS() throws RecognitionException {
         EObject current = null;
 
@@ -25691,11 +25691,11 @@
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:9018:28: ( (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) )
-            // InternalOCLstdlib.g:9019:1: (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' )
+            // InternalOCLstdlib.g:9020:28: ( (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) )
+            // InternalOCLstdlib.g:9021:1: (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' )
             {
-            // InternalOCLstdlib.g:9019:1: (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' )
-            // InternalOCLstdlib.g:9019:3: otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')'
+            // InternalOCLstdlib.g:9021:1: (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' )
+            // InternalOCLstdlib.g:9021:3: otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')'
             {
             otherlv_0=(Token)match(input,44,FollowSets000.FOLLOW_37); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -25703,11 +25703,11 @@
                   	newLeafNode(otherlv_0, grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0());
 
             }
-            // InternalOCLstdlib.g:9023:1: ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) )
-            // InternalOCLstdlib.g:9024:1: (lv_ownedParameters_1_0= ruleTypeParameterCS )
+            // InternalOCLstdlib.g:9025:1: ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) )
+            // InternalOCLstdlib.g:9026:1: (lv_ownedParameters_1_0= ruleTypeParameterCS )
             {
-            // InternalOCLstdlib.g:9024:1: (lv_ownedParameters_1_0= ruleTypeParameterCS )
-            // InternalOCLstdlib.g:9025:3: lv_ownedParameters_1_0= ruleTypeParameterCS
+            // InternalOCLstdlib.g:9026:1: (lv_ownedParameters_1_0= ruleTypeParameterCS )
+            // InternalOCLstdlib.g:9027:3: lv_ownedParameters_1_0= ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
 
@@ -25738,7 +25738,7 @@
 
             }
 
-            // InternalOCLstdlib.g:9041:2: (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )*
+            // InternalOCLstdlib.g:9043:2: (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )*
             loop161:
             do {
                 int alt161=2;
@@ -25751,7 +25751,7 @@
 
                 switch (alt161) {
             	case 1 :
-            	    // InternalOCLstdlib.g:9041:4: otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) )
+            	    // InternalOCLstdlib.g:9043:4: otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) )
             	    {
             	    otherlv_2=(Token)match(input,45,FollowSets000.FOLLOW_37); if (state.failed) return current;
             	    if ( state.backtracking==0 ) {
@@ -25759,11 +25759,11 @@
             	          	newLeafNode(otherlv_2, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_2_0());
 
             	    }
-            	    // InternalOCLstdlib.g:9045:1: ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) )
-            	    // InternalOCLstdlib.g:9046:1: (lv_ownedParameters_3_0= ruleTypeParameterCS )
+            	    // InternalOCLstdlib.g:9047:1: ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) )
+            	    // InternalOCLstdlib.g:9048:1: (lv_ownedParameters_3_0= ruleTypeParameterCS )
             	    {
-            	    // InternalOCLstdlib.g:9046:1: (lv_ownedParameters_3_0= ruleTypeParameterCS )
-            	    // InternalOCLstdlib.g:9047:3: lv_ownedParameters_3_0= ruleTypeParameterCS
+            	    // InternalOCLstdlib.g:9048:1: (lv_ownedParameters_3_0= ruleTypeParameterCS )
+            	    // InternalOCLstdlib.g:9049:3: lv_ownedParameters_3_0= ruleTypeParameterCS
             	    {
             	    if ( state.backtracking==0 ) {
 
@@ -25832,7 +25832,7 @@
 
 
     // $ANTLR start "entryRuleTypeParameterCS"
-    // InternalOCLstdlib.g:9075:1: entryRuleTypeParameterCS returns [EObject current=null] : iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ;
+    // InternalOCLstdlib.g:9077:1: entryRuleTypeParameterCS returns [EObject current=null] : iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ;
     public final EObject entryRuleTypeParameterCS() throws RecognitionException {
         EObject current = null;
 
@@ -25840,8 +25840,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:9076:2: (iv_ruleTypeParameterCS= ruleTypeParameterCS EOF )
-            // InternalOCLstdlib.g:9077:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
+            // InternalOCLstdlib.g:9078:2: (iv_ruleTypeParameterCS= ruleTypeParameterCS EOF )
+            // InternalOCLstdlib.g:9079:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypeParameterCSRule());
@@ -25872,7 +25872,7 @@
 
 
     // $ANTLR start "ruleTypeParameterCS"
-    // InternalOCLstdlib.g:9084:1: ruleTypeParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) ;
+    // InternalOCLstdlib.g:9086:1: ruleTypeParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) ;
     public final EObject ruleTypeParameterCS() throws RecognitionException {
         EObject current = null;
 
@@ -25888,17 +25888,17 @@
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:9087:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
-            // InternalOCLstdlib.g:9088:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
+            // InternalOCLstdlib.g:9089:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
+            // InternalOCLstdlib.g:9090:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
             {
-            // InternalOCLstdlib.g:9088:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
-            // InternalOCLstdlib.g:9088:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
+            // InternalOCLstdlib.g:9090:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
+            // InternalOCLstdlib.g:9090:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
             {
-            // InternalOCLstdlib.g:9088:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
-            // InternalOCLstdlib.g:9089:1: (lv_name_0_0= ruleUnrestrictedName )
+            // InternalOCLstdlib.g:9090:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
+            // InternalOCLstdlib.g:9091:1: (lv_name_0_0= ruleUnrestrictedName )
             {
-            // InternalOCLstdlib.g:9089:1: (lv_name_0_0= ruleUnrestrictedName )
-            // InternalOCLstdlib.g:9090:3: lv_name_0_0= ruleUnrestrictedName
+            // InternalOCLstdlib.g:9091:1: (lv_name_0_0= ruleUnrestrictedName )
+            // InternalOCLstdlib.g:9092:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
 
@@ -25929,7 +25929,7 @@
 
             }
 
-            // InternalOCLstdlib.g:9106:2: (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
+            // InternalOCLstdlib.g:9108:2: (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
             int alt163=2;
             int LA163_0 = input.LA(1);
 
@@ -25938,7 +25938,7 @@
             }
             switch (alt163) {
                 case 1 :
-                    // InternalOCLstdlib.g:9106:4: otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
+                    // InternalOCLstdlib.g:9108:4: otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
                     {
                     otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_9); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -25946,11 +25946,11 @@
                           	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
 
                     }
-                    // InternalOCLstdlib.g:9110:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
-                    // InternalOCLstdlib.g:9111:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
+                    // InternalOCLstdlib.g:9112:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
+                    // InternalOCLstdlib.g:9113:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
                     {
-                    // InternalOCLstdlib.g:9111:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
-                    // InternalOCLstdlib.g:9112:3: lv_ownedExtends_2_0= ruleTypedRefCS
+                    // InternalOCLstdlib.g:9113:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
+                    // InternalOCLstdlib.g:9114:3: lv_ownedExtends_2_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -25981,7 +25981,7 @@
 
                     }
 
-                    // InternalOCLstdlib.g:9128:2: (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
+                    // InternalOCLstdlib.g:9130:2: (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
                     loop162:
                     do {
                         int alt162=2;
@@ -25994,7 +25994,7 @@
 
                         switch (alt162) {
                     	case 1 :
-                    	    // InternalOCLstdlib.g:9128:4: otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
+                    	    // InternalOCLstdlib.g:9130:4: otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
                     	    {
                     	    otherlv_3=(Token)match(input,113,FollowSets000.FOLLOW_9); if (state.failed) return current;
                     	    if ( state.backtracking==0 ) {
@@ -26002,11 +26002,11 @@
                     	          	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
 
                     	    }
-                    	    // InternalOCLstdlib.g:9132:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
-                    	    // InternalOCLstdlib.g:9133:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
+                    	    // InternalOCLstdlib.g:9134:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
+                    	    // InternalOCLstdlib.g:9135:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
                     	    {
-                    	    // InternalOCLstdlib.g:9133:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
-                    	    // InternalOCLstdlib.g:9134:3: lv_ownedExtends_4_0= ruleTypedRefCS
+                    	    // InternalOCLstdlib.g:9135:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
+                    	    // InternalOCLstdlib.g:9136:3: lv_ownedExtends_4_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
 
@@ -26075,7 +26075,7 @@
 
 
     // $ANTLR start "entryRuleTypeRefCS"
-    // InternalOCLstdlib.g:9158:1: entryRuleTypeRefCS returns [EObject current=null] : iv_ruleTypeRefCS= ruleTypeRefCS EOF ;
+    // InternalOCLstdlib.g:9160:1: entryRuleTypeRefCS returns [EObject current=null] : iv_ruleTypeRefCS= ruleTypeRefCS EOF ;
     public final EObject entryRuleTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -26083,8 +26083,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:9159:2: (iv_ruleTypeRefCS= ruleTypeRefCS EOF )
-            // InternalOCLstdlib.g:9160:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
+            // InternalOCLstdlib.g:9161:2: (iv_ruleTypeRefCS= ruleTypeRefCS EOF )
+            // InternalOCLstdlib.g:9162:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getTypeRefCSRule());
@@ -26115,7 +26115,7 @@
 
 
     // $ANTLR start "ruleTypeRefCS"
-    // InternalOCLstdlib.g:9167:1: ruleTypeRefCS returns [EObject current=null] : (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) ;
+    // InternalOCLstdlib.g:9169:1: ruleTypeRefCS returns [EObject current=null] : (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) ;
     public final EObject ruleTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -26127,10 +26127,10 @@
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:9170:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
-            // InternalOCLstdlib.g:9171:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
+            // InternalOCLstdlib.g:9172:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
+            // InternalOCLstdlib.g:9173:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
             {
-            // InternalOCLstdlib.g:9171:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
+            // InternalOCLstdlib.g:9173:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
             int alt164=2;
             int LA164_0 = input.LA(1);
 
@@ -26149,7 +26149,7 @@
             }
             switch (alt164) {
                 case 1 :
-                    // InternalOCLstdlib.g:9172:2: this_TypedRefCS_0= ruleTypedRefCS
+                    // InternalOCLstdlib.g:9174:2: this_TypedRefCS_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -26176,7 +26176,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:9185:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
+                    // InternalOCLstdlib.g:9187:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -26225,7 +26225,7 @@
 
 
     // $ANTLR start "entryRuleWildcardTypeRefCS"
-    // InternalOCLstdlib.g:9204:1: entryRuleWildcardTypeRefCS returns [EObject current=null] : iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ;
+    // InternalOCLstdlib.g:9206:1: entryRuleWildcardTypeRefCS returns [EObject current=null] : iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ;
     public final EObject entryRuleWildcardTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -26233,8 +26233,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:9205:2: (iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF )
-            // InternalOCLstdlib.g:9206:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
+            // InternalOCLstdlib.g:9207:2: (iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF )
+            // InternalOCLstdlib.g:9208:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getWildcardTypeRefCSRule());
@@ -26265,7 +26265,7 @@
 
 
     // $ANTLR start "ruleWildcardTypeRefCS"
-    // InternalOCLstdlib.g:9213:1: ruleWildcardTypeRefCS returns [EObject current=null] : ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) ;
+    // InternalOCLstdlib.g:9215:1: ruleWildcardTypeRefCS returns [EObject current=null] : ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) ;
     public final EObject ruleWildcardTypeRefCS() throws RecognitionException {
         EObject current = null;
 
@@ -26277,14 +26277,14 @@
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:9216:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
-            // InternalOCLstdlib.g:9217:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
+            // InternalOCLstdlib.g:9218:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
+            // InternalOCLstdlib.g:9219:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
             {
-            // InternalOCLstdlib.g:9217:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
-            // InternalOCLstdlib.g:9217:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
+            // InternalOCLstdlib.g:9219:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
+            // InternalOCLstdlib.g:9219:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             {
-            // InternalOCLstdlib.g:9217:2: ()
-            // InternalOCLstdlib.g:9218:2:
+            // InternalOCLstdlib.g:9219:2: ()
+            // InternalOCLstdlib.g:9220:2:
             {
             if ( state.backtracking==0 ) {
 
@@ -26307,7 +26307,7 @@
                   	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
 
             }
-            // InternalOCLstdlib.g:9230:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
+            // InternalOCLstdlib.g:9232:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             int alt165=2;
             int LA165_0 = input.LA(1);
 
@@ -26316,7 +26316,7 @@
             }
             switch (alt165) {
                 case 1 :
-                    // InternalOCLstdlib.g:9230:3: otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
+                    // InternalOCLstdlib.g:9232:3: otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
                     {
                     otherlv_2=(Token)match(input,21,FollowSets000.FOLLOW_9); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -26324,11 +26324,11 @@
                           	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
 
                     }
-                    // InternalOCLstdlib.g:9234:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
-                    // InternalOCLstdlib.g:9235:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
+                    // InternalOCLstdlib.g:9236:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
+                    // InternalOCLstdlib.g:9237:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
                     {
-                    // InternalOCLstdlib.g:9235:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
-                    // InternalOCLstdlib.g:9236:3: lv_ownedExtends_3_0= ruleTypedRefCS
+                    // InternalOCLstdlib.g:9237:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
+                    // InternalOCLstdlib.g:9238:3: lv_ownedExtends_3_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
 
@@ -26388,7 +26388,7 @@
 
 
     // $ANTLR start "entryRuleID"
-    // InternalOCLstdlib.g:9260:1: entryRuleID returns [String current=null] : iv_ruleID= ruleID EOF ;
+    // InternalOCLstdlib.g:9262:1: entryRuleID returns [String current=null] : iv_ruleID= ruleID EOF ;
     public final String entryRuleID() throws RecognitionException {
         String current = null;
 
@@ -26396,8 +26396,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:9261:2: (iv_ruleID= ruleID EOF )
-            // InternalOCLstdlib.g:9262:2: iv_ruleID= ruleID EOF
+            // InternalOCLstdlib.g:9263:2: (iv_ruleID= ruleID EOF )
+            // InternalOCLstdlib.g:9264:2: iv_ruleID= ruleID EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getIDRule());
@@ -26428,7 +26428,7 @@
 
 
     // $ANTLR start "ruleID"
-    // InternalOCLstdlib.g:9269:1: ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) ;
+    // InternalOCLstdlib.g:9271:1: ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) ;
     public final AntlrDatatypeRuleToken ruleID() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -26438,10 +26438,10 @@
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:9272:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
-            // InternalOCLstdlib.g:9273:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
+            // InternalOCLstdlib.g:9274:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
+            // InternalOCLstdlib.g:9275:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
             {
-            // InternalOCLstdlib.g:9273:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
+            // InternalOCLstdlib.g:9275:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
             int alt166=2;
             int LA166_0 = input.LA(1);
 
@@ -26460,7 +26460,7 @@
             }
             switch (alt166) {
                 case 1 :
-                    // InternalOCLstdlib.g:9273:6: this_SIMPLE_ID_0= RULE_SIMPLE_ID
+                    // InternalOCLstdlib.g:9275:6: this_SIMPLE_ID_0= RULE_SIMPLE_ID
                     {
                     this_SIMPLE_ID_0=(Token)match(input,RULE_SIMPLE_ID,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -26477,7 +26477,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:9281:10: this_ESCAPED_ID_1= RULE_ESCAPED_ID
+                    // InternalOCLstdlib.g:9283:10: this_ESCAPED_ID_1= RULE_ESCAPED_ID
                     {
                     this_ESCAPED_ID_1=(Token)match(input,RULE_ESCAPED_ID,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -26516,7 +26516,7 @@
 
 
     // $ANTLR start "entryRuleLOWER"
-    // InternalOCLstdlib.g:9296:1: entryRuleLOWER returns [String current=null] : iv_ruleLOWER= ruleLOWER EOF ;
+    // InternalOCLstdlib.g:9298:1: entryRuleLOWER returns [String current=null] : iv_ruleLOWER= ruleLOWER EOF ;
     public final String entryRuleLOWER() throws RecognitionException {
         String current = null;
 
@@ -26524,8 +26524,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:9297:2: (iv_ruleLOWER= ruleLOWER EOF )
-            // InternalOCLstdlib.g:9298:2: iv_ruleLOWER= ruleLOWER EOF
+            // InternalOCLstdlib.g:9299:2: (iv_ruleLOWER= ruleLOWER EOF )
+            // InternalOCLstdlib.g:9300:2: iv_ruleLOWER= ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getLOWERRule());
@@ -26556,7 +26556,7 @@
 
 
     // $ANTLR start "ruleLOWER"
-    // InternalOCLstdlib.g:9305:1: ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
+    // InternalOCLstdlib.g:9307:1: ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
     public final AntlrDatatypeRuleToken ruleLOWER() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -26565,8 +26565,8 @@
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:9308:28: (this_INT_0= RULE_INT )
-            // InternalOCLstdlib.g:9309:5: this_INT_0= RULE_INT
+            // InternalOCLstdlib.g:9310:28: (this_INT_0= RULE_INT )
+            // InternalOCLstdlib.g:9311:5: this_INT_0= RULE_INT
             {
             this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -26599,7 +26599,7 @@
 
 
     // $ANTLR start "entryRuleNUMBER_LITERAL"
-    // InternalOCLstdlib.g:9324:1: entryRuleNUMBER_LITERAL returns [String current=null] : iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF ;
+    // InternalOCLstdlib.g:9326:1: entryRuleNUMBER_LITERAL returns [String current=null] : iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF ;
     public final String entryRuleNUMBER_LITERAL() throws RecognitionException {
         String current = null;
 
@@ -26607,8 +26607,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:9325:2: (iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF )
-            // InternalOCLstdlib.g:9326:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF
+            // InternalOCLstdlib.g:9327:2: (iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF )
+            // InternalOCLstdlib.g:9328:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getNUMBER_LITERALRule());
@@ -26639,7 +26639,7 @@
 
 
     // $ANTLR start "ruleNUMBER_LITERAL"
-    // InternalOCLstdlib.g:9333:1: ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
+    // InternalOCLstdlib.g:9335:1: ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ;
     public final AntlrDatatypeRuleToken ruleNUMBER_LITERAL() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -26648,8 +26648,8 @@
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:9336:28: (this_INT_0= RULE_INT )
-            // InternalOCLstdlib.g:9337:5: this_INT_0= RULE_INT
+            // InternalOCLstdlib.g:9338:28: (this_INT_0= RULE_INT )
+            // InternalOCLstdlib.g:9339:5: this_INT_0= RULE_INT
             {
             this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -26682,7 +26682,7 @@
 
 
     // $ANTLR start "entryRuleStringLiteral"
-    // InternalOCLstdlib.g:9352:1: entryRuleStringLiteral returns [String current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ;
+    // InternalOCLstdlib.g:9354:1: entryRuleStringLiteral returns [String current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ;
     public final String entryRuleStringLiteral() throws RecognitionException {
         String current = null;
 
@@ -26690,8 +26690,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:9353:2: (iv_ruleStringLiteral= ruleStringLiteral EOF )
-            // InternalOCLstdlib.g:9354:2: iv_ruleStringLiteral= ruleStringLiteral EOF
+            // InternalOCLstdlib.g:9355:2: (iv_ruleStringLiteral= ruleStringLiteral EOF )
+            // InternalOCLstdlib.g:9356:2: iv_ruleStringLiteral= ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getStringLiteralRule());
@@ -26722,7 +26722,7 @@
 
 
     // $ANTLR start "ruleStringLiteral"
-    // InternalOCLstdlib.g:9361:1: ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
+    // InternalOCLstdlib.g:9363:1: ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
     public final AntlrDatatypeRuleToken ruleStringLiteral() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -26731,8 +26731,8 @@
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:9364:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLstdlib.g:9365:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
+            // InternalOCLstdlib.g:9366:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:9367:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
             {
             this_SINGLE_QUOTED_STRING_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
@@ -26765,7 +26765,7 @@
 
 
     // $ANTLR start "entryRuleUPPER"
-    // InternalOCLstdlib.g:9380:1: entryRuleUPPER returns [String current=null] : iv_ruleUPPER= ruleUPPER EOF ;
+    // InternalOCLstdlib.g:9382:1: entryRuleUPPER returns [String current=null] : iv_ruleUPPER= ruleUPPER EOF ;
     public final String entryRuleUPPER() throws RecognitionException {
         String current = null;
 
@@ -26773,8 +26773,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:9381:2: (iv_ruleUPPER= ruleUPPER EOF )
-            // InternalOCLstdlib.g:9382:2: iv_ruleUPPER= ruleUPPER EOF
+            // InternalOCLstdlib.g:9383:2: (iv_ruleUPPER= ruleUPPER EOF )
+            // InternalOCLstdlib.g:9384:2: iv_ruleUPPER= ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getUPPERRule());
@@ -26805,7 +26805,7 @@
 
 
     // $ANTLR start "ruleUPPER"
-    // InternalOCLstdlib.g:9389:1: ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= '*' ) ;
+    // InternalOCLstdlib.g:9391:1: ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= '*' ) ;
     public final AntlrDatatypeRuleToken ruleUPPER() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -26815,10 +26815,10 @@
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:9392:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
-            // InternalOCLstdlib.g:9393:1: (this_INT_0= RULE_INT | kw= '*' )
+            // InternalOCLstdlib.g:9394:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
+            // InternalOCLstdlib.g:9395:1: (this_INT_0= RULE_INT | kw= '*' )
             {
-            // InternalOCLstdlib.g:9393:1: (this_INT_0= RULE_INT | kw= '*' )
+            // InternalOCLstdlib.g:9395:1: (this_INT_0= RULE_INT | kw= '*' )
             int alt167=2;
             int LA167_0 = input.LA(1);
 
@@ -26837,7 +26837,7 @@
             }
             switch (alt167) {
                 case 1 :
-                    // InternalOCLstdlib.g:9393:6: this_INT_0= RULE_INT
+                    // InternalOCLstdlib.g:9395:6: this_INT_0= RULE_INT
                     {
                     this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -26854,7 +26854,7 @@
                     }
                     break;
                 case 2 :
-                    // InternalOCLstdlib.g:9402:2: kw= '*'
+                    // InternalOCLstdlib.g:9404:2: kw= '*'
                     {
                     kw=(Token)match(input,73,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
@@ -26889,7 +26889,7 @@
 
 
     // $ANTLR start "entryRuleURI"
-    // InternalOCLstdlib.g:9415:1: entryRuleURI returns [String current=null] : iv_ruleURI= ruleURI EOF ;
+    // InternalOCLstdlib.g:9417:1: entryRuleURI returns [String current=null] : iv_ruleURI= ruleURI EOF ;
     public final String entryRuleURI() throws RecognitionException {
         String current = null;
 
@@ -26897,8 +26897,8 @@
 
 
         try {
-            // InternalOCLstdlib.g:9416:2: (iv_ruleURI= ruleURI EOF )
-            // InternalOCLstdlib.g:9417:2: iv_ruleURI= ruleURI EOF
+            // InternalOCLstdlib.g:9418:2: (iv_ruleURI= ruleURI EOF )
+            // InternalOCLstdlib.g:9419:2: iv_ruleURI= ruleURI EOF
             {
             if ( state.backtracking==0 ) {
                newCompositeNode(grammarAccess.getURIRule());
@@ -26929,7 +26929,7 @@
 
 
     // $ANTLR start "ruleURI"
-    // InternalOCLstdlib.g:9424:1: ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
+    // InternalOCLstdlib.g:9426:1: ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ;
     public final AntlrDatatypeRuleToken ruleURI() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -26938,8 +26938,8 @@
          enterRule();
 
         try {
-            // InternalOCLstdlib.g:9427:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
-            // InternalOCLstdlib.g:9428:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
+            // InternalOCLstdlib.g:9429:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
+            // InternalOCLstdlib.g:9430:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
             {
             this_SINGLE_QUOTED_STRING_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/serializer/AbstractOCLstdlibSemanticSequencer.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/serializer/AbstractOCLstdlibSemanticSequencer.java
index 54f2d4c..fcb6bef 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/serializer/AbstractOCLstdlibSemanticSequencer.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/serializer/AbstractOCLstdlibSemanticSequencer.java
@@ -206,6 +206,10 @@
 					sequence_URIPathNameCS(context, (PathNameCS) semanticObject);
 					return;
 				}
+				else if (rule == grammarAccess.getUnreservedPathNameCSRule()) {
+					sequence_UnreservedPathNameCS(context, (PathNameCS) semanticObject);
+					return;
+				}
 				else break;
 			case BaseCSPackage.PRIMITIVE_TYPE_REF_CS:
 				if (rule == grammarAccess.getPrimitiveTypeCSRule()
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/services/OCLstdlibGrammarAccess.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/services/OCLstdlibGrammarAccess.java
index b992e14..9e51bf3 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/services/OCLstdlibGrammarAccess.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/services/OCLstdlibGrammarAccess.java
@@ -3261,8 +3261,8 @@
 	}
 
 	//CollectionTypeCS:
-	//	name=CollectionTypeIdentifier ('(' ownedType=TypeExpWithoutMultiplicityCS ownedCollectionMultiplicity=MultiplicityCS?
-	//	')')?;
+	//	name=CollectionTypeIdentifier ('(' ownedType=TypeExpWithoutMultiplicityCS ownedCollectionMultiplicity=MultiplicityCS
+	//	? ')')?;
 	public EssentialOCLGrammarAccess.CollectionTypeCSElements getCollectionTypeCSAccess() {
 		return gaEssentialOCL.getCollectionTypeCSAccess();
 	}
@@ -3841,6 +3841,16 @@
 		return getPathNameCSAccess().getRule();
 	}
 
+	//UnreservedPathNameCS PathNameCS:
+	//	ownedPathElements+=NextPathElementCS ('::' ownedPathElements+=NextPathElementCS)*;
+	public BaseGrammarAccess.UnreservedPathNameCSElements getUnreservedPathNameCSAccess() {
+		return gaBase.getUnreservedPathNameCSAccess();
+	}
+
+	public ParserRule getUnreservedPathNameCSRule() {
+		return getUnreservedPathNameCSAccess().getRule();
+	}
+
 	//FirstPathElementCS PathElementCS:
 	//	referredElement=[pivot::NamedElement|super::UnrestrictedName];
 	public BaseGrammarAccess.FirstPathElementCSElements getFirstPathElementCSAccess() {